// руководство
Что такое бэктестинг?
Бэктестинг — это способ узнать, как стратегия торговала бы в прошлом, прежде чем вкладывать в неё деньги. В этом руководстве — как устроен бэктест, какие цифры читать, из-за каких ловушек результат выглядит лучше, чем есть на самом деле, и как проверить криптостратегию без единой строки кода.
5 минут чтения
Бэктестинг в одном абзаце
Бэктест берёт торговую стратегию, записанную точными правилами — когда входить, когда выходить, сколько рисковать, — и прогоняет её по историческим рыночным данным. На каждом баре правила проверяются так, будто этот момент — настоящее; когда они срабатывают, симулированный ордер исполняется, а комиссия и проскальзывание вычитаются. В итоге получается список сделок, кривая капитала и статистика, которая описывает поведение стратегии.
Ключевое слово — правила. «Покупать, когда выглядит перепроданным» проверить нельзя; «покупать, когда RSI(14) пересекает 30 снизу вверх, а EMA(50) выше EMA(200)» — можно. Сформулировать идею настолько точно, чтобы её можно было проверить, — уже половина пользы от бэктестинга.
Правила
Входы, выходы, размер
История
Свечи и фандинг
Симуляция
Бар за баром, с издержками
Отчёт
Сделки, капитал, метрики
Как работает бэктест, шаг за шагом
- Правила. Условия входа и выхода, размер позиции и ограничения риска — вся стратегия целиком, без места для «по ситуации».
- Данные. Исторические свечи — открытие, максимум, минимум, закрытие и объём — по рынку и таймфрейму, плюс всё, что ещё читают правила. Для бессрочных фьючерсов это и ставка фандинга.
- Симуляция. Движок идёт по истории бар за баром и может использовать только то, что было известно на этом баре. Следующая свеча скрыта, пока не закроется.
- Издержки. Каждое исполнение платит комиссию биржи и теряет на проскальзывании. Позиции на фьючерсах с плечом платят или получают фандинг и могут быть ликвидированы.
- Отчёт. Сделки, кривая капитала, просадки и сводные метрики.
Цифры, которые имеют значение
Одна итоговая доходность сама по себе говорит мало. Читайте эти показатели вместе:
| Метрика | Что показывает | На что смотреть |
|---|---|---|
| Чистая доходность | Прибыль после комиссий, проскальзывания и фандинга. | Сравните с простым удержанием актива за тот же период (buy and hold). |
| Максимальная просадка | Самое глубокое падение капитала от предыдущего пика. | Спросите себя, выдержали бы вы её и не выключили бы стратегию. |
| Коэффициент Шарпа | Доходность на единицу волатильности. | Короткий тест или несколько удачных сделок могут его раздуть. |
| Доля прибыльных сделок | Какая часть сделок заработала. | Без среднего выигрыша и проигрыша ничего не значит: низкая доля может быть прибыльной, если выигрыши намного больше. |
| Профит-фактор | Валовая прибыль, делённая на валовый убыток. | Около 1 небольшое изменение издержек превращает результат в убыток. |
| Число сделок | Сколько доказательств стоит за результатом. | Дюжина сделок — это анекдот, а не статистика. |
- Чистая доходность
- Что показываетПрибыль после комиссий, проскальзывания и фандинга.
- На что смотретьСравните с простым удержанием актива за тот же период (buy and hold).
- Максимальная просадка
- Что показываетСамое глубокое падение капитала от предыдущего пика.
- На что смотретьСпросите себя, выдержали бы вы её и не выключили бы стратегию.
- Коэффициент Шарпа
- Что показываетДоходность на единицу волатильности.
- На что смотретьКороткий тест или несколько удачных сделок могут его раздуть.
- Доля прибыльных сделок
- Что показываетКакая часть сделок заработала.
- На что смотретьБез среднего выигрыша и проигрыша ничего не значит: низкая доля может быть прибыльной, если выигрыши намного больше.
- Профит-фактор
- Что показываетВаловая прибыль, делённая на валовый убыток.
- На что смотретьОколо 1 небольшое изменение издержек превращает результат в убыток.
- Число сделок
- Что показываетСколько доказательств стоит за результатом.
- На что смотретьДюжина сделок — это анекдот, а не статистика.
Почему бэктесты вводят в заблуждение: частые ловушки
Большинство обманчивых бэктестов никто не подделывал. Они оптимистичны в местах, которые легко не заметить:
- Заглядывание в будущее. Использование информации, которой у стратегии в тот момент не было: дневное закрытие посреди дня или сделка по цене, ставшей известной позже.
- Игнорирование издержек. Комиссии, проскальзывание и фандинг кажутся мелкими на одну сделку и быстро накапливаются у стратегии, которая торгует часто.
- Ошибка выжившего. Тест только на монетах, которые торгуются сегодня. Делистнутые — как раз те, что стратегия могла купить по дороге вниз.
- Переобучение. Подгонка параметров, пока прошлое не станет идеальным. С достаточным числом настроек любая стратегия ложится на историю — и проваливается на следующем месяце данных.
- Слишком мало данных. Пара месяцев одного бычьего рынка, горстка сделок, один инструмент.
- Неоднозначность внутри бара. Если одна свеча задела и стоп-лосс, и тейк-профит, по самой свече не понять, что было первым. Считать, что первым был тейк-профит, — оптимистичная догадка.
Как проверять стратегию правильно
- Оставьте данные, которых стратегия не видела. Подбирайте параметры на одном периоде (в выборке, IS), а результат оценивайте на более позднем, который вы не трогали (вне выборки, OOS).
- Идите вперёд по времени. Повторите это разбиение на скользящих окнах (walk-forward), чтобы проверить, держится ли преимущество во времени, а не в одном удачном отрезке.
- Меняйте условия. Сдвиньте дату старта, попробуйте другие инструменты и таймфреймы, поднимите комиссии. Настоящее преимущество слабеет плавно, подогнанное — рушится.
- Пересэмплируйте сделки. Тест Монте-Карло перемешивает и пересэмплирует последовательность сделок и показывает, какой разброс просадок даёт одно лишь везение.
- Считайте попытки. Если вы перебрали пятьдесят вариантов, лучший выглядит хорошо отчасти случайно. Поправки вроде дефлированного Шарпа (DSR) учитывают число попыток.
Walk-forward
время →
Чего бэктест сказать не может
Бэктест описывает прошлое при допущениях симуляции. Рынки меняются, ликвидность меняется, и стратегия, которая работала три года, может перестать работать. Хороший бэктест — повод продолжить исследование, а не прогноз и тем более не финансовая рекомендация.
Бэктестинг криптостратегий в Janorium
Janorium — бесплатная веб-платформа ровно для такой работы, сделанная под крипту: спот и бессрочные фьючерсы USDT-M Binance с историей с 2020 года.
- Стратегия описывается в визуальном редакторе или JSON-конфигом — без кода — из 100+ индикаторов, а начать можно с готового шаблона.
- Движок прогоняет её бар за баром с комиссиями, проскальзыванием, историческим фандингом и ликвидацией. Если один бар задел и стоп, и цель, первым считается стоп — или решают 1m / 5m бары внутри него.
- Сотни делистнутых бессрочных фьючерсов остаются в данных, так что в набор инструментов могут попасть монеты, которые потом умерли.
- В отчёте 60+ метрик, каждая сделка на графике, эпизоды просадок, разбивка по режимам рынка и пересэмплирование Монте-Карло, а также заметка о дефлированном Шарпе (DSR), учитывающая, сколько вариантов перебрано.
Создайте бесплатный аккаунт и запустите первый бэктест или сначала откройте рейтинг и посмотрите чужие стратегии и их отчёты. Переходите с TradingView? Прочитайте, чем они отличаются.
Проверьте свою идею
Создайте бесплатный аккаунт, начните с шаблона или своих правил и прочитайте первый отчёт.