RDP 2011-01: Estimating Inflation Expectations with a Limited Number of Inflation-indexed Bonds Appendix C: Central Difference Kalman Filter

The central difference Kalman filter is a type of sigma-point filter. Sigma-point filters deal with non-linearities in the following manner:

  • First, a set of points around the forecast of the state is generated. The distribution of these points depends on the variance of the forecast of the state.
  • The measurement equations (functions H1(xt) and H2(xt)) are used to calculate a set of forecast observation points. This set of points is used to estimate a mean and variance of the data forecasts.
  • The mean and variance of the data forecasts are then used to update the estimates of the state and its variance.

The algorithm we use is that of an additive noise central difference Kalman filter, the details of which are given below. For more detail on sigma-point Kalman filters see van der Merwe (2004).

Step 1: Initialise the state vector and its covariance matrix to their unconditional expected values,

Step 2: Loop over k = 1 : n where n is the length of our data set.

Step 2.k.1: Time-update equations:

where dk is the time in years between data point k and data point k − 1.

Step 2.k.2: Create the sigma points,

where Equation is the ith column of the matrix square root of Equation, L is the number of latent factors and h is the central difference step size, which is set to Equation.

Step 2.k.3: Propagate the sigma points through the pricing functions Equation and Equation. Let mk be the number of observed inflation-indexed bond prices in period k. Let nk be the number of observed inflation forecasts in period k. For each observed price j = 1,...,mk we propagate each sigma point Equation through the pricing function for bond j in period k, Equation. For each observed forecast j = mk + 1,…,mk + nk we propagate each sigma point Equation through the pricing function for forecast j in period k, Equation. Denote the output by φk, which is a matrix of dimension nk + mk by 2L + 1 with elements

Denote the ith column of φk by Equation.

Step 2.k.4: Observation update equations. For weightings of

the estimate of the price vector is given by a weighted average of the Equation

and the estimated covariance matrix of Equation is given by

where Rk is the covariance matrix of the noise present in the observed prices. Here Equation[2] denotes the vector outer product.

Next the estimate of the covariance between the state estimate and the price estimate is given by

Step 2.k.5: Calculate the Kalman gain matrix Gk

Step 2.k.6: Update the state estimates,

where yk is the vector of observed prices.