Forecasts of ARIMA models (exact implementation)

The Kalman filter provides in a readily way the forecasts of ARIMA models.

More especially, we represent in JD+ an ARIMA model by the following state vector ($s=\max \left( p-1,q \right)$):

\[\alpha_t= \begin{pmatrix} y_t \\ y_{t+1|t} \\ \vdots \\ y_{t+s|t} \end{pmatrix}\]

where $y_{t+i|t}$ is the orthogonal projection of $y_{t+i}$ on the subspace generated by ${y\left(s\right):s \leq t}$.Thus, it is the forecast function with respect to the semi-infinite sample.

At the end of the filtering process, the state vector contains the first $s$ forecasts. The next forecasts ($k \gt s$) are computed recursively using the relationship:

\[\Delta(B) \Phi (B) \hat y_{n+k} = 0\]
Implementation

The exact ARIMA forecasts are implemented in the class demetra.arima.internal.ExactArimaForecasts.

The class uses the fast Chandrasekhar (CKMS) filter for better performances (which implies that the series should not contain missing values)