ENUM_ORD_REAL_STATE rl_state = CheckOrderState( ticket );
//--- switch( rl_state )
{
case ORD_NOT_SPECIFIED:
case ORD_NONE_CANCELED:
case ORD_NONE_PARTIAL_CANCELED:
case ORD_NONE_PARTIAL:
case ORD_NONE_EXPIRED:
case ORD_NONE_FILLED:
case ORD_NONE_REJECTED: Canceled();
break;
case ORD_BUSY: return;
break;
case ORD_EXIST:
case ORD_EXIST_PARTIAL: Remove();
break;
}
Правильно, опечатка :)
спасибо, поправил...
Сам часто путаюсь ) неудобные и неправильные функции работы с ордерами.
Сам часто путаюсь ) неудобные и неправильные функции работы с ордерами.
еще в одном месте осталось:
Не долгой была "радость" от объяснения MQ Александра!
Перед удалением ордера проверяю:
Результат:
Может неправильно проверяете. Код черт ногу сломит, куча прокладок.
Так наворочено, что не узнаешь, какое конкретно состояние было: ORDER_STATE_PARTIAL или ORDER_STATE_PLACED, чтобы что-то дальше понять.
Как вообще можно жить с такими сообщениями? Вроде как выполняется попытка удаления ордера, а сообщение"Ордер не отослан!".
Может неправильно проверяете. Код черт ногу сломит, куча прокладок.
Так наворочено, что не узнаешь, какое конкретно состояние было: ORDER_STATE_PARTIAL или ORDER_STATE_PLACED, чтобы что-то дальше понять.
Как вообще можно жить с такими сообщениями? Вроде как выполняется попытка удаления ордера, а сообщение"Ордер не отослан!".
https://www.mql5.com/ru/forum/58012/page2#comment_2017705
Все равно это не проливает свет на то, что было: ORDER_STATE_PARTIAL или ORDER_STATE_PLACED
Вот:
Вот:
Что вот?