Обсуждение статьи "Почти конструктор для создания советника" - страница 3

 
Статья хорошая, качественная. Спасибо, это сильно упрощает понимание как собирать советник.
 
vjqgfhjkm #:
Статья хорошая, качественная. Спасибо, это сильно упрощает понимание как собирать советник.

Ясно. Просто меня смутило название сигналов. В общем если по статье - задавайте вопросы, делитесь своим кодом. 

 

Здравтвуйте!


А подскажите как с помощью вашего конструктора сделать установку стопа и тейка не в фикс пунктах а в нужную мне цену? И так же из статьи не очень понятно как выставить отложенный ордер (к примеру лимитный) по нужной мне цене. Где именно задаётся цена?

 
Viktor Kudriavtsev #:

*** А подскажите как с помощью вашего конструктора сделать установку стопа и тейка не в фикс пунктах а в нужную мне цену? ***

Нужно немного переписать код (я раньше отказался от этой реализации и оставил выставление в пунктах)

Viktor Kudriavtsev #:

**** И так же из статьи не очень понятно как выставить отложенный ордер (к примеру лимитный) по нужной мне цене. Где именно задаётся цена?

В конце блока сигналов есть закомментированные строки для работы с отложенными ордерами:

//---
   /*if(InpPendingOnlyOne)
      if(IsPendingOrdersExists())
         return(true);
   if(InpPendingClosePrevious)
      m_need_delete_all=true;
   int size_need_pending=ArraySize(SPending);
   ArrayResize(SPending,size_need_pending+1);
   if(!InpPendingReverse)
      SPending[size_need_pending].pending_type=ORDER_TYPE_BUY_STOP;
   else
      SPending[size_need_pending].pending_type=ORDER_TYPE_SELL_STOP;
   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 STOP");*/
//---
   return(true);
  }
 
suhas jetithor #:
Действительно, сэр, вы сделали огромное программное обеспечение, оно действительно полезно для новых трейдеров. Я был очень счастлив, когда увидел, что моя сумма увеличивается день ото дня.
Но вы не установили опцию снятия средств для клиентов, из-за чего компания обманывает бедных клиентов.
Я также страдаю от этого с вашим программным обеспечением я заработал $577, но компания не отвечает на мой телефон, электронную почту. Так что мои деньги застряли в вашем программном обеспечении.
Поэтому, предоставляя полномочия компаниям, занимающимся программным обеспечением, посоветуйте им не обманывать бедных.
С уважением,
Надежда на лучшее
 
suhas jetithor #:
Действительно, сэр, вы сделали огромное программное обеспечение, оно действительно полезно для новых трейдеров. Я был очень счастлив, когда увидел, что моя сумма увеличивается день ото дня.
Но вы не установили опцию снятия средств для клиентов, из-за чего компания обманывает бедных клиентов.
Я также страдаю от этого с вашим программным обеспечением я заработал $ 577, но компания не отвечает на мой телефон, электронную почту. Так что мои деньги застряли в вашем программном обеспечении.
Поэтому, предоставляя полномочия компаниям, занимающимся программным обеспечением, посоветуйте им не обманывать бедных.
С уважением,
Надежда на лучшее

Ваши деньги застряли не в программном обеспечении, а на торговом счете вашего брокера.

Вам следует обратиться к своему брокеру и в его регулирующий орган, чтобы он вам помог.

Не путайте MQL5.com с вашим брокером, это 2 разные вещи.

 
Уважаемый Владимир Карпутов, спасибо за новые идеи по кодированию советников и за то, что делитесь ими; с Новым годом!
 
Спасибо, что поделились, хорошая работа
 

Уважаемый Владимир Карпутов,

Большое спасибо за Вашу работу и участие в жизни сообщества.

В коде есть ошибка.
В функции PendingOrder , если для отложенного ордера задан пользовательский объем, то ea не открывает его, потому что расчет free_margin_check неверен, так как check_order_type = -1.

   ENUM_ORDER_TYPE check_order_type=-1;
   double check_price=0.0;
   if(SPending[index].volume>0.0)
      check_lot=SPending[index].volume;
   else
     {
      //--- проверьте объем перед отправкой ордера, чтобы избежать ошибки "недостаточно денег" (CTrade)
      switch(SPending[index].pending_type)
        {
         case  ORDER_TYPE_BUY:
            check_order_type=ORDER_TYPE_BUY;
            break;
         case ORDER_TYPE_SELL:
            check_order_type=ORDER_TYPE_SELL;
            break;
         case ORDER_TYPE_BUY_LIMIT:
            check_order_type=ORDER_TYPE_BUY;
            break;
         case ORDER_TYPE_SELL_LIMIT:
            check_order_type=ORDER_TYPE_SELL;
            break;
         case ORDER_TYPE_BUY_STOP:
            check_order_type=ORDER_TYPE_BUY;
            break;
         case ORDER_TYPE_SELL_STOP:
            check_order_type=ORDER_TYPE_SELL;
            break;
         default:
            return(false);
            break;
        }
      //--- 
      //...
     }
//...
//--- проверьте объем перед отправкой ордера, чтобы избежать ошибки "недостаточно денег" (CTrade)
   double free_margin_check=m_account.FreeMarginCheck(m_symbol.Name(),
                            check_order_type,check_lot,check_price);


Переключатель должен быть снаружи.

В любом случае, спасибо, что поделились этим инструментом


 
Mike Pascal Plavonil отложенного ордера задан пользовательский объем, то ea не открывает его, потому что расчет free_margin_check неверен, так как check_order_type = -1.


Переключатель должен быть снаружи.

В любом случае, спасибо, что поделились этим инструментом


Спасибо, изменения были внесены в код Trading engine 4 (версия "4.012").