Что такое бэктестинг на самом деле
Бэктест берёт фиксированный набор правил — например, условие входа, условие выхода и размер позиции — и воспроизводит его на историческом наборе данных, таком как прошлые цены Bitcoin (BTC). Он записывает, какие сделки сгенерировало бы правило, и выдаёт статистику, такую как совокупная доходность, доля прибыльных сделок, максимальная просадка (drawdown) и количество сделок.
Основная идея проста: если бы у правила не было полезной структуры, оно не должно вести себя лучше, чем случайно, на прошлых данных. Бэктестинг — это способ исследовать историческое поведение правила измеримым, воспроизводимым образом, вместо того чтобы полагаться на память или интуицию о том, «что обычно происходит».
Что бэктест может законно показать
Бэктест наиболее надёжен как описательный и диагностический инструмент, а не как предсказательный. Он может показать, как часто правило совершало бы сделки, насколько большой была его худшая историческая просадка, насколько чувствительны результаты к издержкам и работает ли логика вообще без ошибок.
Он также полезен для отсева. Правило, которое показывало плохие результаты на длинной, разнообразной истории — или которое работало только в один узкий период — очевидно, не продемонстрировало устойчивости. Исключение идей часто является более честным использованием бэктестинга, чем попытка подтвердить, что любимая идея «работает».
Переобучение: главная ловушка
Переобучение (overfitting) происходит, когда стратегия настроена настолько плотно под особенности одного исторического набора данных, что улавливает шум, а не какую-либо устойчивую закономерность. Если вы протестируете сотни комбинаций параметров и оставите ту, у которой лучшая прошлая доходность, вы почти наверняка отобрали удачу, а не мастерство — какая-то комбинация всегда должна была выглядеть хорошо случайно.
Предупреждающие признаки знакомы: множество настраиваемых параметров, результаты, которые рушатся при небольшом сдвиге настройки, впечатляющая результативность, сосредоточенная в нескольких сделках, и правила, которые многократно корректировали, пока кривая капитала не стала выглядеть привлекательно. Переобученная стратегия, как правило, показывает гораздо худшие результаты вне выборки — на данных, под которые она не настраивалась — и ещё хуже в реальной торговле.
Другие искажения, которые завышают результаты бэктестов
Переобучение — не единственная проблема. Искажение заглядывания вперёд (look-ahead bias) использует информацию, которая не была бы доступна в момент сделки. Искажение выживших (survivorship bias) тестирует только те активы, которые всё ещё существуют, игнорируя те, что потерпели неудачу. Искажение подгонки под данные (data-snooping) накапливается, когда много людей тестируют много идей на одной и той же истории, и сообщается только о победителях.
Практические издержки также легко упустить. Торговые издержки, комиссии, проскальзывание, спреды, финансирование и трудность исполнения крупных ордеров на неликвидных рынках могут превратить прибыльное на бумаге правило в убыточное. Бэктест, который предполагает идеальное исполнение по идеальным ценам, измеряет рынок, которого не существует.
Почему хороший бэктест — это не предсказание
Даже тщательно построенный, скорректированный на искажения бэктест описывает прошлое при одном конкретном наборе условий. Рынки меняются: ликвидность, волатильность, участники и регулирование со временем смещаются, и правило, подходившее одному режиму, может дать сбой в другом. Прошлые результаты не несут гарантии в отношении будущего, а бэктесты часто преувеличиваются.
Именно поэтому предсказательные торговые методы в целом — графические паттерны, волны Эллиотта, уровни Фибоначчи и технические индикаторы, такие как RSI или MACD — являются спорными и субъективными. Их бэктестинг может заставить их выглядеть точными, но не может заставить их надёжно предсказывать цены. Торговля сопряжена с высоким риском, и исследования последовательно указывают, что большинство розничных трейдеров со временем теряют деньги.
Чтение рыночных данных с учётом контекста
Поскольку бэктесты могут льстить стратегии, некоторые предпочитают также смотреть на более широкий контекст рыночных данных, а не только на цену. BIKENZO — это терминал данных и аналитики по Bitcoin, который показывает информацию, такую как ликвидность относительно цены BTC; этот контекст может помочь вам интерпретировать, произошло ли историческое движение на глубоком, ликвидном рынке или на неликвидном.
Это контекст, а не сигнал или предсказание. BIKENZO не говорит вам, что произойдёт, не генерирует сделки и не является местом для торговли — это линза для понимания данных, стоящих за ценой. Любое решение и любой риск остаются целиком вашими собственными.