Mt4 - المبرمجين backtest - الفوركس -
نصائح حول كيفية باكتست MT4 الخبراء المستشارين وروبوتات الفوركس بواسطة ستريتبيبس في فبراير 21، 2014 06:47:06 غمت سجل للحصول على حساب تجريبي مجاني أواندا MT4 هنا. يتضمن عملنا في ستريتبيبس استراتيجيات البرمجة واختبار أدائها. على مر السنين، لدينا باكتستد العديد من وحدات MT4، أو المستشارين الخبراء. فإنه لا يأخذنا طويلة إلى الشاشة من خلال مئات من الروبوتات التجارية لتحديد التي نعتبر أن لديها إمكانية للتحسين. نود أن نشارك بعض من تجربتنا معك. نقاط بيانات MT4 كافية ل باكتست باكتست الخاص بك هو فقط جيدة مثل البيانات لديك. محسوبة على أنها جودة النمذجة في اختبار استراتيجية MT4، تأكد من أن لديك نقاط بيانات كافية للبرنامج لاختبار على. على منصة ميتاتريدر الخاصة بك، انقر فوق أدوات مركز التاريخ غ: ثم حدد زوج العملات والإطار الزمني، انقر فوق تحميل للتأكد من أن لديك تحديث البيانات. هذه البيانات تختلف من وسيط إلى وسيط، لذلك يمكن أن يكون فكرة جيدة ل باكتست البرنامج على عدد قليل من منصات وسيط، وخاصة مع وسيط كنت تتداول معها. تمكين المستشارين الخبراء على MT4 إذا لم يتم تشغيل إي، تأكد من تمكينها على ميتاتريدر الخاص بك. انقر على أدوات غ خيارات أوبتيونس غ خبراء وسوف ترى هذا: تأكد من مربع الاختيار بجوار تمكين الخبراء المستشارين. الوضع البصري هو أبطأ، ولكن مفيدة في اختبار استراتيجية، يمكنك التحقق لتحديد الوضع المرئي. على الرغم من أن هذا يبطئ باكتست، يمكنك ان ترى الحرف في العمل على الرسم البياني التاريخي المتحرك، ومراقبة سلوك إي. ترى شريط التمرير إلى يمين خانة الاختيار، والذي يسمح لك لتسريع أو إبطاء باكتست البصرية. بمجرد فهم سلوك الروبوت الخاص بك، يمكنك إلغاء تحديد الوضع المرئي لتسريع باكتست. عدم وجود الصفقات في بعض الأحيان بعد باكتست، تشاهد فقط عدد قليل من الصفقات المنفذة. قد يرجع ذلك إلى عدم وجود نقاط البيانات، على سبيل المثال قد تكون تشغيل استراتيجية أسبوعية. أو يمكن أن يكون مسألة استراتيجية يجري اختبار بعض استراتيجيات التداول التجارة فقط بضع مرات في السنة بسبب ظروف انتقائية جدا. اعتمادا على شخصية التداول الخاصة بك، قد تحتاج الروبوت الذي يتداول أكثر في كثير من الأحيان. الإفراط في السحب ميزة كبيرة حول الوضع البصري هو يمكنك النقر على الرسم البياني ورؤية رصيد الحساب، والروبوت يختبر البيانات. يظهر الرسم البياني أدناه روبوت مع عمليات السحب المفرط. وهذا يعني أنك يمكن أن تحقق أرباح على طول الطريق، وحتى على المدى الطويل، ولكن سيكون هناك أوقات حيث رصيد حسابك هو انخفاض بمقدار كبير، وهو محفوف بالمخاطر. يمكن أن تؤثر عمليات السحب الكبيرة على أداء التداول، خاصة إذا كان تحديد موضع الصفقات يتعلق برصيد الحساب. المخاطر المفرطة في بعض الأحيان في الوضع البصري يمكنك أن ترى سلوك التداول غير منطقي، مثل عقد التجارة لنقطة التعادل، بغض النظر عن المدة. في المثال أدناه نرى تجارة بيع، فترة عقد المشار إليها بالخط الأفقي الأحمر. وواجه السوق اتجاه التجارة، وهذا الروبوت يحمل على موقف خاسر حتى يتعافى إلى نقطة التعادل. قد لا يكون هذا واقعيا لأن الفترة الطويلة من الإنصاف السلبي قد تمحو حسابك. هذه التجارة ذهبت بالفعل 280 نقطة ضد الروبوت، قبل أن تعافى ورجعت إلى نقطة التعادل. والسؤال هنا هو، كم من الوقت يمكنك الاستمرار على موقف خاسر، ما إذا كان يستغرق أشهر لاسترداد للتعادل، أو حتى سنوات استراتيجية مارتينغال استراتيجية مارتينغال يعني تاجر يزيد حجم تجارته بعد كل خسارة، حتى أن الفوز المقبل سيكون استرداد جميع الخسائر السابقة بالإضافة إلى كسب ربح يساوي حصة الأصلي. إذا لاحظت الرسم البياني أدناه، في كل مرة يعاني الحساب من سحب كبير، فإنه يتعافى بسرعة. ويرجع ذلك إلى استراتيجية مارتينغال كما ترون دائريا باللون الأزرق أدناه، حيث يزيد حجم التجارة لتغطية الخسارة. على افتراض أن لديك رأس المال التجاري لانهائي ورصيد الحساب، استراتيجيات مارتينغال كبيرة. يصبح مشكلة إذا كنت تعاني من سلسلة من الخسائر إلى الحد الذي رصيد حسابك لا يسمح لك لمضاعفة أسفل على التجارة القادمة، للتعويض عن الخسائر السابقة. هذه الاستراتيجية الشعبية هي في كثير من الأحيان الأساس الذي المبرمجين كود باكتست المنحدر صعودا باستمرار. إذا كنت باكتست روبوت الفوركس والرسم البياني الأداء هو حرفيا منحدر صعودي، مع انتعاش حاد من الانسحاب بما يتماشى مع الزيادات في حجم الموقف، ومن المرجح أن تكون مارتينغال الاستراتيجية. فقط تأكد من أنها تناسب ملف المخاطر ورأس المال التجاري. وأخيرا، اختبار الأمام يمكن ل إي تعمل تماما في باكتست، ربما بسبب المؤشرات التي هي متخلفة تبحث، ولكن تحتاج بالتأكيد إلى الأمام اختبار الروبوت لاختبار منطقها. على سبيل المثال، إذا كان مؤشر يعيد، فإنه قد تعمل بشكل جيد على باكتست ولكن تفشل في الاختبارات الأمامية منذ المؤشر يتغير باستمرار. اختبار الأمام أيضا يسمح للروبوت لتنفيذ على الظروف الحية وينتشر، وهو أكثر واقعية من باكتست. وبطبيعة الحال، مع اختبار إلى الأمام، والبيانات الخاصة بك هو 100، ونمذجة الجودة هي أيضا 100. الخبراء المستشارين الذي نحب في الختام، ونحن مثل الروبوتات التي لا تعاني من السحب الكبيرة، والتي تعرض سلوك التداول واقعية مثل تطبيق وقف الخسارة، والتي لديها احتمال جيد لمنحنى صعودي المنحدر على المدى الطويل، وإثبات هذه في الاختبارات الأمامية أيضا. إذا كان لديك أي الروبوتات التي تعتقد أنها كبيرة، لا تتردد في مشاركتها معنا هذه المقالة ظهرت للمرة الأولى على ستريتبيبسوتوماتد التداول أمب باكتستينغ كورس - الجزء 1: برمجة عضو تجاري انضم سبتمبر 2012 141 المشاركات العديد من الناس قد نشرت نظم التجارة في هذا المنتدى ، ولكن معظم النظم مفقودة شيء ضروري: أنها لم تكن باكتستد. لذلك ثيريس أي وسيلة لمعرفة ما إذا كان النظام مربحا أم لا. و باكتستكوت كوتمانوال من قبل إيبالينغ بعض الرسوم البيانية أو محاولة بعض الصفقات التجريبية لا يمكن أن تعطي أي معلومات مفيدة. ونتيجة لذلك، يمكنك أن ترى في خمس دقائق مع باكتست بسيط 4 سنوات أن معظم الأنظمة التي نشرت هنا سوف تفقد المال. ومن ناحية أخرى، يمكن لعدد قليل منها توليد أرباح ملحوظة. ولكن كيف يمكنك أن تعرف ما أعتقد أنه لا يمكن لأحد أن يطور نظاما ناجحا طالما أنه ليس لديه طريقة لاختباره. ومع ذلك يتطلب ذلك برمجة النظام باعتباره إي، والنص، والاستراتيجية، مهما كان يسمى. هيريس المشكلة: معظم التجار يعتقدون أن البرمجة صعبة للغاية بالنسبة لهم. لكنها ليست كذلك. يمكن لأي شخص أن يتعلم إي أو استراتيجية البرمجة في غضون أيام قليلة، ويمكن بعد ذلك بسهولة باكتست أنظمته أو حتى التجارة بها تلقائيا. إم في عملية كتابة دورة لهذا الغرض. آمل من نشر الدورة هنا أن أحصل على بعض ردود الفعل حول ما هو سهل الفهم وما لا، حتى أتمكن من تحسين المواد. إل نشر الجزء الأول هنا خلال الأيام القادمة. الجزء الأول هو فقط عن تعلم البرمجة في C، ويغطي المتغيرات والوظائف والفروع، والحلقات. الجزء الثاني سيكون حول برمجة أنظمة التجارة، وسوف تغطي التجارة الاتجاه، ومكافحة التداول الاتجاه، والتحسين، والمشي قدما إلى الأمام، واستراتيجيات محفظة، وإدارة الأموال. ويستخدم بعض خوارزميات التداول الجديدة مثل مرشحات التردد. اللغة C لديها ميزة أنه يمكنك استخدام المعرفة C لكتابة مناطق العد أو الاستراتيجيات على العديد من المنصات مثل النينجا التاجر، MT4، حتى تراديستاتيون الخ لأن كل تلك اللغات هي مشابهة إلى حد ما. وبطبيعة الحال سوف تذهب أكثر من 2 أسابيع. والهدف من ذلك هو وضع استراتيجية للمحفظة مع عائد سنوي قوي على رأس المال. قد يكون هناك جزء ثالث حول استخدام الذكاء الاصطناعي، مثل بيرسيبترونز وأشجار القرار، ولكن لم تنته بعد ويأتي في وقت لاحق. بالنسبة للدورة سوف تحتاج بعض البرنامج لتشغيل الأمثلة السيناريو واختبار الاستراتيجيات. ويسمى كوزوروكوت ويمكنك تحميل البرنامج مجانا من زورو التاجر. ونحن لن تستخدم MT4 لهذه الدورة، على الرغم من أن MT4 يستخدم أيضا C ل إي لها. هناك عدة أسباب: MT4 يتطلب بعض الاشياء كود اضافية التي من الصعب دوما للتعلم للمبتدئين. يفتقر MT4 أيضا إلى الميزات الأساسية لاختبار الاستراتيجية بشكل صحيح. السبب الثالث هو أن MT4 لديه ميزة خفية تسمى كوتيرتوال تاجر بلوجينكوت، والتي يمكن استخدامها من قبل وسيط لإزالة جزء من الأرباح الخاصة بك. لذلك أنا أميل إلى تجنب MT4. ولكن عندما كنت من خلال هذا بالطبع سيكون لديك أيضا المعرفة الأساسية لكتابة إي ل MT4 إذا كنت تريد. عضو تجاري انضم سبتمبر 2012 141 المشاركات لنبدأ العمل. في البداية نظرية قليلا. الغرض من البرنامج النصي (أو إي، أو البرنامج، أو أيا كان يسمى) هو إخبار الكمبيوتر ما يجب القيام به في ظل أي ظروف. يتكون البرنامج النصي من المتغيرات والوظائف - في هذا الدرس الأول اسمحوا لي أن أشرح المتغيرات. المتغير هو مكان في ذاكرة أجهزة الكمبيوتر (تماما مثل الحاوية) التي يتم استخدامها لتخزين أرقام أو نص أو معلومات أخرى. لأنك لا تريد أن تتذكر أين في الكمبيوتر الذي يتم تخزين المتغير، أي متغير لديه اسم فريد يستخدم في البرنامج النصي. بعض الأمثلة خطوط النصي التي تحدد المتغيرات: فار السعر فار بيرسنتيرمونث 1.5 الفائدة الشهرية إنت أيام 7 سلسلة الثروة كاتي آم ريتشكوت بول الفوز الحقيقي هذه هي بضعة خطوط قصيرة من التعليمات البرمجية ولكن يمكننا استخدامها لتعلم أشياء جديدة كثيرة: 9658 كل متغير يجب أن يعرف (المبرمجين يقول أيضا أعلن) قبل استخدامها. لدينا أنواع مختلفة من المتغيرات: فار للمتغيرات ذات الكسور العشرية، مثل الأسعار أو المعدلات إنت للمتغيرات التي ليس لها عشرية، مثل عد سلسلة شيء للنص وبول لنوع من مفتاح تبديل صحيح أو خطأ. هناك أنواع أكثر متغيرة الأساسية، ولكن في البرامج النصية التداول ستواجه عادة فقط هذه الأربعة. إذا قمت بكتابة هذا السطر في البرنامج النصي الخاص بك: الأيام 3 وكنت قد عرفت المتغير المسمى أيام قبل، ستحصل على رسالة خطأ. الاستثناء الوحيد هو المتغيرات التي يعرفها زورو بالفعل لأنها محددة مسبقا في مترجم. 9658 يمكن لأي متغير الحصول على قيمة أولية في البداية، ولكن نحن أرينت أجبر على القيام بذلك عندما لا يهم القيمة الأولية. مثال: إنت نومبارس 7 فار ليميت 3.5 9658 يمكننا إضافة تعليقاتنا الخاصة إلى التعليمات البرمجية. في كل مرة واجهت اثنين من القطع المائلة، سوف زورو تجاهل الكلمات التي تتبع ذلك، حتى نهاية السطر. وبهذه الطريقة يمكننا إضافة معلومات مفيدة إلى التعليمات البرمجية لدينا: إنت بارويدث عرض شريط واحد في دقائق أو يمكننا تعطيل مؤقتا خط في البرنامج النصي عن طريق وضع اثنين من القطع المائلة أمامه. وهذا ما يسمى كوتكومنتينغ أوكوت سطر، وبينما البرمجة يتم استخدامه بشكل متكرر أن محرر البرنامج النصي واثنين من أزرار إضافية للتعليق عليها والتعليق عليها في. 9658 كل تعريف أو أي أمر في C يحتاج إلى أن تنتهي بفاصلة منقوطة. ينسى العديد من المبتدئين إضافة كوتكوت في نهاية خطوطهم من التعليمات البرمجية، وهذا يؤدي أيضا إلى رسالة خطأ - وليس في السطر مع الفاصلة المنقوطة المفقودة، ولكن في السطر التالي 9658 يجب أن يبدأ كل اسم متغير مع إما حرف أو مع تسطير سفلية. في ما يلي بعض أسماء المتغيرات الصحيحة: فار ألوها فار ميتو فار go42 فار Iamb19 فار 12345 الآن دعونا نلقي نظرة على بعض الأمثلة السيئة: فار إتولديو فار 1forall فار 12345 إل تمكنك من اكتشاف ما هو الخطأ في التعاريف أعلاه. 9658 الأسماء المتغيرة حساسة لحالة الأحرف. وهذا يعني أنه إذا كنا نحدد إنت بهذه الطريقة: ومن ثم نستخدمها في وقت لاحق في التعليمات البرمجية لدينا بهذه الطريقة: ميترادبوسيتيونس 5 أو ميترادبوسيتيونس 5 أو ميتراديبوسيتيونس 5 زورو لن نقبل ذلك. 9658 يمكنك تعريف عدة متغيرات في سطر واحد. هذا يحفظ خطوط ويحافظ على التعليمات البرمجية قصيرة. مثال: فار زخم، قوة، درجة إنت عرض 7، ارتفاع 14، عمق 20 9658 وأخيرا، يجب أن يكون للمتغيرات أسماء كبيرة. في حين أنه من الممكن تحديد كومة من المتغيرات التي تبدو مثل هذا: فار x32 فار a125 فار h345 فار z34187 انها ليست فكرة جيدة للقيام بذلك بهذه الطريقة. سيكون لديك مشاكل في محاولة لتذكر ما هذه المتغيرات تفعل إذا نظرتم إلى السيناريو الخاص بك بعد بضعة أسابيع. إذا كنت تريد أن تظهر النص الخاص بك إلى أشخاص آخرين، سيكون لديهم صعوبة في محاولة لمعرفة ما كنت تريد أن تفعل مع التعليمات البرمجية الخاصة بك. غدا جيدا كتابة النصي سبيل المثال قليلا أن يفعل شيئا مع المتغيرات. لا تترددوا في السؤال هنا إذا كان هناك شيء غير واضح أو سيء شرح. اليوم كتابة جيدا السيناريو الأول. تحتاج إلى تحميل زورو الآن إذا كنت قد فعلت ذلك بالفعل. بعد التثبيت، ابدأ تشغيله و سترى هذا: انقر على سكريبولبوكس سكريبت، اذهب على طول الطريق وحدد نيو سكريبت. سيتم الآن فتح محرر نصوص. اكتب ما يلي: الآن، حدد حفظ باسم في القائمة ملف من محرر النص وحفظه تحت اسم مثل qumyfirstscript. cquot في كوستراتيغيوت مجلد فرعي من تثبيت زورو الخاص بك. عند النقر الآن سكورولبوكس النصي زوروس مرة أخرى، يجب أن يظهر اسم كوتيمفيرستسكريبتكوت بين البرامج النصية الأخرى. حدده، اضغط على اختبار على لوحة زوروس، ومشاهدة ما يحدث في نافذة الرسالة. إذا فعلت أي شيء صحيح، يجب أن ترى الآن رسالة من هذا القبيل: إذا كنت ترى شيئا مختلفا في خط كوتريسولت كوت، يرجى يشكو هنا. الآن، عدل الأرقام في الخطوط a و b واستبدلها بحفظ النص البرمجي الذي تم تحريره (حفظ الملف أو كترل-S)، ثم اضغط على اختبار مرة أخرى. أخبرنا إذا كانت النتيجة مختلفة عن 17. كان هذا أول برنامج لنا. بدءا من معنى هذا، أليس هو يبدو c هو مجموع a و b محاولة لكتابة عدة قيم ل و b وسوف تقنع نفسك. الآن يتيح إلقاء نظرة على قطعة من البرنامج النصي الذي يحول زورو في نوع من آلة حاسبة بسيطة. يبدأ البرنامج النصي بوظيفة مسماة الرئيسية - كل ما يحدث في البرنامج هو داخل الأقواس المجنحة لوظيفة. ولكن تأتي بشكل جيد إلى وظائف غدا. هنا نركز على المتغيرات، والخطوط التالية يجب أن تكون مألوفة بالفعل من ما قلته أعلاه: يمكننا أن نرى أن يتم تعريف المتغيرات 3 أ، ب، ج، تماما كما هو موضح أعلاه. السطور التالية هي الأوامر: المتغيرات هنا الحصول على المحتوى الذي تم تعيينه إلى 5 و 12. الآن السطر التالي هو جوهر البرنامج النصي لدينا: هذا الخط من رمز C يبدو أن تكون بسيطة أيضا يجعل c يساوي مجموع وب . هو أمر إلى الكمبيوتر لإضافة محتوى المتغيرات a و b وتخزين النتيجة في المتغير ج. الأوامر هي خطوط في التعليمات البرمجية التي تفعل شيئا، وعادة مع المتغيرات. السطر الأخير هو أيضا أمر، يستخدم لعرض c في نافذة الرسالة: يتيح إجراء تجربة صغيرة. ابحث عن سطر التعليمات البرمجية c a b في المحرر، ثم استبدل كوتكوت بواسطة كوتوت، ذي تيمس تشاراكتر، بحيث يقرأ الخط الآن: احفظ النص البرمجي، ثم اضغط على زر اختبار مرة أخرى. هل النتيجة منطقية أنت تتقن الآن أساسيات لايت-C. وقد تضاعف زورو 5 من 12، وعرض النتيجة الصحيحة: 60. وأنا أعلم أنها ليست استراتيجية تجارية ما كان يفعل هنا، ولكن كانت تسير في مكان ما حتى الآن نحن نعرف كيفية إضافة ومضاعفة القيم يمكننا استخدام كوت كوت لطرح اثنين أرقام أو كوتكوت لتقسيمها. يمكننا استبدال الخط الذي لا ج ب حساب مع تعبيرات أكثر تعقيدا بكثير. ولكن حفظ جيدا أن للدروس القادمة. يكفي لهذا اليوم. واسمحوا لي أن أعرف إذا كان هناك شيء غير واضح أو من الصعب أن نفهم. وأعتقد أنني دخلت إلى موقع زورو قبل بضعة أشهر عند القيام بالبحث على ج المتصلة أو وظائف لكتابة بلدي باكتست التداول الخاصة، في ذلك الوقت لم تكن جاهزة للتحميل بعد، ولكن يبدو وكأنه تصميم أنيق، مع البرنامج التعليمي لطيفة و ج مثل اللغة. في ذلك الوقت دخلت إلى الموقع، بدا وكأنه البرامج الثابتة بالفعل، على الرغم من أنني أتساءل لماذا الموقع بدأ منذ سنوات، ولكن لا تزال غير جاهزة بعد للنشر. انها تبدو كثيرا مثل النصي أميبروكر. هو مجموعة اللغة القائمة هل أنت المطور من منصة أتمنى لكم. موقع زورو على الانترنت منذ بضعة أسابيع فقط، ولكن كان لدينا دليل زورو على هذا العنوان على شبكة الإنترنت منذ عدة أشهر لاختبار بيتا. وقد وضعت زورو من قبل فريق من برمجة اللعبة، ولكن كنت تشارك في تصميم استراتيجياتها وكتابة دليلها والتعليمي. نعم، تدعم اللغة المصفوفات ومتغيرات المتاجرة هي صفيف قائم. العودة الى العمل. هذا الدرس سوف يعرض وظائف. بمجرد أن تحصل على المتغيرات والوظائف، لديك فهم أساسي لكيفية عمل البرنامج النصي. ما هي هذه الوظائف، على أي حال يتيح رؤية مثال صغير: هل ترى ما أراه الدالة ليست أكثر من مجموعة من الأوامر C التي يتم تنفيذها بواسطة الكمبيوتر واحدا تلو الآخر. يتيح رؤية بعض الخصائص لهذه الوظائف: 9658 يتم تعريف الدالة عادة باستخدام الدالة ورد متبوعة باسم الوظيفة وزوج من الأقواس (). وتستخدم الأقواس لتمرير متغيرات إضافية إلى وظيفة تعلم جيدا عن ذلك في وقت لاحق. في حالتنا نحن لا تمرير أي متغيرات، لذلك فهي فارغة. 9658 يجب كتابة جسم الدالة (قائمة الأوامر) داخل زوج من الأقواس المجنحة. يتكون الجسم من سطر واحد أو أكثر من شفرة لايت-C تنتهي بفاصلة منقوطة. لتوضيح، المبرمجين عادة المسافة البادئة رمز في الجسم وظيفة من قبل بعض المسافات أو علامة تبويب، لتوضيح أنه داخل شيء. 9658 الأسماء المستخدمة لوظائف تتبع نفس تسمية التسمية كما للمتغيرات. يجب ألا تستخدم نفس الاسم لمتغير ووظيفة تؤدي إلى أخطاء. إذا كنت تستطيع قراءة هذا البرنامج التعليمي آمل أن تعرف عمرك أيضا. ليس في سنوات، ولكن في أيام ما، كنت لا تعرف ذلك طيب، لذلك يتيح محاولة لكتابة وظيفة تحسب عدد الأيام التي يقضيها لي (أو أنت) على الأرض. وأنا أعلم كيف تبدأ أنا أكتب وظيفة الكلمة ثم اسم وظيفة تسمح اسمه كومبوتايس: لقد نسيت مرارا الأقواس بعد اسم وظيفة ولقد أضفت قوس مجعد الأول سوف نستخدم بعض المتغيرات، لذلك ويد أفضل حددها الآن: فار مييج 33 عمرك (بالسنوات) يذهب هنا فار دايسايار 365.25 لا شيء جديد حتى الآن، والحق لقد عرفنا متغيرين فار وقد تلقوا القيم الأولية، لأنني أعرف عمري في سنوات وأنا أعلم أيضا أن كل سنة حوالي 365.25 يوما. الآن يأتي الجزء مخيف: كيف يمكنني أن أقول لكم الكمبيوتر لحساب عدد الأيام كيف أفعل ذلك مع آلة حاسبة الجيب وأود أن أدخل شيئا من هذا القبيل: الآن دعونا نلقي نظرة على متغيراتنا إذا كنت استبدل 33 مع مييج و 365.25 مع دايسايار. سوف تحصل على شيء من هذا القبيل: نومبروفايس مياج دايسايار موافق، لذلك يجب أن تنتهي وظيفتنا مثل هذا: فار نومبروفايس مياج دايسايار برينتف (كوتي آم. f أيام أولدكوت، نومبروفدس) لقد تذكرت لإضافة قوس مجعد الثاني، حتى الآن الجسم من يتم إرفاق الدالة من قبل اثنين من قوسين مجعد المطلوبة. أنا حقا غريبة لمعرفة ما إذا كانت هذه الوظيفة تعمل، لذلك يتيح اختبار ذلك. حرر زورو، ثم حدد نص جديد في قائمة البرنامج النصي. انتظر حتى يفتح المحرر. ثم انسخ والصق الخطوط أدناه في نافذة المحرر. حدد النص البرمجي بأكمله أدناه بالماوس، ثم انقر بزر الماوس الأيمن واختر نسخ (أو اضغط على كترل-C)، بدل إلى المحرر، وانقر بزر الماوس الأيمن على النافذة الفارغة المسماة quotscript1quot، ثم اختر لصق: الرمز يبدو بسيطا جدا، معرفة كيفية العمل مع تلك المتغيرات، ونحن نعرف كيفية إضافة تعليقات. لذلك يتيح حفظه (ملف حفظ باسم) في مجلد استراتيجية تثبيت زورو، تحت اسم مثل myscript2.c. لا ننسى كوت. c كوت في النهاية - فهذا يعني أن هذا الملف يحتوي على رمز C. إذا فعلت كل شيء، يجب أن تجد الآن myscript2 في قائمة البرنامج النصي. حدده. حان الوقت لاختبار النص البرمجي: هل تعني رسالة الخطأ هذه أن البرنامج النصي يحتاج دوما إلى وظيفة رئيسية () أو تشغيل () نعم، الرئيسي هو اسم دالة معرف مسبقا. إذا تم تسمية الدالة الرئيسية. فإنه سيتم تشغيل تلقائيا عندما نبدأ السيناريو لدينا. وظيفة اسمه تشغيل خاص ل زورو أنه يحتوي على استراتيجية التجارة لدينا ويتم تشغيل تلقائيا مرة واحدة لكل فترة زمنية. إذا كان البرنامج النصي لا وظيفة رئيسية ولا تشغيل، زورو يفترض أنك ارتكبت خطأ وسوف تعطيك رسالة الخطأ هذه. الآن، يتيح إدخال وظيفة رئيسية في نهاية البرنامج النصي: الطريقة التي أراها، وهذا رمز يدعو (يعني أنه يبدأ) لدينا كومبوتايديس وظيفة. حسنا، الآن أننا هنا لنرى كيف نسميه وظيفة: نكتب اسمها تليها زوج من الأقواس ثم ننتهي خط التعليمات البرمجية مع فاصلة منقوطة. يبدو منطقيا، دوس نوت هام تلميح: كتابة خطوط التعليمات البرمجية لوظائفك أولا وندعو لهم في وقت لاحق. يقرأ الكمبيوتر التعليمات البرمجية بنفس الطريقة التي تقرأ كتابا: ويبدأ مع الجزء العلوي من الصفحة النصي وينزل إلى أسفل، وقراءة سطر التعليمات البرمجية سطرا. إذا كنت أكتب نصي بلدي في الطريق الآخر، مثل هذا: الكمبيوتر سوف يقول: أوه، أن وظيفة الرئيسية. أنا أعرف وظيفة الرئيسية أنا بحاجة لتشغيله في كل مرة. ماذا يقول الآن كومبوتايس (). ماذا يكون مع هذه الوظيفة أنا لا أعرف ذلك حتى الآن لا أعرف ما يريد مني. إم الذهاب إلى عرض رسالة خطأ وأنا سوف تأخذ بقية اليوم قبالة: لا ننسى لتحديد وظائفك أولا، وإلا فإن الكمبيوتر سوف يشكو عند محاولة استخدامه. غدا ننظر جيدا في وظائف عن كثب. يرجى تقديم شكوى هنا إذا لم يعمل شيء أو كان غير واضح. ملخص قصير للأشياء التي تعلمناها بالأمس: 9658 نحدد الوظائف عن طريق كتابة اسم الدالة كوت (.) في النص البرمجي. 9658 إذا كانت الدالة لها اسم رئيسي أو تشغيل. يتم تنفيذها تلقائيا. يجب استدعاء جميع الوظائف الأخرى من وظيفة قيد التشغيل بالفعل ليتم تنفيذها. ولكن هذا ليس كل ما يمكن القيام به وظيفة. ويمكن أيضا الحصول على المتغيرات من وظيفة الدعوة، وإعطاء قيمة متغير العودة في المقابل. دعونا نرى مثالا على وظيفة يحصل ويعود المتغيرات. لوظيفة لإرجاع قيمة متغير، مجرد كتابة المتغير - أو التعبير الحسابي الذي يحسب القيمة - وراء أمر العودة. ثم تعطي الدالة هذه القيمة مرة أخرى إلى من حيث تم استدعاؤها. لقد لاحظت أننا قمنا بتعريف هذه الدالة ليس مع الدالة كوت كوتور، ولكن مع كوت فار كوت ولكن فار ليس تعريف متغير نعم، ولكن عندما يتوقع أن تقوم الدالة بإرجاع شيء ما، يتم تعريفها فقط بنوع العائد متغير. حتى إذا كانت الدالة ترجع متغير من نوع إنت. تحديده مع إنت إذا عاد فار. تحديده مع فار. ومع ذلك، فإن الكمبيوتر يعرف من الأقواس (..) أن هذا تعريف دالة ولا تعريف متغير. إذا كانت الدالة تتوقع المتغيرات، ضعها مع نوعها في تعريف الدالة بين تلك الأقواس. إذا كانت هناك عدة متغيرات، فقم بفصلها بفواصل. عند استدعاء هذه الدالة، فقط ضع قيم المتغيرات التي تريد تمريرها إلى الدالة بين الأقواس. ثم ستستخدم الدالة تلك المتغيرات تماما مثل أي متغير آخر لحساب النتيجة. إذا كانت الدالة تقوم بإرجاع شيء ما، يمكنك فقط إجراء مكالمة لهذه الدالة بدلا من المتغير الذي تقوم بإرجاعه. هذا يبدو نوعا من معقدة يتيح محاولة على الفور مع شركائنا في وظيفة كومبوتايس جديدة. هذا هو البرنامج النصي الجديد لدينا: ويف مجرد تعيين لدينا عدد من المتغيرات مباشرة من القيمة التي تم إرجاعها من قبل كومبوتايديس (مياج). وهذا يجعل رمزنا أقصر وأكثر أناقة لا يزال، والنتيجة هي نفسها: الآن ما هو هذا برينتف غامضة (..). فقد أقواس المرفقة، لذلك من الواضح أيضا وظيفة ندعو إلى عرض نتيجة لدينا. لكننا لم نحدد أي مكان هذه الوظيفة بل هو وظيفة بالفعل كوتوبيلت-إنكوت في C. تماما كما المتغيرات المضمنة التي ذكرناها في ورشة العمل الأخيرة، وهناك أيضا العديد من الوظائف التي بنيت بالفعل في لغة البرنامج النصي. و كاتي آم. f أيام أولدكوت، نومبروفدس هما المتغيرات التي نمر بها إلى وظيفة برينتف. المتغير الأول هو سلسلة. تستخدم لعرض بعض النص: كاتي آم. f أيام أولدكوت. المتغير الثاني هو فار. عدد الأيام . يتم فصل المتغيرات التي تم تمريرها إلى الدالات بفواصل. يمكنك قراءة تفاصيل حول وظيفة برينتف في دليل زورو: انقر فوق تعليمات، ثم انتقل إلى وظائف كوتسكريبت إنبوتوتبوت برينتفكوت. في هذه اللحظة نحن بحاجة فقط لمعرفة أن غريبة كوت. f كوت في السلسلة هو العنصر النائب. وهذا يعني: وظيفة إدراج هنا قيمة - مع عدم وجود الكسور العشرية - من فار التي يتم تمريرها إلى وظيفة. لذلك، إذا نومبروفدس لديه قيمة 12045. لدينا برينتف وظيفة طباعة كاتي آم 12045 أيام أولدكوت. يمكننا أن نجعل رمزنا أقصر. تذكر، إذا كانت الدالة ترجع فار. يمكننا فقط إجراء مكالمة من هذه الوظيفة بدلا من فار نفسها - حتى داخل أقواس من وظيفة أخرى. كذلك حفظ متغير واحد وسطر واحد من البرنامج النصي بهذه الطريقة. المبرمجين تفعل مثل هذه الاختصارات في كل وقت لأنها كسول ويفضل أن اكتب كما أقل رمز ممكن: يكفي لهذا اليوم. ورشة العمل القادمة سوف يعلمنا كيف السيناريو يمكن اتخاذ القرارات (تسمى فروع في الكمبيوترية). أن تكون قادرة على اتخاذ قرار شيء مهم للتداول. لذلك كانت تسير الآن في خطوات ضخمة نحو كتابة استراتيجية التجارة الخاصة بنا. واسمحوا لي أن أعرف إذا كان هناك شيء غير واضح مع متغيرات يمر من وإلى وظائف. حسنا، إم المهتمة ولكن البيانات ووس التي تستخدمها إذا كان فكسم التجريبي ثم أين هو الفائدة على استخدام فكسمز ميتاتريدر أكبر مشكلة مع اختبار الظهر على mt4 هو موثوقية البيانات كما يمكنك تشغيل نفس إي مع نفس الإعدادات على مختلف وسطاء يغذي والحصول على نتيجة مختلفة. إم باستخدام الرسوم البيانية اليومية جدا حتى أنك لن يكون يعتقد أنه سيكون هناك الكثير من الفرق. يمكنني استخدام البيانات من جميع المصادر الممكنة، ولكن كنت على حق - يمكن أن يكون هناك فرق كبير ويمكن أن يكون لها عدة أسباب. المشكلة الأولى هي استخدام MT4، حيث أن MT4 غير مناسب للاختبار الخلفي. محاكاة نظام على مدى بضع سنوات وحدها لن اقول لكم الكثير عن أدائها يتم الجمع بين باكتستر خطيرة مع محسن المعلمة والمشي قدما إلى الأمام بحيث ترى كيف يتفاعل النظام الخاص بك على التعديلات المعلمة. عندئذ فقط يمكنك الحكم إذا كان أداءها مستقرا أم لا. وهناك أيضا العديد من الميزات الأخرى التي يحتاج باكتستر. و باكتسترس من معظم المنصات المهنية، مثل النينجا، تراديستاتيون، أو زورو بالطبع، على ما يرام، ولكن MT4 ليست أداة المهنية للتجارة الآلي و باكتستينغ في رأيي. المشكلة الثانية هي عندما تبدأ الحانات اليومية. للحصول على نتائج مماثلة يجب أن تبدأ في نفس الوقت، f. i. في منتصف الليل، ويجب أن تكون قادرا على إعداد وقت البدء في منصة الاختبار. المشكلة الثالثة هي أن الانزلاق، والعمولة، وانتشار وتمديد يجب أن يكون محاكاة في النظام الأساسي الخاص بك، وأنها تعتمد على وسيط. ان الانتشار والانزلاق لهما تأثير قوي على أداء التداول على المدى القصير، كما أن للتداول تأثير ملحوظ على الصفقات طويلة الأمد. يمكنني استخدام البيانات من جميع المصادر الممكنة، ولكن كنت على حق - يمكن أن يكون هناك فرق كبير ويمكن أن يكون لها عدة أسباب. المشكلة الأولى هي استخدام MT4، حيث أن MT4 غير مناسب للاختبار الخلفي. محاكاة نظام على مدى بضع سنوات وحدها لن اقول لكم الكثير عن أدائها يتم الجمع بين باكتستر خطيرة مع محسن المعلمة بحيث ترى كيف يتفاعل النظام الخاص بك على التعديلات المعلمة. عندها فقط يمكنك الحكم إذا كان أداء مستقرا أم لا. ويدعم هذا من قبل معظم المنصات المهنية، مثل النينجا، تراديستاتيون. طيب شكرا ولكن كيف يستخدم زورو جعل أي فرق إذا كانت البيانات التي تستخدمها هي نفسها وأود أن لا تريد الاعتماد فقط على البيانات من مزود واحد مع بلدي خبير مستشار اختبار على mt4 الآن كل ما أفعله هو اختبار المعلمات المختلفة على 3 أو 4 وسطاء Mt4 مختلفة ومعرفة ما اذا كانت تخرج مماثلة. هذا ليس حلا مثاليا ولكنه يعطيني المزيد من الثقة في توقعي الإيجابي. لقد استخدمت حتى الآن البيانات من العديد من مقدمي مع زورو، ولكن لم أر أي اختلافات ملحوظة في نتائج باكتست. والفرق الوحيد الذي لاحظته، بغض النظر عن الاختلافات المعتادة في الأسعار، هو نوعية البيانات، أي الثغرات أو القيم المتطرفة. على سبيل المثال، بيانات فكسم في بعض الأحيان تفتقد الحانات اللحظية أو لديها ارتفاع السعر. لكنها عادة لن تؤثر على النتيجة بقدر ما ينبغي أن تتم تصفيتها من قبل المنصة. عندما تحصل على نتائج مختلفة بالتأكيد، يجب أن يكون هناك سبب معين، على سبيل المثال مختلفة شريط بداية مرات، وأنت. طيب شكرا، أنا تحميل منصة الآن وأنا أشاهد الدروس الخاصة بك مع الفائدة. لتجنب سوء الفهم، كان التحذير ضد استخدام MT4 ل باكتستينغ فقط لإيجاد نظام مربح. MT4 هو جيد جدا قادرة على العثور على معظم النظم غير مربحة. لا يعني الاختبار الموجب MT4 الموجب أن النظام مربح، ولكن سلبية باكتست يضمن أن النظام سوف تخسر المال. وبالتالي، فإن باكتست حتى مع MT4 أفضل من لا شيء. فهمتك. جيد التحوط لذلك ما هو رأيك في طريقة بلدي لاختبار نفس إي مع نفس الإعدادات على وسطاء متعددة للحصول على نتيجة متوسطة حسنا. إذا كانت النتائج تختلف بمقدار كبير، ثم إما أن النظام غير متناسقة ميؤوس منها أو شيء خاطئ مع بيانات الأسعار. والمتوسط لا يستحق الكثير في مثل هذه الحالة. إذا كانت النتائج قريبة جدا من بعضها البعض، وكلها إيجابية، ثم يجب أن تحصل على منصة أفضل (أعتقد أنك تعرف ما أعنيه) والاستمرار مع بعض الاختبارات الجادة - الإفراط، والمشي إلى الأمام، وتحليل محفظة. قد يكون النظام يستحق كل هذا العناء. لا يمكن أن يكون النظام غير متناسق ميؤوس منه إذا كنت تتداول عليه خلال نفس الفترة والشيء الوحيد الذي يتغير هو مزود البيانات. يجب أن يكون دائما مشكلة مع البيانات. وأعتقد أنه إذا كان النظام يختبر إيجابيا على جميع الوسطاء 4 ثم يجب أن يكون على ما يرام للتجارة الذهاب إلى الأمام. مشكلتي مع التأكيد الخاص بك أن النظام الأساسي الخاص بك هو أفضل (ليس لدي أدنى شك أنه أفضل من اختبار استراتيجية mt4، لا شك على الإطلاق، وفي الواقع هو على الارجح على قدم المساواة مع أفضل اختبار استراتيجية المتاحة من ما رأيته حتى الآن) هو أنك لا تزال تحت رحمة البيانات المقدمة لك من قبل مزود الخدمة الخاص بك. من هو القول أن البيانات فسم هو أي أفضل من أي شخص إلسيس ربما يمكن أن تدرج في تعليمات البرنامج التعليمي الخاص بك حول كيفية الوصول إلى مقدمي البيانات الأخرى لغرض اختبار عبر عذرا، لقد اتخذت على الموضوع الخاص بك قليلا ولكن أعتقد أن هذه المناقشة ستكون مفيدة للأشخاص القادمين وراءنا. عضو تجاري انضم سبتمبر 2012 141 المشاركات في دليل زورو تحت كوتيمبورتيكسورتكوت سوف تجد وصفا موجزا كيفية استيراد بيانات الأسعار من مقدمي الخدمات الأخرى. (زورو-tradermanualenexport. htm) لم أكن أريد لبدء البرنامج التعليمي مع كروسوفر ما بسيط لأنه عادة ليست مربحة، وبالتالي أليس لا يمكن أن تطور بصراحة مثل هذه الاستراتيجية والمطالبة المال لذلك. ولكن لا تقلق، سيتم شرح أي شيء. هذا هو السبب في أنني نشر الدورة هنا: يمكنك طرح أسئلة محددة إذا كان هناك شيء غير واضح، وعلم تعلم حيث يمكن تحسين البرنامج التعليمي، ويمكن أن تجعل من اللطيف. - العودة الى العمل. لم يكن حتى الآن في أنظمة التجارة أولا أن يكون جيدا لمعرفة كيفية اتخاذ برنامج القرارات. إذا فواتير بلدي أكبر من 3000، أحتاج إلى العثور على وظيفة جديدة، وإلا سوف تبقى وظيفتي الحالية. نعم، دماغي لا يزال يعمل موافق، شكرا لك على السؤال. كان هذا مجرد مثال على فرع إف-إلس الرمز المرتبط به سيبدو كما يلي: سوف تستخدم كوت إذا كانت عبارات كوت عندما تريد السيناريو الخاص بك لاتخاذ القرارات - وهذا يعني أنه يتصرف بشكل مختلف اعتمادا على بعض الشروط، مثل إدخال المستخدم، و رقم عشوائي، نتيجة عملية رياضية، عبور مؤشرين، الخ. هيريس الشكل الأساسي للكتاب إذا كان عبارة كوت: إذا (بعض الشرط صحيح) دوسوميثينغ () تنفيذ هذا الأمر (أمر واحد) إذا (بعض الشرط صحيح) تنفيذ الأوامر واحدة أو عدة التي يتم وضعها داخل الأقواس مجعد وهناك شكل أكثر تعقيدا من تعليمات كوتيفكوت أدناه: إذا (بعض الشرط صحيح) تنفيذ واحد أو عدة الأوامر التي توضع داخل أقواس مجعد آخر تنفيذ واحد أو العديد من الأوامر التي توضع داخل هذه الأقواس المنحنية يتم تنفيذ التعليمات الموضوعة داخل الجزء كوت كوت آخر فقط إذا كان هناك بعض الشرط غير صحيح. هيريس مثال عملي: من الواضح جدا أن الدخل يمكن أن يكون إما 2000 أو 3000 لأنه سيتم تنفيذ واحد فقط من الفروع (الدخل 2000 أو الدخل 3000 وليس على حد سواء). وتسمى الأجزاء الشرطية من التعليمات البرمجية كوتبرانشسكوت لأن عدة متداخلة إذا تعليمات يمكن أن تبدو مثل شجرة مع الجذر في أول كوت إذا كوت والعديد من الفروع التي يتم تنفيذ واحد فقط. يتيح لك استخلاص بعض الاستنتاجات: 9658 كوت إذا كانت العبارات المتفرعة تبدأ بالكلمة الرئيسية إذا متبوعة برقم من الأقواس 9658 تحتوي الأقواس على مقارنة أو أي تعبير آخر (كوتسوم كونديتيونكوت) يمكن أن يكون صحيحا أو خطأ 9658 إذا كان التعبير صحيحا، يتم تنفيذ التعليمات التالية أو مجموعة التعليمات الموضوعة داخل الزوج الأول من الأقواس المتعرجة 9658 إذا كان التعبير كاذبا ولا نستخدم كوت إس إلس، يتم تخطي مجموعة التعليمات الموضوعة بين الأقواس المتعرجة (لا يتم تنفيذها) 9658 إذا فإن العبارة كاذبة، ونحن نستخدم فرع كوت كوت آخر كذلك، يتم تخطي مجموعة التعليمات الموضوعة داخل الزوج الأول من الأقواس المنحنية، ويتم تنفيذ مجموعة التعليمات الموضوعة داخل الزوج الثاني من الأقواس المعقوفة. سوف يكون اتقان هذه التقنيات المتفرعة في أي وقت من الأوقات، والثقة لي يتيح كتابة السيناريو التالي: رمز لا تبدو معقدة قمنا بتعريف فار اسمه الربح الذي يتلقى قيمة أولية من 50. وبيان إف. إذا كان الربح أكبر من 100. لدينا ما يكفي، وإلا لا. يمكننا حذف أزواج من الأقواس المجوفة المذكورة أعلاه إذا كان محتوىها يتكون من سطر واحد من التعليمات البرمجية. إنشاء برنامج نصي جديد - تعلمته في ورش العمل الأخيرة كيفية القيام بذلك - كوبيباست المحتوى من مربع التعليمات البرمجية أعلاه، حفظه ك كوت myscript3.c في مجلد الاستراتيجية، حدد واختباره: الآن يتيح تجربة شيء آخر. تعديل التعليمات البرمجية عن طريق تحرير السطر ملحوظ: عند النقر الآن اختبار لتشغيل البرنامج النصي مرة أخرى، ستلاحظ أن شريط التمرير السفلي يحصل على تسمية كوت الربح. نقله على طول الطريق إلى اليمين، بحيث يظهر 200 في نافذة صغيرة، وانقر فوق اختبار مرة أخرى: ما حدث وضعت الدالة () المنزلق قيمة عودته - وهي القيمة من شريط التمرير السفلي - في متغير الربح، و (إذا) (إذا) أصبح صحيحا حيث كانت القيمة الآن أكبر من 100. يمكننا أن نجعل تخمين متعلمين كيف تعمل وظيفة المنزلق: فإنه يحصل على ستة متغيرات - رقم المنزلق (3)، والقيمة الأولية (50) والحدود اليمنى واليسرى (0 و 200)، واسم شريط التمرير (كاتبروفيتكوت)، و تلميح (هنا 0، أي لا تستخدم). يمكنك العثور على وصف تفصيلي لهذه الوظيفة في ملف المساعدة زورو. ضع شريط التمرير إلى اليمين مرة أخرى وتحقق من أن البرنامج يطبع الآن كوتنوت إنفكوت عند النقر فوق اختبار مع قيمة شريط التمرير في 100 أو أقل. يمكنك الآن تخيل كيف يمكننا استخدام المتزلجون لضبط المتغيرات لاستراتيجياتنا. كانت الآن تقريبا من خلال مع جزء البرمجة. درس آخر غدا ثم تبدأ جيدا في كتابة أول روبوت تجاري لدينا. يرجى الإشارة هنا إذا كان هناك شيء غير واضح حتى الآن. أكثر قليلا عن إذا البيانات. لنفترض أنك تريد أن تفعل شيئا فقط عندما يتم الوفاء بشرطين مختلفين. محاولة البرنامج التالي: الآن اثنين من المتزلجون تشارك. كيف تحتاج إلى تعيينها لحالة كوتنوت نترك هذا لغز قليلا للقارئ. ولكن علمنا أننا يمكن أن تجمع بين شرطين باستخدام الكلمة الرئيسية كوتاندكوت. هناك أيضا الكلمة الرئيسية كوتوركوت عندما يحتاج واحد أو شرط آخر صحيح. (قد تساءل المبرمجين سك لماذا لديهم لاستخدام و أو بدلا من أمبامب المشغلين مألوفة و لا تقلق، جميع مشغلي C تعمل كما كان من قبل، كانت مجرد استخدام أسهل لحفظ حفظ المشغلين في لايت-C للمبتدئين ساكي) الآن ، إم مما يتيح لك ثلاث نصائح مهمة لتجنب الأخطاء الترميز. هيريس أول واحد. هل لاحظت استخدام الأقواس حول (الربح غ 50) و (خسارة 0). ونحن نعلم من الرياضيات المدرسية أنه في معادلة رياضية، يتم حل التعبيرات الموجودة بين قوسين أولا. (12) 3 ليست هي نفسها كما 1 (23) - وهذا صحيح في الرياضيات وأيضا في لغة البرمجة. استخدم دائما الأقواس للتأكد من أن البرنامج يحسب بنفس الترتيب الذي نريده. وتأكد من أن لديك العديد من الافتتاح كما الأقواس إغلاق الأقواس المفقودة في نهاية السطر هو واحد من الأسباب الأكثر شيوعا من رسائل خطأ المترجم. الكمبيوتر عادة ما يشكو من خطأ في السطر التالي لأن هناك تبحث عن الأقواس المفقودة. Whats with that quot loss 0 quot in the first new line of code Is the double equals sign a typing error No, it isnt. Whenever you compare two expressions ( loss and 0 in the example above) you have to use quot quot instead of quot quot, because a line of code that looks like this: will set loss to zero instead of comparing loss with zero This is one of the most frequent mistakes even an experienced programmer might set a variable to a certain value by mistake, instead of comparing it with that value. Using one instead of two equality signs for comparing two expressions is a very frequent mistake. Dont forget this if (a 3) correct dosomestuff You can avoid this mistake if you make it a habit to put the constant value on the left side of a comparison and the variable on the right side. The loss comparison statement would look this way: If you then accidentally put a single instead of , Zorro will report an error because it knows that 0 cant be set to a different value. That was the second tip. The third tip is that you should use the comparison with care. When you calculate a var variable in a complicated mathematical expression . the result is usually inaccurate. Instead of 2 . it might be 2.00001 or 1.99997 . This is due to the limited precision of variables in a computer. When you then compare it with 2, the comparison always comes out false - so better use greater or smaller comparisons (lt or gt) when working with var variables. This problem does not affect int variables. Tips on How to Backtest MT4 Expert Advisors and Forex Robots By StreetPips on Feb 21, 2014 06:47:06 GMT Register for a free OANDA MT4 demo account here . يتضمن عملنا في ستريتبيبس استراتيجيات البرمجة واختبار أدائها. على مر السنين، لدينا باكتستد العديد من وحدات MT4، أو المستشارين الخبراء. فإنه لا يأخذنا طويلة إلى الشاشة من خلال مئات من الروبوتات التجارية لتحديد التي نعتبر أن لديها إمكانية للتحسين. نود أن نشارك بعض من تجربتنا معك. نقاط بيانات MT4 كافية ل باكتست باكتست الخاص بك هو فقط جيدة مثل البيانات لديك. محسوبة على أنها جودة النمذجة في اختبار استراتيجية MT4، تأكد من أن لديك نقاط بيانات كافية للبرنامج لاختبار على. على منصة ميتاتريدر الخاصة بك، انقر فوق أدوات مركز التاريخ غ: ثم حدد زوج العملات والإطار الزمني، انقر فوق تحميل للتأكد من أن لديك تحديث البيانات. هذه البيانات تختلف من وسيط إلى وسيط، لذلك يمكن أن يكون فكرة جيدة ل باكتست البرنامج على عدد قليل من منصات وسيط، وخاصة مع وسيط كنت تتداول معها. تمكين المستشارين الخبراء على MT4 إذا لم يتم تشغيل إي، تأكد من تمكينها على ميتاتريدر الخاص بك. انقر على أدوات غ خيارات أوبتيونس غ خبراء وسوف ترى هذا: تأكد من مربع الاختيار بجوار تمكين الخبراء المستشارين. الوضع البصري هو أبطأ، ولكن مفيدة في اختبار استراتيجية، يمكنك التحقق لتحديد الوضع المرئي. على الرغم من أن هذا يبطئ باكتست، يمكنك ان ترى الحرف في العمل على الرسم البياني التاريخي المتحرك، ومراقبة سلوك إي. ترى شريط التمرير إلى يمين خانة الاختيار، والذي يسمح لك لتسريع أو إبطاء باكتست البصرية. بمجرد فهم سلوك الروبوت الخاص بك، يمكنك إلغاء تحديد الوضع المرئي لتسريع باكتست. عدم وجود الصفقات في بعض الأحيان بعد باكتست، تشاهد فقط عدد قليل من الصفقات المنفذة. قد يرجع ذلك إلى عدم وجود نقاط البيانات، على سبيل المثال قد تكون تشغيل استراتيجية أسبوعية. أو يمكن أن يكون مسألة استراتيجية يجري اختبار بعض استراتيجيات التداول التجارة فقط بضع مرات في السنة بسبب ظروف انتقائية جدا. اعتمادا على شخصية التداول الخاصة بك، قد تحتاج الروبوت الذي يتداول أكثر في كثير من الأحيان. الإفراط في السحب ميزة كبيرة حول الوضع البصري هو يمكنك النقر على الرسم البياني ورؤية رصيد الحساب، والروبوت يختبر البيانات. يظهر الرسم البياني أدناه روبوت مع عمليات السحب المفرط. وهذا يعني أنك يمكن أن تحقق أرباح على طول الطريق، وحتى على المدى الطويل، ولكن سيكون هناك أوقات حيث رصيد حسابك هو انخفاض بمقدار كبير، وهو محفوف بالمخاطر. يمكن أن تؤثر عمليات السحب الكبيرة على أداء التداول، خاصة إذا كان تحديد موضع الصفقات يتعلق برصيد الحساب. المخاطر المفرطة في بعض الأحيان في الوضع البصري يمكنك أن ترى سلوك التداول غير منطقي، مثل عقد التجارة لنقطة التعادل، بغض النظر عن المدة. في المثال أدناه نرى تجارة بيع، فترة عقد المشار إليها بالخط الأفقي الأحمر. وواجه السوق اتجاه التجارة، وهذا الروبوت يحمل على موقف خاسر حتى يتعافى إلى نقطة التعادل. قد لا يكون هذا واقعيا لأن الفترة الطويلة من الإنصاف السلبي قد تمحو حسابك. هذه التجارة ذهبت بالفعل 280 نقطة ضد الروبوت، قبل أن تعافى ورجعت إلى نقطة التعادل. والسؤال هنا هو، كم من الوقت يمكنك الاستمرار على موقف خاسر، ما إذا كان يستغرق أشهر لاسترداد للتعادل، أو حتى سنوات استراتيجية مارتينغال استراتيجية مارتينغال يعني تاجر يزيد حجم تجارته بعد كل خسارة، حتى أن الفوز المقبل سيكون استرداد جميع الخسائر السابقة بالإضافة إلى كسب ربح يساوي حصة الأصلي. إذا لاحظت الرسم البياني أدناه، في كل مرة يعاني الحساب من سحب كبير، فإنه يتعافى بسرعة. ويرجع ذلك إلى استراتيجية مارتينغال كما ترون دائريا باللون الأزرق أدناه، حيث يزيد حجم التجارة لتغطية الخسارة. على افتراض أن لديك رأس المال التجاري لانهائي ورصيد الحساب، استراتيجيات مارتينغال كبيرة. يصبح مشكلة إذا كنت تعاني من سلسلة من الخسائر إلى الحد الذي رصيد حسابك لا يسمح لك لمضاعفة أسفل على التجارة القادمة، للتعويض عن الخسائر السابقة. هذه الاستراتيجية الشعبية هي في كثير من الأحيان الأساس الذي المبرمجين كود باكتست المنحدر صعودا باستمرار. إذا كنت باكتست روبوت الفوركس والرسم البياني الأداء هو حرفيا منحدر صعودي، مع انتعاش حاد من الانسحاب بما يتماشى مع الزيادات في حجم الموقف، ومن المرجح أن تكون مارتينغال الاستراتيجية. فقط تأكد من أنها تناسب ملف المخاطر ورأس المال التجاري. وأخيرا، اختبار الأمام يمكن ل إي تعمل تماما في باكتست، ربما بسبب المؤشرات التي هي متخلفة تبحث، ولكن تحتاج بالتأكيد إلى الأمام اختبار الروبوت لاختبار منطقها. على سبيل المثال، إذا كان مؤشر يعيد، فإنه قد تعمل بشكل جيد على باكتست ولكن تفشل في الاختبارات الأمامية منذ المؤشر يتغير باستمرار. اختبار الأمام أيضا يسمح للروبوت لتنفيذ على الظروف الحية وينتشر، وهو أكثر واقعية من باكتست. وبطبيعة الحال، مع اختبار إلى الأمام، والبيانات الخاصة بك هو 100، ونمذجة الجودة هي أيضا 100. الخبراء المستشارين الذي نحب في الختام، ونحن مثل الروبوتات التي لا تعاني من السحب الكبيرة، والتي تعرض سلوك التداول واقعية مثل تطبيق وقف الخسارة، والتي لديها احتمال جيد لمنحنى صعودي المنحدر على المدى الطويل، وإثبات هذه في الاختبارات الأمامية أيضا. If you have any robots which you think are great, feel free to share them with us This article first appeared on StreetpipsMetaTrader 4 Strategy Tester Tutorial To get the most out of your expert advisor, youll need to optimize and backtest your strategy using MetaTraders Strategy Tester. في حين أن الاختبار إلى الأمام على حساب تجريبي ضروري، باكتستينغ يسمح لك لمحاكاة التداول على مدى فترة طويلة من الزمن في دقائق معدودة. ومع ميزة التحسين، يمكنك معرفة الإعدادات التي تم تنفيذها بشكل أفضل خلال فترة مخطط تاريخية مختارة. هناك جدال كبير حول دقة اختبار استراتيجية ميتاترادرس. في أفضل الأحوال، باكتستينغ يقدم سوى تقريب دقيق لكيفية الصفقات سيتم تنفيذها في الوقت الحقيقي. ولكن لها الأداة الوحيدة المتاحة لاختبار أي استراتيجية بسرعة على مجموعة واسعة من الحالات التجارية، والتي يجب أن تتعلم كيفية استخدام بشكل جيد. افتح اختبار الاستراتيجية في ميتاترادر بالنقر فوق الزر المناسب على شريط الأدوات أو عن طريق تحديد ستراتيغي تيستر من القائمة عرض. مركز التاريخ قبل الاختبار المسبق أو التحسين، من المهم التأكد من أن بيانات السجل الخاص بك كاملة ودقيقة، خاصة إذا كنت تستخدم كل علامة كنموذج الاختبار الخاص بك. إذا كنت ترى أخطاء مخطط غير متطابقة في سجل دفتر اليومية الخاص بك أو إذا كانت جودة النمذجة الخاصة بك أقل من 90، وبيانات التاريخ الخاص بك غير كافية لإنشاء القراد دقيقة. افتح "مركز المحفوظات" من قائمة "أدوات" أو عن طريق الضغط على F2 على لوحة المفاتيح. انقر نقرا مزدوجا فوق زوج المخطط في العمود الأيمن الذي تخطط ل باكتست ل. ستظهر قائمة بالفترات الزمنية أدناه. تبدأ بالنقر المزدوج على 1 دقيقة (M1) لتحميل بيانات التاريخ لتلك الفترة. يستخدم باكتستر البيانات M1 لتوليد القراد، لذلك فمن المهم أن البيانات الخاصة بك M1 كاملة. من مركز التاريخ، يمكنك تنزيل أو استيراد البيانات لاستخدامها في الاختبار الخلفي. وسيوفر وسيطك بعض البيانات الحديثة تلقائيا، ولكنه قد لا يكون كافيا لإجراء اختبار باكتست أطول. وبالإضافة إلى ذلك، فإن البيانات القابلة للتنزيل مجانا من ميتاترادر (يمكن الوصول إليها عبر زر التنزيل) ليست كاملة دائما، ويمكن أن تحتوي على فجوات كبيرة. يمكنك تحميل بيانات M1 مجانا من forextesterdatadatasources. html. أولا، حدد الفترة M1 للرمز من القائمة على الجانب الأيسر. انقر فوق الزر استيراد، ثم انقر فوق استعراض في مربع الحوار استيراد لتحديد ملف البيانات M1 قمت بتحميلها للتو. اضغط أوك لاستيراد البيانات - قد يستغرق الأمر عدة دقائق. لديك الآن عدة سنوات من البيانات M1 لهذا الرمز. للاستفادة من هذه البيانات في الأطر الزمنية العالية، ستحتاج إلى استخدام البرنامج النصي بريكونكونفيرتر الذي يأتي مع ميتاترادر. افتح نافذة مخطط ثم قم بتعيينها على M1. سحب وإسقاط البرنامج النصي بيريودكونفيرتر من نافذة المستكشف إلى المخطط، وتعيين إعداد إكستبيريودمولتيبلير إلى عدد الدقائق المراد التحويل إليها. ل M15، استخدم 15 ل H1، استخدم 60 ل H4، استخدام 240، وهلم جرا. كرر هذه العملية لكافة رموز الرموز التي تخطط لاختبارها. وبمجرد الانتهاء من بيانات التاريخ كافية، يمكنك البدء في الاختبار. يوضح الفيديو أدناه عملية استيراد بيانات M1 وتحويلها: التحسين تتيح لك ميزة التحسين من ميتاتريدر 4 اختبار آلاف مجموعات من إعدادات المستشارين الخبراء للعثور على الإعدادات الأكثر ربحية للرسم البياني والفترة والنطاق الزمني المحدد. وسيتعين تحسين الاستراتيجيات القائمة على المؤشرات لتحقيق أقصى قدر من الربحية. ومع ذلك، فإن جميع مناطق العد تقريبا ستستفيد من التحسين - حتى تلك التي تتاجر على بيانات القراد، شريطة أن يكون لديك بيانات التاريخ M1 كاملة (انظر أعلاه). على الرغم من أن المحسن سيعيد الإعدادات الأكثر ربحية للنطاق الزمني المحدد، إلا أن هذا لا يضمن أن هذه الإعدادات ستكون مربحة في المستقبل. تتغير ظروف السوق في كثير من الأحيان، لذا من المهم إعادة تحسين مستشار الخبراء بشكل منتظم للحصول على أفضل النتائج. لتحسين مستشارك الخبير، حدده أولا من المربع المنسدل الخبير المستشار. حدد زوج العملات من مربع الرمز وفترة التخطيط من المربع الفترة. للنموذج. فإنك تريد عموما تحديد أسعار مفتوحة فقط، إلا إذا كنت تحسين إي التي تعمل على بيانات القراد. في هذه الحالة، حدد كل علامة. حدد خيار استخدام التاريخ وحدد نطاقا من التواريخ لتحسينه. وأخيرا، تأكد من تحديد التحسين. انقر على زر "خصائص الخبراء" لفتح إعدادات مستشاري الخبراء. ضمن علامة التبويب الإدخالات حيث سيتم إدخال مجموعة القيم لتحسينها. سيكون العمود ستارت أقل قيمة لإعداد معين، بينما سيكون عمود ستوب أعلى. عمود الخطوة هو المبلغ الذي سينتقله المحسن من إعداد البدء إلى الإيقاف. في الصورة أعلاه نقوم بتحسين إعدادات سي و تيسي و تب لمستشار خبير. قيمة البدء هي 20 و ستيب هو 20 و ستوب هو 200. سيقوم المحسن باختبار كل مجموعة من القيم من 20 و 40 و 60 وهكذا تصل إلى 200. استخدم قيمة البدء والخطوة والإيقاف المناسبة الإعداد الذي تقوم بتحسينه. حتى القيم (5، 10، الخ) جيدة. يجب تحديد مربع الاختيار إلى أقصى اليسار حتى يتم تحسين هذا الإعداد. ستستخدم أي إعدادات يتم فحصها من خلال الرقم الرقم في عمود القيمة عند التحسين. ضمن علامة التبويب اختبار، يمكنك ضبط الإيداع الأولي إلى شيء أكثر واقعية قليلا. اترك الإعدادات الأخرى في الإعدادات الافتراضية. عندما تكون مستعدا لبدء التحسين، اضغط على زر ابدأ في أسفل يمين نافذة اختبار الاستراتيجية. اعتمادا على الفترة، نطاق التاريخ، ونموذج الاختبار وعدد من الإعدادات ليكون الأمثل يمكن أن يستغرق في أي مكان من بضع دقائق إلى عدة ساعات. إذا كان يستغرق وقتا طويلا، فكر في تقصير النطاق الزمني أو تحسين إعدادات أقل أو استخدام قيمة خطوة أكبر. بعد الانتهاء من التحسين، افتح علامة التبويب "نتائج التحسين" وانقر نقرا مزدوجا فوق العمود "الربح" لفرز النتائج. انقر نقرا مزدوجا فوق أي من النتائج لتحميله في المختبر. اضغط على زر ابدأ مرة أخرى إلى باكتست مع الإعدادات المحددة. باكتستينغ الآن، ينبغي أن يكون واضحا كيف يعمل باكتستر. حدد مستشار الخبراء. رمز . الفترة والنموذج. حدد المربع استخدام التاريخ وحدد نطاقا زمنيا. حدد الوضع المرئي فقط إذا كنت ترغب في تجول بصري من باكتستينغ. اترك التحسين بدون تحديد. اضغط على زر خصائص الخبراء وأدخل الإعدادات في عمود القيمة ضمن علامة التبويب الإدخالات. يمكنك أيضا تحميل أو حفظ الإعدادات باستخدام الأزرار في أسفل اليمين. يتم تجاهل أعمدة البدء والخطوة والإيقاف كما هي مربعات الاختيار. أغلق مربع الحوار خصائص الخبراء واضغط على بدء لبدء الاختبار. وسوف يستغرق في أي مكان من بضع ثوان إلى عدة دقائق اعتمادا على الإعدادات الخاصة بك. بعد الانتهاء من الاختبار، افتح علامة التبويب "التقارير" في الجزء السفلي للاطلاع على النتائج. وفيما يلي بعض الإحصائيات التي يجب أخذها في الاعتبار: إجمالي صافي الربح - إجمالي الربح مطروحا منه إجمالي الخسارة. عامل الربح - نسبة إجمالي الربح إلى الخسارة الإجمالية. أعلى هو أفضل، أي شيء فوق 1.5 هو جيد. السحب المطلق - سحب الإيداع الأولي. تؤدي عمليات السحب المرتفعة إلى زيادة احتمال تفجير حسابك. الصفقات الربح - نسبة الفوز العام الخاص بك. جودة النمذجة - المهم فقط إذا كان نموذج الاختبار الخاص بك هو كل القراد. إذا كان الأمر كذلك، يجب أن يكون هذا في 90. إذا لم يكن كذلك، اتبع التعليمات أعلاه لتحديث السجل الخاص بك مع بيانات دقيقة M1. سوف علامة التبويب النتائج في الجزء السفلي من اختبار استراتيجية تعطيك تفاصيل عن أوامر فتح والمغلقة، بما في ذلك وقف زائدة، وجني الأرباح ووقف الخسارة. انقر على الزر فتح مخطط للحصول على تمثيل مرئي لنتائجك. عند اختبار منطقة العد الجديدة، قم بفحصها عن كثب للتأكد من أن إستراتيجيتك تعمل على النحو المنشود. التحرك إلى الأمام إلى الأمام في حين أن باكتستينغ والتحسين يمكن أن تعطيك فكرة جيدة عن كيفية إي الخاص بك سوف التجارة، وسوف تحتاج إلى إجراء المزيد من الاختبارات واسعة النطاق لضمان أن نظام التداول الخاص بك مربحة حقا. أفضل طريقة لتحقيق ذلك هي من خلال عملية تسمى التحرك إلى الأمام. ويتألف تحليل المشي إلى الأمام ببساطة من دورات متعددة من التحسين و باكتستينغ، وتحليل نتائج الاختبار على مدى فترة طويلة. مقالنا حول المشي إلى الأمام تحليل يفسر العملية بمزيد من التفصيل. لدينا المشي إلى الأمام محلل ل ميتاترادر يسمح لك لأداء وفا بسرعة وسهولة.
Comments
Post a Comment