Не приходит событие NewMyTrades
Atom
28.10.2011
Char


Использую MarketQuotingStrategy. strategy.NewMyTrades += WormNewMyTrades; //Вот это теряется strategy.Trader.NewMyTrades += Trader_NewMyTrades; //Отрабатывает корректно

При обновлении S# сборки с 4.0.3 на последнюю потерялся ивент NewMyTrades при использовании EmulationTrader.

Такую же проблему вижу на SmartTrader проверял на сборке 4.0.3 и текущей (при использовании RealTimeEmulationTrader событие приходит)




Спасибо:


esper

Фотография
Дата: 28.10.2011
Ответить


Дело скорее всего в том, что стратегия MarketQuotingStrategy завершается при изменении позиции, а позиция по-умолчанию считается по ордерам, а не заявкам. Т.к. ордер может измениться раньше, чем придет информация о сделке, соответствующее событие не вызывается, т.к. стратегии уже нет.

Спасибо:

Char

Фотография
Дата: 28.10.2011
Ответить


Подписан на ProcessStateChanged При завершении MyTrades пустые, хотя сделка исполнена.

Спасибо:

esper

Фотография
Дата: 28.10.2011
Ответить


При завершении MyTrades пустые, хотя сделка исполнена. Все верно, если событие не вызвалось, то и коллекция будет пустая. Причина см. выше.

Если MarketQuotingStrategy дочерняя стратегия для другой, то попробуйте выставить RemoveChildStrategies в false, для корневой стратегии.

Спасибо:

Char

Фотография
Дата: 28.10.2011
Ответить


Тогда у меня вопрос, как мне получить Trades выполненные стратегией?

Спасибо:

esper

Фотография
Дата: 29.10.2011
Ответить


Стратегия запускается как дочерняя или нет?

Спасибо:

Char

Фотография
Дата: 29.10.2011
Ответить


esper Да, как дочерняя.

Спасибо:

esper

Фотография
Дата: 29.10.2011
Ответить


esper: Если MarketQuotingStrategy дочерняя стратегия для другой, то попробуйте выставить RemoveChildStrategies в false, для корневой стратегии.

Спасибо:

Char

Фотография
Дата: 29.10.2011
Ответить


esper Спасибо, буду мучать. Даже тему нашел схожую. http://www.stocksharp.com/forum/1673/Nie-prikhodit-sobytiie-NewMyTrades-v-MarketQuotingStrategy/

Смущает фраза > Mikhail Sukhov:

Пока не знаю, насколько это правильно. =) Как понимаю в данном случае мне надо подписаться на ProcessStateChanged И самому удалять дочерние стратегии по их завершении?

Спасибо:

Char

Фотография
Дата: 29.10.2011
Ответить


В случае RemoveChildStrategies в false событие NewMyTrades стало отрабатывать, но в ProcessStateChanged MyOrders и MyTrades пустые.

Повторю еще раз в случае использования версии 4.0.3 Проблемы не возникает. Проблема на последних ченджсетах.

Спасибо:

esper

Фотография
Дата: 30.10.2011
Ответить


Дождитесь новой версии, в эмуляторе были изменения.

Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy