Запустил исторический тест. Решил по логам проверить, все ли в порядке.
Обнаружил, следующую проблему: лимитированная заявка на покупку выставляется по цене 141850, а исполняется по 141770. При этом я вижу, что моя стратегия не обновляла заявку.
Вот выдержка из лога:
2012.10.30 10:10:32.851| |MQS_RIZ2@RTS_test account|Стратегия запущена. [0,324]. Позиция при старте 0.
2012.10.30 10:10:32.851| |EmulationTrader|RegisterOrder: 58453309/0 Покупка Цена=141850 Объем=1 Сост=None Бал=1
2012.10.30 10:10:32.851| |EmulationTrader|New order: 58453309/324 Покупка Цена=141850 Объем=1 Сост=Active Бал=1
2012.10.30 10:10:33.128| |EmulationTrader|Order changed: 58453309/324 Покупка Цена=141850 Объем=1 Сост=Done Бал=0
2012.10.30 10:10:33.128| |MVWAPS_RIZ2@RTS_test account|Новая позиция: test account-RIZ2@RTS=0.
2012.10.30 10:10:33.128| |MQS_RIZ2@RTS_test account|Новая позиция: test account-RIZ2@RTS=1.
2012.10.30 10:10:33.128| |MQS_RIZ2@RTS_test account|Заявка 58453309 больше не активна.
2012.10.30 10:10:33.128| |MQS_RIZ2@RTS_test account|Стратегия останавливается. [0,324]. Позиция при старте 1.
2012.10.30 10:10:33.128| |MQS_RIZ2@RTS_test account|Ожидание снятия всех активных заявок.
2012.10.30 10:10:33.128| |MQS_RIZ2@RTS_test account|Стратегия остановлена. [0,324]. Позиция при старте 1.
2012.10.30 10:10:33.128| |MVWAPS_RIZ2@RTS_test account|Новая Buy сделка 324 по цене 141770 на 1 заявки 58453309.
2012.10.30 10:10:33.128| |MQS_RIZ2@RTS_test account|Новая Buy сделка 324 по цене 141770 на 1 заявки 58453309.
2012.10.30 10:10:33.561| |MQS_RIZ2@RTS_test account|Стратегия запущена. [0,325]. Позиция при старте 0.
MQS - это не стандартная стратегия котирования S#, а моя собственная, похожая. Выставляется заявка примерно так:
ActiveOrder = this.CreateOrder(Direction, StartPrice, Volume);
ActiveOrder.ShrinkPrice();
ActiveOrder.Security = Security;
while (!Trader.IsConnected) Trader.Reconnect();
base.RegisterOrder(ActiveOrder);
ActiveOrder.WhenMatched()
.Do(Finish)
.Apply(this);
Цена закрытия (141770) ниже обоих границ спреда и цен последних сделок:
MarketTime;DepthTime;BestBid;BestAsk;LastTradeTime;LastTrade
30.10.2012 10:10:31,097;30.10.2012 10:10:31,079;141850;141860;30.10.2012 10:10:30,930;141850
30.10.2012 10:10:31,714;30.10.2012 10:10:31,641;141850;141860;30.10.2012 10:10:31,097;141850
30.10.2012 10:10:31,754;30.10.2012 10:10:31,715;141850;141860;30.10.2012 10:10:31,714;141850
30.10.2012 10:10:31,839;30.10.2012 10:10:31,761;141860;141870;30.10.2012 10:10:31,754;141860
30.10.2012 10:10:31,849;30.10.2012 10:10:31,761;141860;141870;30.10.2012 10:10:31,839;141860
30.10.2012 10:10:31,863;30.10.2012 10:10:31,761;141860;141870;30.10.2012 10:10:31,849;141860
30.10.2012 10:10:32,142;30.10.2012 10:10:32,077;141850;141870;30.10.2012 10:10:31,863;141860
30.10.2012 10:10:32,631;30.10.2012 10:10:32,532;141860;141870;30.10.2012 10:10:32,142;141870
30.10.2012 10:10:32,658;30.10.2012 10:10:32,532;141860;141870;30.10.2012 10:10:32,631;141870
30.10.2012 10:10:32,851;30.10.2012 10:10:32,810;141860;141870;30.10.2012 10:10:32,658;141870
30.10.2012 10:10:33,561;30.10.2012 10:10:33,480;141860;141870;30.10.2012 10:10:32,851;141870
30.10.2012 10:10:33,621;30.10.2012 10:10:33,566;141860;141870;30.10.2012 10:10:33,561;141870
30.10.2012 10:10:33,720;30.10.2012 10:10:33,668;141870;141880;30.10.2012 10:10:33,621;141870
30.10.2012 10:10:33,967;30.10.2012 10:10:33,937;141860;141870;30.10.2012 10:10:33,720;141870
30.10.2012 10:10:34,780;30.10.2012 10:10:34,741;141870;141880;30.10.2012 10:10:33,967;141870
Вот выдержка из report.xls:
Номер сделки Номер транзакции Время Цена Цена заявки Объем Направление Номер заявки Проскальзывание Проскальзывание (котирование) Комментарий Прибыль в рублях Прибыль в пунктах Прибыль в рублях (суммарная) Прибыль в пунктах (суммарная) Позиция Номер заявки Номер транзакции Направление Зарегистрирована Изменена Продолжительность Цена Цена (усредн.) Статус Состояние Баланс Объем Тип Проскальзывание Задержка регистрации Задержка отмены Комментарий
324 58453309 30.10.2012 10:10:33 141770 141850 1 Покупка 324 0 -80 MQS_RIZ2@RTS_test account 55,8 90 2653,6 4280 0 324 58453309 Покупка 30.10.2012 10:10:32 30.10.2012 10:10:33 00:00:00 141850 141770 Не активна Исполнена 0 1 Лимитная -80 00:00:00 00:00:00 MQS_RIZ2@RTS_test account
Версия из транка (20514).