← Назад

Quik: newStopOrders не ходят

Уважаемые разработчики!

S# 4.1.7 (trunk), Quik 6.4

События newStopOrders не ходят. При этом события stopOrdersChanged исправно прилетают.

Посмотрите, пожалуйста, в чем дело.

Комментарии (7)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

Mikhail Sukhov
Mikhail Sukhov

Sample так же не показывает созданные из примера стоп-заявки?

Den
Den Автор

Mikhail Sukhov: Sample так же не показывает созданные из примера стоп-заявки?

Вопрос простой, но хороший! Проверяя, нашел нюанс.

У меня стоит Trader.IsAsyncMode = false; В этом случает newStopOrders приходит, только если заявка выставлена из квика, и не приходит если из S# привода.

Если включить асинхронный режим, newStopOrders приходит всегда.

Мне нужен синхронный режим, что делать?

Mikhail Sukhov
Mikhail Sukhov

Den: Мне нужен синхронный режим, что делать?

Занесем как пожелание в систему багтрекинга. В будущих версиях возможно поддержим синхронных режим.

Den
Den Автор

Mikhail Sukhov:

Den: Мне нужен синхронный режим, что делать?

Занесем как пожелание в систему багтрекинга. В будущих версиях возможно поддержим синхронных режим.

А он же вроде раньше был, до 4.1.1 включительно как часы все работало точно! Завтра еще проверю на более поздних версиях или убрали специально синхронность?

Mikhail Sukhov
Mikhail Sukhov

Den: А он же вроде раньше был, до 4.1.1 включительно как часы все работало точно! Завтра еще проверю на более поздних версиях или убрали специально синхронность?

Скорее само убралось.

Лучше переходите на асинхронный режим. Это идеологически правильный подход.

Den
Den Автор

Den:

Mikhail Sukhov:

Den: А он же вроде раньше был, до 4.1.1 включительно как часы все работало точно! Завтра еще проверю на более поздних версиях или убрали специально синхронность?

Скорее само убралось. Лучше переходите на асинхронный режим. Это идеологически правильный подход.

"Само убралось" давненько - в 4.1.3 уже пропало.

Чем хорош синхронный режим?

Допустим, я кидаю заявку FillOrKill объемом 100.

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

В асинхронном режиме я об этом узнаю гораздо позже, потому что объем 100 может быть заматчен в несколько транзакций (теоретически даже и в 100), и ждать несколько событий NewMyTrades и суммировать объем до 100 будет медленнее.

NattyD
NattyD

Den: "Само убралось" давненько - в 4.1.3 уже пропало.

Чем хорош синхронный режим?

Допустим, я кидаю заявку FillOrKill объемом 100.

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

В асинхронном режиме я об этом узнаю гораздо позже, потому что объем 100 может быть заматчен в несколько транзакций (теоретически даже и в 100), и ждать несколько событий NewMyTrades и суммировать объем до 100 будет медленнее.

Суммировать не надо, попробуйте использовать правило Order.WhenMatched() или подписаться на событие ITrader.OrdersChanged

Насколько медленнее? Если даже на 1 мс, то при торговле через квик это не существенно.