Моделирование многомерных временных рядов в R - PullRequest
40 голосов
/ 11 ноября 2009

Я хочу подобрать какую-нибудь модель с различными вариациями временных рядов, используя R.

Вот пример моих данных:

   u     cci     bci     cpi     gdp    dum1 dum2 dum3    dx  
 16.50   14.00   53.00   45.70   80.63  0   0    1     6.39 
 17.45   16.00   64.00   46.30   80.90  0   0    0     6.00 
 18.40   12.00   51.00   47.30   82.40  1   0    0     6.57 
 19.35   7.00    42.00   48.40   83.38  0   1    0     5.84 
 20.30   9.00    34.00   49.50   84.38  0   0    1     6.36 
 20.72   10.00   42.00   50.60   85.17  0   0    0     5.78 
 21.14   6.00    45.00   51.90   85.60  1   0    0     5.16 
 21.56   9.00    38.00   52.60   86.14  0   1    0     5.62 
 21.98   2.00    32.00   53.50   86.23  0   0    1     4.94 
 22.78   8.00    29.00   53.80   86.24  0   0    0     6.25 

Данные ежеквартальные, фиктивные переменные - для сезонности.

То, что я хотел бы сделать, это предсказать dx со ссылкой на некоторые другие, при этом (возможно) учитывая сезонность. Ради аргумента, допустим, я хочу использовать "u", "cci" и "gdp".

Как бы я поступил так?

Ответы [ 3 ]

104 голосов
/ 11 ноября 2009

Если вы еще этого не сделали, посмотрите на представление временных рядов на CRAN , особенно на раздел о многомерных временных рядах.

В финансах одним из традиционных способов сделать это является использование факторной модели, часто с использованием модели типа BARRA или Fama-French. Эрика Зивота "Моделирование финансовых временных рядов с помощью S-PLUS" дает хороший обзор этих тем, но его нельзя сразу перенести в " Анализ финансовых временных рядов" Р. Рюя Цая"(доступно в пакете TSA на CRAN) также содержит хорошее обсуждение факторных моделей и анализа основных компонентов в главе 9.

R также имеет ряд пакетов, которые охватывают модели векторной авторегрессии (VAR) . В частности, я бы порекомендовал взглянуть на пакет VAR Modeling (vars) Бернхарда Пфаффа и соответствующую виньетку .

Я настоятельно рекомендую заглянуть на домашнюю страницу Ruey Tsay , поскольку она охватывает все эти темы и предоставляет необходимый код R. В частности, обратите внимание на курсы «Прикладной многомерный анализ» , «Анализ финансовых временных рядов» и «Анализ многомерных временных рядов» курсов.

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

  1. Клейбер и Зейлейс. « Прикладная эконометрика с R » конкретно не касается этого, но очень хорошо охватывает весь предмет (см. Также пакет AER на CRAN).
  2. Шамуэй и Стоффер. « Анализ временных рядов и его приложения: с примерами R » содержит примеры многомерных моделей ARIMA.
  3. Крайер. " Анализ временных рядов: с приложениями в R " - это классика по этому вопросу, обновленная с включением кода R.
7 голосов
/ 17 июля 2013

В пакете прогноза попробуйте:

arima(df[,1:4], order=(0,0,0), xreg=df[,6:8])

для прогнозирования u, cci и gdp.

Чтобы предсказать dx, попробуйте модель VAR. Вот хороший учебник ( PDF ).

3 голосов
/ 03 декабря 2012

Не знаю, была ли эта функция доступной, когда вы впервые задали этот вопрос, но теперь она легко доступна в базе R с функцией arima; просто укажите ваши внешние регрессоры с аргументом xreg внутри функции. Попробуйте ?arima, и когда вы читаете документацию, обратите особое внимание на аргумент xreg. Это было сделано очень легко, удачи.

...