Проверка стратегий

Бэктест стратегии: комиссии, просадка и проверка

Что показывает бэктест, какие затраты включать и почему одной красивой кривой капитала недостаточно.

Что такое бэктест торговой стратегии

Бэктест — это применение заранее описанных торговых правил к историческим данным. Он восстанавливает условные сделки и показывает результат при выбранных допущениях. Это способ проверить гипотезу, а не прогноз доходности. Такое определение и ограничения описаны в руководстве Binance Academy по бэктестированию.

Практический вопрос звучит так: «Если бы эти правила и условия исполнения действовали в указанный период, какие сделки получились бы?» Ответ зависит не только от сигналов. Источник котировок, момент входа, размер позиции и затраты тоже меняют результат. Поэтому сравнивать два отчёта имеет смысл только после сверки их настроек.

Что зафиксировать перед запуском

Составьте короткий паспорт проверки. Его должно хватать другому человеку для воспроизведения расчёта.

  • Рынок: биржа, пара, спот или конкретный контракт.
  • Данные: источник, начало и конец периода, часовой пояс, таймфрейм, пропуски.
  • Правила: сигнал входа, выход, стоп, повторный вход, максимальное число позиций.
  • Капитал: начальная сумма, валюта отчёта, способ расчёта объёма, использование плеча.
  • Исполнение: когда появляется сигнал и когда моделируется сделка, тип заявки, комиссии, проскальзывание.
  • Версия: параметры стратегии и дата сохранения спецификации.

Фраза «покупать на пробое» недостаточна. Уточните, считается ли пробоем касание уровня внутри свечи или закрытие выше него. Если сигнал использует цену закрытия, нельзя одновременно предполагать, что эта цена была известна до окончания свечи.

Перед расчётом отдельно посмотрите на начало ряда: хватает ли истории для прогрева индикаторов? Уточните, как обрабатываются пустые интервалы. Заполнение пропуска последней известной ценой и исключение такого периода — разные допущения. Выбранный способ должен оставаться видимым в отчёте.

Как учитывать комиссии и проскальзывание

Комиссия — расход за исполненную операцию. Проскальзывание — отличие предполагаемой цены исполнения от фактической или моделируемой. Не подменяйте одно другим. В настройках стратегий TradingView комиссия задаётся отдельно от проскальзывания и применяется к входам и выходам.

Учебный пример: условная покупка имеет объём 1 000 USDT, продажа — 1 010 USDT. При придуманной для расчёта комиссии 0,1% с каждой стороны расходы равны 1 + 1,01 = 2,01 USDT. Из разницы цен 10 USDT остаётся 7,99 USDT до других издержек. Это арифметическая иллюстрация, а не тариф биржи или результат Clerix.

Для собственного отчёта используйте ставку своего рынка и уровня аккаунта. Отметьте, различает ли модель maker и taker. Для деривативов отдельно проверьте финансирование, а при заёмных средствах — стоимость займа. Не добавляйте произвольную «поправку на всё»: у каждой статьи расходов должна быть понятная база расчёта.

Сохраните основной сценарий и более строгий сценарий исполнения. Например, измените только допущение о проскальзывании и сравните результаты. Такой эксперимент отвечает на конкретный вопрос о чувствительности модели; он не устанавливает универсальную допустимую величину затрат.

Что показывает максимальная просадка

Просадка измеряет снижение капитала относительно предыдущего максимума. Для выбранной точки формула такая: (предыдущий максимум − текущий капитал) / предыдущий максимум × 100%. Максимальная просадка — наибольшее такое снижение в рассматриваемом ряду.

Учебный ряд: капитал вырос до 12 000 USDT, затем снизился до 9 000 USDT. Просадка от этого пика равна 25%. Рост с 9 000 обратно до 12 000 потребует уже около 33,3%. Поэтому процент снижения и процент восстановления не совпадают.

Проверьте, какой именно ряд использует отчёт: только закрытые сделки или капитал с переоценкой открытых позиций. Смотрите также длительность восстановления и серию убытков. Два отчёта с одинаковой итоговой суммой могут предполагать очень разный путь к ней. Исторический максимум просадки не задаёт верхнюю границу будущего убытка.

Как проверить результат на подгонку

Если многократно менять параметры до красивого графика, легко выбрать настройку, описывающую шум конкретного периода. Документация Pine Script рассматривает переобучение, использование будущих данных и проверку на отдельной выборке как существенные вопросы оценки стратегии.

Предлагаем такой порядок работы:

  1. Сохраните исходную гипотезу и перечень уже проверенных вариантов.
  2. Выделите период для разработки и отдельный период, который пока не используете для выбора параметров.
  3. Зафиксируйте настройки перед проверкой на втором периоде.
  4. Посмотрите на соседние значения параметров и разные участки рынка, сохраняя неудачные результаты.
  5. Разберите несколько сделок вручную: доступные данные, сигнал, объём, цена, расходы, причина выхода.
  6. Запишите вывод и следующий эксперимент, даже если гипотезу пришлось отклонить.

После настройки по результатам второго периода он уже становится частью разработки. Не называйте следующую проверку на нём независимой. Не существует одного числа сделок, которое автоматически доказывает устойчивость любой стратегии.

Что делать после отчёта

Полезный итог — сохранённая спецификация, журнал сделок, допущения и список обнаруженных ограничений. Затем можно изучить отличия paper trading от бэктеста: новые входящие данные проверяют другой набор вопросов. Для уточнения правил используйте шаблон задания для AI.

Перед следующей проверкой сформулируйте один вопрос: что именно она должна подтвердить или опровергнуть? Сохраните ответ рядом с отчётом, чтобы последующее изменение параметров не подменило исходную гипотезу. Посмотрите путь от идеи к правилам и проверке в Clerix.

Источники

Редакция Clerix

Редакционные материалы Clerix о правилах стратегий, методах проверки и ограничениях торговых симуляций.

Посмотреть этот этап в Clerix