Статья с сайта www.miltonfmr.com, из которой можно взять некоторые приемы, пригодные даже для использования в высокочастотной торговле.
Многие трейдеры, создающие и правильно применяющие торговые системы с возвратом к среднему, получают хорошую прибыль. Факты говорят о том, что рынки двигаются в соответствии с паттернами, одним из которых является цикличность. Простыми словами, все, что двигалось вверх, должно пойти вниз и наоборот. Ничто не движется в одном направлении вечно. Применительно к рынкам, у нас есть два возможных исхода - тренд, либо определенный торговый диапазон с возвратом к среднему. В прошлых наших исследованиях было показано, что гэп на открытии определяет тренд на остаток дня в 30% случаев. Это значит что из 20 торговых дней мы имеем 6 трендовых дней без возврата к среднему. С другой стороны у нас есть 70% движения цены, которая имеет тенденцию к возврату к среднему значению несколько раз за день. Важно отметить, что эти 70% относятся к внутридневному движению цен.
Первый шаг к построению системы, это определить, что такое возврат к среднему. Подобные системы отслеживают активы, которые необычно дороги или дешевы и имеют тенденцию к развороту цены. Нам нужна система, которая найдет конкретный актив со значительным отклонением цены от среднего значения. Для тестирования этой идеи сначала взглянем на ценовые графики с различными таймфреймами. Затем проведем быстрый статистический анализ данных.
На рисунке выше представлена описательная статистика индекса Russel 2000. В частности есть значение среднего для цены (mean). Оно найдено как сумма значений всех точек данных, деленной на общее число этих точек. Как видно из этой статистики, большую часть времени цена движется в диапазоне от -0.5% до +0.5% от среднего. Все остальное может быть отнесено к превышению стандартного отклонения цены. Это именно то, что нам нужно. У нас есть ситуация, которая должна возникнуть перед тем, как мы откроем позицию. То есть нас интересуют значения цен, что лежат выше или ниже на 0.5% от среднего значения. Далее, эти отклонения должны произойти достаточно рано внутри торгового дня, чтобы хватило времени для разворота цены. Если это произойдет ближе к концу торговой сессии, то это значительно снизит вероятность получения прибыли. Другой важной деталью является способность нашей системы определять, трендовый ли сейчас рынок, или актив торгуется в диапазоне, иначе ваша система получит значительные убытки рано или поздно. Еще одно эмпирическое правило - стратегии с возвратом к среднему работают лучше на коротких таймфреймах.
Итак, основные установки для нашей системы:
1. Движение цены выше или ниже 0.5% от среднего значения
2. Движение внутри первой половины торгового дня
3. Рынок должен быть не трендовым
В порядке проверки предсказательных свойств вышеуказанных состояний рынка, используем статистический арбитраж между двумя активами - Russel 2000 и VIX. Основная идея состоим в том, что иногда историческая корреляция между активами временно нарушается из-за необычно больших движений цен. Наше предположение состоит в том, что эта корреляция восстановится в будущем. Таким образом, мы вычисляем относительный спред между фьючерсом на индекс Russel 2000 и фьючерсом VIX в течение последних n баров. Период n будет оптимизирован путем проведения бэктестов (см. рисунок в заглавии).
Так как эти два актива обратно коррелированы, то это означает, что сконструированный спред между ними имеет тенденцию к возврату к среднему.
Результаты теста:
В связи с достаточно большим числом сделок можно утверждать, что результаты статистически значимы. У нас нет больших просадок и отношение средней прибыли к среднему убытку равно 1.64. Наибольшие потери произошли между августом и октябрем 2015 года. Любопытно, что это был период значительного роста волатильности - уровня VIX - с большими внутридневными выбросами. Оба актива двигались в более случайной манере относительно друг друга в этот период, и обычные границы схождения/расхождения спреда были нарушены. То же самое происходило в месяц перед выборами президента.
Монте-Карло анализ стратегии:
После 10 000 симуляций и случайного порядка сделок можно увидеть, что в среднем (красная толстая линия) , стратегия получилось прибыльной и без больших просадок. Тем не менее, система нуждается в улучшениях, но представляет собой хороший фундамент для дальнейших исследований и применения дополнительных фильтров.
После тестирования с различным процентом риска, мы получили среднюю просадку для 4% риска всего 19,38% , что хорошо согласуется с фактом, что стратегия генерировала прибыль +270% с 2015 по 2016 год.
Очень любопытно!
а есть какие-либо предположения, как её можно улучшить? в какую сторону копать?
Нужно копать в сторону фильтров, которые могут помочь идентификации трендовости спреда. От простых фильтров на основе скользящих средних до цепей Маркова
Подскажите пожалуйста на какой платформе моделируете
(Монте-Карло анализ стратегии:)?
У меня все тесты самописные, на С++. С помощью Монте-Карло не моделирую, все тесты на реальных данных, тесты высокоточные