Блог им. asskorobogatov

Интересный инструмент для отделения цикла от тренда


Интересный инструмент для отделения цикла от тренда

На примере Газпрома нередко говорят, что вкладываться в наш рынок – дело неблагодарное. Если акции многих американских голубых фишек выросли на десятки и сотни процентов, то Газпром до сих пор остается ниже, чем был пятнадцать лет назад (об этом подробнее уже говорил – https://asskorobogatov.livejournal.com/45306.html).

Однако активы, непривлекательные с инвестиционной точки зрения, могут быть интересны для спекулятивной торговли. Например, тот же Газпром сравнительно недавно торговался и выше 270 и ниже 160. Суть спекулятивной торговли в том, чтобы поймать волну – купить дешево, чтобы продать дорого, и наоборот. Рыночные волны – это стихия, которая кого-то может вознести на более высокий уровень благосостояния, но большинство отправляет на дно.

На дне оказываются, прежде всего, те, кто торгует без системы. В этой заметке я хочу рассказать об одном методе отделения тренда от цикла, который демонстрирует хорошие результаты на искусственных данных, но который, по-видимому, редко кем-либо используется в торговле. Речь идет о Singular spectrum analysis (SSA). По своей идеологии метод близок к методу главных компонент, но, в отличие от него, заточен на работу с временными рядами. Задача в том, чтобы разложить временной ряд на сумму компонентов, каждый из которых представляет собой устойчивый паттерн.

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

Я не буду здесь вдаваться в детали того, как устроен метод. Об этом можно прочитать здесь. Для практически мыслящих людей главное – результат, насколько корректно позволяет метод выделить паттерны.

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

Интересный инструмент для отделения цикла от тренда

На картинке trend и r.Trend – это, соответственно, истинный тренд и тренд, выделенный методом. Такжe с1 и r.Cycle1, и с2 и r.Cycle2 – истинные и вычисленные два циклических паттерна. Что очевидно на картинке – это замечательный результат, состоящий в очень точном вычислении компонентов временного ряда. Это особенно заметно по двум циклическим паттернам, для которых кривые истинных и вычисленных значений настолько близки, что на большей части графика закрывают одна другую. Даже шум воспроизведен достаточно точно.

Если у нас есть такой замечательный метод, можно поиграться с финансовыми данными, в частности с Газпромом. Возмьмем недельные данные по ценам закрытия с 2006 г. до текущей недели и разложим их тем же методом. Результат – на заглавной картинке. В отличие от симуляций, рынок – это живая стихия, и такой систематической повторяемости здесь нет. Но какие-то общие тенденции график все же демонстрирует.

Например, мы видим, что на протяжении почти всего рассматриваемого периода тренд был понижательным. Это объясняет то, почему инвестиции в Газпром десять-пятнадцать лет назад не были особо выгодны. В то же время как раз сейчас мы наблюдаем переломный момент, когда долговременный тренд начинает менять наклон. Вполне возможно, что длинная черная полоса в истории этой компании заканчивается и сегодняшний инвестор в эту бумагу не пожалеет об этом спустя десятилетие.

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

Отмечу и то, что грандиозный обвал во время текущего кризиса полностью ушел в остаток. То же самое, хотя и в меньшей степени, можно наблюдать в отношении кризиса 2008-2009 гг. Это объясняется тем, что мощные проливы во времена кризисов случаются благодаря «черным лебедям» – уникальным событиям, возникающим непредсказуемо и несистематично. Поэтому с точки зрения SSA, да и любой другой системы, это интерпретируется как случайность. На примере Газпрома видно, насколько важен «его величество случай».

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

t.me/asskorobogatov
★14
20 комментариев
много лет назад я был лично знаком с профессором Солнцевым и г-ой Голяндиной (авторы методы) и если коротко (да бы не терять время) это путь в никуда относительно фин рынков.
avatar
AlexVestor, возможно, а как на этот вывод влияет ваше знакомство с авторами метода?
Александр Скоробогатов, в общем то напрямую:-) тк авторы изначально объяснили для каких рядов эта история подходит, а для каких нет. точнее подходит она как раз для всех рядов (тк в методе нет строгой модели) но вот ее прогностические способности только для определенных.
avatar
AlexVestor, ну, это и видно на примере с Газпромом. Если на долю остатка приходится львиная доля всей динамики, какие могут быть прогнозы?
Индикатора SSA под tradingview у Вас случайно не завалялся? Ну или исходника на любом другом языке программирования?
P.S. Да, и картинок в этом посте не видно.
avatar
0xFF0000FF, я это делал в R. Насчет картинок, странно, у меня все видно.
Александр Скоробогатов, SSA, MSSA, нелинейный PCA, разложение (групп) рядов и их циклических замыканий по всевозможным базисам — все это поможет в  защите кандидатской. Лично Вы получили хоть процент преимущества в реальной торговле, используя подобные конструкции?
Роман Николенко, не успел пока. Только что поэкспериментировал с этим.
Александр Скоробогатов, в этом подходе есть 2 принципиальные проблемы — 1. алгоритм группировки собственных чисел с целью получить «содержательные» компоненты. 2. борьба с краевыми эффектами у правой стенки. Решения, которые я видел лично меня не убедили. Да и идеологически такие подходы к рынку некорректны кмк, т.к. вместо оценки распределения открытого интереса по временным горизонтам дают набор компонент, лишенный «предсказательной силы».
Роман Николенко, группировка собственных чисел — просто мат. метод, позволяющий вычленить составляющие ряда с выраженной периодичностью в динамике, что можно, в том числе визуализировать с помощью графика спектральной плотности. Почему это не использовать для прикидки потенциального движения на разных тф? Неточность у края — это проблема любого фильтра, а шире, вообще любого анализа. Но тут уж, если нет молотка, можно гвоздь и камнем забить.
Александр Скоробогатов, я как раз о том, что у рядов котировок с «выраженной периодичностью» проблемы.
Роман Николенко, какие?
что такое Остаток?
Ничего не поняла, что даёт этот метод?.. На истории и так видно, где у газпрома нисходящий тренд и что началая его перелом. 
avatar
Nikki, остаток — это та часть данных, которая не входит ни в тренд, ни в цикл. Насчет тренда, как сказать, зависит от метода. Обычно смотрят на недельные или месячные скользящие средние, а они за этот период уже не раз меняли наклон.
Александр Скоробогатов, а, ну если так то да. 
avatar
Все эти методы работают на истории, с заглядыванием в будущее. А в реальном времени — не очень.
avatar
Все математики этот этап проходят.
Потом некоторые начинают торговать, другие — так и не начинают.

avatar
bocha, объясни по-простому. это что? стохастик?)
Tуземец,   да тьму разложений напридумывали. Фурье, вейвлеты… можно еще тьму придумать. Для статей — раздолье. Для торговли — швах
avatar
интересно, не поделитесь скриптом? как выделить цикл?
avatar

теги блога Александр Скоробогатов

....все тэги



UPDONW
Новый дизайн