Тестер. 4.2.2.27. Пара вопросов.
Здравствуйте.
У меня 2 вопроса по тестеру.
API 4.2.2.27
Вопрос 1:
Скажите, тестирование на истории на свечах через HistoryEmulationConnector подразумевает, что нужно обязательно генерировать и регистрировать стакан таким образом? Из примера SampleHistoryTesting:
Код
connector.RegisterMarketDepth(new TrendMarketDepthGenerator(connector.GetSecurityId(security))
Потому что в этом примере тестирование просто "На свечках" без генерации стакана работает неправильно - сделки часто проходят по непонятным ценам вне диапазона свечей.
Вопрос 2:
Берем тот же пример SampleHistoryTesting. Проводим тестирование на истории на свечах с генерацией стаканов. RIM4 таймфрейм 5 секунд. Свечи сгенерированы в гидре из тиковых финамовских данных, скачанных ею же.
Тестирование с определенного момента начинает выдавать ошибки и дальше не работает. На таймфреймах от 1 минуты и выше все в норме.
Код
2014/04/01 10:56:55.000|Debug |HistoryEmulationConnector|BP:MarketDataError,T=2014/04/01 10:57:00.000,Error=Объем заявки 0 задан не верно.
Имя параметра: message
Фактическое значение было 0.
2014/04/01 10:57:00.000|Error |HistoryEmulationConnector|System.ArgumentOutOfRangeException: Объем заявки 0 задан не верно.
Имя параметра: message
Фактическое значение было 0.
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qbFl2u1tZpSoaeyRJryZurQ==(ExecutionMessage #=qRDfxRFPZsgnpE$EhJlNmBQ==, ICollection`1 #=qTDSqy72PaXe9_M9_RAlR6g==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qpxzeUUEXP1acrXHj2HVaTg==(Message #=qhSs4ouD7GtYTof62FtdUhw==, ICollection`1 #=qbSMj8JoNCujQbZB7hWHuVg==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qpxzeUUEXP1acrXHj2HVaTg==(Message #=qhSs4ouD7GtYTof62FtdUhw==, ICollection`1 #=qbSMj8JoNCujQbZB7hWHuVg==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qDjrfsgdqGTHQmueXiiw3lnyKbw0i6JxsnMTCmCxJtFA=(Message #=qmRF$WttvLW6wg1yqEtOjMA==, ICollection`1 #=qNH8VCWinpuhwK1m3QOftkw==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qLzr0XVCE3cg7F1D2Chw0EQ==(Message #=q_MM8y0u9ssdDKZCeUz0tSA==, ICollection`1 #=qoD0RJbPcCD952kDATXoukQ==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qpxzeUUEXP1acrXHj2HVaTg==(Message #=qhSs4ouD7GtYTof62FtdUhw==, ICollection`1 #=qbSMj8JoNCujQbZB7hWHuVg==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qpxzeUUEXP1acrXHj2HVaTg==(Message #=qhSs4ouD7GtYTof62FtdUhw==, ICollection`1 #=qbSMj8JoNCujQbZB7hWHuVg==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=qpxzeUUEXP1acrXHj2HVaTg==(Message #=qhSs4ouD7GtYTof62FtdUhw==, ICollection`1 #=qbSMj8JoNCujQbZB7hWHuVg==)
в StockSharp.Algo.Testing.MarketEmulator.#=qqiyOdS7pa1C1Euj27KpOOTJ6yPRTs1gAJJnEXL1LJGA=.#=q8eTsNwsUafa3d7KPwE8CaJaLGMhZlqCD$_LFpaapVTakRoK2cuM5Etf0ygrNrAT9zO5jd1YMGtVR0yjJT3ITgw==(Message #=qywaU0r7G0fCjLlUwJ2$cmA==)
в StockSharp.Algo.Testing.MarketEmulator.#=qAwDD2ai4NOPaT0G15edYLwPnAFOG9atzOSDUgzxHBIURPZhsbgU9el_eDqLiKUSTkfr_jQfTtfuAU5I1Lnn5Rw==(Message #=q3qgUO48qchl7XArvDTufMw==)
в StockSharp.Algo.Testing.EmulationMessageAdapter.OnSendInMessage(Message message)
в StockSharp.Messages.MessageAdapter`1.OnInMessageProcessor(Message message, IMessageAdapter adapter)
Дебаг лог до ошибки прилагается.