Forecasting multiple related series

Today let's understand how to forecast three related series together, and how to check whether that is better than forecasting each one alone.

Let's say you are an analyst who has to forecast the next 8 quarters of Canadian employment (e), labour productivity (prod) and real wage (rw). You have 84 quarters of each, from 1980 Q1 to 2000 Q4, and all three series trend upward over that period.

The three series are related, so you can fit one model for the whole system and forecast all of them together. But a system model needs more machinery than a forecast of each series on its own. So the question is whether that extra machinery is worth its cost.

The answer has four parts.

That is the whole plan. Everything from here on fills in one of the four boxes, using these three series.

Three related series and what cointegration means

Let's start by looking at the data. The Canada data set in the vars package holds four quarterly series, and we use three of them: e is employment, prod is labour productivity and rw is the real wage. Each series is 100 times the natural log of an OECD series, so a change of 1 is close to a 1% change.

Press Run.

RInteractive R
# Load the three Canadian series, plot them and print their span and range library(vars) data(Canada) x <- Canada[, c("e", "prod", "rw")] plot(x, main = "Canadian employment, productivity and real wage") dim(x) #> [1] 84 3 start(x) #> [1] 1980 1 end(x) #> [1] 2000 4 round(rbind(min = apply(x, 2, min), max = apply(x, 2, max)), 1) #> e prod rw #> min 928.6 401.3 386.1 #> max 961.8 418.0 470.0

  

The plot shows all three series climbing over the 84 quarters. The table gives the lowest and highest value of each: employment ranges from 928.6 to 961.8, productivity from 401.3 to 418.0, and the real wage from 386.1 to 470.0.

A series whose average level keeps moving like this is called non-stationary. It has no fixed level that it keeps returning to. A stationary series, in contrast, stays around one fixed level with a steady spread.

Now here is the idea behind this whole lesson. Three non-stationary series can still be tied together. A weighted sum of their levels is a number times e, plus a number times prod, plus a number times rw. If some weighted sum like that is stationary, the series are called cointegrated. Each series moves up and down without returning to a fixed level, but the weighted sum stays around one fixed level.

That tie is information about where each series goes next, and a forecast of one series on its own never uses it. The Johansen test is built to check for exactly this setup.