Бэктестинг применяет явные торговые правила к историческим данным. Он отвечает на вопрос, как эти правила вели бы себя при заданных допущениях, а не на вопрос, сколько вы заработаете в следующем месяце. Наиболее ценным результатом может стать.
Образовательное руководство. Примеры являются гипотетическими, а не котировками в реальном времени. Не является персонализированной инвестиционной рекомендацией.
Бэктестинг применяет явные торговые правила к историческим данным. Он отвечает на вопрос, как эти правила вели бы себя при заданных допущениях, а не на вопрос, сколько вы заработаете в следующем месяце. Наиболее ценным результатом может стать обнаружение того, что привлекательная идея исчезает, как только вы устраняете эффект задним числом и учитываете реалистичные издержки.
Сформулируйте правила до анализа результатов
Укажите вселенную активов, площадку, таймфрейм, сигнал, время входа, размер позиции, условия выхода и максимальную одновременную экспозицию. Также укажите порядок обработки отсутствующих данных и любые требования к заимствованию или шорт-продажам. Простое правило с четкими допущениями легче проверить, чем набор исключений, придуманных для улучшения кривой капитала.
Только для иллюстрации представьте правило, которое анализирует завершенную дневную цену закрытия относительно скользящей средней и торгует не ранее следующей доступной возможности исполнения. Это спецификация теста, а не рекомендуемая стратегия. Сигнал, использующий финальную цену закрытия, не может магическим образом получить исполнение раньше в той же свече.
Проверьте, что именно представляют ваши данные
Используйте согласованные временные метки и часовые пояса. Проверяйте наличие дублирующихся свечей, пропущенных интервалов, сбоев на площадках и подозрительных цен. Не предполагайте, что каждый агрегированный котируемый курс мог быть исполнен на вашей целевой бирже. Для деривативов важны спецификации контрактов и история финансирования; для спота — даты листинга и доступные пары.
Избегайте предвзятости выжившего. Успешные токены сегодня не представляют все токены, существовавшие в прошлом. Исключение неудачных или удаленных активов может сделать стратегию более устойчивой, чем она была на самом деле. Рыночные данные, доступные сегодня, также могут содержать исправления или классификации, которые не были известны в то время.
Три сокращения, которые делают результат недействительным
Предвзятость будущего использования использует информацию до того, как она стала доступной. Примеры включают торговлю на незакрытой свече или использование позже пересмотренной точки данных так, как будто она была известна тогда. Намеренно сдвигайте сигналы и исполнение, а также вручную проверяйте несколько сделок.
Переобучение означает настройку правила под исторический шум. Попытка протестировать сотни комбинаций параметров и сообщить только о победителе создает скрытую проблему отбора. Записывайте, что вы пробовали, предпочитайте понятные правила и не представляйте лучший результат как необъективное открытие.

Внутрибаровая неоднозначность возникает, когда данные по свечам не позволяют определить порядок событий. Если и стоп-лосс, и тейк-профит находились в пределах диапазона свечи, одних только значений OHLC может быть недостаточно, чтобы определить, что произошло первым. Используйте данные с более высокой детализацией или консервативное допущение и обязательно указывайте сделанный выбор. Касание лимита ценой также не доказывает, что ваш ордер имел приоритет в исполнении.
Включите затраты на реальную торговлю
Вычтите комиссии за вход и выход, смоделируйте спред и проскальзывание, а также включите расходы на финансирование или фандинг, где это уместно. Учитывайте минимальные размеры ордеров и реалистичную ликвидность. Протестируйте сценарий с более высокими затратами как стресс-тест. Подход, требующий невозможного исполнения ордеров, не станет лучше просто из-за более привлекательного графика.
В гипотетическом тесте с начальным капиталом $10 000 валовая прибыль в размере $800 и общие смоделированные затраты в размере $350 дают чистую прибыль $450, или 4,5%, до уплаты налогов и без учета упущенных эффектов. Одна лишь валовая доходность показала бы 8%. Ни одно из этих чисел не говорит о величине просадок на пути.
Разделяйте разработку и оценку
Используйте более ранний период для разработки и более поздний, нетронутый период для оценки. Процесс пошаговой оптимизации (walk-forward) многократно разрабатывает стратегию на основе предыдущей информации и оценивает её на последующих окнах. Как только вы многократно настраиваете стратегию на отложенном наборе данных, он больше не является по-настоящему нетронутым. Тестируйте стратегию в условиях роста, падения и бокового движения там, где существуют подходящие данные.
Оценивайте чистую доходность вместе с максимальной просадкой, экспозицией, оборотом, количеством сделок, средней прибылью и убытком, а также зависимостью от нескольких выбросов. Просадка измеряет снижение от предыдущего пика капитала; хороший итоговый баланс может скрывать неприемлемый путь. Небольшая выборка или одна удачная сделка могут доминировать в сводной статистике.
Следующий шаг — еще одно тестирование
Сохраняйте правила, окно данных и допущения, чтобы кто-то другой мог воспроизвести результат. Затем используйте https://realcryptocap.com/articles/crypto-paper-trading-guide для форвардного тестирования неизменных правил. Историческая прибыльность не является прогнозом, и бэктест не устанавливает, что риск реального капитала является подходящим.
Источники и дополнительная литература: Binance Academy, Что такое бэктестинг? — https://academy.binance.com/en/articles/what-is-backtesting; Binance Academy, Как протестировать торговую стратегию — https://academy.binance.com/en/articles/how-to-backtest-a-trading-strategy. Независимое объяснение с оригинальными примерами.