Модель ARMA-GARCH и ошибка прогноза

Я хочу спрогнозировать временной ряд цен индекса с ARMA(2,2)-GARCH(1,1) Модель в R. Насколько я понимаю, остатки в этой модели в теории являются случайной величиной с нулевым средним и условной дисперсией sigma^2(t+h) при этом среднее уравнение такое же, как в модели ARMA(2,2). Я пытался прогнозировать с помощью методов ugarchspec, ugarchfit а также ugarchforecast из пакета rugarch, Вот мой код:

GARCHspec<-ugarchspec(variance.model = list(model = "sGARCH", garchOrder = c(1, 1)),mean.model = list(armaOrder = c(2,2),include.mean = TRUE),distribution.model = "sstd")
GARCHfit<-ugarchfit(GARCHspec,closingkursu)  
GARCHforecast<-ugarchforecast(GARCHfit,n.ahead=50)

с закрытием курса, являющимся моим временным рядом, и я хочу сделать прогноз на 50 дней вперед с фиксированными параметрами. Теперь вывод следующий:

*------------------------------------*
*       GARCH Model Forecast         *
*------------------------------------*
Model: sGARCH
Horizon: 50
Roll Steps: 0
Out of Sample: 0

0-roll forecast [T0=1976-11-23 01:00:00]:
     Series  Sigma
T+1   10.39 0.7406
T+2   10.51 0.8011
T+3   10.62 0.8561
T+4   10.72 0.9066
T+5   10.82 0.9534
T+6   10.92 0.9969
T+7   11.01 1.0377
T+8   11.10 1.0761
T+9   11.18 1.1122
T+10  11.27 1.1465
T+11  11.35 1.1790
T+12  11.43 1.2099
T+13  11.52 1.2393
T+14  11.60 1.2674
T+15  11.67 1.2943
T+16  11.75 1.3200
T+17  11.83 1.3447
T+18  11.90 1.3683
T+19  11.98 1.3910
T+20  12.05 1.4129
T+21  12.12 1.4339
T+22  12.19 1.4541
T+23  12.26 1.4736
T+24  12.33 1.4924
T+25  12.40 1.5105
T+26  12.46 1.5280
T+27  12.53 1.5449
T+28  12.59 1.5613
T+29  12.66 1.5771
T+30  12.72 1.5924
T+31  12.78 1.6072
T+32  12.84 1.6215
T+33  12.90 1.6354
T+34  12.96 1.6488
T+35  13.02 1.6618
T+36  13.08 1.6745
T+37  13.13 1.6867
T+38  13.19 1.6986
T+39  13.24 1.7101
T+40  13.30 1.7213
T+41  13.35 1.7321
T+42  13.40 1.7426
T+43  13.45 1.7529
T+44  13.50 1.7628
T+45  13.55 1.7724
T+46  13.60 1.7818
T+47  13.65 1.7909
T+48  13.70 1.7998
T+49  13.74 1.8084
T+50  13.79 1.8168

Похоже, что метод принимает среднее значение невязок (равное 0), потому что оно не меняется, когда я прогнозирую его несколько раз, а также прогноз выглядит сглаженным, чтобы содержать случайную часть (всегда повышающуюся). Теперь мой вопрос, могу ли я установить остатки случайной величины, скажем, N-distributed(0,sigma^2(t)) вместо установки остатков = 0. Возможно ли сделать это в этом методе или мне нужно делать кодирование "вручную" (что было бы довольно сложно, потому что я новичок в R с ограниченным опытом).

0 ответов

Другие вопросы по тегам