Как отследить момент, когда отложенный ордер SELL LIMIT превращается в рыночный?

 

Добрый день. Вопрос таков - Как отследить момент, когда отложенный ордер SELL LIMIT превращается в рыночный? Мне нужно время этого момента. Пробовала такое условие:

 if (Bid==Price_Sell)

{...

Date_Sell=TimeCurrent();

...

Но почему-то в этот цикл не заходит никогда! И время не записывается. Но в тестере стратегий я вижу, что ордер, тем не менее, превращается в рыночный. Всем заранее спасибо за ответ!

 
Самого по себе события "превращение отложенного ордера в позицию" не существует. Теме не менее Вы можете: в OnTradeTransaction() отлавливать событие добавление сделки в торговую историю. Остаётся проверить количество отложенных ордеров в торговом терминале и если Sell Limit == 0 - значит можно предположить, что сработал именно Sell Limit.
 
Vladimir Karputov:
Самого по себе события "превращение отложенного ордера в позицию" не существует. Теме не менее Вы можете: в OnTradeTransaction() отлавливать событие добавление сделки в торговую историю. Остаётся проверить количество отложенных ордеров в торговом терминале и если Sell Limit == 0 - значит можно предположить, что сработал именно Sell Limit.

Хотелось бы добавить, что программа пишется на MQL4.  OnTradeTransaction() появляется только в MQL5

 
anna.vladi:

Хотелось бы добавить, что программа пишется на MQL4.  OnTradeTransaction() появляется только в MQL5

В таком случае все вопросы по старом терминалу лучше сразу создавать в специальном разделе: MQL4 и MetaTrader 4
 

тип у ордера меняется :-) это же очевидно, обратиться к ордеру по его тикету\идентификатору и проверить его тип.

события нет в мт4, нужно запоминать, и на следующем тике либо в таймере проверять изменились ли характеристики ордера.