استراتژی همه یا هیچ فارکس

ساخت وبلاگ

هدف این مقاله ایجاد ساده ترین استراتژی معاملاتی است که اصل بازی "همه یا هیچ" را اجرا می کند. این نمونه ای از یک مشاور متخصص است که قرعه کشی بازار فارکس را اجرا می کند. هدف اصلی مشاور کارشناس قرعه کشی افزایش چندین برابری سپرده اولیه با بالاترین احتمال ممکن است. سودآوری، یعنی افزایش میانگین سپرده، از مشاور کارشناس قرعه کشی لازم نیست. برخلاف قرعه کشی معمولی که با فروش هزاران بلیط انجام می شود، مشاور متخصص لاتاری در حال بازی در بخت آزمایی فارکس است و از فارکس به عنوان منبع پول در صورت برنده شدن استفاده می کند.

مقدمه

اهداف تجارت فارکس را می توان به سه گروه تقسیم کرد: کسب درآمد، ذخیره و ضرب. بیایید هر گروه را جداگانه در نظر بگیریم.

بدست آوردن . این یک هدف استاندارد در بازار فارکس است. به نظر می رسد: "من سرمایه ای دارم و می خواهم با معامله در بازار آن را افزایش دهم. یک مشاور متخصص به من بدهید که به طور قابل اعتماد 101 دلار از 100 دلار در روز درآمد داشته باشد."در اهدافی از این دست به میانگین تضمینی افزایش سرمایه نیاز است. مشکل "درآمد" توسط تعداد زیادی از رقبا حل می شود. آنها به خوبی هم با اطلاعات و هم از ابزار فنی مجهز هستند. بنابراین، این کار بسیار دشوار است، هرچند ناامیدکننده نیست. بررسی ها نشان می دهد که نرخ ارز با صرفا تصادفی متفاوت است. جستجو برای استراتژی معاملاتی خود شبیه به جستجوی طلا در زمان عجله طلا است.

صرفه جویی . به نظر می رسد: "من 1000 دلار دارم. می خواهم آنها را در تعطیلات سال آینده خرج کنم. اگر آنها را در بانک بگذارم، به دلیل تورم حدود 10 درصد ضرر می کنم. یک مشاور متخصص به من بدهید که من را نجات دهد. پول. من نمی خواهم پول به دست بیاورم یا از دست بدهم."در واقع این مشکل تبدیل یک ارز به ارز دیگر و بازگشت مجدد در لحظات مناسب است. در اهداف نوع "SAVE" یک میانگین تضمین شده حفظ سرمایه مورد نیاز است."حفظ" سرمایه توسط اکثریت قریب به اتفاق شهروندان ما حل شده است. این را تعداد زیادی از مراکز مبادلات ارزی خیابانی و سپرده های بانکی چند ارزی نشان می دهد. وظیفه "پس انداز" از نظر ریاضی پیچیده نیست. حتی اگر به طور تصادفی نقاط ورود و خروج بازار را انتخاب کنید، می توانید با موفقیت نرخ متوسط تورم را به دست آورید.

تکثیر کردن . اهداف از این نوع به شرح زیر است: "لاتاری. من 100 دلار دارم. برای خرید یک ماشین به یک میلیون دلار بیشتر نیاز دارم. یک مشاور متخصص به من بدهید که از 100 دلار 1،000،000 دلار درآمد داشته باشد. من می دانم که به طور متوسط پول از دست خواهم داد. احتمال برنده شدن یک میلیون کمتر از 100/1, 000, 000 است. اما برای من مناسب است."

فرمول کمتر تهاجمی به شرح زیر است: "من 1000 دلار دارم. برای سازماندهی یک مهمانی به 10000 دلار نیاز دارم. یک مشاور متخصص به من بدهید که 10000 دلار از 1000 دلار درآمد داشته باشد. من می دانم که با احتمال کمی بیشتر از 0. 9 1000 دلار از دست خواهم داد، امامن یک مهمانی با احتمال کمی کمتر از 0. 1 خواهم داشت."

کار دیگری می خواست: "در کیف الکترونیکی من چند سنت وجود دارد. با این پول نه می توانم چیزی بخرم و نه نقدی برداشت کنم. یک مشاور متخصص به من بدهید که حتی با احتمال کمی آنها را به مبلغ معنی دار تبدیل کند."

در اهدافی از این دست به طور متوسط تضمین شده از دست دادن سرمایه حاصل می شود. اما این برای همه قابل قبول است. البته احتمال برنده شدن در لاتاری باید تا حد امکان زیاد باشد. در بازار فارکس تعداد کمی از این چالش را آگاهانه پاسخ می دهند. اما با توجه به تعداد بلیت های قرعه کشی در دفاتر مختلف، این مشکل در جامعه مطالبه می شود. از نظر ریاضی، هدف "ضرب" مدتهاست حل شده است. در این مقاله پیاده سازی MQL5 این نوع از Expert Advisor را در نظر خواهیم گرفت.

طبقه بندی ما شامل وظایفی مانند "بازی شانس - من آدرنالین می خواهم"، "اسباب بازی بسیار هوشمند - من می خواهم در اوقات فراغت خود بازی کنم" و بسیاری کارهای خوشمزه دیگر را شامل نمی شود.

بنابراین، تعریف مشکل: ما نیاز به اجرای قرعه کشی در بازار فارکس داریم. یعنی با احتمالی چند برابر افزایش سرمایه یا ورشکستگی. میانگین افزایش سرمایه لازم نیست. در صورت امکان، احتمال برنده شدن باید حداکثر باشد. ForEx به عنوان منبع پول در صورت برنده شدن مورد نیاز است. ForEx همچنین در اینجا به عنوان یک تولید کننده اعداد تصادفی استفاده می شود که همه به آن دسترسی آزاد دارند.

1. ایده الگوریتم

الگوریتم بی اهمیت زیر برای حل مسئله پیشنهاد شده است.

  1. در جهت تصادفی وارد بازار شوید.
  2. برای یک زمان معین T صبر کنید.
  3. از بازار خارج شوید.
  4. حساب خود را بررسی کنید. اگر در لاتاری برنده شده ایم یا ورشکسته شده ایم، معامله را تمام کنید، در غیر این صورت - به مرحله 1 برگردید.

این الگوریتم فرض می کند که نرخ ارز یک پیاده روی تصادفی خالص است (نگاه کنید به پیاده روی تصادفی و مقاله نشانگر روند). این مدل بازار آشکارا اشتباه است ، اما برای ایجاد یک قرعه کشی کافی است. البته ، مدل های مناسب تر بازار الگوریتم کارآمدتری را ارائه می دهند.

قبل از نوشتن یک مشاور خبره در زبان برنامه نویسی MQL5 ، باید الگوریتم را شرح دهیم. ما باید سوالات زیر را حل کنیم:

  1. قدرت نفوذ
  2. اندازه شرط بندی
  3. سود کسب کنید و سطح ضرر را متوقف کنید
  4. زمان انتظار t
  5. انتخاب یک جفت ارز

2. شرط بندی و اهرم

از آنجا که ما با احتمال 50/50 حدس می زنیم و باید هزینه های آن را بپردازیم ، تعداد معاملات باید تا حد ممکن باشد. در هر تجارت ما یک گسترش را از دست می دهیم. بنابراین ، برای به دست آوردن نتیجه (برای برنده شدن در قرعه کشی یا ورشکستگی) با حداقل تعداد معاملات ، باید میزان اهرم و اندازه شرط بندی حداکثر شود.

به طور کلی ، حداکثر حجم معامله در یک جفت ارز توسط یک کارگزار محدود است. این اندازه اندازه برنده و حداقل زمان قرعه کشی را محدود می کند.

محاسبه کنید که مدت زمان قرعه کشی چه مدت طولانی خواهد شد. بیایید فرض کنیم که حداکثر حجم معاملات 5 قطعه است. این بدان معنی است که ما 500000 دلار در اختیار ما برای تجارت هستیم. هنگامی که تجارت "به اندازه کافی خوش شانس" است ، می توانیم 500،000 دلار * 0. 02 = 10،000 دلار برنده شویم.

ضریب 0. 02 ابعاد "دلار سود/دلار سرمایه در یک روز" است. این ضریب یک ثابت آزمایشی برای بازار فارکس است. این بستگی به بازه زمانی ندارد که ما در آن معامله می کنیم (به استثنای گسترش و مبادله) و جفت ارز. می توان آن را بر اساس اندازه میانگین نسبی نوار و دانستن قضیه ملوان مستی اندازه گیری کرد (به بخش انتخاب جفت ارز و نمودار نشانگر عملکرد حداکثر در زیر مراجعه کنید). مقدار عددی این ضریب تقریبی است (ممکن است 2-3 بار متفاوت باشد).

اگر 100 روز تجارت کنیم ، سود روزانه 10،000 دلار باید نه 100 ، بلکه توسط ریشه مربع 100 ، که 10 است ، ضرب شود ، بنابراین ما با استفاده از یک پیاده روی تصادفی تجارت می کنیم. و در 100 روز تجارت "کاملاً خوش شانس" ، ما 100000 دلار برنده خواهیم شد. و در 400 روز تجارت "کاملاً خوش شانس" ، ما 200،000 دلار برنده خواهیم شد. اگر اهرم 1: 100 بود ، این بدان معنی است که سپرده اولیه کمتر از 5000 دلار (500000 دلار در 100) نبود.

در کل ، در 100 روز ما 20 بار سپرده اولیه و در 400 روز - 40 بار افزایش داده ایم. متأسفانه ، با این حداکثر حجم معامله و سپرده اولیه ، سرعت بیشتری برای افزایش سپرده خود کسب نمی کنیم.

اگر سپرده اولیه کوچک باشد و برای حداکثر حجم شرط کافی نباشد، سرعت رشد می تواند تا نرخ نمایی بسیار بیشتر باشد. اما هنوز باید دلالی پیدا کنیم که با سپرده های کوچک کار می کند و شرایط معامله آن را ببینیم.

برای پیشی گرفتن از محدودیت حداکثر حجم، می توانید سعی کنید با چندین جفت ارز بازی کنید. اگر جفت ارزها مستقل باشند، میانگین را می گیریم و سرعت رشد کمتر از یک جفت ارز خواهد بود. اگر جفت ارزها مانند EURUSD و EURCHF همبستگی داشته باشند، ممکن است این محدودیت نادیده گرفته شود. با این حال، همبستگی نرخ ها همیشه مشاهده نمی شود.

بنابراین، ما هنوز هم می توانیم یک قرعه کشی ایجاد کنیم تا سرمایه اولیه به اندازه کافی بزرگ را در 10 ضرب کنیم. حداقل، MetaTrader 5 Strategy Tester به ما اجازه انجام این کار را نمی دهد.

3. انتخاب Take Profit and Stop Loss

دریافت سود و توقف ضرر بر اساس پیاده روی تصادفی تنها تعداد معاملات را افزایش می دهد. هرچه سود برداشت و توقف ضرر به قیمت افتتاحیه نزدیک تر باشد، تعداد دفعات آنها بیشتر می شود و تعداد معاملات بیشتر می شود. گرفتن سود و توقف ضرر مستقیماً بر احتمال برنده شدن با استفاده از پیاده روی تصادفی تأثیر نمی گذارد. از آنجایی که می خواهیم تا حد امکان معاملات را کم کنیم، این سفارش ها را انجام نمی دهیم.

در واقعیت، Stop Loss هنوز وجود دارد - این Stop Out است. معمولاً در 50 درصد شروع می شود و معامله به اجبار تمام می شود. از آنجا که هنوز مقداری پول در سپرده پس از توقف وجود دارد، به این معنی است که ما از تمام شانس ها استفاده نکرده ایم و می توانیم به معامله ادامه دهیم. بنابراین، مشاور متخصص باید در مورد وضعیت Stop Out هشدار دهد. سپرده باید به طور کامل تا حداقل شرط، و در حالت ایده آل - تا صفر تمام شود.

منطقی است که Take Profit را قرار دهید. ایده این است که نرخ ارز واقعی - یک پیاده روی تصادفی نیست. گاهی اوقات پرش های غیرعادی بزرگی دارد، مثلاً بعد از خبر. پرش های غیرعادی به احتمال زیاد به شکل خاردار هستند نه پله. می توانید روی این بازی کنید.

شکل 1. سنبله تیز در EURUSD، M1

الگوریتم ما به سادگی می تواند چنین پرش هایی را از دست بدهد. اگر اوج در جهت آخرین معامله ما اتفاق نیفتد و ما آن را از دست دادیم، خوب است. اگرچه توقف خروج ممکن است باعث شود. اما اگر سنبله در جهت ما اتفاق بیفتد، ما از از دست دادن آن کینه داریم. برای تشخیص آن، Take Profit را قرار می دهیم.

Take Profit را می توان به چند روش قرار داد: مستقیم، دوم و سوم.

راه مستقیم - قیمت فعلی را پیگیری کنید و آن را با قیمت های تاریخی مقایسه کنید. این یک راه بسیار دشوار است، حتی در سطح الگوریتمی. در واقع باید دم چاق توزیع تغییرات قیمت را شناسایی و قطع کرد.

راه دوم - سود فعلی خود را پیگیری کنید و آن را با سود معاملات قبلی مقایسه کنید. هنگامی که سود بسیار بیشتر از میانگین سود معاملات قبلی است - سود خود را بگیرید. این راه آسان تر است، اما وقتی Expert Advisor شروع به کار می کند، به سادگی هیچ سابقه ایده آل وجود ندارد. علاوه بر این، ما می خواهیم تا حد امکان معاملات را کم کنیم، به این معنی که تاریخچه کوتاه خواهد بود.

راه دوم (نوعی دیگر) - سود فعلی خود را پیگیری کرده و آن را با سود محاسبه شده مورد انتظار مقایسه کنید. هنگامی که سود بیشتر از سود محاسبه شده مورد انتظار است - سود خود را بگیرید. سود مورد انتظار را می توان بر اساس تاریخچه قیمت محاسبه کرد، اما به اندازه راه مستقیم دشوار است.

راه سوم - نسبت تعادل به ارزش ویژه را پیگیری کنید و آن را با ثابت ها مقایسه کنید. ثابت ها از قبل در طول بهینه سازی Expert Advisor تعیین می شوند. البته این ثابت ها به شرایط تجارت بستگی دارد - اهرم، حداکثر حجم تراکنش، و غیره. بیایید نمونه های معمولی را در نظر بگیریم. و مهمتر از همه - این راه تا حد امکان ساده است:

  • اگر حقوق صاحبان سهام 2 (یا 3) بار بیشتر از موجودی است - سود خود را بگیرید.
  • اگر حقوق صاحبان سهام از موجودی 10000 دلار (یا 30000 دلار) بیشتر است - سود خود را بگیرید.

اعداد خاص 2، 3، 10000، 30000. پس از بهینه سازی مشخص خواهد شد.

4. زمان انتظار T

اگر بخواهیم به دفعات وارد بازار شویم و از آن خارج شویم (مثلاً هر دقیقه)، نرخ کمی تغییر می کند و سود ما خیلی کم است، اما باز هم باید اسپرد ثابت را پرداخت کنیم. اسپرد کل تمام سودها را نادیده می گیرد، حتی اگر به خوبی حدس بزنیم.

از طرف دیگر، اگر معاملات را به ندرت انجام دهید (مثلاً یک بار در سال یا یک بار در ماه)، در این صورت اسپرد در مقایسه با سود هر معامله ناچیز خواهد بود. اما شما باید برای مدت بسیار طولانی معامله کنید. همچنین باز نگه داشتن یک موقعیت برای مدت طولانی به دلیل سوآپ بی سود است.

بنابراین، فرکانس بهینه معاملات وجود دارد. این بستگی به نوسانات نرخ ارز و شرایط تجارت، مانند اسپرد شناور دارد. بنابراین، محاسبه دقیق فراوانی بهینه معاملات از قبل غیرممکن است.

با این حال، می توان آن را تخمین زد. بدون پرداختن به توضیحات و بررسی های ریاضی، نمودار زیر را ارائه می کنم:

Figure 2. The boundaries and the center of the equity probability distribution function, when trading for one day with different times of T

شکل 2. مرزها و مرکز تابع توزیع احتمال حقوق صاحبان سهام، هنگام معامله برای یک روز با زمان های مختلف T

در نمودار شکل 2 محور آبسیسا زمان T - زمان یک معامله الگوریتم بی اهمیت ما را نشان می دهد. محور مختصات نشان می دهد که با معامله یک روز در هر T دقیقه، بدون هیچ اهرمی و سرمایه گذاری سود بر روی جفت EURUSD، چند دلار سود از یک دلار سرمایه خواهیم داشت. از نظر ریاضی، اینها مرزهای توزیع احتمال استراتژی بی اهمیت ما برای زمان های مختلف T هستند. منحنی آبی - برای حدس زدن مطلق، قرمز - برای حدس زدن مطلق، نارنجی و آبی - برای "حدس زدن کاملا موفق/ناموفق".

به عنوان مثال، هر دقیقه با ورود و خروج از بازار (M1)، با 1 دلار سرمایه در روز می توانیم حداکثر 0. 5 دلار برنده شویم و حداکثر 1. 3 دلار ضرر کنیم. به احتمال زیاد ما 0. 3 دلار از دست می دادیم. در طول روز می توانستیم 1440 معامله انجام دهیم و 0. 0002 دلار اسپرد در هر معامله پرداخت کنیم. اسپرد کل برای همه معاملات در روز 0. 288 دلار خواهد بود. اندازه متوسط میله EURUSD M1 0. 00056 دلار است. برنده شدن با حدس زدن مطلق 0. 00056 دلار * 1440 = 0. 8064 دلار است. اسپرد برنده را کم کنید: 0. 8064 - 0. 288 دلار = 0. 51 دلار سود از یک دلار در روز. نقطه (М1، 0. 51) را روی نمودار قرار دهید.

ما به حدس "نسبتا خوش شانس" علاقه مندیم - منحنی نارنجی. بیایید آن را در مقیاس بزرگتر ترسیم کنیم:

Figure 3. Profit of trivial trading strategy with sufficiently successful guessing at different times of T

شکل 3. سود استراتژی تجارت بی اهمیت با حدس زدن موفقیت آمیز کافی در زمان های مختلف T

با نگاهی به شکل 3، می بینیم که تجارت بیشتر از هر 30 دقیقه سودآور نیست - اسپرد تمام سود را می بلعد. زمان بهینه T تجارت برای ما در محدوده 1 ساعت تا 1 هفته قرار دارد. فعلاً روی آن توقف کنیم. بعداً، وقتی EA ما به پایان رسید، زمان بهینه را با استفاده از بهینه سازی مشخص می کنیم. اگر کسی ایده های معاملاتی برای پیش بینی نرخ بهتر از 50/50 داشته باشد، می توان الگوریتم بی اهمیت را بهبود بخشید. زمان بهینه و شرط بهینه نیز کاهش می یابد.

با انتخاب زمان T، در واقع بازه زمانی نموداری را که روی آن کار خواهیم کرد، انتخاب کرده ایم. به طور دقیق، زمانی که زمان T داده می شود، می توانید هر تایم فریمی را انتخاب کنید - EA به همین ترتیب کار می کند، اما ترسیم بر روی تایم فریم اشتباه ناراحت کننده خواهد بود.

5. انتخاب جفت ارز

از آنجایی که ما نرخ تمام جفت ارزها را به صورت تصادفی در نظر می گیریم، از بین همه نرخ ها باید یکی را با بیشترین اندازه متوسط نسبی میله انتخاب کنیم. سپس با تعداد معاملات کمتر به نتیجه خواهیم رسید (برنده شدن در قرعه کشی یا ورشکستگی).

برای انجام این کار، باید تمام نرخ های جفت ارز موجود را بررسی کنیم و برای هر یک از آنها میانگین اندازه نسبی نوار را محاسبه کنیم. برای اینکه این کار را به صورت دستی انجام ندهیم، نشانگر حداکثر بازده - YieldClose. mq5 را می نویسیم.

Figure 4. Maximal Yield Indicator

شکل 4. شاخص بازده حداکثر - YieldClose. mq5 (EURUSD، D1. به طور میانگین 10 بار. نشانگر در محدوده 2-3 بار نوسان می کند)

پس از نوشتن این مقاله، به طور تصادفی متوجه شدم که شاخص نوسانات (نوسانات کافمن از کتاب تجارت هوشمندتر: بهبود عملکرد در بازارهای در حال تغییر اثر پری کافمن) موجود در تحویل استاندارد پایانه مشتری MetaTrader 5 تقریباً با شاخص حداکثر بازدهی یکسان است. وقتی دامنه عقل کافی نیست، باید چرخ را دوباره اختراع کنید. بله، درک صدها شاخص و مشاور متخصص از مجموعه استاندارد دشوار است! متاسفانه در این مرحله کتاب درسی عمومی وجود ندارد.

به نظر می رسد که میانگین اندازه نسبی میله در محدوده 2-3 بار برای یک جفت ارز واحد نوسان می کند. در این 2-3 برابر میانگین اندازه نسبی میله برای همه ارزها یکسان است. در واقع شاخص حداکثر بازدهی فعالیت معاملاتی را نشان می دهد.

هنگام ورود به بازار، از بین تمام جفت ارزها باید یکی را با بیشترین فعالیت معاملاتی انتخاب کنیم، یعنی یکی با حداکثر مقادیر نشان داده شده توسط اندیکاتور. علاوه بر این، بهتر است در روز که فعالیت بیشتر است معامله کنید و شب منتظر بمانید. معاملات صرفاً روزانه شانس شما را برای برنده شدن در قرعه کشی افزایش می دهد، اما زمان کار Expert Advisor را تقریباً دو برابر افزایش می دهد. اینکه کدام بهتر است - شانس بیشتر برنده شدن یا زمان کوتاهتر - به تصمیم کاربر بستگی دارد.

همانطور که در بالا توضیح داده شد، می توانید تقریباً هر دقیقه معامله کنید، اما با انجام این کار شانس برنده شدن بسیار ناچیز خواهد بود. از سوی دیگر، ما نیز نمی توانیم سال ها معامله کنیم تا احتمال برنده شدن را به حداکثر برسانیم. نسبت «زمان معامله/احتمال برنده شدن» باید در زمان تعریف مسئله به تفصیل بیان شود، اما چه کسی می دانست که می تواند اینقدر سخت باشد؟

این یک مثال معمولی از دشواری ایجاد مشخصات الزامات برای نوشتن یک مشاور متخصص است. تا اینجای کار، برای اینکه EA ما را پیچیده نکنیم، اجازه دهید روی تجارت مداوم تک ارزی روی جفت معروف EURUSD تمرکز کنیم.

در همان زمان به دو ویژگی جالب شاخص توجه کنید.

  1. در شاخص بازه زمانی H1 نوسانات روزانه فعالیت معاملاتی (نوسانات) را نشان می دهد (شکل 5 را ببینید).
  2. ماکزیمم اندیکاتور مربوط به پایان/آغاز روندها یا مسطح است (شکل 6 را ببینید).

Figure 5. Daily oscillations of activity

شکل 5. شاخص بازده حداکثری نوسانات روزانه فعالیت معاملاتی را نشان می دهد (EURCHF، H1، به طور متوسط 10 میله)

The Maximal Yield Indicator maxima correspond to the beginning/end of trend/flat

شکل 6. حداکثر شاخص بازدهی با شروع/پایان روند/تطبیق مطابقت دارد (USDCAD، M5، میانگین 10 میله)

ایده ای برای استفاده در آینده: اگر شاخص (فعالیت بازار) شروع به افزایش بیش از میانگین خود کرد، موقعیت های سودآور را ببندید و موارد زیان آور را رها کنید - بازار در حال تغییر است. اگر اندیکاتور کمتر از میانگین خود باشد، موقعیت های سودآور را رها کنید و موارد زیان آور را ببندید - در آینده نزدیک بازار تغییر نخواهد کرد. اما این ایده نیاز به مطالعه جداگانه ای دارد.

پیاده سازی الگوریتم به خوبی توسعه یافته در زبان MQL5 نیاز به مهارت های فنی دارد. می توانید کد EA را همراه با نظرات در پیوست این مقاله (lottery. mq5) پیدا کنید.

6. بهینه سازی مشاور متخصص

EA باید برای شرایط معاملاتی خاص موجود در Strategy Tester بهینه شود: سپرده اولیه - 5000 دلار، اهرم - 1:100، تاریخ - 1 سال، برنده شدن در لاتاری - 100،000 دلار، حداکثر شرط - 5 لات، جفت ارز - EURUSD، سطح توق ف-50 درصد

بهینه سازی مشاوران متخصص، پیشنهاد شده در ترمینال مشتری MetaTrader 5، برای ما مناسب نیست. در واقع، در طول بهینه سازی باید احتمال برنده شدن در لاتاری را به حداکثر برسانیم. برای انجام این کار، ما باید EA را روی 1000 قطعه مختلف تاریخ اجرا کنیم و نسبت برد/باخت را محاسبه کنیم. اجرای EA بر روی یک تکه از تاریخ معنی ندارد: به ما برنده یا باخت می دهد، وضعیت تعادل از قبل مشخص است - 0 دلار یا 100000 دلار.

اجرای دستی EA بر روی 1000 قطعه تاریخ خسته کننده است، بنابراین راه دیگری را پیش خواهیم برد. برای تعیین جهت ورود به بازار، EA ما از مولد اعداد تصادفی استفاده می کند که یک دنباله خرید/فروش تصادفی ایجاد می کند. بیایید EA را با 1000 توالی خرید/فروش مختلف در یک قسمت از تاریخ اجرا کنیم. البته این همان 1000 قطعه مختلف تاریخ نیست، بلکه بسیار شبیه است.

به منظور بهینه سازی برخی از پارامترها ، مانند زمان t ، برای هر مقدار T ما 1000 توالی خرید/فروش مختلف را اجرا می کنیم و احتمال پیروزی را تعیین می کنیم. برای انجام این کار ، الگوریتم کامل آهسته بهینه سازی را با دو پارامتر انتخاب کنید: زمان t و تعداد بلیط خوش شانس ، یعنی تعداد دنباله تصادفی.

نتایج بهینه سازی را به اکسل صادر کنید و نمودار را ترسیم کنید:

Figure 7. Probability of winning the lottery, depending on the time T. The abscissa axis - trivial strategy timeout, i.e. time of one trade. The ordinate axis - probability of winning with such time T.

شکل 7. احتمال برنده شدن در قرعه کشی ، بسته به زمان T. محور Abscissa - زمان بندی استراتژی بی اهمیت ، یعنی زمان یک تجارت. محور Ordinate - احتمال پیروزی با چنین زمانی T.

با نگاهی به شکل 7 ، زمان بهینه T را تعیین می کنیم. حداکثر احتمال پیروزی با زمان تقریبی t = 350 000 ثانیه مطابقت دارد. نمودار مشابه برآورد نظری فوق در شکل 3 است - با مقادیر کوچک T احتمال پیروزی تقریباً صفر است. شکل نمودار به دوره و طول تاریخ بستگی دارد. نمودار همیشه در حدود 500000 ثانیه به مقادیر بزرگ زمان کاهش می یابد.

برای تعیین ارزشهای بهینه سود ، نمودار تعادل و حقوق صاحبان سهام را مشاهده می کنیم ، تلاش می کنیم تا فقط در انتشار بسیار زیاد از سهام عدالت ایجاد شود. بهینه سازی ثابت های سود با حداکثر تعادل معنی ندارد: انتشار گازهای بزرگ به ندرت اتفاق می افتد ، شاید یک بار در تمام زمان عملکرد EA و حتی به ندرت. اگر بهینه سازی را با حداکثر تعادل اجرا کنیم ، به سادگی با این قطعه تاریخ مشخص تنظیم می شود.

7. بررسی مشاور متخصص

برای تعیین کیفیت EA ، ما آن را با 10 000 توالی خرید/فروش مختلف اجرا خواهیم کرد. جدول را با بهینه سازی نتایج در اکسل باز کنید ، سپس نسبت برنده/از دست دادن را محاسبه و ترسیم کنید.

از نتایج اندازه گیری ها ، مشاور خبره ما با احتمال 0. 045 و حد نظری 0. 05 ، قرعه کشی (به دست آوردن بیش از 100000 دلار) برنده می شود. مشاور خبره با احتمال 0. 88 قرعه کشی (دستاوردهای کمتر از 150 دلار) را از دست می دهد. احتمال باقیمانده 0. 075 مربوط به مقادیر تعادل بین 150 تا 100000 دلار است. با احتمال 0. 1 مشاور مشاور متخصص نسبت به سپرده اولیه 5000 دلار ، سهام بیشتری کسب می کند.

Figure 8. Probability of winning and losing depending on the number of trades

شکل 8. زمان قرعه کشی. محور Abscissa - تعداد معاملات. محور Ordinate - احتمال برنده شدن در قرعه کشی برای تعداد معینی از معاملات.

شکل 8 منحنی هایی را نشان می دهد که احتمال پیروزی و از دست دادن را نشان می دهد ، بسته به تعداد معاملات. منحنی آبی - تعداد معاملات در مورد عمومی ، منحنی قرمز - تعداد معاملات در صورت پیروزی. به طور کلی ، قرعه کشی در 20 معاملات (2 ماه ، 1 تجارت = 350 000 ثانیه) از دست می رود. قرعه کشی ممکن است تا شش ماه یا بیشتر طول بکشد (60-70 معاملات). برنده ها به احتمال زیاد در طی 3-5 ماه قرعه کشی (30-50 معاملات ، منحنی قرمز) است.

نتیجه

ما مشاور متخصص قرعه کشی را برای شرایط تجاری خاص بهینه کرده ایم. EA به ساده ترین روش از همه گزینه های ممکن نوشته شده است. جوانب مثبت و منفی مشاور متخصص قرعه کشی آشکار است.

  • شما می توانید قرعه کشی را به تنهایی بازی کنید. نیازی به فروش میلیون ها بلیط نیست.
  • می توانید نسبت قیمت بلیط (سپرده اولیه) و برنده را انتخاب کنید.
  • احتمال پیروزی از قبل شناخته شده است و نزدیک به حد نظری است.
  • نتایج برنده را می توان برای یکپارچگی در تاریخ فارکس به صورت رایگان بررسی کرد.
  • مدت زمان طولانی قرعه کشی - چند ماه. زمان با شرایط تجارت محدود است.
  • نسبت "قیمت بلیط"/"برنده" ممکن است - حدود 1:10.
  • سپرده اولیه بزرگ مورد نیاز است.

با وجود بهترین تلاش های توسعه دهندگان ، اجرای حتی یک الگوریتم بی اهمیت نیاز به یک نبوغ غیر مهم ، دانش ریاضیات و زبان MQL5 دارد. اما ، به لطف تلاش توسعه دهندگان ، اجرای هنوز امکان پذیر است.

ترجمه شده از روسی توسط Metaquotes Ltd. مقاله اصلی: https://www. mql5.com/ru/articles/336

هشدار: کلیه حقوق این مواد توسط Metaquotes Ltd. کپی یا چاپ مجدد این مواد به طور کامل یا جزئی محفوظ است.

استراتژی ترید...
ما را در سایت استراتژی ترید دنبال می کنید

برچسب : نویسنده : مرجان شیرمحمدی بازدید : 55 تاريخ : سه شنبه 15 فروردين 1402 ساعت: 13:06