Ловушки бэктеста — то, что покажет только реальная торговля
Обновлено: 2026-05-20 | Время чтения: ~15 минут
Восходящая кривая доходности в бэктесте не гарантирует будущую прибыль. В бэктестировании есть несколько «ловушек», которые делают результаты лучше реальности. В этой статье разберём их природу и объясним, как избежать ошибок с помощью реального тестирования.
Содержание
Почему «слишком хороший» бэктест опасен
Бэктест — это симуляция на исторических данных. Поскольку история существует в единственном экземпляре, любую стратегию можно «подогнать» под неё и получить сколь угодно высокие показатели. Это и есть переоптимизация (кривая подгонка).
Кроме того, если настройки бэктеста мягче реальных условий — результаты окажутся лучше действительности. Фиксированный узкий спред, допущение о гарантированном исполнении по желаемой цене — накопление таких «зазоров между моделью и реальностью» приводит к значительному расхождению между бэктестом и реальной торговлей.
Качество моделирования и тиковые данные
Точность расчётов в стратегическом тестере MT5 зависит от выбранного режима моделирования. При дешёвом расчёте только по ценам открытия внутрибаровое движение цены игнорируется, и касание уровней SL/TP может определяться некорректно.
Наиболее точный режим — «Все тики (наиболее точный метод на основе наименьшего доступного таймфрейма)» или «Все тики на основе реальных тиков». Точность первого режима обычно отображается как 99,9%. Чем меньше рабочий диапазон стратегии (например, скальпинг), тем сильнее влияние качества тиков.
| Режим расчёта | Точность | Назначение |
|---|---|---|
| Только цены открытия | Низкая | Только для оценки общей тенденции |
| OHLC на M1 | Средняя | Быстрая предварительная проверка |
| Все тики | ~99,9% | Обязателен для финальной верификации перед публикацией |
| Реальные тики | Максимальная | Точная верификация на реальных данных брокера |
4 скрытые статьи издержек
В бэктесте эти факторы кажутся незначительными, но на реальном счёте они существенно сокращают прибыль.
Переменный спред
Бэктест часто использует фиксированный спред, тогда как реальный спред меняется в зависимости от времени суток и во время выхода экономических данных может вырасти в 5–10 раз. Слишком узкий фиксированный спред занижает реальные торговые издержки.
Slippage (проскальзывание)
Разница между запрошенной и фактической ценой исполнения. В бэктесте практически игнорируется, но при резких движениях рынка или скальпировании становится значимым источником потерь.
Своп (ролловер)
Процентная плата за перенос позиции через ночь. Для долгосрочных EA накопленный своп существенно влияет на итоговый P&L. Необходимо убедиться, что настройки свопа в бэктесте соответствуют реальным значениям.
Отказ в исполнении / реквот
На реальном рынке ордера могут не исполняться или котироваться повторно по другой цене. В бэктесте исполнение всегда гарантировано, поэтому это трение не воспроизводится.
Чеклист ловушек бэктеста
Проверяйте следующие пункты при анализе результатов бэктеста. Чем больше совпадений — тем осторожнее следует относиться к показателям.
| Что проверить | В чём ловушка |
|---|---|
| Качество моделирования ниже 99,9% | Внутрибаровое движение игнорируется, SL/TP определяются некорректно |
| Фиксированный узкий спред | Реальные торговые издержки занижены |
| Короткий период тестирования (менее 3 лет) | Охвачена только одна рыночная фаза, результаты смещены |
| PF выше 3,0 / слишком гладкая кривая доходности | Сильное подозрение на переоптимизацию |
| Оценка на том же периоде, что и оптимизация | Подгонка под прошлое принимается за реальное преимущество |
| Только одна валютная пара / один период | Результат может быть случайным |
Проверка на реальных данных и нескольких периодах
Лучший способ избежать ловушек бэктеста — «тестировать повторно на нескольких независимых условиях». Один хороший результат может быть случайным, но стабильный плюс на разных периодах и в разных условиях говорит о реальном торговом преимуществе.
Разбейте данные на несколько периодов
Разделите 10 лет на 3–4 периода и проверьте, даёт ли каждый из них положительный результат в отдельности. Если весь итог держится на одном выдающемся периоде — это тревожный сигнал.
Выявите переоптимизацию с помощью уолк-форвард анализа
Проверьте, не ухудшаются ли результаты на OOS-периоде (неиспользованном при оптимизации). Это наиболее надёжный метод обнаружения переоптимизации.
Протестируйте на реальном рынке с помощью форвард-теста
Запустите EA на демо-счёте минимум на 3 месяца и проверьте, сохраняется ли 70–130% от показателей бэктеста в условиях реального спреда и проскальзывания.
🔬 Выявляйте переоптимизацию с помощью уолк-форвард анализа
Переоптимизация — самая коварная из ловушек бэктеста. В статье об уолк-форвард анализе подробно описана процедура её выявления.
Читать об уолк-форвард анализе →