[BUG] EmulationTrader выполняет лимитные заявки по неправильным ценам
Всем привет,
в EmulationTrader есть проблема: похоже что цены исполнения лимитных ордеров считаются по любому тику который лучше или равен цене ордера, что не является верным. Поясню на логе:
Код
11:17:37.330 | | MyStrategy | Calculated ExitPrice: 96520
11:17:37.330 | | MyStrategy | Registering exit order
11:17:52.360 | | MyStrategy | Новая Sell сделка 50 по цене 96525 на 1 заявки 20689543.
11:17:52.360 | | MyStrategy | ExitOrder filled!
В первой колонке время в эмуляции (то есть как оно должно быть "на рынке"). Тут мы поставили заявку в 37 секунд, мы должны встать в стакан. Через 15 секунд цена дошла до нас, в реальности мы не можем в таком случае получить цену, лучше чем ту, по которой поставили. Нас обязаны по ней забрать.
EmulationTrader считает что мы получаем по любой цене которая удовлетворяет, или лучше нашей заявки. Бывают очень серьезные различия, например в 100 пунктов на фьючерсе РТС. Соответственно, это искажает результаты тестирования.
Версия стокшарпа с codeplex: 11757