Как распознать событие срабатывания отложенника в МТ4 ?

 

Как распознать событие срабатывания отложенника в МТ4 ?

Ведь в МТ4  нет обработчиков событий, как распознать сработал отложенник или нет ?

 

Все зависит от логики кода.

Например, пишем функцию на основе OrdersTotal() с фильтром ордеров по признаку отложенного ордера.

Как только кол-во отложек уменьшилось, а открытых ордеров стало больше на это кол-во  - событие произошло. 

Это, при условии, что на счете нет торговли другими методами, кроме как отложенными ордерами. Если таковое есть - прикручиваем доп. процедуры контроля.

 
Heroix:

Все зависит от логики кода.

Например, пишем функцию на основе OrdersTotal() с фильтром ордеров по признаку отложенного ордера.

Как только кол-во отложек уменьшилось, а открытых ордеров стало больше на это кол-во  - событие произошло. 

Это, при условии, что на счете нет торговли другими методами, кроме как отложенными ордерами. Если таковое есть - прикручиваем доп. процедуры контроля.

 


Спасибо, это да по общему количеству, а конкретный ?


может создать массив и там хранить все ордера и проверять по циклу

может еще как ?

 
Mr_Goods:
может создать массив и там хранить все ордера и проверять по циклу 

может еще как ?

Так и делал, создал массив тикетов и проверял постоянно

 if(x==ord)//проверяем срабатывание отложенных
      {         
      for(i=0;i<ord;i++)
         {
         OrderSelect(ortic[i], SELECT_BY_TICKET);
         if(ortrade[i]!=OrderType())//если сработал
            {
            ortrade[i]=OrderType();
            //magic=ormag[i];
           // result="OP";
            if(Sound)Alert("Отложенный ордер сработал!");
            flag1=1;
            break;
            }
         }   
      }
 
Roger:

Так и делал, создал массив тикетов и проверял постоянно

 


спасибо
 
Roger:

Так и делал, создал массив тикетов и проверял постоянно

 


вы в ortic храните номера ордеров, а в ortrade их типы/сработал не сработал, так ?
 
Mr_Goods:

вы в ortic храните номера ордеров, а в ortrade их типы/сработал не сработал, так ?

 в ortrade их типы - да, просто типы, а уж сработал-не сработал узнаю при сравнении.
 
Mr_Goods:

Как распознать событие срабатывания отложенника в МТ4 ?

Ведь в МТ4  нет обработчиков событий, как распознать сработал отложенник или нет ?

Возьмите мою функцию GetTradeEvents()
 

спасибо, KimIV, а как ей пользоваться, просто переписать функцию в мой советник и посмотреть что будет ?

сейчас пробую

Причина обращения: