Как честно бэктестить стратегию и не обмануть себя
Видите бэктест с профитом 250% в год и Sharpe 3.5? Это почти гарантировано переобучение. Стратегия идеально подогнана под прошлое, но на реальных деньгах рухнет.
Эта статья — как распознать честный бэктест и как настроить тестирование, чтобы результаты имели смысл.
Главный враг: переобучение (overfitting)
Переобучение — это когда вы подгоняете параметры стратегии так, чтобы максимально соответствовать историческим данным, но эти параметры теряют силу на новом рынке.
Как это происходит на практике
Вы берёте DCA-бота и начинаете крутить параметры: размер страховочного ордера (СО), шаг между ними, множитель.
Стандартная версия:
- Шаг между СО: 1.0%
- Множитель размера: 1.3
- Количество СО: 5
Бэктест на 2020–2025: профит 120% (условные цифры).
Подогнанная версия (после 40 попыток найти идеальные параметры):
- Шаг: 0.7%
- Множитель: 1.6
- Количество СО: 8
Бэктест на том же периоде: профит 380%.
Выглядит отлично! Но затем наступает май 2026. BTC рвёт вверх на 40%, потом падает на 8%. На стандартной версии убыток —5000 (обычная для неё просадка). На подогнанной версии убыток —22000, потому что слишком много СО открылось на новый тренд и съело маржин.
Почему? Подогнанная версия была идеальна для волатильности 2020–2025, когда было много боковых ходов. На новом рынке (с другой волатильностью и направлением) параметры бесполезны.
Решение: in-sample и out-of-sample
In-sample — данные, на которых вы оптимизируете параметры. Out-of-sample — данные, которые стратегия не видела при оптимизации.
Пример правильного подхода
Шаг 1: разделите историю на две части
- 2020–2023: оптимизируете параметры (in-sample)
- 2024–2025: проверяете параметры без изменений (out-of-sample)
Шаг 2: оптимизируйте на 2020–2023
Вы меняете параметры, ищите лучший результат. Пусть это:
- Шаг: 1.0%
- Множитель: 1.4
- Количество СО: 6
Результат: профит 140% (условные цифры).
Шаг 3: проверьте на 2024–2025 без изменений
Те же параметры (не трогаете), но на новых данных:
- Результат: профит 22%
- Sharpe: 1.1
Не впечатляет? Это хороший знак. Out-of-sample результат реалистичен. Если бы результат был близок к in-sample (120–140%), это было бы странно — стратегия работает и на новых данных.
Rolling walk-forward (более строгий тест)
Разделите историю на несколько окон:
2020–2021 (optimize) → 2022 (test)
2021–2022 (optimize) → 2023 (test)
2022–2023 (optimize) → 2024 (test)
2023–2024 (optimize) → 2025 (test)
2024–2025 (optimize) → 2026 (test)
Для каждого периода вы переоптимизируете параметры (рынок меняется, параметры должны адаптироваться), но проверяете на свежих данных, которые не видели при оптимизации.
Результаты тестов в каждом окне должны быть похожи. Если 2022 показал профит 15%, а 2024 показал убыток 12%, это красный флаг — стратегия нестабильна.
Красные флаги переобучения
| Признак | Что это значит |
|---|---|
| Sharpe > 3.0 на полный период | Слишком хорошо, чтобы быть правдой. Переобучение. |
| Win-rate > 75% | Стратегия ловит почти каждую сделку. Редко когда честно. |
| Максимальная просадка < 3% за 5+ лет | На рынке такого не бывает. Стратегия слишком консервативна или не полна. |
| Out-of-sample результаты в 10 раз хуже, чем in-sample | Стратегия работает только на исторических данных. |
| Параметры крайне сложные (20+ чисел для настройки) | Чем больше параметров, тем выше риск переобучения. |
Как учесть реальные условия
Честный бэктест должен включать:
1. Комиссии биржи
На Hyperliquid комиссия maker —0.02%, taker 0.05% (или выше на меньших позициях). На каждой сделке вы теряете эти проценты.
Пример (иллюстрация):
- Открываете позицию 1000 USDC: теряете 0.5 USDC на комиссии.
- 100 сделок в месяц = 50 USDC за месяц на комиссиях одного портфеля.
Если бэктест не учитывает комиссии, результат может быть на 3–5% выше реальности. Полный убыток прибыли на низкодоходных стратегиях.
2. Funding rates (ставка финансирования)
На перпах вы платите (или получаете) funding каждые 8 часов. На популярных торговых парах это может быть 0.01% до 0.1% в день в зависимости от рынка. На альтах — намного выше.
Что это значит:
- Долгая позиция на 1000 USDC при funding 0.05% в день платит 0.5 USDC в день.
- За месяц это 15 USDC убытка.
- За год 180 USDC убытка только на funding.
Если стратегия держит лонги неделями, а funding разворачивается с +0.03% на —0.08%, убыток съест всю прибыль.
3. Проскальзывание (slippage)
В бэктесте часто используется цена на свечу. На живой торговле ваш ордер редко исполнится ровно по цене закрытия. Вы покупаете чуть выше, продаёте чуть ниже. Это проскальзывание.
На малых размерах (<5% open interest) проскальзывание незначительно (0.01–0.05%). На больших (>20% OI) может быть 0.3–0.7%.
Честный бэктест добавляет 0.1–0.3% проскальзывания на каждую сделку (в зависимости от предполагаемого размера).
4. Максимальный рычаг и реальная маржа
Стратегия может показать в бэктесте отличные результаты, если использует 20× рычаг и максимальную позицию 100% портфеля. Но на живой торговле:
- Гэп рынка может ликвидировать вас за 30 секунд.
- При маржине 95% нет свободных денег для дополнительных сделок.
Честный бэктест ограничивает плечо (максимум 3–5×) и держит свободный маржин (минимум 30–50% от портфеля невложенным).
Как читать честный бэктест
Если вы смотрите результаты волта или стратегии на AI Traders:
-
Периоды: бэктест 2020–2025 — это давно. Проверьте out-of-sample результаты за 2025–2026. Они должны быть близки к историческим, иначе стратегия уже устарела.
-
Sharpe и max drawdown: если Sharpe 2.5, а просадка 50%, это нестабильная стратегия. Несколько сделок разрушают месячный профит.
-
Количество сделок: 5 сделок в год — недостаточно для статистики. 100+ сделок за период — хороший sample size.
-
Распределение профита: если 80% профита пришло из одной сделки (спека вверх на 500%), стратегия хрупка.
-
Walk-forward результаты: если платформа показывает walk-forward анализ, это большой плюс. Если только full-period результаты — будьте осторожны.
Почему бэктест не равен будущему
Даже идеальный бэктест (с walk-forward, без переобучения, со всеми комиссиями) не гарантирует будущего.
Причины:
- Режимные сдвиги. 2020–2022 был медвежий, 2023–2024 бычий. Стратегия, оптимизированная на медвеце, может не работать на быке.
- Волатильность меняется. Если историческая волатильность 2%, а новая 5%, параметры сломаются.
- Ликвидность меняется. Пара теряет популярность, spreads растут, проскальзывание увеличивается.
- Правила биржи меняются. Комиссии, ставки финансирования, лимиты — всё может измениться.
Что это значит для вас
Бумажный режим (7–14 дней): это не полный бэктест, но окно, где вы видите реальное поведение стратегии на свежих данных. Если в бумажном режиме стратегия работает близко к бэктесту — это хороший знак.
Живой режим на малом капитале: первые 2–4 недели запустите с $100–300 маржина. Это проверит стратегию на реальных условиях (комиссии, проскальзывание, задержки API) перед масштабированием.
Здоровый скептицизм: если вы видите результаты с 200%+ годовых, спросите себя: "Где walk-forward анализ? На каких данных? Какие комиссии включены? Какой рычаг используется?"
Стратегии честных платформ (включая AI Traders) всегда раскрывают:
- Периоды бэктеста
- Walk-forward или out-of-sample результаты
- Максимальную просадку
- Количество сделок
- Учёт комиссий и funding rates
Всё остальное — маркетинг.