R: Используйте модель VAR для прогнозирования реакции на изменение значений определенных переменных - PullRequest
1 голос
/ 19 ноября 2009

Я поместил модель VECM в R и преобразовал ее в представление VAR. Я хотел бы использовать эту модель для прогнозирования будущего значения переменной ответа на основе различных сценариев для объясняющих переменных.

Вот код для модели:

library(urca)
library(vars)

input <-read.csv("data.csv")
ts <- ts(input[16:52,],c(2000,1),frequency=4)
dat1 <- cbind(ts[,"dx"], ts[,"u"], ts[,"cci"],ts[,"bci"],ts[,"cpi"],ts[,"gdp"])

args('ca.jo')
vecm <- ca.jo(dat1, type = 'trace', K = 2, season = NULL,spec="longrun",dumvar=NULL)
vecm.var <- vec2var(vecm,r=2)    

Теперь я хотел бы предсказать «dx» в будущее, изменяя другие. Я не уверен, что в следующем периоде будет работать что-то вроде «предсказать dx, если u = 30, cpi = 15, bci = 50, gdp = ...». Так что я имею в виду что-то вроде следующего: увеличить «u» на 15% в следующем периоде (что, очевидно, также повлияет на все остальные переменные, включая «dx») и предсказать влияние в будущем.

Кроме того, я не уверен, необходим ли шаг "vec2var", поэтому, пожалуйста, игнорируйте его, если считаете, что он избыточен.

Спасибо
Karl

Ответы [ 2 ]

2 голосов
/ 23 ноября 2009

Этот предмет очень хорошо освещен в главах 4 и 8 книги Бернхарда Пфаффа " Анализ интегрированных и коинтегрированных временных рядов с R ", для которых в и urca пакеты были написаны.

Шаг vec2var необходим, если вы хотите использовать доступную функцию прогнозирования.

Более полный ответ был предоставлен в списке R-Sig-Finance . См. Также эту связанную тему .

1 голос
/ 22 ноября 2009

Вот и все - в качестве прогноза в качестве ответа было указано: vars :: предикат, метод Predict для объектов класса varest и vec2var. Увеличение u выглядит как анализ импульсной характеристики, так что ищите его!

...