0

Я работаю над прогнозированием. Предпочтительной моделью является ARIMA (0,0,1) (0,1,1) 4, в которой имеются три экзогенные переменные (Forestalling.1, Forestalling.2, Break). Моя зависимая переменная - Pmean, средняя цена дома, а экзогенные переменные - фиктивная переменная, которая указывает на изменения в законодательстве и кризисе собственности (эти переменные состоят из следующих значений 0, 1, -1).Прогнозирование стационарной серии с Arima()

Мой первоначальный подход состоял в том, чтобы различать оригинал и соответствовать модели Arima(); Однако это вызывает у меня проблемы при попытке спрогнозировать ряд, как прогноз делается на стационарной серии - диф (журнал (х $ Pmean), 4)

fit=Arima(diff(log(x$Pmean),4), 
     order=c(1,0,0), 
     seasonal=list(order=c(0,0,1), period =4), 
     xreg=xregvariables) 

       Estimate Std. Error z value Pr(>|z|)  
ar1    0.686212 0.128593 5.3363 9.485e-08 *** 
sma1   -0.583000 0.110908 -5.2566 1.467e-07 *** 
intercept  0.101515 0.010318 9.8386 < 2.2e-16 *** 
Forestalling 1 0.035008 0.011365 3.0804 0.002067 ** 
Forestalling 2 -0.033731 0.013151 -2.5649 0.010320 * 
Break   -0.087386 0.013113 -6.6640 2.664e-11 *** 

AIC=-216.75 

Я попытался уместить альтернативную модель, в которой я включаю сезонные различия, но результаты не являются оптимальными, и мои оценки незначительны. Они даже возвращают разные направления для некоторых параметров (Forestalling2); он отрицательно влияет на исходную модель и положительный (нулевой) эффект во втором.

fit=Arima(log(x$Pmean) 
     order=c(1,0,0), 
     seasonal=list(order=c(0,1,1), period =4), 
     xreg=xregvariables , 
     include.drift = TRUE) 

z test of coefficients: 

        Estimate Std. Error z value Pr(>|z|)  
ar1    0.97042096 0.03430919 28.2846 < 2.2e-16 *** 
sma1   -0.53044592 0.13689248 -3.8749 0.0001067 *** 
drift   0.01407096 0.01016345 1.3845 0.1662158  
Forestalling 1 0.03475176 0.01210626 2.8706 0.0040974 ** 
Forestalling 2 0.00094803 0.01343471 0.0706 0.9437434  
Break   -0.01077423 0.02376049 -0.4535 0.6502236 

AIC=-206.84 

ли кто-нибудь знает, если это возможно ретрансформация серии в моей первой модели, так что я могу предсказать оригинальную серию журнал (х $ Pmean) или х $ Pmean с использованием оценок модели?

Если это невозможно, можно ли интернализировать различие во второй модели Arima() и иметь ту же модель результатов, что и первая модель?

Благодаря

ответ

0

В первой первой модели Arima,

fit=Arima(diff(log(x$Pmean),4), 
    order=c(1,0,0), 
    seasonal=list(order=c(0,0,1), period =4), 
    xreg=xregvariables) 

это выглядит, как вы принимаете первую сезонную разницу вручную. Это должно быть эквивалентно модели Arima,

fit=Arima(log(x$Pmean), 
    order=c(1,0,0), 
    seasonal=list(order=c(0,1,1), period =4), 
    xreg=xregvariables) 

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

library(fpp) 
forecast(fit,h=12,xreg=x_test) 
Смежные вопросы