State space representation of an ARMA model

Introduction

The ARMA process is defined by

\[\Phi\left(B\right)y_t=\Theta\left(B\right)\epsilon_t\]

where:

\[\Phi\left(B\right)=1+\varphi_1 B + \cdots + \varphi_p B^p\] \[\Theta\left(B\right)=1+\theta_1 B + \cdots + \theta_q B^q\]

are the auto-regressive and the moving average polynomials.

The MA representation of the model is $y_t=\sum_{i=0}^\infty {\psi_i \epsilon_{t-i}}$. Let $\gamma_i$ be the autocovariances of the model. We also define: $r=\max\left(p, q+1\right), \quad s=r-1$.

Using those notations, the state-space model can be written as follows :

State vector:
\[\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. We also have that $y_{t+i|t} = \sum_{j=i}^\infty {\psi_j \epsilon_{t+i-j}}$

Dynamics
\[T_t = \begin{pmatrix}0 &1 & 0 & \cdots & 0 \\0& 0 & 1 & \cdots & 0\\ \vdots & \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & 0 & \cdots & 1\\ -\varphi_r & \cdots & \cdots & \cdots &-\varphi_1 \end{pmatrix}\]

with $\varphi_{j}=0$ for $j>p$

\[S_t = \begin{pmatrix}1 \\ \psi_1 \\ \vdots\\ \psi_s \end{pmatrix}\] \[V_t = S S'\]

Measurement

\[Z_t = \begin{pmatrix} 1 & 0 & \cdots & 0\end{pmatrix}\] \[h_t = 0\]

Initialization

\[\alpha_{-1} = \begin{pmatrix}0 \\ 0 \\ \vdots\\ 0 \end{pmatrix}\] \[P_{*} = \Omega\]

$\Omega$ is the unconditional covariance of the state array; it can be easily derived using the MA representation. We have:

\[\Omega\left(i,0\right) = \gamma_i\] \[\Omega\left(i,j\right) = \Omega\left(i-1,j-1\right)-\psi_i \psi_j\]

Implementation

ARMA models are implemented in the class demetra.arima.ssf.SsfArima