Статистика зависимостей в котировках (теория информации, корреляция и другие методы feature selection)

 

Добрый день!

Решил слегка развить тему, затронутую Алексеем (Mathemat) в одной из веток форума.

Попробовал поискать зависимости в котировках одного финансового инструмента статистическими методами. Для начала взял индекс Dow Jones Industrial, дневные данные, ряд преобразовал в ряд процентных приращений.

А статья, собственно, здесь: http://habrahabr.ru/blogs/data_mining/127394/

Хочу продолжить для котировок FX, результаты выложу здесь.

 

Браво, Алексей, не ожидал, что именно Вы тёзку удивите (простите ради Бога, но все же имею представление о среднем уровне матподготовки на нашем форуме).

Рад, что Вы движетесь примерно туда же, куда и я, вплоть до взаимной информации I() и грубой оценки в сотые доли бита. Правда, тест Колмогорова-Смирнова я не пользовал. Да и брал я не днёвки, а часовки (там данных побольше и выводы надежнее). И... дискретизацию приращений я делал чуть иначе.

Для хабра, пожалуй, действительно крутовато. Это ж просто айтишники, пусть и очень умные :) (смотрите на комментарий Cher, набравший рейтинг +3, т.е. максимальный).

У меня к Вам пара вопросов - напишу в личку чуть позднее. А здесь пока понаблюдаю: вдруг еще кто осведомленный подтянется...

 

Алексей, спасибо... Рад, что оценили, я ведь, по сути, загорелся окончательно идеей после прочтения кратких результатов ваших исследований.

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

А ведь для EURUSD H1 я тоже уже сделал анализ. Взял котировка с Альпари за 10 лет (64500 баров). Вот он:

А стрелочками я отметил недельные лаги: они как то выделяются, на мой взгляд.

А вот так выглядит автокорреляционная функция по этому ряду:

В общем, видна строгая 24-часовая цикличность. Это тоже можно обсудить.

Кстати, здесь я тоже округлял приращения, до 10 пунктов (из-за этого энтропия данных получилась около 2,5 Бита). И еще, я не смог пролопатить больше переменных, скажем в случае погружения в историю на год. Excel вешает компьютер намертво, пожирая 4 Гб оперативки. Физически не смог, хотя мысль была, конечно.

 

Кстати, хи-квадрат дает примерно такую же картину: при возрастании лага где-то через каждые 24 бара наблюдается приличный всплеск значения критерия.

P.S. Хотелось бы подчеркнуть, что АКФ здесь считается не по ряду возвратов, а по усредненному потоку информации, доставляемой прошлыми котировками к нулевому бару. Если брать для вычислений конкретный нулевой бар, то поток информации именно к нему будет вычисляться иначе.

 
alexeymosc:

Можно сделать вывод о том, что в естественных финансовых данных (по крайней мере, у индекса DJI) есть статистически значимые зависимости произвольного вида между приращениями котировок. То есть, такой ряд данных нельзя считать случайным. Теоретически, существует пространство возможностей прогнозирования будущих значений такого ряда, например, с помощью нейронных сетей.

то что найдена зависимость объясняется известным фактом, что волатильность является зависимой от предыдущих значений. Это видно даже невооруженным глазом по вашему графику приращений. Есть и теоретические модели описывающие зависимость волатильности - типа ARCH/GARCH.

Поэтому и внутри дня получились циклы в 24 часа - вола на форе имеет стационарную цикличность:

Это просто связано с временем открытия и закрытия разных финансовых центров. Изменяется активность торгов. Если оперировать монеткой в качестве источника данных))) то ее начинают то чаще кидать, то реже за одно и тоже время.

Плюс есть и недельная цикличность волы, но она менее выражена чем для фондовых рынков. Как раз лаг 5 в дневных приращениях ;)

Т.е. это не аргумент, что можно прогнозировать направление изменения котировок (а нас интересует именно это). Сравнивать нужно со случайным рядом, сгенерированным на основе реальной волатильности (например тикового объема). Т.е. зависимость дисперсии в распределении при генерации. А иначе множество статистических тестов определяют именно зависимость волатильности, а не неправления приращений

 
alexeymosc:

В общем, видна строгая 24-часовая цикличность. Это тоже можно обсудить.

А что тут обсуждать? Это давно известный факт, внутридневная цикличность. На это указывали даже люди совершенно несмыслящие в математике, но понимающие в рынке. Более того, цикличность есть даже внутри торговых сессий конкретных торговых площадок. К пониманию того, что нужно делать, это не приближает, само по себе. Хотя, маленький edge из этого можно извлечь.
 
Avals:

А иначе множество статистических тестов определяют именно зависимость волатильности, а не неправления приращений


И это правильно. Я сам сразу до этого дошел, просто все мысли не выкладывал здесь.
 
Mathemat:

Кстати, хи-квадрат дает примерно такую же картину: при возрастании лага где-то через каждые 24 бара наблюдается приличный всплеск значения критерия.

P.S. Хотелось бы подчеркнуть, что АКФ здесь считается не по ряду возвратов, а по усредненному потоку информации, доставляемой прошлыми котировками к нулевому бару. Если брать для вычислений конкретный нулевой бар, то поток информации именно к нему будет вычисляться иначе.


Да, гистограмма посчитана по значениям взаимной информации и просто я ее выложил для подтверждения идеи цикличности.
 
HideYourRichess:
А что тут обсуждать? Это давно известный факт, внутридневная цикличность. На это указывали даже люди совершенно несмыслящие в математике, но понимающие в рынке. Более того, цикличность есть даже внутри торговых сессий конкретных торговых площадок. К пониманию того, что нужно делать, это не приближает, само по себе. Хотя, маленький edge из этого можно извлечь.

Я это понимаю. Надо брать тайм-фрейм дневной или старше.
 
alexeymosc:

Не понял, откуда такая циклическая красота?

Вот результат для для последних 100 дней.

Исходный график:


Вроде есть тренд в начале, или вообще боковик. Проверим по Жарку-Беру.

Смешно звучит, но вероятность, что распределение нормально равна 80%!

Посмотрим на автокорреляцию:



Где цикличность? Не вижу, а тренд вижу. Пока имеется тренд - всякие статистические рассуждения не уместны. Сделаем сглаживание Ходрика-Прескотта. Результат:


Прошу отметить анти теоретическую лямбду. А теперь посмотрим на остаток, который называется здесь Cycle:

Остаток от сглаживания НР ну совсем нормальный!

Трендов нет. Может быть цикличность имеется (3 - 13,14), но это требует более серьезных доказательств.


 

Во-первых, цикличность не на дневном графике, а на часовом! Я там написал, кстати.

А для дневок результат не будет цикличным, Вы правы.

Причина обращения: