Бэктест
Бэктест применяет полностью описанное торговое правило к исторических данным при явной модели исполнения и показывает, что произошло бы после издержек. Его результат условен относительно покрытия данных, допущений об исполнении и числа опробованных правил; он описывает прошлое при этих допущениях и не доказывает преимущества в будущем.
Senzoukria · Глоссарий · Обновлено: сентябрь 2026
Что нужно бэктесту до запуска
- Полностью выписанное правило: инструмент, сессия и часовой пояс, построение баров, момент сигнала, вход, выход, размер и исключения данных.
- Данные, где действительно есть вводные правила. Правилу по footprint нужен исполненный объём по bid и ask на каждом уровне; правилу по глубине нужна история стакана; ни то ни другое не восстанавливается из свечей OHLC.
- Модель исполнения, которая говорит, когда принимаются решения, по какой цене исполняются входы и что происходит, если стоп и цель могли быть задеты внутри одного бара.
- Издержки: комиссия за контракт и за ордер, проскальзывание на входе и выходе, пересчитанные через стоимость тика инструмента.
Три вида исторической проверки
Лимитная цена, задетая записанным исполнением, не доказывает, что ваш ордер исполнился бы: позиции в очереди в данных нет. Разрыв в покрытии — не плоский рынок. Эти ограничения принадлежат результату, а не сноске.
| Модель | Может оценить | Не устанавливает |
|---|---|---|
| Проверка по барам OHLC | Правила на закрытых барах | Последовательность внутри бара, исполнение по очереди |
| Реплей сделок | Правила на записанных исполнениях | Отсутствующая историческая глубина |
| Реплей стакана | События глубины в пределах покрытия | Ваше собственное гипотетическое исполнение с уверенностью |
Что означает результат
Зелёная кривая эквити отвечает на один узкий вопрос: что произошло при допущениях, которые её породили. Она ничего не говорит о том, было ли правило определено до проверки, были ли исполнения достижимы и сколько вариантов отбросили по пути. Чем сильнее результат после множества попыток, тем больше доказательств он требует. Публикуйте рядом с кривой результаты вне выборки, провалившиеся конфигурации и чувствительность к повышенным издержкам.
В Senzoukria
На экране «Реплей» есть режим автоматического бэктеста. Его панель прогоняет стратегию из редактора скриптов бар за баром по барам, закэшированным на машине. Перед запуском панель показывает покрытие этих баров в сессиях и говорит, чего не хватает, — так результат помечается тем окном, которое он реально покрывает.
Блок «Издержки сделки» принимает комиссию и проскальзывание в тиках; подсказка отмечает, что обнулить оба — первый способ заставить бэктест соврать. Решения принимаются на закрытых барах, входы исполняются по следующему открытию, выходы используют цены бара; движок не воссоздаёт биржевую очередь. Ассистент бэктеста может прокомментировать статистику законченного прогона. Ничто на этом экране не отправляет ордер: живое исполнение существует только через автопилот, который человек взводит вручную.
Частые ошибки
- Называть бэктестом проверку синтаксиса на синтетических барах.
- Запускать с нулевыми издержками и сравнивать с результатом, где они учтены.
- Переносить уровень с одной фьючерсной экспирации на следующую, не разобравшись с разницей цен на ролловере.
- Оставлять только выигравший вариант и забывать, сколько их было опробовано.
См. также
Эта страница на других языках
Частые вопросы
- Можно ли бэктестить стратегии на потоке ордеров?
- Да, если исторические данные содержат вводные, которые читает правило. Правилу по footprint нужен исполненный объём по bid и ask на каждом ценовом уровне — это даёт тиковая история, а свечи не дают. Правилу, читающему лежащую ликвидность, нужна записанная глубина, которая встречается реже и весит больше. Без этих вводных правило нельзя оценить, только приблизить.
- Доказывает ли прибыльный бэктест наличие преимущества?
- Нет. Результат условен относительно допущений об исполнении, издержек, пропусков в данных, числа опробованных конфигураций и рыночных условий периода. Бэктест, который переживает повышенные издержки, держится на данных, которых не видел, и был определён до проверки, — более сильное доказательство, но всё же доказательство о прошлом.
- Что нужно записывать вместе с бэктестом?
- Версию правила и параметры, число опробованных конфигураций, источник данных, контракт, даты, сессию и пропущенные интервалы, момент входа и политику по неоднозначным барам, комиссию и проскальзывание, разбиение на обучение и тест, чистые результаты и просадку по окнам, а также критерий отбраковки, назначенный заранее. Именно эта запись делает результат воспроизводимым и сопоставимым.