На главную

DF-ТРД-002 · Инструменты для трейдинга

Бэктест торговой стратегии: как проверить советника на истории

Редакция Deskforge · 9 октября 2026 · 5 мин чтения
Бэктест торговой стратегии: как проверить советника на истории
Из статьи вы узнаете
  • что такое бэктест и какие вопросы он закрывает, а какие — нет
  • чем реальные тики отличаются от сгенерированных и когда это меняет вывод
  • какие настройки зафиксировать до прогона, чтобы отчёт можно было повторить
  • как читать отчёт тестера и не принять подгонку параметров за работающую программу

Советник написан — своими руками или на заказ. До живых сделок остаётся один шаг: прогнать программу по прошлым котировкам и посмотреть, что она делала. Этот шаг и называется бэктестом.

По справке MetaTrader 5, тестирование советника — это «одиночный проход с фиксированными параметрами на исторических данных». Бэктест отвечает на два вопроса: следует ли программа заявленным правилам и как она ведёт себя на выбранных данных. Ответ фиксируется в отчёте, и при тех же настройках его можно получить заново.

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

Что такое бэктест и что он проверяет?

В MetaTrader 5 прогон выполняет встроенный тестер стратегий, в MetaTrader 4 — окно «Тестер»: выбираете советника, инструмент, период и запускаете проход по истории.

Проверяет бэктест в первую очередь программу: совершает ли советник входы и выходы по правилам из задания, срабатывают ли стоп-уровни, нет ли ошибок в коде, что происходит на трудных участках — разрывах котировок, нехватке истории.

Второй вопрос — поведение на выбранных данных. Но исторический тест не рассказывает о будущем рынка: он доказывает лишь, что на этом участке правила выполнялись или нарушались. Итог бэктеста — факт о программе, а не прогноз.

Реальные или сгенерированные тики?

Советник реагирует на тики — минимальные изменения цены. Взять их можно двумя путями: «на реальных тиках, предоставляемых брокером, или же на тиках, сгенерированных тестером стратегий на основе минутных данных», — описывает справка MetaTrader 5.

В пятой версии это режимы генерации тиков. «Все тики» — самый точный из моделирующих: тестер достраивает движение цены внутри минутных баров. «Каждый тик на основе реальных тиков» работает на записях брокера, здесь моделирования нет. В MetaTrader 4 режима реальных тиков нет — только три метода моделирования: для тщательного тестирования справка рекомендует «Все тики», а контрольные точки — для прогонов при оптимизации.

Разница существенная. На реальных тиках спред внутри минуты меняется; на сгенерированных он зафиксирован одним значением бара. Если программа чувствительна к спреду, у грубого прогона выводы могут отличаться.

В MetaTrader 4 есть ещё одна особенность: история хранит только цены Bid, а цену Ask тестер моделирует по спреду на момент запуска. А точность стоит данных: тиковая история значительно больше минутной, и первое скачивание занимает время.

Что зафиксировать до прогона?

Главное свойство добротного бэктеста — воспроизводимость: прогон можно повторить и получить тот же отчёт. Для этого до запуска фиксируют настройки; в MetaTrader 5 их сохраняют в ini-файл и возвращают в пару кликов.

Настройка Зачем фиксировать
Символ и период определяют данные, по которым идёт прогон
Интервал дат границы участка истории для этой проверки
Режим генерации тиков точность прогона против его скорости
Задержки исполнения приближают исполнение к условиям брокера
Депозит и плечо условия, в которых работает программа
Входные параметры значения, при которых получен именно этот отчёт

С интервалом есть две детали. Тестер догружает историю до указанной даты — как минимум 100 баров, поэтому фактический старт может сдвинуться, и это видно в журнале. А конечная дата в период не входит: тест заканчивается на последнем тике предыдущего дня.

Как читать отчёт тестера?

Результаты появляются на вкладках «Бэктест» и «График», подробный отчёт — на «Бэктест». Читать его удобно в два слоя.

Первый слой — данные и поведение программы. Показатель «Качество истории» отражает, насколько пригодны котировки: если он низкий, сначала обновите историю, а потом делайте выводы. Вкладка «Журнал» собирает ошибки и сообщения самой программы — отчёт имеет смысл, когда журнал чист. В визуальном режиме каждая сделка видна на графике: удобно сверять входы с правилами.

Второй слой — сводные показатели: число трейдов, максимальная просадка средств (наибольшее падение между локальным максимумом и следующим минимумом), коэффициент Шарпа и другие. Их фиксируют в том же протоколе, что и настройки: так версии программы сравнимы по одним условиям. В MetaTrader 4 есть похожий показатель «Качество моделирования»: цветная полоса в отчёте показывает, где тики достроены, а где данных не хватило.

Подгонка параметров и форвард-период

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

«Данная опция позволяет проверить результаты тестирования для исключения подгонки на определенных периодах времени» — Справка MetaTrader 5, Тестирование стратегий

Речь о форвард-периоде. Указанный интервал делится на две части: на первой, бэк-тестировании, программа адаптируется, на второй, форвард-тестировании, проверяются выбранные параметры. Практическое правило: настройки подбирают на первой части, а решение принимают по второй.

Отрицательный итог — тоже результат. Если программа нарушает собственные правила или ломается на трудных данных, бэктест показал это до живых сделок: исправляйте правила в задании и коде, не перебирайте параметры до красивой кривой. Как устроена проверка торговых инструментов у нас — на странице инструментов для трейдинга. Когда советник выйдет на живые сделки, записи о них собирает журнал сделок трейдера.

Вопросы и ответы

Чем бэктест отличается от оптимизации?

Бэктест — один прогон с фиксированными параметрами, оптимизация — серия прогонов с разными наборами ради подбора настроек. Запускать её стоит после того, как одиночный бэктест подтвердил корректность программы.

Можно ли доверять тесту на сгенерированных тиках?

Для проверки логики — да, для выводов о поведении внутри бара — с осторожностью: спред в сгенерированных тиках не меняется внутри минуты. Решающие прогоны в MetaTrader 5 повторяйте на реальных тиках.

Как провести бэктест в MetaTrader 4?

Через окно «Тестер»: выберите советника, символ, период и один из трёх методов моделирования. Для тщательного прогона — «Все тики»; качество моделирования видно в отчёте по цветной полосе. Режима реальных тиков в четвёртой версии нет.

Источники


Материал носит информационный характер и описывает разработку и проверку программных инструментов. Он не является индивидуальной инвестиционной рекомендацией и не содержит предложения совершить сделку. Deskforge не является брокером, дилером, управляющей компанией или инвестиционным советником, не управляет средствами клиентов и не совершает сделок за них. Торговля на финансовых рынках связана с риском потери капитала; результаты тестирования на исторических данных и прошлые результаты не гарантируют будущих. Решение о сделках пользователь принимает самостоятельно.

Назад