Поиск закономерностей в рядах данных: Что есть и чего не хватает? Как всем вам (надеюсь) хорошо известно, я уже три месяца работаю над проектом "Пульт управления страной". Перед тем как закладывать в него различные модели (скоро появятся, но пока речь не о них), я решил оснастить будущего Верховного (а также любого другого оператора Пульта) хоть какими-то инструментами работы с данными.
Страна на макроуровне описывается многочисленными параметрами (ВВП, денежная масса, инфляция, безработица, биржевой индекс, производство стали, продолжительность жизни и так далее). Пульт дает возможность посмотреть их все в динамике (как кучу графиков) на одном экране; но достаточно ли этой визуализации, чтобы понять, какой параметр от какого зависит (и зависит ли вообще)? На мой взгляд, нет; нужны дополнительные средства - и часть из них в Пульте уже реализована.
1. Зависимость двух параметров друг от другаСамой очевидной визуализацией является "точечная диаграмма" - по оси X один параметр, по оси Y второй, каждая точка - пара их значений в конкретный момент. Вот как выглядит зависимость "цена нефти от цены золота" для периода 1994-2008:

Полностью зависимые параметры дают уходящую вправо-вверх прямую, полностью независимые - бесформенное облако. Как можно видеть, нефть и золото
зависимы. Но каким образом (кто от кого) и как сильно?
2. Кривая корреляций двух параметровНа вопрос "как сильно" есть несколько математически точных ответов, самый простой из них - это
коэффициент корреляции. А вот чтобы разобраться, какой из параметров является в паре "ведущим", а какой "ведомым" (и есть ли вообще в паре ведущий параметр), Пульт считает целый ряд этих коэффициентов - со смещением во времени первого параметра относительно второго (с сегодняшним значением сравниваются вчерашние, сегодняшние и завтряшние). В результате получается
кривая корреляций:

Здесь отображена связь спроса и предложения на рынке сырой нефти. Виден четкий максимум при нулевом смещении - в этой паре нет ведущего и ведомого параметра, они колеблются синхронно. А вот в других случаях (о них я уже писал раньше) один из параметров опережает другой на несколько периодов. В этом случае можно предположить, что он является
опережающим и по его поведению можно в какой-то степени предсказывать будущее (так, численность 30-летних сегодня - хороший опережающий индикатор для численности 40-летних через 10 лет).
3. Устранение экспоненциальных трендовПосмотрим на две кривые корреляции. Первая:

и вторая:

Они изображают связь двух параметров - американского CPI и американской денежной массы M2. Для первого графика использовались первичные данные - и по ним можно сказать, что цены строго следуют за денежной массой. А вот второй график построен по данным,
дисконтированным на экспоненциальный тренд. Дело в том, что если взять два никак не связанных между собой ряда величин и домножить их на третий, экспоненциально растущий - получатся два ряда, похожих как близнецы (уходящих в небеса). Поэтому нужно иметь возможность убирать экспоненциальный тренд (в случае с CPI рост денежной массы отвечает именно за него, но не за краткосрочные колебания цен).
Чего бы еще добавить?Возможности неплохие (кривые корреляции я в Экселе замаялся бы составлять, а тут двумя кликами рассчитываются), но их всего три! Поэтому вопрос к тем из Вас, уважаемые, кто тоже любит поиграться с числовыми рядами. Какими еще методами анализа Вы пользуетесь? Что бы такого добавить в Пульт, чтобы парой кликов вывести на вспомогательные экраны? Конечно, я могу взять Statistica и Matlab, и зависнуть на пару месяцев над тысячей тамошних функций... но мне кажется, лучше начать с реально востребованных.
P.S. Дисконтирование на денежную массу (tm) я конечно же сделаю, равно как и дисконтирование на CPI и цену золота. Но на этом моя фантазия исчерпана, честно-честно!