Как правильно бэктестить: метрики и типичные ошибки
Правильный бэктест отличается от неправильного методикой и честностью, а вовсе не выбором инструмента. Разбираем метрики и ошибки.
Правильный бэктест отличается от неправильного методикой и честностью, а вовсе не выбором инструмента. Одна и та же стратегия может выглядеть блестяще или провально в зависимости от того, как её протестировали. Разбираем метрики и ошибки.
Ключевые метрики
Максимальная просадка — глубочайшее падение эквити; цена доходности и мера риска. Профит-фактор — отношение суммарной прибыли к убыткам (устойчиво выше 1; «идеальные» значения подозрительны). Матожидание — средний результат на сделку. Число сделок — статистическая значимость: на десятке сделок выводы случайны. Форма кривой — плавный рост надёжнее «пилы». Смотреть эти метрики нужно вместе: высокая прибыль при чудовищной просадке — это не успех, а стратегия, которую вы бросите на первом же тяжёлом участке.
Типичные ошибки
Переоптимизация — подгонка параметров под прошлое. Плохие или неполные данные — искажают спред и тики. Look-ahead bias — использование информации, недоступной на момент сделки. Игнорирование издержек — спред, комиссии, проскальзывание. Малая выборка — вывод по нескольким сделкам. Тест только на удачном периоде. Ещё одна частая ловушка — «выжившая» стратегия: вы перебрали сотню вариантов, оставили лучший и забыли, что его успех может быть случайностью на фоне остальных.
Как бэктестить правильно
Задайте реалистичные издержки. Наберите достаточную выборку сделок. Разделите данные на in-sample/out-of-sample, примените walk-forward. Оценивайте связку «доходность/просадка», а не голую прибыль. Завершайте форвард-тестом на демо. Предпочитайте устойчивые параметры одиночному «идеальному» набору.
Как это выглядит на практике
Вы получили отчёт: прибыль солидная. Прежде чем радоваться, вы задаёте три вопроса. Сколько было сделок — если два десятка, статистики нет. Какая была максимальная просадка — если она в разы больше вашей терпимости к риску, стратегия не для вас. Что будет, если чуть сдвинуть параметры — если результат рушится, это подгонка. Числа условны, проверяйте на своих данных, но сама последовательность вопросов важнее любой конкретной цифры. Отдельно посмотрите на форму кривой эквити: ровный подъём переносится психологически иначе, чем та же итоговая прибыль, набранная через глубокую яму и мучительное восстановление.
Итог
Правильный бэктест — это честные данные, реалистичные издержки, достаточная выборка и проверка на новых данных, с фокусом на просадку. Метод важнее инструмента. Бэктест-сервисы — в нашем каталоге.
Метрики, по которым судят о стратегии
Начинается всё с ожидания на сделку: средний результат в единицах риска. Стратегия с положительным ожиданием зарабатывает на длинной серии даже при доле прибыльных сделок ниже половины, с отрицательным — теряет при любой доле побед. Дальше профит-фактор, отношение суммы прибыли к сумме убытков: значение около единицы означает работу в ноль до вычета издержек, и после их учёта результат уходит в минус. Эти две цифры отвечают на вопрос, есть ли у идеи преимущество вообще.
Второй блок отвечает на вопрос, можно ли это преимущество вытерпеть. Максимальная просадка по эквити и её длительность определяют, останетесь ли вы в стратегии до восстановления. Фактор восстановления связывает прибыль с просадкой. Число сделок задаёт достоверность: меньше сотни — выборка, из которой нельзя делать выводов. И распределение результата: если половина прибыли пришла из двух сделок, статистики нет, есть совпадение.
Третье — устойчивость. Сдвиньте каждый параметр на один шаг в обе стороны и посмотрите на результат: у рабочей стратегии он изменится плавно, у подогнанной обвалится. Затем проверьте на данных, которых оптимизатор не видел, и только потом — на форвард-тесте у своего брокера. Инструменты, поддерживающие такую процедуру, с проверенными характеристиками — в категории тестеров стратегий.
Типичные ошибки процедуры
- Оптимизация на всей доступной истории без периода вне выборки: результат гарантированно завышен.
- Использование данных, которых в момент сделки не существовало, — например, итогового значения индикатора, пересчитанного по будущим ценам.
- Тест на одном инструменте и одном рыночном режиме: проверка рынка, а не системы.
- Игнорирование спреда, комиссии и свопа: на коротких таймфреймах они меняют знак результата.
- Больше пяти-шести оптимизируемых параметров — почти гарантированная подгонка под шум.
И последнее про интерпретацию. Бэктест не отвечает на вопрос «сколько я заработаю» — он отвечает на вопрос «была ли у этой идеи закономерность на прошлых данных и какой ценой она давалась». Даже безупречно проведённый тест остаётся описанием прошлого: рыночный режим меняется, и стратегия, работавшая на трендовом отрезке, будет терять в диапазоне. Поэтому итогом теста должно быть не решение «торгуем», а правило остановки: заранее заданная просадка или число убыточных сделок подряд, при которых стратегия выключается для разбора. Без такого правила бэктест превращается в аргумент, которым оправдывают убытки.
Практический порядок, который экономит недели. Сначала грубая проверка идеи на небольшом отрезке: если ожидание отрицательное, дальше не идём. Затем полный прогон на длинной истории с реальными издержками. Затем проверка вне выборки и на другом инструменте того же класса. И только после этого оптимизация параметров — минимальным числом, с проверкой устойчивости к сдвигу. Обратный порядок, когда оптимизация идёт первой, даёт красивую кривую за час и бесполезный результат за месяц.
Что стоит фиксировать по итогам каждого теста, чтобы не повторять работу. Минимум: параметры и их значения, период и инструмент, качество данных, учтённые издержки, полученные метрики и вывод — почему стратегия принята или отклонена. Такой протокол занимает пять минут и через полгода превращается в собственную базу проверенных и отклонённых идей. Без него один и тот же подход тестируется по второму разу, а выводы каждый раз приходится делать заново — и они не всегда совпадают с прошлыми, потому что забылись условия прогона.
Частые вопросы
Сколько сделок достаточно?
Чем больше, тем надёжнее; на нескольких десятках выводы шаткие.
Какой профит-фактор «хороший»?
Устойчиво выше единицы на разных периодах важнее любого рекордного значения на одном.
Просадку в процентах или в деньгах?
В процентах от депозита — так её проще сопоставить со своей терпимостью к риску.
Можно ли пропустить out-of-sample?
Нет, без него вы не отличите рабочую стратегию от подгонки.
Материал носит образовательный характер и не является индивидуальной инвестиционной рекомендацией (не ИИР).
Материал носит информационный характер и не является индивидуальной инвестиционной рекомендацией. Редакционная политика