Добрый день.
В стратегии использую MarketQuotingStrategy для покупки по лучшей цене, причем разрешаю только две попытки для входа в сделку.
Проблема: никак не получается отследить события успешного входа в сделку и событие невозможности войти в нее. То есть надо поймать событие остановки выполнения MarketQuotingStrategy и вытащить информацию, была ли совершена сделка или нет. Буду очень признателен за помощь.
Comments (5)
Login or Create account, Log in or register to leave a comment
Для этого нужно смотреть не на событие успешного входа или нет, а на окончание стратегии. И уже смотреть по результатам. Как вариант, отнаследуйтесь от стратегии и переопределите этот метод
http://stocksharp.com/doc/help/html/M_Ecng_Trading_Algo_Strategy_OnStopped.htm
И в этом методе смотрите на совершенные сделки Strategy.Trades.
Если же стратегия работает синхронно по отношению к базовой, то воообще ничего переодпределять не надо. Как только управление вернулось - смотрите на сделки.
Михаил, не планируете в следующей версии добавить событие остановки стратегий? Это будет несложно для вас, и, думаю, приогодится не только мне, но и другим пользователям вашей библиотеки.
Спасибо за труды, и с уважением...
Михаил, в версии 2.5 появился новый параметр в конструкторе MarketQuotingStrategy. В документации в разделе Котирование пример с использованием этого класса не изменился. Можете в двух словах сказать, какой смысл имеет параметр priceExchange? Я так понимаю, это максимальное изменение цены от текущего, при котором останавливается котирование? Просто смущает слово Exchange в названии параметра, так как обычно переводится, как обмен.
Михаил, возникла еще проблема: после создания MarketQuotingStrategy событие Strategy.NewMyTrades у базовой стратегии вызывается дважды. Котирование создаю так:
Не знаю, правильно ли я задаю второй параметр в конструкторе. Может, это как-то связано с двойным вызовом события?
Спасибо. Бага, заметил. Вылечу на след. неделе.