в Стратегии

Когда тренд ваш враг: автокорреляции S&P500 в исторической перспективе

Автор: Александр Кургузкин (mehanizator).

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

Берем индекс S&P 500 с 1950 года и смотрим разные периоды.

Период 1 день:

До 2000 года тренды рулили, после можно пожалуй сказать, что совсем наоборот.

Период 5 дней (неделя):

До 1970 года тренды рулили, после — наоборот.

Период 21 день (месяц):

Похоже на mean-reverting свойство. И, согласно графику, рынок в ближайшие год может вернуть себе трендовые свойства на месяцах.

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

Автор: Александр Кургузкин (aka mehanizator)

Комментарии:

EdgeStone: Александр, спасибо за статью,
Интересные у Вас получились графики,
это ведь не автокорреляции график,
а некого интегрального показателя,
я до конца пока не понял, что он отражает на самом деле.

И интересны периоды, когда на одном тайм-фрейме у нас тренд, а на другом возврат к среднему,

Например с 70 по 2000 надо было торговать тренд на днях, и возврат на недельках,
Прибыль была бы эпическая.

А на месяцах на мой взгляд, если я правильно понимаю смысл графика, наблюдается просто случайное блуждание, т.е. тренд контртренд непредсказуемо сменяют друг друга.Разве нет?

На днях, кстати тоже всё после 2000 больше похоже на отсутствие какой-бы то ни было автокорреляции.

Моя гипотеза — краткосрочные спекулятивные роботы сделали рынки более эффективными.

EdgeStone: И, конечно, не тренд ваш друг, а правильный переключатель с тремя положениями 1. Тренд 2.Возврат к среднему 3. Случайное блуждание,
который для пары актив-таймфрейм выдаёт, сигнал вставать по импульсу, против импульса, или ничего не делать и держаться от этого актива подальше ))

mehanizator: На месяцах на глазок больше mean-reverting, чем случайного блуждания.

Я думаю роботы ни при чем, трендовые свойства пропали когда сократились комиссии брокеров, и трейдеры получили возможность торговать более краткосрочные стратегии.

Vasily: Александр, спасибо! Интересно, есть ли опубликованные статьи/книги на эту тему (закономерности изменения «режимов» рынка)?
P.S. Если не секрет, какой инструмент использован для построения графиков?

mehanizator: это у меня небольшой самописный фреймворк на java для своих исследований.

Vasily: И всё-таки слабо верится, что это ещё не изучено вдоль и поперёк и не описано в современных книгах по трейдингу )

EdgeStone: Интересно какие будут значения автокорреляции для всех трёх графиков.
Надо будет посчитать скользящим окном , и посмотреть как менялась средняя автокорреляции и сопоставить с этими графиками

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

EdgeStone: Александр, хочу повторить Ваш тест,
как открывать позу понятно, а закрытие какое?
Открыли и держим, пока следующие периоды идут в ту же сторону, ну пока свечки идут такого цвета, что и та, по которой мы открылись, а когда появится свеча другого цвета, мы переворачиваемся?

mehanizator: Ну можно и так.

EdgeStone: А Вы как считали, если не секрет?

mehanizator: как сумму нормированных логарифмов с соответствующим коэффициентом.

EdgeStone: Честно говоря, не очень понял, как это в практической торговле реализовать?

Ну вот например, хочу я проверить и запустить на форварде стратегию торгующую отрицательную автокорреляцию на недельках SnP.

У меня будет алгоритм:
Если неделя роста, продать 1 фьючерс SnP в пятницу на закрытии по Market-on-close.
Если неделя отрицательная, купить фьючерс аналогично на закрытии в пятницу.
Удерживаем открытую позицию, пока следующая недельная свечка того же цвета, что и та, на close которой мы открыли позицию.
Если текущая свечка на конец пятницы меняет цвет, предыдущую позу закрываем, противоположную открываем, переворот т.е.

Так корректно будет, в соответствии с вашей моделью?

EdgeStone: Или вместо фьючерсов, можно например использовать недельные опционы, тогда с закрытием можно не заморачиваться, а просто каждую неделю, отрывать противоположную движению позу в центральном на вечер пятницы страйке.

Только вот я до конца не понимаю, такой алгоритм отражает идею Вашего теста в статье?

mehanizator: отражает, только не 1 лот надо, а k/vol лотов, где vol — волатильность, например, за месяц. ну или можно vix брать, если совсем уж лень реализованную волатильность считать. Коэффициент k подбирается исходя из нужной вам волатильности счета.

EdgeStone: Понял, спасибо))
Поставлю и посмотрю, что будет.

Ох, боюсь, что скоро на всех тайм-фреймах придём к случайному блужданию,сторонники эффективного рынка победят, и извлечь прибыль из рынка будет нельзя ))

Vasily: Если я нормирую позицию на волатильность, каким объёмом входить изначально? Я правильно понимаю, что это M*vol(t0)/vol(t), где t — текущий момент, t0 — момент наименьшей волатильности за исследуемый период, M — капитал?

mehanizator: Можно и так.