الاختصاص، القصر & # 038؛ أزواج العملات الغريبة.
تداول الفوركس هو أساسا شراء عملة واحدة وبيع متزامن لآخر. لذلك عند تداول العملات سوف نرى دائما لهم نقلت في أزواج.
عند وضع التجارة نحن المضاربة على العملة التي نعتقد أنها سوف تصبح أقوى أو أضعف ضد الآخر بهدف تحقيق الربح من حركة سعر الصرف.
وتسمى العملة إلى اليسار العملة الأساسية. ويطلق على العملة إلى اليمين اقتباس العملة. عملة الاقتباس تخبرنا كم هو يستحق مقابل 1 وحدة من العملة الأساسية. لذا إذا قلنا أن زوج اليورو مقابل الدولار يتداول عند 1.3000 فهذا يعني أن اليورو يساوي 1.30 دولار.
العملة الأساسية هي الأساس لشراء أو بيع التجارة. إذا كنا نعتقد أن اليورو سوف يقوي مقابل الدولار سنشتري زوج اليورو مقابل الدولار الأميركي. وهذا يعني أننا نشتري العملة الأساسية - اليورو، وفي نفس الوقت بيع العملة الاقتباس - الدولار الأمريكي.
إذا كنا نعتقد أن اليورو سوف يضعف مقابل الدولار الأمريكي سوف نبيع الزوج أي أننا نبيع اليورو و في نفس الوقت شراء الدولار الأمريكي.
عندما نشتري العملة الأساسية، في المصطلحات المتداولة نحن نسمي هذه الفترة الطويلة (نتطلع إلى الربح من ارتفاع الزوج)، وعندما نبيع العملة الأساسية نسمي هذا قصيرة (تتطلع إلى الربح من زوج العملات هبوط).
أزواج العملات الرئيسية.
أزواج العملات الرئيسية كلها تحتوي على الدولار الأمريكي من جانب واحد - إما على الجانب الأساسي أو الجانب الاقتباس. وهي الأكثر تداولا في سوق الفوركس. وعادة ما يكون للأقسام أدنى انتشار وهي الأكثر سيولة. ور / أوسد هو الزوج الأكثر تداولا مع حجم التداول اليومي ما يقرب من 30٪ من سوق الفوركس بأكمله.
أزواج عبر العملات أو أزواج العملات الصغرى.
أزواج العملات التي لا تحتوي على الدولار الأمريكي تعرف باسم أزواج عبر العملات أو ببساطة "الصلبان". تاريخيا، إذا أردنا تحويل عملة، كان علينا أن نحول العملة أولا إلى الدولار الأمريكي ثم إلى العملة التي كنا نريدها.
مع الأخذ بالصلبان العملة لم يعد لدينا للقيام بهذا الحساب مملة كما تقدم جميع الوسطاء الآن أسعار الصرف المباشرة. وتستمد المعبر الأكثر نشاطا من العملات الرئيسية الثلاث غير الدولار الأمريكي (اليورو، الجنيه البريطاني والين الياباني). وتعرف أزواج العملات هذه أيضا بالقاصرين.
أزواج العملات الغريبة.
وتتكون أزواج العملات الغريبة من عملة رئيسية مقترنة بعملة اقتصاد ناشئ أو قوي ولكنه أصغر من منظور عالمي مثل هونغ كونغ أو سنغافورة والدول الأوروبية خارج منطقة اليورو.
هذه الأزواج لا يتم تداولها في كثير من الأحيان مثل التخصصات أو القصر، لذلك في كثير من الأحيان تكلفة تداول هذه الأزواج يمكن أن تكون أعلى من التخصصات أو القصر بسبب نقص السيولة في هذه الأسواق.
قراءة سعر صرف العملات الأجنبية.
وكما قلنا من قبل، عندما يقتبس عملة يقترن بعملة أخرى.
وبالتالي فإن قيمة واحدة تنعكس من خلال قيمة أخرى. العملة الأساسية هي على يسار الزوج وعملة الاقتباس إلى اليمين.
لنلقي نظرة على مثال:
في هذه الحالة الجنيه الاسترليني هو العملة الأساسية والين الياباني هو العملة الاقتباس.
ولكن عندما نقوم بتداول الأدوات المالية مثل العملات يتم عرض سعرين مختلفين قليلا.
لدينا سعر البيع (المعروف أيضا باسم سعر العطاء) وسعر الشراء (المعروف أيضا باسم سعر الطلب). سعر العطاء هو أفضل سعر متاح يمكننا بيعه إلى السوق. سعر الطلب هو أفضل الأسعار المتاحة التي يمكننا شراء من السوق.
الفرق بين السعرين هو ما نسميه انتشار وهذه هي الطريقة التي لدينا وسيط يولد الإيرادات. ومن تكلفة وضع التجارة.
في هذه الحالة يمكننا أن نرى اليورو مقابل الدولار الأميركي لديه عرض سعر 1.31819 وسعر الطلب من 1.31849. الفرق بين الاثنين هو 0.0003 أو ما نسميه ثلاث نقاط. في مقالنا القادم سوف نناقش حساب وأهمية فهم النقاط وقيم نقطة.
شراء دان بيع دلام الفوركس.
شراء دان بيع دلام الفوركس.
شراء دان بيع دلام الفوركس، تداول المتوسط المتحرك استراتيجية كروس.
الفوركس 200 نقطة في اليوم الواحد.
يرجى ملاحظة أن جميع أودس والسحب سوف تظهر كما أوبتيونفير على البنك أو كشف حساب بطاقة الائتمان الخاصة بك، والتداول تتحرك استراتيجية كروس متوسط. В فقط مدى دقة يمكنك أن تكون على الأقل تسيطر جزئيا من قبل حدود على وقتك وضعها التمويل واعتبارات البرنامج، وعوامل أخرى. إنستانس، فوريكس أوسد إلى فب هنا ليستموني أسعار الصرف للتبادل الدولار الأمريكي إلى البيزو الفلبيني، (تبادل الدولار الأمريكي إلى فب)، المتوسط المتحرك كروس استراتيجية التداول. تحويل العملات في الوقت الحقيقي لدينا يمكن أن تستخدم في الخروج من الدولار الأمريكي إلى البيزو الفلبينية أسعار الصرف، الدولار الأمريكي إلى البيزو الفلبينية الرسوم البيانية، الدولار الأمريكي إلى الآلات الحاسبة البيزو الفلبينية والدولار الأمريكي لأسعار البيزو الفلبينية. كو المملكة المتحدة لت الذهب الفضة المخطط.
هتب // ثنائي-الخيار روبوت الاستعراض، مقدمة لخيارات تداول ويرت قوات الدفاع الشعبي.
استعراض الخيارات الثنائية روبوت. هناك العديد من الأسباب لماذا نعتقد أن الخيارات الثنائية روبوت هو أفضل برنامج للتجارة الثنائية. في هذا الاستعراض، ونحن سوف تذهب من خلال جميع كيفية اختيار ثنائي الخيارات روبوت؟ إذا كنت تأمل في تحقيق الأرباح بطريقة بسيطة وآمنة، ثم ننظر إلى أبعد من استعراض الخيارات الثنائية روبوت.
يظهر الانحراف المعياري مقدار التباين أو التشتت من المتوسط موجود، مراجعة هتب // ووبيناري-أوبتيون-روبوت. مراجعة // بيناري-أوبتيون-روبوت هتب. الانحراف المعياري للتوزيع الاحتمالي هو الجذر التربيعي لتغيره. كل هذه الإعدادات الافتراضية يمكن تغييرها لتوليد توزيع من شأنها أن تزيد إما عدد الإشارات مع دقة أقل أو تقليل عدد الإشارات مع مزيد من الدقة. على سبيل المثال إذا تم تغيير نطاقات بولينجر إلى 1 الانحراف المعياري حول المتوسط المتحرك لمدة 20 فترة سيكون هناك المزيد من العينات تم نقلها خارج نطاقها مما لو تم نقلها إلى انحرافات 3 القياسية حول مدى 20 فترة. وبالإضافة إلى ذلك، إذا تغير متوسط متحرك لمدة 20 فترة إلى متوسط متحرك لمدة 100 فترة، فإن عدد النقاط التي يمكن أن تتحرك خارج النطاق سينخفض بالمقارنة مع متوسط متحرك لمدة 20 فترة. الرسم البياني أعلاه يظهر الرسم البياني دقيقة ور / أوسد التي مضافين مع البولنجر باندز. والجلسة بطة بيلاجار الفوركس، الفوركس 4 أرقام دان 5 أرقام، الخيارات الثنائية التفسير، النقد الأجنبي كندا، استراتيجيات التداول التقنية، تداول سيجار الفوركس، تداول الخيارات الثنائية أشرطة الفيديو، ماريوس دروزدوسكي الفوركس، نظام التداول الثلاثي، تجارة الفوركس من الأسبوع 3 رباط جديد قوارب قيد الإنشاء 3 قوارب مرساة جديدة قيد الإنشاء حاليا في حوض بناء السفن. وسيتم تسليم قارب واحد في 9 متر نسخة إلى الفرنسية دونتون دان تحميل الفيديو بوكيب إندو تيربارو، فيديو نجنتوت، الجنس الفيديو، الفيديو، مولاي داري بوكيب سد، بوكيب سمب، بوكيب سما، سامباي ماساسيسوي سيريتا ناضجة، سيريتا ميسوم، سيريتا حار، سيريتا نجنتوت، سيريتا الجنس تانت بيرغمبار، سيريتا بوكيب، سيريتا باناس، فوتو بوجيل تيربارو 2018 سيريتا الجنس - بينغالامان أكو دان.
Наши партнеры.
610004، г. Киров، ул. Профсоюзная، д.7، этаж 2، офис 1.
إمايل: Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен جافاسكريبت для просмотра.
ميتاتريدر 5.
أبا إيتو تداول الفوركس.
باسار فورين إكسهانج (فوركس) أدالا باسار يانغ بالينغ ليكويد دان بالينغ سيرينغ ديترادينغكان دي سيلوروه دنيا، ديمانا تيردابات ترادينغ سينيلاي تريليونان تياب هارينيا.
ترادينغ فوريكس ميليباتكان بيمبليان ساتو ماتا اانغ دان بينجوالان ماتا اانغ لين بادا سات يانغ بيرسمان. إيني سيبابنيا أندا أكان سيلالو ميريكا ديكوتاسيكان سيكارا بيرباسانغان. سيباجاي كونتوه: ور / أوسد دان غبب / أوسد.
ماتا يانغ مانا ساجا يانغ دابات سايا ترادينغكان.
ترادينغ فوريكس أكان ميليباتكان بيمبليان دان بينجوالان & كوت؛ باسانغان ماتا يانغ & كوت؛ رسائل كتبها هذا المؤلف. كيتيكا أندا ميمبلي سواتو باسانغان ماتا أونغ سيبيرتي ور / أوسد، بيرارتي أندا ميمبلي ورو دان منجوال أوسد بادا سات يانغ بيرسمان.
باسانغان ماتا أوغ ديكاتيغوريكان سيباجاي بيريكوت:
باسانغان أوتاما - تيرديري داري باسانغان ماتا يانغ يانغ بالينغ بانياك ديترادينغكان دي سيلوروه دنيا باسانغان كيسيل - تيرديري داري باسانغان ماتا أوانغ يانغ تيداك تيرلالو ليكويد باسانغان إكسوتيس - تيرديري داري صلاح ساتو ماتا أوانغ أوتاما نون-أوسد يانغ ديباسانغكان دنغان ماتا أوانغ داري نيغارا بركمبانغ. كونتوه: غبب / هكد.
انتشار - منغابا سانغات البنتينغ.
بيلا أندا ميليهات باسانغان ماتا يانغ يانغ ديتاواركان أوله وسيط أتاو الآسيوية، بياسانيا أدا دوا هارجا يانغ ترسيديا: هارجا أسك دان هرغا بيد. إيني جوغا ديكنال سيباغاي هرغا بيلي دان هرغا جوال ماسينغ-ماسينغ.
نشر أدالا بيربدان أنتارا هرغا جوال دان بيلي.
بيرداساركان تابيل دي بواه إيني، بيراباكاه سبريد أونتوك باسانغان ماتا أوانغ ور / أوسد؟
ماري هيتونغ سبرياد أونتوك ور / أوسد:
هارجا أسك - هرغا بيد = سبرياد.
كابان باسار ديبوكا أونتوك التداول.
فوريكس أدالا باسار أون-كونتر ديمانا ترادينغ بيرلانغس أنتارا دوا بيهاك، دان بوكان دنغان بورسا أتاو باسار سينترال.
تارجانتونغ بادا بلاتفروم بوسينيس بروكر أندا، أندا دابات مولاي ترادينغ داري مولاي باسار سيدني بوكا دي هاري سينين باجي هينغغا سات باسار نيويورك يوتوب بادا جومات مالام - سامباي دنغان 24 مربى سيهاري، ليما هاري سيمينغو.
كلين ثنائي دارات بيرترادينغ الفوركس داري مينغو 21:00 غمت هينغغا جومات 21:00 غمت.
كارا بيرترادينغ الفوركس.
سيورانغ ترادر فوركس سيلالو ميميليكي ساتو توجوان دلام بيكيران سعت ميلاكوكان التداول: أونوك مينوكار ساتو ماتا أوانغ دنغان ماتا أوانغ لين ونغ مينغاسيلكان كيونتونغان.
إينيلا سيبابنيا منغابي كامي منيدياكان تعليمي تيغا لانغكاه بيريكوت أونتوك ميمبانتو أندا منجمباتاني كيسنجانغان إيتو دان ميلاكوكان بيرداغانغان بيرتاما أندا:
لانكا 1: بيلاجاري كارا ممباكا باسانغان ماتا أوانغ.
صلاح ساتو هال بيرتاما يانغ ترادر فوريكس بيلاجاري أدالا كارا ممباكا باسانغان ماتا أوانغ. أدا دوا باسيان ونتوك باسانغان ماتا أوانغ.
ماتا أونغ داسار سيلالو سما دنغان ساتو أونيت. هارجا بيد داري باسانغان ماتا أوانغ منجينديكاسيكان سيبيرابا بانياك ماتا أوانغ كوتيبان يانغ ديبيرلوكان أونتوك ميمبلي ساتو أونيت ماتا أونغ دازار. إيني ليبيه ديكنال سيباغاي نيلاي توكار.
سيباغاي كونتوه، جيكا أندا ميليهات باهوا ور / أوسد ميميليكي هارجا بيد 1،05229، أندا أكان منجوال أوسد 1،05229 (ماتا أوانغ كوتاسي) ونتوك سيتياب 1 ور (ماتا يانغ داسار) يانغ أندا بيلي.
جيكا هارجا أسك عدالة 1،05382، أندا أكان ميمبلي أوسد 1،05382 ونتوك سيتياب ور 1 يانغ أندا خوال.
لانغكا 2: بهامي كابان هاروس ميمبلي دان منجوال.
بيربيكير باهوا سواتو ماتا أوانغ ترتنتو أكان نيك أتاو تورون؟ بيلاجاري كابان أندا هاروس ميمبلي (أتاو & كوت؛ يذهب طويل & كوت؛) دان كابان هاروس مينجوال (أتاو & كوت؛ الذهاب قصيرة & كوت؛).
ترادر ميميليه أونتوك ميمبيلي باسانغان ماتا أوغ ترتنتو جيكا ميريكا بيربيكير نيلاي ماتا أوس دسار أكان نيك. كيباليكانيا جوغا بينار: ميريكا مينجوال باسانغان ماتا يانغ ترتنتو جيكا ميريكا بيربيكير نيلاي ماتا أوس دسار أكان تورون.
ماري باندينغكان بيربيدان أنتارا بيلي دان جول، منغوناكان ور / أوسد سيباي كونتوه:
أندا ميمبلي ور دان منجوال أوسد أندا منغارابكان ور نيك نيلينيا سيهينغغا أندا بيزا منجوالنيا كيمبالي ونتوك ميندباتكان بيلي = الذهاب طويلة.
أندا منجوال ور دان ميمبلي أوسد أندا منغارابكان ور تورون نيلينيا سيهينغغا أندا دابات ممبلينيا كيمبالي دنغان هارجا ليبيه رينداه (دان مينغاسيلكان كيونتونغان) جوال = شورت.
لانغكا 3: كارا ميمبلي باسانغان ماتا يانغ كريبتو بيرتاما أندا.
سيتيلاه أندا ميموتوسكان بوسيسي مانا يانغ إنجين أندا أمبيل، لانغكاه سيلانجوتنيا أدالا ميمبلي باسانغان ماتا أوانغ تيرسيبوت بادا ميتاترادر 5.
بيريكوت أدالا كونتوه باسانغان ماتا يانغ ور / أوسد دان هرغا بيد-أسك نيا:
أونتوك غو لونغ، أندا أكان إنجين ونتوك منغكليك & # x27؛ بيلي & # x27؛ ونتوك ميمبلي 1 ور ونتوك 1،17726 أوسد.
أونتوك الذهاب قصيرة، أندا أكان منغكليك & # x27؛ خوال & # x27؛ ونجوك منجوال 1 ور دان مينريما 1،17725 أوسد سيباغاي بالاسان.
كيبيجاكان مارجين.
مارجين ميمبربولهكان أندا أونتينغ دينغ نانجينغ ليفيراج - أرتينيا مودال يانغ سوداه أدا دابات ميمبيريكان تينغكات إكسبوسور باسار يانغ ليبيه تينغجي.
سيباغاي كونتوه، جيكا أندا إنجين ميمبلي 100 وحدة أسيت ترتنتو يانغ ديترادينغان بادا أوسد 50 لكل وحدة ميلالوي وسيط تراديسيونال، بياسانيا أندا أكان ديكيناكان بيايا سيبيزار أوسد 5.000 أونتوك تراناكسيكسي إيني.
نامون، دينغان ليفيراج أندا دابات ميمبلي سيلوروه 100 أونيت تيرسيبوت بادا فراكسي دنغان بيايا ترتنتو - تيرغانتونغ بادا ليفيراج يانغ ديبيريكان أوله بروكر أتاو بلاتفورم ترادينغ أندا.
باغايمانا كارا منغيتونغ الهامش.
أندا دابات مينينتوكان مارجين داري كيمبات باسانغان ماتا كانغ دنغان منغوناكان روموس دي بواه إيني:
سيباجاي كونتو، جيكا أندا ميمبلي ساتو الكثير باسانغان ور / أوسد دينغان أوكوران كونتراك 100.000 دان ليفيراج 100: 1، مارجين يانغ أندا بيرلو بيلي ساتو الكثير ور / أوسد أكان ديهيتونغ سيباغاي بيريكوت:
أبا إيتو هامش دعوة دان باغيمانا كارا بينغونانيا.
كيتيكا إكيتاس أكون أندا تيداك دابات منغبير بيرساراتان مارجين، أكون أندا أكان ديتمباتكان ديباوا مارجين كال. إيني تيداك ميمبنغارهي كيمابوان أندا ونتوك ميمبوكا بوسيسي بارو.
أبا إيتو مستوى خطوة دان باغيمانا كارا بينغونانيا.
جيكا أكون أندا بيرادا ديباوا مارجين كال ونتوك سواتو جانغكا واكتو ترتنتو، ديا أكان مينكاباي ليفيل أوت أوف ديمانا أكون ترسيبوت تيداك دابات ميمبرتهانكان بوسيسي تيربوكا. هال إيني أكان مينيبابكان ريثما أوردر أندا ديباتالكان دان بوسيسي تيربوكا أندا ديتوتوب سيكارا باكسا (جوغا ديكنال سيباغاي & كوت؛ ليكويداسي باكسا & كوت؛).
كيتيكا أكون أندامنكاباي تينغكات ليكوداسي باكسا، النظام دان بوسيسي أندا أكان ديتوتوب سيكارا باكسا دنغان أوروتان سيباغاي بيريكوت:
كامي مينغاناليسا ترتيب ترتوندا أندا كامي أكان منغابوس ترتيب الهامش تيربيزار جيكا مستوى مارجين أندا ماسيه ديباوا مستوى وقف، ترتيب سيلانجوتنيا أكان ديهابوس. نامون، طلب تانبا بيرساراتان مارجين تيداك أكان ديهابوس جيكا ليفيل مارجين أندا ماسيه بيرادا ديباوا ليفيل ستوب أوت، كامي أكان منوتوب بوسيسي تيربوكا أندا دنغان كيروجيان تيربيزار كامي أكان تيروس منوتوب بوسيسي بيرجالان هينغغا مستوى الهامش أندا منجادي ليبيه تينغجي داري ليفيل أوت.
سبيسيفيكاسي كونتراك.
باسانغان أوتاما.
باسانغان كيسيل.
باسانغان إكسوتيس.
كارا ميمباكا تابيل سبيسيفيكاسي كونتراك.
فوريكس بياسانيا ديترادينغكان دلام جملة الكثير. سيكارا ستاندار، ساتو الكثير سما دنغان 100.000 وحدة. سيتياب أندا ميمبوكا بوسيسي بادا سيمبول ماتا يانغ، أندا دابات بيرترادينغ مولاي داري الحد الأدنى ترانكسسي بيرجوملا 0.01 لوت.
رافعة مينونجوكان بيرا بانياك مشروط يانغ أندا دابات كونترول بيرداساركان إيداع أوال. سيباجاي كونتوه، 100: 1 ميمونكينكان أندا ونتوك منغونترول هينغغا أوسد 100.000 هانيا منغوناكان أوسد 1.000 داري يانغ أندا سيباغاي الودائع.
أونك ميمبلاجاري ليبيه لانجوت، باكاجينغ الهامش كامي يانغ مينجيلاسكان ليبيه لانجوت تنتانغ 100٪ تينغكات ليكويداسي باكسا أونتوك فوريكس.
كاتاتان بنتينغ بادا تينغكات سواب (بيندانان سيمالام)
جيكا أندا منغاغا بوسيسي أندا تيربوكا دلام سيمال، بينيسوايان بونغا أكان ديلاكوكان كي أكون ترادينغ أندا سيباغاي إنديكاسي بيايا يانغ ديبيرلوكان أونتوك من بوسيسي أندا تيتاب تيربوكا.
بينيسويان بونغا إيني (أتاو سواب ريت) بيرداساركان سوكو بونغا بينجامان أنتارا بانك، دياتاس بيايا سيبيزار 2٪.
بينيسويان بونغا يانغ ديهيتونغ دلام & # x27؛ بوين & # x27 ؛، أرتينيا كيتا أكان منغكونفيرزي سوكو بونغا كريديت أنتارا بانك يانغ ريليفان دنغان & # x27؛ بوين & # x27؛ دلام ماتا يانغ داسار.
موهون بيراتيكان باهوا هارجا سواب كامي جوغا ترجانتونغ بادا واكتو دان هاري أندا ميمغانغ بوسيسي بيرجالان:
أندا أكان ديكيناكان سوكو بونغ سواب باسي بوسيسي بيرلان دياتاس بوكول 23:59:59 غمت. بوسي يانغ ماسيه بيرجالان باد هاري رابو بادا 23:59:59 غمت أكان ديكيناكان بيايا سواب تيغا كالي بادا أكون أونتوك أخير بيكان - هال يانغ بياسا دي لاكوكان بادا سيموا بروكر فوريكس. هارجا سواب كامي جوغا دابات ديسيسويكان أونتوك ميمبرهيتونغكان ليبوران.
بيروساهان كامي.
Perbankan.
تجارة.
بيرميترا بيرساما كامي.
موقع ويب إيناي ديباساركان دي نيغرا إنغريس دان جزيرة مان ميلالوي ثنائي (إيوم) المحدودة ونتو يوروبا (كيكالي إنغريس) ميلالوي ثنائي (أوروبا) المحدودة دان بيناري للاستثمارات (أوروبا) المحدودة سيدانغكان ونتوك لينغ دي سيلوروه دنيا ميلالوي ثنائي (كر) سا لايانان الموقع إيني تيداك تيرسيديا أونتوك دي بواه أوسيا 18.
تداول أوسي ثنائي مونغكين تيداك كوكوك أونتوك سيموا أورانغ، ماكا باستيكان أندا سوداه ميماهامي ريسيكو يانغ تيرليبات. جوميلا كيروجيان أندا دابات ميليبيهي مشروط أوال دان أندا تيداك ميمبروله بونغا داري أسيت دازار يانغ ديترادينغكان.
فتح ووضع أوامر.
يتم تشكيل طلبات التجارة لفتح ووضع الأوامر المعلقة باستخدام الدالة أوردرسند ().
فونكتيون أوردرسند ()
(يرجى ملاحظة أن هنا وأدناه، نشير إلى رأس وظيفة، وليس إلى مثال على كيفية استخدام استدعاء وظيفة في برنامج).
دعونا ننظر في مزيد من التفاصيل ما تتكون هذه الوظيفة من.
أوردرسند هو اسم الدالة. ترجع الدالة رقم التذكرة ("التذكرة" هي الرقم الفريد لأمر) الذي تم تعيينه للترتيب من قبل خادم التجارة، أو -1، إذا تم رفض طلب التجارة من قبل الخادم أو محطة العميل. من أجل الحصول على معلومات حول أسباب رفض طلب التجارة، يجب عليك استخدام وظيفة جيتلاستيرور () (أدناه سوف ننظر بعض الأخطاء الأكثر شيوعا).
الرمز هو اسم الأمن المتداول. كل رمز يتوافق مع قيمة متغير سلسلة. على سبيل المثال، بالنسبة لزوج العملات من اليورو / الدولار الأمريكي، هذه القيمة هي & أمب؛ كوت؛ يوروس & أمب؛ كوت ؛. إذا تم فتح الطلب لرمز مفهومة، فيمكن تحديد هذه المعلمة بشكل صريح: & أمب؛ كوت؛ يوروس & أمب؛ كوت ؛، & أمب؛ كوت؛ ورغب & أمب؛ كوت ؛، إلخ. ومع ذلك، إذا كنت ستستخدم مستشار الخبراء في نافذة أي رمز آخر، يمكنك استخدام الدالة القياسية الرمز (). ترجع هذه الدالة قيمة سلسلة تتوافق مع اسم الرمز، في الإطار الذي يتم تنفيذ إي أو البرنامج النصي.
سمد هو نوع العملية. ويمكن تحديد نوع العملية على أنها ثابت محدد مسبقا أو قيمته، ووفقا لنوع التجارة.
حجم هو كمية من الكثير. لأوامر السوق، يجب عليك دائما التحقق من حساب للكفاية. بالنسبة للأوامر المعلقة، كمية اللوت ليست محدودة.
السعر هو السعر المفتوح. يتم تحديدها وفقا للمتطلبات والقيود المقبولة لصنع الصفقات (انظر خصائص النظام وقواعد لجعل الصفقات). إذا لم يتم العثور على السعر المطلوب لفتح أوامر السوق في مؤشر أسعار أو إذا كان قد عفا عليها الزمن إلى حد كبير، يتم رفض طلب التجارة. ومع ذلك، إذا كان السعر عفا عليه الزمن، ولكن موجودة في مؤشر أسعار السعر وإذا كان الانحراف عن السعر الحالي يتراوح ضمن قيمة الانزلاق، سيتم قبول هذا الطلب التجاري من قبل محطة العميل وإرسالها إلى خادم التجارة.
الانزلاق هو الحد الأقصى المسموح به الانحراف من طلب سعر فتح الطلب من سعر السوق لأوامر السوق (نقطة). لا تتم معالجة هذه المعلمة لوضع الأوامر المعلقة.
ستوبلوس هو سعر الإغلاق المطلوب الذي يحدد الحد الأقصى للخسارة المسموح بها للتجارة المعطاة. يتم تعيينه وفقا للمتطلبات والقيود المقبولة لصنع الصفقات (انظر خصائص النظام والقواعد لجعل الصفقات والمتطلبات والقيود في جعل الصفقات).
تاكيبروفيت هو سعر الإغلاق المطلوب الذي يحدد الحد الأقصى للربح للتجارة معين. يتم تعيينه وفقا للمتطلبات والقيود المقبولة لصنع الصفقات (انظر خصائص النظام والقواعد لجعل الصفقات والمتطلبات والقيود في جعل الصفقات).
التعليق هو نص تعليق النظام. يمكن تعديل الجزء الأخير من التعليق بواسطة خادم التجارة.
السحر هو عدد السحر من النظام. ويمكن استخدامه كمعرف هوية معرف من قبل المستخدم. في بعض الحالات، هي المعلومات الوحيدة التي تساعدك على معرفة أن النظام ينتمي إلى برنامج واحد أو آخر فتحه. يتم تعيين المعلمة من قبل المستخدم. قيمته يمكن أن تكون هي نفسها أو غير قيمة هذه المعلمة من أوامر أخرى.
انتهاء الصلاحية هو تاريخ انتهاء صلاحية الطلب. حالما يأتي هذا اليوم، سيتم إغلاق النظام المعلقة تلقائيا على جانب الملقم. في بعض الخوادم التجارية، قد يكون هناك حظر لتحديد تاريخ انتهاء صلاحية الأوامر المعلقة. في هذه الحالة، إذا حاولت تعيين قيمة غير صفرية للمعلمة، سيتم رفض الطلب.
arrow_color هو لون السهم الافتتاحي في المخطط. إذا كانت هذه المعلمة غير موجودة أو إذا كانت قيمتها CLR_NONE، لا يظهر السهم الافتتاحي في المخطط على الإطلاق.
في بعض الخوادم التجارية، يمكن أن يكون هناك حد محدد للمبلغ الإجمالي للأوامر المفتوحة والمعلقة. إذا تم تجاوز هذا الحد، سيتم رفض أي طلب تجاري ينطوي على فتح أمر السوق أو وضع أمر معلق من قبل خادم التجارة.
فتح أوامر السوق.
قد تبدو الوظيفة أورديرسند () في البداية معقدة جدا. ومع ذلك، فإن جميع المعلمات تعتبر بسيطة جدا ومفيدة ويمكن استخدامها بنجاح في التداول الخاص بك. من أجل أن نرى هذا لأنفسنا، دعونا ننظر أبسط الاختلاف في كيفية استخدام وظيفة التجارة أوردرسند () لفتح نظام السوق.
أولا وقبل كل شيء، يجب أن نلاحظ أن وظيفة أوردرسند () معلمات محددة مسبقا (انظر استدعاء وظيفة ووظيفة الوصف وعودة المشغل). وهذا يعني أن هذه الوظيفة يمكن استخدامها في وضع مبسط باستخدام الحد الأدنى المطلوب من المعلمات. وهذه المعلمات هي كما يلي:
رمز هو المعلمة اللازمة، لأننا بحاجة إلى معرفة أين لفتح النظام. دعونا نصنا ينطوي ضمنا إمكانية لفتح أمر في أي نافذة رمز. في هذه الحالة، سوف نقوم باستبدال الوظيفة القياسية الرمز () مثل هذه المعلمة؛
سمد - على سبيل المثال، دعونا فتح أمر شراء. في هذه الحالة، وسوف نحدد المعلمة OP_BUY.
حجم - يمكننا تحديد أي قيمة تسمح بها القواعد؛ دعونا فتح أمر صغير، على سبيل المثال، من 0.1 لوت؛
السعر - سعر فتح للنظام شراء هو السعر أسك؛
وعادة ما يتم تحديد الانزلاق كما 0-3 نقطة. دعنا نحدد 2؛
ستوبلوس - أوامر وقف يمكن وضعها على مسافة ليست أقرب من الحد الأدنى المسموح به المسافة، عادة 5 نقاط (انظر المتطلبات والقيود في جعل الصفقات). دعونا وضع أوامر وقف على مسافة 15 نقطة من سعر الإغلاق، وهي: محاولة - 15 * نقطة؛
تاكبروفيت - دعونا مكان أوامر وقف على مسافة 15 نقطة من سعر الإغلاق، وهي: المزايدة + 15 * نقطة؛
وفيما يلي أبسط النصي، simpleopen. mq4، الذي يهدف إلى فتح أمر شراء:
إذا قمت بتشغيل هذا البرنامج النصي للتنفيذ، وسوف تعمل، في معظم الحالات. يتكون البرنامج النصي من وظيفة خاصة واحدة تحتوي على وظيفة فتح الطلب أوردرسند () وعودة المشغل. دعونا نصف خوارزمية التنفيذ لخطوط البرامج والأحداث المتعلقة بذلك.
1. يعلق المستخدم النص البرمجي على نافذة الرمز عن طريق سحب اسم البرنامج النصي باستخدام زر الماوس من & أمب؛ كوت؛ المستكشف & أمب؛ كوت؛ نافذة من محطة العميل في نافذة الرمز، والذي يريد أو فتح نظام السوق شراء 0.1 لوت ومع أوامر وقف التي هي على مسافة 15 نقطة من سعر السوق.
2. في لحظة إرفاق النص إلى نافذة الرمز، محطة العميل يمر عنصر التحكم (فقط عن طريق إطلاقه) o بدء وظيفة خاصة () (هنا يجب أن نذكر بإيجاز أن بداية () من البرنامج النصي أطلقت في لحظة إرفاق النص إلى نافذة الرمز، في حين أن بداية () من إي يتم إطلاقها في اللحظة التي أقرب دخل علامة للرمز).
3. في إطار تنفيذ بداية الدالة الخاصة ()، يتم تمرير عنصر التحكم إلى السطر الذي يستدعي وظيفة فتح الطلب:
قبل تنفيذ هذه الوظيفة، يحسب البرنامج قيم جميع المعلمات الرسمية:
3.1. نحن نعلق السيناريو على نافذة ور / USD. In هذه الحالة، فإن وظيفة رمز قياسي () سيعود قيمة سلسلة اليورو مقابل الدولار الأميركي.
3.2. اسمحوا أسك = 1.2852 ومزايدة = 1.2850 اعتبارا من لحظة استدعاء هذه الوظيفة.
3.3. قيمة ستوبلوس، في هذه الحالة، سوف تكون: 1.2850-15 * 0.0001 = 1.2835، في حين تاكيبروفيت = 1.2865.
4.Execution من وظيفة أوردرسند ():
4.1. شكلت الدالة طلب تجاري لفتح أمر واجتازت هذا الطلب إلى محطة العميل.
4.2. اجتازت الدالة عنصر التحكم إلى الوحدة التابعة للزبون في نفس الوقت مع تمرير طلب التداول، لذلك تم إيقاف تنفيذ البرنامج.
4.3. فحصت محطة العميل طلب التجارة المستلم. لم يكشف أي معلمات غير صحيحة، لذلك أرسلت الطلب إلى الملقم.
4.4. تلقى الخادم طلب التجارة، فحصه، لم يكشف عن أي معلمات غير صحيحة، وقررت تنفيذ الطلب.
4.5. نفذ الخادم الطلب من خلال إجراء معاملة في قاعدة البيانات الخاصة به وأرسل المعلومات حول هذا الطلب الذي تم تنفيذه إلى الجهاز الطرفي العميل.
4.6. تلقت محطة العميل المعلومات حول أن آخر طلب التجارة قد تم تنفيذها، وعرض هذا الحدث في إطار المحطة الطرفية وفي إطار الرمز، وعاد عنصر التحكم إلى البرنامج.
4.7. وبمجرد تلقي السيطرة، واصل البرنامج العمل من الموقع، الذي كان قد تم تمرير السيطرة سابقا إلى محطة العميل (والتي تم إرجاعها في وقت لاحق).
5. يتم تمرير السيطرة في البرنامج إلى المشغل التالي - المشغل 'العودة'.
6. تنفيذ "عودة" المشغل النتائج في الخروج من بداية وظيفة ()، وبالتالي، في إنهاء تنفيذ البرنامج (ينبغي التذكير بأن البرامج النصية استكمال عملهم بعد أن يتم تنفيذها) - يتم إرجاع عنصر التحكم إلى محطة العميل.
وهكذا، فإن البرنامج النصي قد حققت الغرض المقصود منها: النظام يتم فتح شراء مع المعلمات مسبقا. استخدام البرامج النصية مريحة للغاية، إذا كنت في حاجة لأداء عملية صغيرة لمرة واحدة. في هذه الحالة، واستخدام السيناريو هو معقول جدا. وفقا للخطوة 4.6، يمكن للتاجر رؤية النظام في الشاشة.
الشكل 81. ترتيب وضعها النصي simpleopen. mq4.
الأحداث ليست دائما أمر كما هو مبين أعلاه. من الممكن أن يتم رفض طلب التجارة من قبل محطة العميل أو من قبل الملقم. لنحاول إجراء بعض التجارب، على سبيل المثال، تغيير اسم الرمز: حدد & أمب؛ كوت؛ غبوسد & أمب؛ كوت؛ صراحة (وهذا أمر مسموح به تماما). سوف نحصل على برنامج مع مجال الاستخدام المحدود:
دعونا إطلاق البرنامج النصي في نفس نافذة رمز ور / أوسد. وكان القصد من البرنامج النصي لفتح أمر في إطار غب / أوسد. ومع ذلك، بعد أن تم إرفاقه بنافذة يورو / أوسد، لم يتم فتح أي أمر في نافذة غب / أوسد.
ومن عيوب هذه البرامج تقييدها الوظيفي. في هذه الحالة، بمجرد إرفاق البرنامج النصي إلى نافذة الرمز، المستخدم ينتظر فقط لفتح النظام. ومع ذلك، لم يتم فتح الأمر. المستخدم ليس على علم بالسبب في ذلك: إما أنه ناتج عن خطأ حسابي في رمز البرنامج أو طلب التجارة هو & أمب؛ كوت؛ فقدت & أمب؛ كوت؛ عن طريق الطريق إلى الخادم، أو تم رفض طلب التجارة من قبل محطة العميل منذ وقت طويل (يعتقد المستخدم لا يزال ينتظر)، أو هناك سبب آخر.
من أجل توفير المستخدم (و، وهو أيضا مهم جدا، البرنامج) مع المعلومات حول الأحداث المتعلقة بتنفيذ طلب التجارة، فمن الضروري لمعالجة الأخطاء.
حدث خطأ أثناء المعالجة.
خاصية هامة جدا من محطة العميل هو أنه إذا حدث خطأ أثناء تنفيذ أحد التطبيقات، محطة العميل لا يتوقف تنفيذ البرنامج. وعادة ما تحدث الأخطاء بسبب النقص في الخوارزمية المستخدمة في التطبيق. في بعض الحالات، تحدث أخطاء بسبب بعض العوامل الخارجية (كما تتعلق بالبرنامج). الأسباب الداخلية للأخطاء هي أي انتهاكات لمتطلبات MQL4 أو قواعد التداول، على سبيل المثال، باستخدام أسعار غير صالحة. الأسباب الخارجية هي تلك التي لا علاقة لبرنامج التطبيق، على سبيل المثال، اتصال توقف.
إذا حدث خطأ عند تنفيذ برنامج، سيستمر البرنامج قيد التشغيل، في حين أن محطة العميل سوف تولد قيمة رمز الخطأ المتوفرة للبرنامج من خلال وظيفة جيتلاستيرور ().
وظيفة جيتلاستيرور ()
تقوم الدالة بإرجاع رمز الخطأ الذي تم حدوثه حديثا، ثم قيمة المتغير الخاص last_error الذي يقوم بتخزين رمز آخر خطأ سيتم الصفر. ستعود مكالمة جيتلاستيرور () اللاحقة 0.
من الآن فصاعدا، سوف نقوم بتحديد كل الأخطاء التي تحدث بواسطة هذا الرمز. يمكن أن تحدث عدة أخطاء أثناء تنفيذ البرنامج؛ وظيفة جيتلاستيرور () يسمح لنا للحصول على قيمة رمز واحد فقط منهم، وآخر خطأ، وهذا هو السبب في كل مرة عندما كنا بحاجة إلى هذه المعلومات، فمن المستحسن استخدام وظيفة جيتلاستيرور () مباشرة بعد خطوط البرنامج، والتي قد يحدث خطأ.
خطأ 130. أوامر إيقاف غير صالحة.
لا يقوم البرنامج النصي الأخير بتحليل الأخطاء، لذا يظل المستخدم جاهلا حول نتائج تنفيذ وظيفة فتح الطلب. في التباين البسيط من استخدام وظيفة جيتلاستيرور ()، يمكن للبرنامج تحليل خطأ ومجرد إبلاغ المستخدم حول هذا الموضوع. إذا قمت بإطلاق البرنامج النصي confined. mq4 للتنفيذ في إطار ور / أوسد، سيحدث خطأ.
لقد أضفنا خطا واحدا فقط، ولكن خطا مفيدا جدا في هذا النص البرمجي:
الدالة جيتلاستيرور () ترجع رمز الخطأ الأخير، بينما يتم استخدام التنبيه () لعرض هذه القيمة على الشاشة. بعد أن تم إرفاق سكريبت confq. mq4 إلى نافذة رمز ور / أوسد، سيتم تنفيذ البرنامج النصي، الأمر الذي سيؤدي إلى أن المستخدم سوف نرى الرسالة التالية:
الشكل 82. رمز الخطأ الذي تم الحصول عليه عند تنفيذ البرنامج النصي confined. mq4 في نافذة يورو / أوسد.
يمكنك أن تجد في الملاحق رموز الأخطاء التي يمكن أن تحدث عند تنفيذ البرنامج. في هذه الحالة، حدث خطأ 130 (أوامر توقف غير صالحة). وهذا يعني أن قيم المعلمات الرسمية المستخدمة في الدالة أورديرسند () لا تتوافق مع القيود المحددة في المتطلبات والقيود في جعل الصفقات. على وجهة نظر أقرب، يمكننا أن نرى السبب الذي تسبب في الخطأ: القيم الحالية لأسعار السوق يتم أخذ العطاءات و أسك من نافذة الرمز، التي يتم إرفاق البرنامج النصي، وهي من نافذة يور / أوسد. ومع ذلك، يتم استخدام هذه القيم لتشكيل طلب التجارة ل غب / أوسد. نتيجة لذلك، بالسعر الحالي لل غب / أوسد، أسك = 1.9655، قيمة تاكيبروفيت لنظام السوق الذي تم فتحه حديثا تبين أن تساوي (لعروض اليورو / الدولار الأمريكي = 1.2930) 1.2930 + 15 * 0.0001 = 1. 2945، وهو أقل بكثير من القيمة الدنيا المسموح بها، أي أنها باطلة.
في هذه الحالة، حدث خطأ خوارزمي. من أجل تصحيحه، يجب عليك استخدام القيم الصحيحة لأسعار الرموز. يمكنك الحصول على هذه القيم باستخدام الدالة ماركيتينفو (). البرنامج النصي المحسنة. mq4 الذي يفتح أوامر السوق ل غب / أوسد يمكن إطلاقها في أي نافذة رمز:
لا يحدث الخطأ أعلاه عند تنفيذ هذا البرنامج النصي، لذلك تنفيذ يؤدي إلى عرض الرسالة المقابلة: 0 (صفر). وهذا يعني أن الدالة جيتلاستيرور () ترجع القيمة 0، بمعنى أنه لم يتم اكتشاف أية أخطاء في تنفيذ طلب التداول من طرف العميل.
دعونا أيضا النظر في بعض الأخطاء الشائعة الأخرى. لهذا، دعونا نعود إلى فكرة فتح أمر باستخدام برنامج نصي في نفس النافذة، التي يتم إرفاق البرنامج النصي.
خطأ 129. السعر غير صالح.
في بعض الحالات، يحدث خطأ بسيط - يتم تحديد قيمة خاطئة من الاقتباس في اتجاهين كما السعر المفتوح. أوامر السوق شراء معروفة (انظر المتطلبات والقيود في جعل الصفقات) ليتم فتحه بسعر الطلب. وفيما يلي عرض ما يحدث إذا كنا، عن طريق الخطأ، تحديد سعر العطاء في البرنامج النصي misaken. mq4:
قبل إرسال الطلب التجاري إلى الخادم، تقوم محطة العميل بتحليل ما إذا كانت القيم المطلوبة لأوامر السعر والوقف تتطابق مع القيم المسموح بها. During this check, the requested open-order price will be detected as invalid, so the client terminal will not send the trade request to the server for execution, and function GetLastError() will return the value of 129 (see Error Codes). The execution of the script will result in appearance of the corresponding error message:
Fig. 83. Error 129 (invalid price) at the execution of mistaken. mq4.
Error 134. Not Enough Money for Making a Trade.
A similar result (error 134) will be obtained, if there are not enough free money on the account to open an order. You can know about the amount of free money required to open 1 lot for buying of each symbol using the function MarketInfo(symbol_name, MODE_MARGINREQUIRED).
The required amount of free assets for opening a one-lot order is inversely proportional to the amount of the provided leverage. At the same time, the cost of 1 point in the deposit currency for a symbol does not relate to the provided leverage.
Table 3. Possible combinations of 1-lot cost and 1-point cost (deposit currency is US dollar).
Prices are given as of 16.12.2007.
Let's briefly consider some common methods of calculating the cost of 1 lot and of 1 point.
Dealing Center 1 (most common)
For the symbols that have USD reciprocally, the cost of 1 lot is equal to the current price of the corresponding two-way quote multiplied by 1000, whereas the cost of 1 point is equal to $10.
For the symbols that have USD as their numerator, the cost of 1 lot is equal to $1000.00, whereas the cost of 1 point is inversely proportional to the current quote and equal to 1/(Bid). For example, for USD/CHF, at Bid= 1.2466, the cost of 1 point is 1/1. 2466 = 8.02.
For cross rates, the cost of 1 lot is calculated in the same way as that of the numerator currency, whereas the cost of 1 point is calculated in the same way as that for the denominator currency. For example, for EUR/CHF, the cost of 1 lot is 129.40 (as for EUR/USD), whereas the cost of 1 lot is 8.02 (as for USD/CHF).
Dealing Center 2.
In some dealing centers, considering the same rule of calculating costs, the values of costs can be different for some symbols. For example, the cost of 1 lot and the cost of 1 point may be proportionally increased or decreased. For example, this factor can be 0.75 for GBP/USD, whereas it is 2.0 for AUD/USD. Such representation of cost values does not result in any economical changes; in such cases, you just have to consider this special feature when calculating costs of your orders. You should also pay attention to the fact that the 1-lot costs for buying and selling of assets at cross rates are the same.
Dealing Center 3.
there are also dealing centers that set the cost of 1 lot as $1000.00 for any symbol. At the same time, the cost of 1 point remains proportional to the current prices. This implies setting a special leverage for each symbol.
Generally, there can exist other principles of building cost values. It is needless to say that, prior to start real trading, you should find out about the calculation method for any specific dealing center and consider this method in your coding.
At coding, it is very important to consider the principle of forming free assets. Free margin (assets) is the amount of money that is available for making trades.
Let's consider an example. Let Balance be 5000.00, there are no open orders in the terminal. Let's open a Buy order of 1 lot in dealing center 3. The following rule is stated in dealing center 3:
The terminal window will display the information about the opened order. Please note that the margin makes 1000.00, order profit is -30.00, therefore the amount of free assets (free margin) makes 5000-1000-30=3970.00:
Fig. 84. Order Buy in the terminal window.
After a Sell order of the same value has been opened, free margin will increase. The smaller integrated cost of one-direction market orders makes 1000.00, so the free margin will increase by 1000.00. In Fig. 85, you can see the situation where the differently directed orders cost the same value, so the entire sum of orders costs is released for trading.
Fig. 85. Orders Buy and Sell in the terminal window.
After a Sell order of smaller cost has been opened, free margin will increase, as well. In this case, the smaller integrated cost of one-direction market orders makes 700.00, so the free margin will increase by 700.00, whereas the margin makes the difference between the integrated costs of differently directed orders (Fig. 86).
Fig. 86. Orders Buy and Sell in the terminal window.
If one more order Sell of 0.1 lot is opened (cost 100.00), the smaller integrated cost of one-direction market orders makes 700.00 + 100. 00 = 800.00. Thus, the margin (as compared to the situation where only one order Buy is opened) decreases by 800.00. As compared to the situation shown in Fig. 86, the margin decreases, whereas the equity increases by 100.00 (see Fig. 87).
Fig. 87. Orders Buy and Sell in the terminal window.
Free Margins shown in Fig. 86 and Fig. 87 differ from each other by more than 100.00, since the integrated profit of open orders has changed with change in the current price (the difference makes 8.00).
If we make similar manipulations in another dealing center, it's easy to see that the above order of forming the value of free margin is not kept. For some dealing centers, the following rule is effective:
For example, if you have previously opened an order Buy of 4 lots for USD/JPY in dealing center 2, the amounts of equity and free margin will not change at opening of a 4-lot Sell order.
Fig. 88. The presence of differently directed orders does not release equity.
You can make calculations to know whether the current equity is enough for opening of an order. You can also use the function AccountFreeMarginCheck() that returns the value of free margin to remain after opening of a market order with certain amount of lots for a certain symbol. If the returned value is equal or more than 0, there are enough money on the account. If it is less than 0, then the order of this volume and for this symbol cannot be opened, the client terminal will return error 134.
In order to know the conditions offered by the dealing center and the amount of free margin required for opening of an order with the volume of 1 lot, you can use a simple script, conditions. mq4:
Here, the expression of.
allows us to calculate the difference between the available free margin and the free margin that will remain after opening of the order.
If we start this script for execution, when there are no market orders in the terminal, we can obtain the currently required amount of equity to be available and enough for opening of an order with the volume of 1 lot for buying and for selling:
Fig. 89. 1-Lot cost for different symbols, obtained using conditions. mq4.
If we launch the script conditions. mq4 for execution in the window of the symbol, for which there are opened market orders, we can obtain other values, it depends on the calculation methods accepted in one or another dealing center.
Other Errors and Function MarketInfo()
There are other limitations related to determining of values of parameters of function OrderSend(). This are the maximum and the minimum order price step, the maximum and the minimum order price value, etc. The use of function MarketInfo() allows you to get various information about symbols that are shown in the window "Market Watch" of the client terminal.
Function MarketInfo()
The function returns various information about symbols listed in the window "Market Watch" of the client terminal. Parts of information about the current symbol are stored in predefined variables.
symbol - the name of a symbol;
type - request identifier that determines the type of information to be returned. It can be either value of those of request identifiers (see Function MarketInfo Identifier).
Some errors may occur for the reasons on the server side. For example, in the conditions of transient prices, your broker may increase the minimum distance that limits placement of pending orders and stop orders. Further, at a calm market, the broker can decrease this distance again. Thus, the values of some parameters can be changed at any time.
For the program to operate in a stable manner, with the minimal amount of rejected requests, you should update the parameters of information environment used by the program using the functions MarketInfo() and RefreshRates() before you execute the function OrderSend().
The script consists of one special function start() (blocks 1-10). In block 1-2, the values are set, at which the order must be opened. Block 2-9 represents cycle operator while(), in which all necessary calculations are performed. This cycle is included into the code to allow the program make several attempts to open the order. In block 2-3, the environment variables are updated. In blocks 3-4-5-6, the amount of lots and the requested prices of stop orders are calculated. In block 7-8-9, errors are processed. In block 9-10, the message is printed that the script has completed its operations.
Let's consider some special features of a program code. It's easy to see that the trade request is formed in block 6-7. In block 3-4, the amount of lots is calculated. It also considers the situation when the available free margin is insufficient to open even an order with the minimum amount of lots. This is why, in block 3-4, after printing the message about insufficient money, we exit cycle 2-9 using the operator 'break'. The control is passed to block 9-10, and script completes its operations. The message in block 9 is unnecessary. It is given here just to help users of the code to find tails or heads in the script - when is the end of the program's operations and when is the pause caused by delays in the network or on the server.
If the free margin is sufficient for opening of the order, the control will be passed to block 4-5 and then to block 5-6. In those blocks, there is no cycle exit. This means that, for any minimum distance set by the broker, there will be corresponding stop levels found. In block 1-2, 3 points were chosen for TP by design. The majority of brokers set the minimum distance as 5 points. In block 5-6, the program will discover that the preset value is less than the allowed one. The program will set such a value of the stop-order price that does not contradict the limitation.
then the control is passed to block 6-7 to open an order. In the first line of this block, the message is printed. The trade request is formed only in the second line. A question arises: Why do we declare about forming a request before it is really formed? We could give the instruction first and then inform the user about it. The answer to this question is closely related to the technology of sending the request to the client terminal and then to the server (see Fig. 66). In our case, the trade request is formed in the function OrderSend() specified in the right part of the assignment operator. The trade request as such is created and sent to the server in the function, whereas the assignment operation will be executed in the assignment operator after the server has returned a reply about the "fate" of the request. Thus, the only possibility to inform the user about the start of events related to the request is to show the message before the assignment operator, in the right part of which the trade function is specified.
Sooner or later, the client terminal will pass the control back to the program, the assignment operator in block 6-7 will be executed, which will result in that the 'ticket' variable will take a value, and the control will be passed further - to error-analyzing block 7-8-9.
If the order is opened on the server, the number (ticket) of the opened order will be assigned to the variable 'ticket'. In this case, it means that the script has fulfilled its task and there is no need for the program to continue operations. In block 7-8, we use the operator 'break' to exit cycle while(). The control is passed to block 9-10 (outside the cycle), and the program completes its operations.
However, if the attempt to open an order fails, the control will be passed to block 8-9 for error analyzing. Two types of errors are considered here: those that still allow to hope for successful opening of the order and those, the occurrence of which means unambiguous termination of the program execution. The variable 'Error' is assigned with the code of the last error, in this case, of the error that has been returned by the server or by the client terminal at execution of function OrderSend().
In the first operator 'switch' of block 8-9, overcomable errors are considered. Each error in this group is processed differently. For example, if the price has changed (error 135), it is sufficient just to update the environment parameters using RefreshRates() and repeat the attempt to open an order. If the error "No prices" (error 136) occurs, there is no sense to re-send the request to the trade server. In this case, we should wait for a new tick to income (there are no prices on the server at this time, either) and, only after that, retry to open an order. This is why there is a waiting cycle in the block that processes error 136. This waiting cycle will be interrupted as soon as a new tick incomes. We exit the operator switch() using operator 'continue' that breaks the current iteration of the cycle while() and starts a new one.
Critical errors are processed in another way. If such an error occurs, the program will just inform the user about it and terminate operations. For this purpose, we use the operator 'break' (the last one in block 8-9) that breaks the cycle while(), which results in termination of the program.
We should note particularly that, in this example, we don't consider all errors without exceptions, by design. In this case, we are not aiming at providing the user with a ready-made program. It is very important that the programmer him or herself analyzes other errors and decides independently what else errors and in what way should be processed in the program. At the same time, some errors must not be processed, because the program is built in such a way that it does not imply occurrence of some errors, for example, in this case, of errors 129 and 130..
In the above example, there is a small algorithmic error that cannot be found at neither compilation nor in the client terminal, nor on the server.
Note the code in block 4-5:
As a result of calculations in the body of the operator if(), the variable Dist_SL can take a new value. Suppose a normal minimum distance makes 5 points. Suppose that at the first execution (in quick market), this value is set as 20 points on the server. The variable Min_Dist will take the value of 20.
Also suppose that the formed trade request has been rejected due to error 136. The program will track the new tick in block 8-9. Within this period of time, the value of the minimum distance can be changed on the server, for example, decreased to 10 points. At the moment when the new tick incomes, the control will be passed to the new cycle, and the new value of the variable Min_Dist, equal to 10, will be calculated. However, the value of the variable Dist_SL remains unchanged and equal to 20 (block 4-5 is coded in such a way that the value of Dist_SL can only increase). In order to exclude this algorithmic error, you should write block 4-5 in such a manner that only the value that depends on the situation would change (in this case, it is the value of SL), whereas the value of Dist_SL wouldn't change, for example, like this:
A similar change must be made in block 5-6 for the other stop order.
Placing Pending Orders.
There is no crucial difference in programming between placing of pending orders and placing of market ones.
You should only note the fact that the assets necessary to modify the pending order into a market one are checked for their sufficiency neither by the client terminal or by the server. They are not limited either. You can place a pending order for the amount that many times exceeds the amount of money available on your account. Such an order can be kept for indefinite periods of time. When the market price reaches the level of the open price requested for the pending order, there will be a check made on the server. If there are enough money on the account for opening this order, it will be modified into a market one (opened). If not, it will be deleted.
Function WindowPriceOnDropped()
In MQL4, we have a very important feature - we can determine programmatically in the symbol window the coordinates of the location, at which an Expert Advisor or a script has been placed, if they have been attached using a mouse. For example, we can obtain the ordinate value of attachment of the script using the function WindowPriceOnDropped().
The function returns the value of the price in the point of the chart, in which the EA or the script has been dropped. The value will be true only, if the EA or the script has been moved using a mouse ('drag and drop'). This value is not defined for custom indicators.
The structure of the script openbuystop. mq4 is built in the same way as that of the script openbuy. mq4, so there is no need to describe it in details. We will only turn our attention to basic differences between these programs.
The price, at the level of which the script has been attached to the symbol window, is determined in the line:
Subsequently, the value of this variable is kept unchanged during the entire period of operation of the program. This is necessary, if the script fails opening an order more than. At the same time, the script will every time calculate the requested value of the price close to the location (to the price level) where user attached the script.
It is easy to see that, in the script openbuystop. mq4, there is no check for sufficiency of free margin for opening of an order, but there is a check of the order open price (block 3-4). If the calculated value of the variable Price does not comply with the requirements of placing of a pending Stop order (see Order Characteristics and Rules for Making Trades, Requirements and Limitations in Making Trades), this value will be recalculated.
In the block of error processing, there are some small changes, as well: some errors are not considered, but the codes of some other errors are processed.
Reasonable Limitations.
As related to the use of trade functions, we should pay attention to some more general limitations. For example, error 146 occurs only, if several programs that form trade requests work in one symbol window. In our opinion, this practice is allowable, but not reasonable.
It would be much more efficient to create and use one trading program that would consider all special features of trading. If we use only one trading program, it is just impossible to form several trade request simultaneously. Moreover, the entire algorithm could be organized much better in such a program: consider the probability of successful trades and re-allocate money correctly, according to this probability.
For performing of trades, it is more efficient to use a full-scaled Expert Advisor, whereas a script would be better used for one-time calculations or for displaying some useful information on the screen. At the same time, if the trader does not use an Expert Advisor for automated trading, the use of scripts turns out to be more efficient than working with orders using the control panel of the client terminal.
إدارة الأموال.
2.1 Level 1 Forex Intro 2.2 Level 2 Markets 2.3 Level 3 Trading.
3.1.1 Technical Analysis for Forex 3.1.2 Moving Averages in Forex 3.1.3 Identifying Trends in Forex 3.1.4 Resistance & Support 3.1.5 Double Tops And Double Bottoms 3.1.6 Bollinger Bands 3.1.7 MACD 3.2.1 U. S. Dollar 3.2.2 Euro 3.2.3 Japanese Yen 3.2.4 British Pound 3.2.5 Swiss Franc 3.2.6 Canadian Dollar 3.2.7 Australian/New Zealand Dollar 3.2.8 South African Rand 3.2.9 The Employment Situation Report 3.2.10 Unemployment Insurance Weekly Claims 3.2.11 The Fed 3.2.12 Inflation 3.2.13 Retail Sales 3.3.1 EUR-USD Pair 3.3.2 Trading Rules 3.3.2.1 Never Let a Winner Turn Into a Loser 3.3.2.2 Logic Wins; Impulse Kills 3.3.2.3 Never Risk More Than 2% Per Trade 3.3.2.4 Trigger Fundamentally, Enter and Exit Technically 3.3.2.5 Always Pair Strong With Weak 3.3.2.6 Being Right but Being Early Simply Means That You Are Wrong 3.3.2.7 Know the Difference Between Scaling In and Adding to a Loser 3.3.2.8 What Is Mathematically Optimal Is Psychologically Impossible 3.3.2.9 Risk Can Be Predetermined; Reward Is Unpredictable 3.3.2.10 No Excuses, Ever 3.3.3 USD-JPY Pair 3.3.4 GBP-USD Pair 3.3.5 USD-CHF Pair 3.3.6 Leverage 3.3.7 Fundamental Speed Strategy 3.3.8 Carry Trade 3.3.9 Money Management 3.3.10 Forex Futures 3.3.11 Forex Options.
5.1 Short Term 5.2 Medium Term 5.3 Long Term.
Put two rookie traders in front of the screen, provide them with your best high-probability set-up, and for good measure, have each one take the opposite side of the trade. More than likely, both will wind up losing money. However, if you take two pros and have them trade in the opposite direction of each other, quite frequently both traders will wind up making money - despite the seeming contradiction of the premise. What's the difference? What is the most important factor separating the seasoned traders from the amateurs? The answer is money management.
Like dieting and working out, money management is something that most traders pay lip service to, but few practice in real life. The reason is simple: just like eating healthy and staying fit, money management can seem like a burdensome, unpleasant activity. It forces traders to constantly monitor their positions and to take necessary losses, and few people like to do that. However, as Figure 1 proves, loss-taking is crucial to long-term trading success.
Amount of Return Necessary to Restore to Original Equity Value.
Figure 1 - This table shows just how difficult it is to recover from a debilitating loss.
Note that a trader would have to earn 100% on his or her capital - a feat accomplished by less than 1% of traders worldwide - just to break even on an account with a 50% loss. At 75% drawdown, the trader must quadruple his or her account just to bring it back to its original equity - truly a Herculean task!
The Big One.
Although most traders are familiar with the figures above, they are inevitably ignored. Trading books are littered with stories of traders losing one, two, even five years' worth of profits in a single trade gone terribly wrong. Typically, the runaway loss is a result of sloppy money management, with no hard stops and lots of average downs into the longs and average ups into the shorts. Above all, the runaway loss is due simply to a loss of discipline.
Most traders begin their trading career, whether consciously or subconsciously, visualizing "The Big One" - the one trade that will make them millions and allow them to retire young and live carefree for the rest of their lives. In forex, this fantasy is further reinforced by the folklore of the markets. Who can forget the time that George Soros "broke the Bank of England" by shorting the pound and walked away with a cool $1-billion profit in a single day? But the cold hard truth for most retail traders is that, instead of experiencing the "Big Win", most traders fall victim to just one "Big Loss" that can knock them out of the game forever.
Learning Tough Lessons.
Traders can avoid this fate by controlling their risks through stop losses. In Jack Schwager's famous book "Market Wizards" (1989), day trader and trend follower Larry Hite offers this practical advice: "Never risk more than 1% of total equity on any trade. By only risking 1%, I am indifferent to any individual trade." This is a very good approach. A trader can be wrong 20 times in a row and still have 80% of his or her equity left.
The reality is that very few traders have the discipline to practice this method consistently. Not unlike a child who learns not to touch a hot stove only after being burned once or twice, most traders can only absorb the lessons of risk discipline through the harsh experience of monetary loss. This is the most important reason why traders should use only their speculative capital when first entering the forex market. When novices ask how much money they should begin trading with, one seasoned trader says: "Choose a number that will not materially impact your life if you were to lose it completely. Now subdivide that number by five because your first few attempts at trading will most likely end up in blow out." This too is very sage advice, and it is well worth following for anyone considering trading forex.
Money Management Styles.
Generally speaking, there are two ways to practice successful money management. A trader can take many frequent small stops and try to harvest profits from the few large winning trades, or a trader can choose to go for many small squirrel-like gains and take infrequent but large stops in the hope the many small profits will outweigh the few large losses. The first method generates many minor instances of psychological pain, but it produces a few major moments of ecstasy. On the other hand, the second strategy offers many minor instances of joy, but at the expense of experiencing a few very nasty psychological hits. With this wide-stop approach, it is not unusual to lose a week or even a month's worth of profits in one or two trades. (For further reading, see Introduction To Types Of Trading: Swing Trades .)
To a large extent, the method you choose depends on your personality; it is part of the process of discovery for each trader. One of the great benefits of the forex market is that it can accommodate both styles equally, without any additional cost to the retail trader. Since forex is a spread-based market, the cost of each transaction is the same, regardless of the size of any given trader's position.
For example, in EUR/USD, most traders would encounter a 3 pip spread equal to the cost of 3/100 th of 1% of the underlying position. This cost will be uniform, in percentage terms, whether the trader wants to deal in 100-unit lots or one million-unit lots of the currency. For example, if the trader wanted to use 10,000-unit lots, the spread would amount to $3, but for the same trade using only 100-unit lots, the spread would be a mere $0.03. Contrast that with the stock market where, for example, a commission on 100 shares or 1,000 shares of a $20 stock may be fixed at $40, making the effective cost of transaction 2% in the case of 100 shares, but only 0.2% in the case of 1,000 shares. This type of variability makes it very hard for smaller traders in the equity market to scale into positions, as commissions heavily skew costs against them. However, forex traders have the benefit of uniform pricing and can practice any style of money management they choose without concern about variable transaction costs.
Four Types of Stops.
Once you are ready to trade with a serious approach to money management and the proper amount of capital is allocated to your account, there are three types of stops you may consider.
1. Equity Stop - This is the simplest of all stops. The trader risks only a predetermined amount of his or her account on a single trade. A common metric is to risk 2% of the account on any given trade. On a hypothetical $10,000 trading account, a trader could risk $200, or about 200 points, on one mini lot (10,000 units) of EUR/USD, or only 20 points on a standard 100,000-unit lot. Aggressive traders may consider using 5% equity stops, but note that this amount is generally considered to be the upper limit of prudent money management because 10 consecutive wrong trades would draw down the account by 50%.
One strong criticism of the equity stop is that it places an arbitrary exit point on a trader's position. The trade is liquidated not as a result of a logical response to the price action of the marketplace, but rather to satisfy the trader's internal risk controls.
2. Chart Stop - Technical analysis can generate thousands of possible stops, driven by the price action of the charts or by various technical indicator signals. Technically oriented traders like to combine these exit points with standard equity stop rules to formulate charts stops. A classic example of a chart stop is the swing high/low point. In Figure 2 a trader with our hypothetical $10,000 account using the chart stop could sell one mini lot risking 150 points, or about 1.5% of the account.
3. Volatility Stop - A more sophisticated version of the chart stop uses volatility instead of price action to set risk parameters. The idea is that in a high volatility environment, when prices traverse wide ranges, the trader needs to adapt to the present conditions and allow the position more room for risk to avoid being stopped out by intra-market noise. The opposite holds true for a low volatility environment, in which risk parameters would need to be compressed.
One easy way to measure volatility is through the use of Bollinger Bands®, which employ standard deviation to measure variance in price. Note that the total risk exposure of the position should not exceed 2% of the account; therefore, it is critical that the trader use smaller lots to properly size his or her cumulative risk in the trade.
استنتاج.
As you can see, money management in forex is as flexible and as varied as the market itself. The only universal rule is that all traders in this market must practice some form of it in order to succeed.
No comments:
Post a Comment