In some cases, i have to do forecasts by hand, which means using the formula of the model. For AR(p) model, it is easy. But for the ARIMA model (p, d, q), d> = 1, i have a bit of difficult. The following example, i calculated with models AR(2). I have series from 1990 to 2010, i need forecast for 2011:
> a<-c(198,150,120,84,150,136,80,128,160,132,144,234,300,312,400,468,420,500,650,612,516)
> series<-ts(a,frequency=1,start=c(1990))
> fit<-Arima(series,c(2,0,0),method="ML")
> fit
Series: series
ARIMA(2,0,0) with non-zero mean
Coefficients:
ar1 ar2 intercept
1.1923 -0.2881 305.3748
s.e. 0.2174 0.2346 111.5251
sigma^2 estimated as 3727: log likelihood=-117.2
AIC=242.4 AICc=244.9 BIC=246.58
I received a calculation formula of model AR(2):
y[t]=305.3748+1.1923*y[t-1]-0.2881*y[t-2]
and i take forecast for 2011:
y[2011] = 305.3748+1.1923*y[2010]-0.2881*y[2009]
= 305.3748+1.1923*516-0.2881*612
= 744
However, when I fit ARIMA model (2,1,0):
> fit2<-Arima(series,c(2,1,0),method="ML")
> fit2
Series: series
ARIMA(2,1,0)
Coefficients:
ar1 ar2
0.2561 -0.3494
s.e. 0.2196 0.2117
sigma^2 estimated as 3489: log likelihood=-110.1
AIC=226.2 AICc=227.7 BIC=229.19
I don't know how to write formula when d = 1?
And a further problem, that why when I made forecast with function forecast()
, the result is different from - when I calculated by the formula?
> forecast(fit,h=1)
Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
2011 468.1754 389.9369 546.4138 348.52 587.8308