← 戻る

OrderFails & Orders в Strategy

Приветствую. Подскажите плиз что должно происходить во время ошибки регистрации заявки. Возникает непонятная для меня ситуация. При регистрации заявки в логе вижу сообщение типа "Заявка 41664289 не была принята по причине StockSharp.Quik.ApiException: Код ошибки Failed Сообщение Обработка кросс-заявок блокирована..". QuikTrader говорит "RegisterOrder: TransactionId=41664289, Id=0, Price=155115, Balance=1, Security=RIH2@RTS, State=None" И все заявки как-будто и небыло) В Strategy.Orders она не попадает и в Strategy.OrderFails также пустота.

Есть еще один очень странный нюанс. Кросс сделки как таковой быть не может, так как в момент регистрации заявки, встречных по направлению к регистрируемой просто нет. Но эт видимо косяк демосервера квик.

update: да и еще заметил что после остановки стратегии ее Trader становиться null. Так и должно быть?

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

トピックを共有

コメント (4)

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

Alexander
Alexander

OrdersRegisterFailed

Если вызывается Dispose для стратегии то да, все ресурсы освобождаются, Trader = null становится

Serg
Serg 著者

Alexander Mukhanchikov: OrdersRegisterFailed

Нашел только OrderFailed. S# 4.0.19

Подписываюсь на это событие в дочерней и в родительской стратегии. Все работает - событие OrderFailed вызывается как положено) Но вот почемуто родительский OrderFails остается неизменным. Так и задуманно?

Alexander
Alexander

Посылаете ордер где - в дочерней или родительской? Именно там и должен быть Strategy.OrderFails не пустой.

Serg
Serg 著者

Alexander Mukhanchikov: Посылаете ордер где - в дочерней или родительской? Именно там и должен быть Strategy.OrderFails не пустой.

Спасибо понял. Изначально думал что родительская должна видеть все OrderFails своих дочек.