← Назад

Тестирование с динамическим объемом

При тестировании стратегии меняю объем в зависимости от результата тестирования. Т.е. начинаю тестирование с 10 контрактов. Удачные варианты стратегии доводят объем до 100 контрактов. Проблема в том, что проскальзывание на 100 контрактах очень сильно увеличивается по сравнению с 10 контрактами. По факту робот в рилтайме торгует 10 контрактами. Получается, что результаты тестирования не совсем соответствуют тому, что есть у меня в действительности. Может есть какие волшебные настройки в EmulationTrader или в Order, которые будут считать весь объем реализованным при реализации первого контракта?

Комментарии (1)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

pyhta4og
pyhta4og

vk37: При тестировании стратегии меняю объем в зависимости от результата тестирования. Т.е. начинаю тестирование с 10 контрактов. Удачные варианты стратегии доводят объем до 100 контрактов. Проблема в том, что проскальзывание на 100 контрактах очень сильно увеличивается по сравнению с 10 контрактами. По факту робот в рилтайме торгует 10 контрактами. Получается, что результаты тестирования не совсем соответствуют тому, что есть у меня в действительности. Может есть какие волшебные настройки в EmulationTrader или в Order, которые будут считать весь объем реализованным при реализации первого контракта?

Для маркет-заявок есть настроечка

MarketEmulator.Settings.FillMode=FillModes.Fill

тогда если кинете market-order на 1000 ордеров который выест весь стакан (допустим объем 100), то его остаток в 900 будет зафилен по последней (самой дорогой для вас) цене в стакане.

Если FillMode=FillMode.Cancel, то в этой ситуации остаток ордера будет отменен тк маркет-заявку нельзя "оставить" в стакане.

vk37