Markets: A Rigorous Course

13A.6 Johansen's method: reduced-rank regression

Advanced about 15 min

Motivation

Johansen's maximum-likelihood approach estimates all cointegrating vectors at once, tests the rank, and treats all variables symmetrically. The derivation is a short exercise in partitioned determinants.

13A.6.1Concentrating out the short run#

Take the VECM (13A.9)–(13A.10) with Gaussian errors εt∼N(0,Ω)\varepsilon_t\sim N(0,\Omega). Regress Δyt\Delta y_t and yt−1y_{t-1} separately on the short-run regressors (1,Δyt−1,…,Δyt−p+1)(1, \Delta y_{t-1},\dots,\Delta y_{t-p+1}) and call the residuals R0tR_{0t} and R1tR_{1t}. By the Frisch–Waugh–Lovell theorem the likelihood, maximised over ν\nu and the Γi\Gamma_i, depends only on the concentrated model

R0t=αβ′R1t+ε~t.(13A.16)R_{0t} = \alpha\beta'R_{1t} + \tilde\varepsilon_t. \tag{13A.16}

Define moment matrices Sij=T−1∑tRitRjt′S_{ij} = T^{-1}\sum_t R_{it}R_{jt}' for i,j∈{0,1}i,j\in\{0,1\}.

13A.6.2Maximising over α\alpha and Ω\Omega, then β\beta#

For fixed β\beta, (13A.16) is a multivariate regression of R0R_0 on the rr regressors β′R1\beta'R_1, so

α^(β)=S01β(β′S11β)−1,Ω^(β)=S00−S01β(β′S11β)−1β′S10,\hat\alpha(\beta) = S_{01}\beta(\beta'S_{11}\beta)^{-1}, \qquad \hat\Omega(\beta) = S_{00} - S_{01}\beta(\beta'S_{11}\beta)^{-1}\beta'S_{10},

and the concentrated log-likelihood is −T2ln⁡∣Ω^(β)∣+const-\tfrac T2\ln|\hat\Omega(\beta)| + \text{const}.

Lemmapartitioned determinant

For the symmetric block matrix (S00S01ββ′S10β′S11β)\begin{pmatrix} S_{00} & S_{01}\beta\\ \beta'S_{10} & \beta'S_{11}\beta\end{pmatrix}, computing the determinant by Schur complements in both orders gives

∣S00∣ ∣β′S11β−β′S10S00−1S01β∣=∣β′S11β∣ ∣S00−S01β(β′S11β)−1β′S10∣.|S_{00}|\,\big|\beta'S_{11}\beta - \beta'S_{10}S_{00}^{-1}S_{01}\beta\big| = |\beta'S_{11}\beta|\,\big|S_{00} - S_{01}\beta(\beta'S_{11}\beta)^{-1}\beta'S_{10}\big|.

Hence

∣Ω^(β)∣=∣S00∣  ∣β′(S11−S10S00−1S01)β∣∣β′S11β∣.(13A.17)|\hat\Omega(\beta)| = |S_{00}|\;\frac{\big|\beta'(S_{11} - S_{10}S_{00}^{-1}S_{01})\beta\big|}{|\beta'S_{11}\beta|}. \tag{13A.17}

Proposition 13A.6Johansen 1988, 1991

Let λ^1>⋯>λ^n\hat\lambda_1>\dots>\hat\lambda_n solve the generalised eigenproblem

∣λS11−S10S00−1S01∣=0,(13A.18)\big|\lambda S_{11} - S_{10}S_{00}^{-1}S_{01}\big| = 0, \tag{13A.18}

with eigenvectors viv_i normalised by V′S11V=IV'S_{11}V = I. The maximum-likelihood β^\hat\beta for rank rr is spanned by v1,…,vrv_1,\dots,v_r, and

max⁡ln⁡L(r)=const−T2ln⁡∣S00∣−T2∑i=1rln⁡(1−λ^i).(13A.19)\max\ln L(r) = \text{const} - \frac T2\ln|S_{00}| - \frac T2\sum_{i=1}^r\ln(1-\hat\lambda_i). \tag{13A.19}
Proof

By (13A.17) we must minimise the ratio ∣β′(S11−S10S00−1S01)β∣/∣β′S11β∣|\beta'(S_{11}-S_{10}S_{00}^{-1}S_{01})\beta|/|\beta'S_{11}\beta| over n×rn\times r matrices β\beta. The ratio is unchanged by β↦βM\beta\mapsto\beta M for invertible MM, so normalise β′S11β=Ir\beta'S_{11}\beta = I_r; the problem becomes: minimise ∣Ir−β′S10S00−1S01β∣|I_r - \beta'S_{10}S_{00}^{-1}S_{01}\beta| subject to β′S11β=Ir\beta'S_{11}\beta=I_r. Write β=S11−1/2U\beta = S_{11}^{-1/2}U with U′U=IrU'U = I_r and B=S11−1/2S10S00−1S01S11−1/2B = S_{11}^{-1/2}S_{10}S_{00}^{-1}S_{01}S_{11}^{-1/2} (symmetric, eigenvalues λ^i∈[0,1)\hat\lambda_i\in[0,1), the same as those of (13A.18)). We minimise ∣Ir−U′BU∣|I_r - U'BU|. By the Poincaré separation theorem the eigenvalues μ1≥⋯≥μr\mu_1\ge\dots\ge\mu_r of U′BUU'BU satisfy μi≤λ^i\mu_i\le\hat\lambda_i, so ∣Ir−U′BU∣=∏(1−μi)≥∏i≤r(1−λ^i)|I_r - U'BU| = \prod(1-\mu_i) \ge \prod_{i\le r}(1-\hat\lambda_i), with equality when UU spans the top rr eigenvectors of BB. Mapping back gives β=(v1,…,vr)\beta = (v_1,\dots,v_r), and substituting into −T2ln⁡∣Ω^∣-\tfrac T2\ln|\hat\Omega| gives (13A.19).∎

The λ^i\hat\lambda_i are the squared canonical correlations between R0R_0 and R1R_1: how much of the change in prices is predictable from each direction of the lagged levels.

13A.6.3The two rank tests#

From (13A.19), the likelihood-ratio statistic for H(r)H(r): rank ≤r\le r, against H(n)H(n): unrestricted, is

λtrace(r)=−T∑i=r+1nln⁡(1−λ^i),(13A.20)\lambda_{\text{trace}}(r) = -T\sum_{i=r+1}^n\ln(1-\hat\lambda_i), \tag{13A.20}

and for H(r)H(r) against H(r+1)H(r+1),

λmax⁡(r)=−Tln⁡(1−λ^r+1).(13A.21)\lambda_{\max}(r) = -T\ln(1-\hat\lambda_{r+1}). \tag{13A.21}

Test sequentially: r=0r = 0 first; if rejected, r=1r = 1; stop at the first non-rejection. The limiting distributions are functionals of an (n−r)(n-r)-dimensional Brownian motion and depend on how the constant and trend enter (inside or outside the cointegrating relation; Johansen 1995 distinguishes five cases). For a pair with an unrestricted constant (coint_johansen(det_order=0) in statsmodels), the 5% critical values reported there are 15.49 (λtrace(0)\lambda_{\text{trace}}(0)), 14.26 (λmax⁡(0)\lambda_{\max}(0)) and 3.84 (both tests at r=1r=1).

Worked example

With T=800T = 800 and λ^=(0.030,0.002)\hat\lambda = (0.030, 0.002): λtrace(0)=−800[ln⁡0.970+ln⁡0.998]=24.37+1.60=25.97>15.49\lambda_{\text{trace}}(0) = -800[\ln 0.970 + \ln 0.998] = 24.37 + 1.60 = 25.97 > 15.49 and λmax⁡(0)=24.37>14.26\lambda_{\max}(0) = 24.37 > 14.26, so reject r=0r=0; λtrace(1)=λmax⁡(1)=1.60<3.84\lambda_{\text{trace}}(1) = \lambda_{\max}(1) = 1.60 < 3.84, so do not reject r≤1r\le1. Conclusion: one cointegrating vector, β^=v1\hat\beta = v_1. Problem 13A.6 has a case where the r=1r = 1 test also rejects, and asks what that means for a pair of prices.

Practitioner notes

  • Johansen tests are oversized in small samples with many lags. Use as few lags as the residual diagnostics allow.
  • The estimated β^\hat\beta from Johansen can have heavy tails in small samples. For a two-asset spread, EG with a fixed, economically sensible hedge ratio is often more stable. Use Johansen for baskets (n≥3n\ge3), where EG cannot count the vectors.

Create a free account

Reading is open to everyone. An account keeps your progress, answers, notes and code drafts, and gives you the study plan, the journals and the simulator. Running code needs an account approved for it.