Обсуждение статьи "Торговые события в MetaTrader 5" - страница 3

 

Renat:
Конечно после принятия сервером - это же очевидно. Кроме того, функция называется OrderSEND.

ОК, понятно!

Насчёт "очевидности" - так это по большей части для тех, кто не один год плотно работает с системой. Я же споткнулся на вопросе о том, можно ли рассматривать фразу из справочника (для функции  OrderSend() "в случае успешной базовой проверки структур возвращается true") как достаточное условие для возврата true. Теперь получается, что нет, нельзя: это только необходимое условие, но не достаточное.

 
Interesting:
На мой взгляд выводы только по true делать не стоит, нужно еще код ответа сервера анализировать (причем последний приоритетней, как мне кажется)...

Да, у меня за эти несколько часов как пелена спала: среди кодов возврата вообще нет кода для "успешной проверки базовой структуры" (назовём его так), а поэтому true сразу после базовой проверки вернуться никак не может.

Насчёт детальноого анализа кода возврата - да, так и в справочнике рекомендовано. Я просто всё ищу пути для обоснованного уменьшения числа имеющихся проверок.

 

Объясните пожалуйста что означает. Ордер поставлен в очередь ?

Следующая ситуация

2011.01.26 12:59:26 Network '716201': connection to MetaQuotes-Demo lost
2011.01.26 12:59:26 Trades '716201' : failed instant buy 1.00 EURUSD at 1.37136 [No connection]
2011.01.26 12:58:40 Trades '716201' : instant buy 1.00 EURUSD at 1.37136
2011.01.26 12:56:17 Network '716201': terminal synchronized with MetaQuotes Software Corp.

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

Что это за очередь ? Где она находиться ? Если ордер уже принят сервером, то почему он не выполнен ? Причина ?

 

 

В статье рассказано про асинхронность торговых событий, когда получение тикета  ордера при отправке запроса функцией  OrderSend() и появление ордера в терминале по времени могут не совпадать. Здесь всё понятно. Прошлой осенью народ советовал преодолевать такую асинхронность засыпанием секунды на три. А каково гарантированное время, за которое и значение тикета, и сам ордер появятся в терминале (после принятия ордера сервером)? Я могу подождать и 20 секунд, если надо, - хотелось бы знать, какой промежуток гарантированно обеспечит такую вот "ручную синхронизацию".