ФОРТС Отмена ордера в момент его исполнения [что приходит раньше - BookEvent или TradeEvent]

 

Добрый день!

Как избежать ситуации, когда выставленный ордер исполняется,

а в советнике возникает ситуация на удаление этого ордера и

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

подтверждения сделки? 

Т.е

OnBookEvent срабатывает раньше, чем OnTradeTransAction.  

 

P/S В заголовке не было текста -  [что приходит раньше - BookEvent или TradeEvent] 

 

papaklass!

Вы, наверное, не правильно поняли вопрос.

Дело в том, что из-за исполнения ордера, меняется стакан цен.

Но. Сигнал изменение стакана, из-за исполнения ордера,

приходит раньше, чем сообщение о сделке.  

Я не могу отменить исполненный ордер. 

P/S На ФОРТС, плотность наполнения стакана может быть не через пункт,

а то и вообще, стакан может быть пустым. 

 
Mikalas: 

Я не могу закрыть исполненный ордер.

как можно закрыть исполненный ордер?

как в МТ5 можно вообще закрыть ордер?

ордер можно только удалить. можно удалить остаток неисполненный.

а закрыть можно только позицию.

так что же вам надо?

 
Mikalas:

Как избежать ситуации... 

Видимо сначала надо на бумаге рассмотреть все варианты, а потом уже код писать.
 
Yurich:
Видимо сначала надо на бумаге рассмотреть все варианты, а потом уже код писать.

Yurich, спасибо, попробую... Но результат будет тот же.

Объяснить почему? 

 
papaklass:
 Да, понял неправильно. Если разработчики ничего не скажут по этому поводу, то остается только выдерживать паузу между получением сигнала на торговую операцию и отправкой приказа на эту операцию. Так как отменить исполненный ордер не получится.

Я думал, о паузе, но как контролировать установленный ордер, пока он не исполнился или удалился?

Сигналов-то нет. Знаю, только то, что он выставлен и всё... 

Вопрос отправил в сервисдеск

 
Mikalas:

Объяснить почему? 

Объяснять не надо :) Если для вас эта ситуация в диковину, то скорее всего вы рассматриваете не все возможные варианты развития событий. То что вы описали - вполне рабочая ситуация. И то, что в стакане вы увидели изменение ситуации раньше, чем осознали, что это вашу заявку исполнили,  то надо  просто быть готовым к таким событиям.
 

Yorich, поделитесь пожалуйста, как Вы предусматриваете исполнение 

выставленного ордера? 

Я не знаю как, поэтому и обратился на форум. 

 
Mikalas:

Yorich, поделитесь пожалуйста, как Вы предусматриваете исполнение 

выставленного ордера? 

Не понял вопрос. Если имелось  в виду - как я определяю, что ордер исполнился, то  ответ - по факту, для этого есть много подтверждающих событий. Или вас интересует, что я делаю, когда возникает ситуация, что отправлен запрос на удаление ордера, который стал уже сделкой(по факту это еще не известно)? Здесь у каждого свои решения и они зависят от торговой системы. Если сделка привела к ошибочному открытию позиции - одни действия, если ошибочному закрытию, то другие действия, много может быть разных вариантов. Вам виднее, что делать в таких ситуациях - это ваш алгоритм.
 

Спасибо Yorich, понятно.

Скажите(я спрашиваю без сарказма и подколок), кроме OnTick, OnBookEvent, OnTradeTransAction, OnTrade

есть ли ещё события, которыми стоит руководствоваться для принятия решения?  

 
Mikalas:

Спасибо Yorich, понятно.

Скажите(я спрашиваю без сарказма и подколок), кроме OnTick, OnBookEvent, OnTradeTransAction, OnTrade

есть ли ещё события, которыми стоит руководствоваться для принятия решения?  

я еще использую OnTimer()