← 戻る

ITrader.OrdersChanged или Order.State

Михаил, скажите - как лучше отслеживать изменение статуса зявки - подписаться на ITrader.OrdersChanged или в цикле проверять Order.State? есть разница во времени возникновения событи и изменения статуса заявки ?

このトピックは参考になりましたか?

トピックを共有

コメント (11)

ログイン または アカウントを作成, コメントを残すにはログインまたは新規登録してください

Mikhail Sukhov
Mikhail Sukhov

Сложный вопрос. Как удобнее. А в цикле - это как?

Tauler
Tauler 著者

while (order.State== OrderStates.Matched) {

ждемс....

Если как удобнее - то отлично. главное - чтобы временной разницы не было между возникновением события и обновлением состояния заявки

Tauler
Tauler 著者

точнее

while (order.State!= OrderStates.Matched) {

ждемс....

Mikhail Sukhov
Mikhail Sukhov

Понятно. А проц не грузит такой цикл? По идее он должен 100 жрать от ядра.

Tauler
Tauler 著者

Ну я утрированно написал. ваша Strategy - это же тоже своего рода цикл, как и мой Workflow :)

Tauler
Tauler 著者

Так есть разница, Михаил? я имею ввиду запаздывание.

Mikhail Sukhov
Mikhail Sukhov

Хз... Если и будет, то не значительное если будет небольшое засывание. Да и все зависит от тела цикла. Судить сложно.

sergun
sergun

Михаил, а какая примерно сейчас логика формирования события OrdersChanged для Квика? Каждое ДДЕ сообщение о таблице заявок инициирует этот эвент?

Mikhail Sukhov
Mikhail Sukhov

Да каждое. Плюс еще асинхронные колбеки. Плюс еще логика BaseTrader.

sergun
sergun

Спасибо!

кстати, что такое асинхронные коллбеки в данном случае?