Советники: iMA Pending Distance

 

iMA Pending Distance:

Работа отложенными ордерами (Stop или Limit) совместно с индикатором iMA (Moving Average, MA)

Автор: Vladimir Karputov

 
Хороший советник, но брокеров немного, что бы с ним можно было работать. А у вас нет кода под мт4?
 
andrey47902 #:
***. А у вас нет кода под мт4?

Не знаю про такое.

 
А насколько сложно перевести код под мт4? В основном меня интересует блок, который отвечает за установку бай-селл лимитников относительно МА.. Какая там логика,по этому коду не могу понять?
 
andrey47902 #:
А насколько сложно перевести код под мт4? В основном меня интересует блок, который отвечает за установку бай-селл лимитников относительно МА.. Какая там логика,по этому коду не могу понять?

Я не могу Вам помочь. Если Вы до сих пор сидите на старом терминале - обратитесь во Фриланс.

Торговые приложения для MetaTrader 5 на заказ
Торговые приложения для MetaTrader 5 на заказ
  • 2021.10.16
  • www.mql5.com
Самый большой фриланс c разработчиками программ на MQL5
 
В первом случае байлимит ставит внизу, относительно машки, во втором случае, прямо на ней?
Файлы:
 
andrey47902 #:
В первом случае байлимит ставит внизу, относительно машки, во втором случае, прямо на ней?

Блок кода:

   if(InpPendingType==limit)
     {
      if(count_buy_limits==0)
        {
         int size_need_pending=ArraySize(SPending);
         ArrayResize(SPending,size_need_pending+1);
         SPending[size_need_pending].pending_type=ORDER_TYPE_BUY_LIMIT;
         SPending[size_need_pending].price=ma[0];
         SPending[size_need_pending].indent=m_pending_indent;
         if(InpPendingExpiration>0)
            SPending[size_need_pending].expiration=(long)(InpPendingExpiration*60);
         if(InpPrintLog)
            Print(__FILE__," ",__FUNCTION__,", OK: ","Signal BUY LIMIT");
        }
      if(count_sell_limits==0)
        {
         int size_need_pending=ArraySize(SPending);
         ArrayResize(SPending,size_need_pending+1);
         SPending[size_need_pending].pending_type=ORDER_TYPE_SELL_LIMIT;
         SPending[size_need_pending].price=ma[0];
         SPending[size_need_pending].indent=m_pending_indent;
         if(InpPendingExpiration>0)
            SPending[size_need_pending].expiration=(long)(InpPendingExpiration*60);
         if(InpPrintLog)
            Print(__FILE__," ",__FUNCTION__,", OK: ","Signal SELL LIMIT");
        }
     }

берется текущая цена на баре #0 - не на баре #1, а на баре #0.  И ещё (при выставлении) учитывается отступ от цены.

Но так как на баре #0 индикатор множество раз пересчитывается, потом, на истории, Вы возможно видите и над и под.

 
Советник проверил.  Так и не добился, чтобы он выставил отложенные ордера. Да и настроек много, что для помощника при ручной торговле не удобно. Для БазыКодов может и сойдет для чего то.
 
Vladimir Gulakov #:
Советник проверил.  Так и не добился, чтобы он выставил отложенные ордера. Да и настроек много, что для помощника при ручной торговле не удобно. Для БазыКодов может и сойдет для чего то.

Здравствуйте, Владимир. Автор советника вряд ли ответит, поэтому у меня к Вам несколько вопросов:

  1. Где не добились установки отложенных ордеров - в терминале или в тестере стратегий?
  2. Какие настройки Вас не устраивают и почему считаете, что их много?
  3. Какие настройки на Ваш взгляд были бы нужны, а какие нет?

Кроме того, запустите советник в тестере стратегий в визуальном режиме, скопируйте то, что пишется в сообщениях на вкладке Журнал и покажите здесь. Вот тогда уже можно будет предметно поговорить.

С уважением, Владимир.

 
MrBrooklin #:

Здравствуйте, Владимир. Автор советника вряд ли ответит, поэтому у меня к Вам несколько вопросов:

  1. Где не добились установки отложенных ордеров - в терминале или в тестере стратегий?
  2. Какие настройки Вас не устраивают и почему считаете, что их много?
  3. Какие настройки на Ваш взгляд были бы нужны, а какие нет?

Кроме того, запустите советник в тестере стратегий в визуальном режиме, скопируйте то, что пишется в сообщениях на вкладке Журнал и покажите здесь. Вот тогда уже можно будет предметно поговорить.

С уважением, Владимир.

Здравствуйте. Честно говоря, нет желания разбираться с каждым Советником из КодоБазы почему он не работает. Не работает  и ладно. Тестером стратегий я вообще не пользуюсь, не вижу в этом смысла. Если стратегия Советника понятна, то протестировать его можно и графически. Советник не выставляет ордера в Терминале, как только не крутил настройки. 

Много настроек плохо, потому что они вызывают путаницу при ручной и алгометрической торговле. А это мне не надо.

Касательно этого Советника, то на мой взгляд достаточно, чтобы в нем были следующие настройки.. -Лот

                                                                                                                                                           - СЛ и ТП

                                                                                                                                                            - Величина отклонения от МА на которой будет выставляться Отложенный Лимит ордер.

                                                                                                                                                             - Срок жизни отложенного ордера.

                                                                                                                                                            - Настройки МА

                                                                                                                                                             - Магик.

                                                                                                                                                             -  Больше  ничего не надо.

 
Vladimir Gulakov #:

Здравствуйте. Честно говоря, нет желания разбираться с каждым Советником из КодоБазы почему он не работает. Не работает  и ладно. Тестером стратегий я вообще не пользуюсь, не вижу в этом смысла. Если стратегия Советника понятна, то протестировать его можно и графически. Советник не выставляет ордера в Терминале, как только не крутил настройки.

Значит не те настройки "крутили". Код рабочий, только что проверил на своём тестере стратегий. Таймфрейм - часовой.

Есть несколько настроек, которые весьма критичны для работы советника. Попробуйте начать с таких:

input ushort   InpPendingExpiration  = 0;        // Pending: Expiration, in minutes ('0' -> OFF)
.
input ushort   InpMaxSpread          = 200;      // Pending: Maximum spread, in points (1.00045-1.00055=10 points)

Дальше тестируйте и подбирайте такие настройки, какие Вам нужны.

С уважением, Владимир.