К содержанию
RU
Начать бесплатно
← К обзору блога

Что такое анализ walk-forward: простое объяснение

автор: Sebastian Saupe · Опубликовано 6 октября 2026 г. · Обновлено 6 октября 2026 г.

Что такое анализ walk-forward: простое объяснение

Что такое walk-forward анализ?

Если ты новичок в автоматической торговле, ты наверняка встречал термин walk-forward анализ, его ещё называют walk-forward оптимизацией. Простыми словами, это особый вид бэктеста, теста торговой стратегии на исторических данных о ценах, который проводится не один раз на всём тестовом диапазоне. Вместо этого он строится из нескольких меньших бэктестов, называемых периодами оптимизации, распределённых по всему тестовому диапазону. За каждым из этих периодов следует тест вне выборки, то есть сегмент данных, который не использовался для поиска параметров стратегии, с использованием значений параметров, найденных в этом периоде.

Идея этого подхода в том, чтобы смоделировать, как со стратегией можно было бы обращаться в реальной торговле. Ты оптимизируешь стратегию на куске прошлых данных, затем какое-то время торгуешь с найденными параметрами, а после окончания этого периода снова проводишь реоптимизацию на более свежих данных. Это должно отражать процесс, которому трейдер мог бы следовать на практике: время от времени корректировать стратегию, а не задать её один раз и больше никогда не трогать. Важно видеть в этом описание процесса моделирования, а не предсказание того, как стратегия на самом деле будет вести себя, когда начнёт торговать на новых, невиданных рыночных данных.

Как работают периоды и разделение на выборку и вне выборки

Внутри модуля Optimizer запуск walk-forward делит исторические данные на настраиваемое число периодов. У каждого периода две части: часть оптимизации и часть прогона, также известная как часть вне выборки. Параметры, найденные во время части оптимизации периода, затем используются для торговли на протяжении следующей части прогона. Как только эта часть прогона заканчивается, оптимизация повторяется на новых данных, и цикл продолжается по всему тестовому диапазону. Эта общая структура была задокументирована для более ранней версии программы, так что, хотя она описывает лежащую в основе логику, она может не описывать в точности каждую деталь текущего интерфейса StrategyQuant X.

Одна из настроек, о которых идёт речь, обычно называется Out of Sample %. Она определяет, какая доля каждого walk-forward периода отводится на часть прогона, то есть торговли. Например, при настройке вне выборки 30% 70% данных периода использовались бы для оптимизации, а оставшиеся 30% для торговли с найденными параметрами. Этот пример взят из более старого руководства пользователя, и его следует читать как иллюстрацию того, как работает разделение, а не как текущее значение по умолчанию в StrategyQuant X. Если ты работаешь в текущей версии, стоит проверить свои собственные настройки, а не предполагать, что это разделение применяется автоматически.

Матрица walk-forward: проверка на устойчивость

Стандартная walk-forward оптимизация использует один фиксированный период реоптимизации, например реоптимизацию каждые 300 дней, выбранный здесь только как пример, а не как рекомендация. Без дополнительного тестирования выбор этого периода реоптимизации по сути является догадкой, поскольку нет встроенного способа заранее узнать, какая длина периода лучше всего сработала бы на имеющихся данных.

Здесь и вступает в игру матрица walk-forward. Это функция модуля Optimizer, которая запускает целый набор walk-forward оптимизаций, каждая с разным числом периодов реоптимизации и разным процентом вне выборки. Вместо тестирования одной фиксированной конфигурации матрица тестирует множество комбинаций сразу, что делает её полезной как проверка на устойчивость и как способ помочь найти, какой период реоптимизации лучше всего сработал бы на использованных исторических данных.

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

Общий результат запуска матрицы walk-forward обычно включает сводку с идеальным периодом реоптимизации, найденным в этом конкретном тесте, вместе с трёхмерным графиком, показывающим оценки устойчивости по всем протестированным комбинациям. Одна из настроек, с которой ты столкнёшься при настройке запуска матрицы, называется Increment. Она управляет размером шага, используемым для серии периодов, или длин прогона, и процентов вне выборки, которые тестируются в матрице.

Почему матрица walk-forward может занимать много времени

Поскольку полную walk-forward оптимизацию приходится запускать отдельно для каждой комбинации настроек, включённой в матрицу, вычисление полной матрицы walk-forward может занимать очень много времени. Сколько именно, зависит от числа комбинаций, которые ты решишь протестировать, длины исторических данных и доступных тебе вычислительных ресурсов. Стоит запланировать это заранее, прежде чем запускать большую матрицу, особенно если ты тестируешь много комбинаций сразу.

Замечание о текущих настройках StrategyQuant X

Приведённые выше детали о периодах, разделении на выборку и вне выборки, а также о настройке Increment взяты из задокументированных материалов, часть которых написана для более ранней версии программы. Точный путь в меню и точные значения по умолчанию, используемые в текущей сборке StrategyQuant X, не подтверждаются задокументированными свидетельствами, доступными для этой статьи. Вместо того чтобы угадывать точные пошаговые инструкции, стоит изучить опции walk-forward и матрицы walk-forward прямо в своей собственной установке, чтобы увидеть текущие названия и значения по умолчанию.

Что этот метод может и чего не может тебе сказать

Walk-forward анализ и матрица walk-forward полезны потому, что они моделируют непрерывный процесс оптимизации и реоптимизации стратегии во времени, а не тестируют стратегию с одним фиксированным набором параметров на всей истории. Это может дать тебе представление о том, как стратегия могла бы адаптироваться к меняющимся условиям в прошлом, и может помочь увидеть, какая частота реоптимизации лучше всего сработала на конкретных данных, которые ты тестировал, и насколько адаптируемой была стратегия к рыночным условиям, присутствовавшим в этих данных.

Чего он не может, так это подтвердить, как стратегия покажет себя, когда начнёт торговать на будущих, невиданных рыночных данных. Каждый результат, который ты видишь от запуска walk-forward или матрицы walk-forward, полностью построен из исторических цен и настроек, которые ты выбрал для этого теста. Стратегия, показавшая хороший результат в этом процессе в прошлом, тем самым не доказывается как безопасная, надёжная или гарантированно показывающая то же самое в будущем.

Эта статья служит обучению и не является инвестиционным консультированием. Прошлые результаты, в том числе результаты бэктестов, не гарантируют будущих результатов. Торговля финансовыми инструментами связана с рисками, ты можешь потерять деньги.

Эта статья служит обучению и не является инвестиционным консультированием. Прошлые результаты ничего не гарантируют на будущее.

А как это делаешь ты? Расскажи в сообществе. Бесплатно, на твоём языке.

Зарегистрируйся бесплатно