Бэктест спортивной стратегии: размер выборки, переобучение и честная проверка

Бэктест нужен не для того, чтобы доказать, что стратегия хорошо выглядела в прошлом, а чтобы проверить, сохраняется ли ее логика вне периода настройки. Главные риски — утечка будущей информации, переобучение, слишком маленькая выборка и незаметное изменение правил после просмотра результата.
Что тестируем на самом деле
До расчета нужно письменно зафиксировать правило стратегии: какие данные доступны к моменту решения, как формируется сигнал и что считается результатом. Если определение меняется после просмотра истории, проверка перестает быть независимой.
Временное разделение данных
Для временных данных особенно важно не перемешивать прошлое и будущее случайным образом. Настройка должна опираться на более ранний период, а проверка — на последующий, чтобы модель не получила информацию, которой в реальной работе еще не существовало.
Минимальный размер выборки
Одного формального числа наблюдений недостаточно: важны разнообразие матчей и устойчивость результата. Небольшая выборка может случайно показать красивый эффект, поэтому вывод лучше подтверждать на нескольких независимых отрезках.
Переобучение
Чем больше правил, фильтров и параметров перебирается, тем выше риск найти случайную комбинацию, которая хорошо описывает прошлое. Усложнение стоит оставлять только тогда, когда оно дает понятное улучшение и сохраняется на данных вне настройки.
Look-ahead bias
Утечка будущей информации возникает, когда в историческое решение незаметно попадает то, что стало известно позже. Это может быть обновленный состав, финальная версия статистики или цена, недоступная в нужный момент. Такая ошибка делает бэктест оптимистичнее реальной работы.
Комиссии и маржа
Историческая проверка должна учитывать реальные издержки, иначе небольшое преимущество может существовать только на бумаге. В задачах с рыночной линией полезно отдельно проверять изменение цены и маржи; этому посвящен материал о движении коэффициентов.
Оценка просадки
Средний результат не показывает, как стратегия ведет себя по пути. Просадка и серии неудач важны для понимания риска и того, выдерживает ли выбранный размер позиции реальную вариативность. Связь результата и риска разобрана в статье о размере ставки и банкролле.
Проверка на отложенном периоде
Отложенный период должен оставаться нетронутым до завершения основных настроек. Если после каждого неудачного теста возвращаться к параметрам и снова смотреть на тот же отрезок, он постепенно превращается в часть обучения и перестает быть независимой проверкой.
Что важно оставить в рабочей практике
Честный бэктест начинается с правил, записанных до просмотра результата. Доступные данные, момент принятия решения, издержки и способ расчета сигнала должны быть воспроизводимы; иначе красивую историческую кривую невозможно отделить от подгонки.
Проверка на разных периодах
Вместо одного итогового результата полезно посмотреть несколько последовательных отрезков. Стратегия, которая работает только в одной части истории, требует более осторожной оценки, даже если общий средний показатель выглядит убедительно.
Границы применимости
Бэктест описывает только те лиги, рынки и условия, которые присутствовали в истории. При переходе на другой источник данных, тип события или режим рынка результаты нужно проверять заново, а не считать переносимость автоматической.
Как не переоценить результат
Чем больше вариантов стратегии было перебрано, тем строже должна быть независимая проверка. Лучший исторический вариант часто выигрывает именно потому, что случайно подошел к прошлому; отложенный период нужен, чтобы проверить это предположение.