Монте-Карло симуляция в трейдинге
Ты построил торговую стратегию и протестировал её в бэктесте. Но насколько устойчив этот результат, если бы мелкие вещи сложились иначе, если бы сделки шли в другом порядке или проскальзывание было бы немного выше? Именно здесь и работает симуляция Монте-Карло в трейдинге. Она берёт твой уже завершённый бэктест и повторяет его много раз с небольшими случайными изменениями. Из этих многих повторов получается статистическая оценка того, насколько рискованной и насколько доходной была твоя стратегия в слегка изменённых условиях прошлого. В этой статье ты увидишь, что конкретно меняется при таком прогоне, какие показатели при этом получаются, почему количество прогонов имеет значение и где метод упирается в свои границы.
Что такое симуляция Монте-Карло в трейдинге
Анализ Монте-Карло это метод, который повторяет симуляцию стратегии много раз с небольшими случайными изменениями. Цель: статистически оценить риск и поведение стратегии в части прибыли и убытков. При этом всегда предполагается уже завершённый бэктест: анализ Монте-Карло строится на этом бэктесте, он его не заменяет.
Принцип можно описать как последовательность. В начале стоит готовый бэктест твоей стратегии. Из этого бэктеста затем создаётся очень много отдельных прогонов, в каждый из которых вносятся небольшие случайные изменения. В конце этих многих прогонов стоит статистическая оценка в виде уровней доверия, подробнее об этом в разделе о показателях ниже.

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

Какие показатели даёт симуляция Монте-Карло
Симуляция Монте-Карло даёт результаты для заранее заданных уровней доверия. Для этого она рассчитывает по всем смоделированным сценариям такие показатели, как чистая прибыль, процентная чистая прибыль и соотношение дохода к просадке. Обязательное условие для этого всегда одно: уже завершённый бэктест как основа симуляции.
Эти уровни доверия, это статистический диапазон, который основан на вариациях прошлых данных. Они не гарантируют будущую доходность и не являются предсказанием того, что произойдёт в live-торговле.
Как количество симуляций влияет на оценку
Анализ Монте-Карло должен показать, насколько чувствительна стратегия к изменениям, таким как рыночные циклы или порядок транзакций. При этом действует правило: чем больше прогонов симуляции ты проводишь, тем надёжнее, как правило, становится полученная из них оценка.
Сколько прогонов в отдельном случае имеет смысл, зависит от доступного времени вычислений и от заданного количества симуляций. Нет фиксированного числа, которое одинаково подходило бы для каждой стратегии и каждой ситуации. Больше прогонов стоит больше времени вычислений, зато картина становится полнее.
Пример: количество симуляций в Portfolio Composer
Конкретный пример такой настройки ты найдёшь в Portfolio Composer. Там есть поле под названием Simulations. Оно определяет, сколько смоделированных комбинаций весов оценивается при автоматическом расчёте портфеля. Документация приводит для этого примерные значения, такие как 500 или 1000.
Эти числа: примеры для этой одной функции Portfolio Composer, а не общее предписание для каждой стратегии или каждого портфеля. Как и в любом анализе Монте-Карло, здесь тоже действует: большее количество симуляций может сделать оценку надёжнее, но требует больше времени вычислений.

Симуляция контроля эквити как ещё одно применение
Помимо классического анализа Монте-Карло для бэктеста, на практике есть ещё одно родственное применение: симуляция контроля эквити. Она включает и выключает стратегию на основе её кривой эквити, чтобы сравнивать между собой различные модели контроля эквити и снижать риск.
В бесплатной версии QuantAnalyzer для этой симуляции оценивается только доля в 30 процентов сделок. Метод может снизить риск, но возможную просадку он не устраняет.
Чего симуляция Монте-Карло сделать не может
Симуляция Монте-Карло работает исключительно с вариациями уже имеющихся исторических данных бэктеста стратегии. Поскольку она лишь повторяет существующий бэктест с небольшими случайными изменениями, она не вносит в игру новые, ранее не виденные рыночные условия или будущее поведение цены.
Это значит: хороший результат этой оценки показывает тебе, как твоя стратегия повела бы себя при слегка изменённых вариантах прошлого. Он не показывает тебе, что стратегия в будущем в live-торговле будет давать прибыль, и он также не заменяет другие проверки, такие как walk-forward-анализ или out-of-sample-тест. Симуляция Монте-Карло это один из нескольких элементов, с помощью которого ты можешь оценить устойчивость стратегии к небольшим изменениям, и не более того.
Эта статья служит обучению и не является инвестиционным консультированием. Прошлые результаты, в том числе результаты бэктестов, не гарантируют будущих результатов. Торговля финансовыми инструментами связана с рисками, ты можешь потерять деньги.
Эта статья служит обучению и не является инвестиционным консультированием. Прошлые результаты ничего не гарантируют на будущее.
А как это делаешь ты? Расскажи в сообществе. Бесплатно, на твоём языке.
Зарегистрируйся бесплатно