EconStatsCraft › Cointegration

Cointegration

Engle–Granger, Johansen trace and maximum-eigenvalue tests, plus an error-correction model with the speed of adjustment.

What it needs

The intuition

Two drunks staggering randomly will end up arbitrarily far apart. Two drunks tied by a rope also stagger, but never further than the rope - the DIFFERENCE between them is well-behaved even though neither of them is. Cointegration is that rope, and finding it is what makes a regression in levels legitimate rather than spurious.

When to use it

When your unit-root tests said two or more series are I(1) and economic theory says they should be tied together - consumption and income, spot and futures prices, prices in two markets.

Where the estimator comes from

If y_t and x_t are both I(1) but z_t=y_t-\beta x_t is I(0), they are cointegrated. Engle–Granger estimates \beta by OLS in levels (superconsistent even though inference on it is invalid) and then tests whether \hat{z}_t has a unit root - using special critical values, because the residual is estimated rather than observed. Johansen instead works from the VAR, testing the rank of \Pi=\alpha\beta' by maximum likelihood, which handles several relationships and does not privilege a left-hand-side variable.

The model

y_t-\beta x_t=u_t\ \text{with } u_t\sim I(0)\qquad \Delta y_t=\gamma\,(y_{t-1}-\beta x_{t-1})+\lambda\,\Delta x_t+\varepsilon_t

What it assumes

Statistical properties

How to read the output

A worked reading

Both series are I(1), so the test is well posed - and then it does not reject. Engle-Granger gives τ = -2.8674 with p = 0.1452, against a 5% critical value of -3.367. Johansen agrees from the other direction: the trace statistic for r ≤ 0 is 7.7374 against a 5% critical value of 15.494, so the rank is 0. The error-correction term is -0.0158 with p = 0.2643 - the right sign, and not distinguishable from zero. All three point the same way, which is the reassuring case even though the answer is negative: these two series are not cointegrated, and a regression of one level on the other would be spurious. The right model is in first differences. It is worth seeing a clean non-rejection, because the temptation with cointegration is to read a negative ECM coefficient as confirmation regardless of its standard error, and here that would have produced a long-run money-output relationship out of nothing.

Symptom → diagnosis → what to do

If you see thisIt meansDo this
Series are not all I(1)Test invalidCheck integration orders; use ARDL bounds for a mix
Engle–Granger and Johansen disagreeNormalisation or lag sensitivityReport both; prefer Johansen
Cointegration found between unrelated seriesChance, or a common trendDemand an economic story before believing it
ECM coefficient positiveNot error-correctingRe-check the sign convention
|γ| > 1 in the ECMOvershootingPossible but unusual - inspect the residual plot

Common mistakes

Where to read this properly

See also

Once the rank is established, estimate the system properly with VECM.

Related Time series - several series

Yield curve (Nelson–Siegel / Svensson) · Dynamic factor model · Dynamic regression (ARIMAX) · Structural VAR · VAR · Granger causality · VECM · ARDL & bounds test

All analyses

Charts

Line chart · Area chart · Bar chart · Stacked bar · Scatter plot · Bubble chart · Histogram · Box plot · Pie chart · Heat map · Rebased to 100 · Lorenz curve and Gini

Maps

World map · Bivariate map · Flow map · India - state map · India - district map

Explore

Descriptive statistics · Summary by group · Two-way table · Classical statistical tests

Regression

Multiple regression (OLS) · Logit / Probit · Tobit (censored) · Truncated regression · Multinomial logit · Ordered logit / probit · Quantile regression · Poisson / Negative binomial

Time series - one series

Time-varying coefficients (Kalman) · Unit root tests · Correlogram (ACF / PACF) · ARIMA / SARIMA · Rolling-origin cross-validation · Theta method · Unobserved components · STL forecasting · Forecast combination · Markov regime switching · Change frequency (resample) · ARCH / GARCH volatility · Decompose & filter · Spectral analysis · Exponential smoothing · Forecast accuracy

Time series - several series

Yield curve (Nelson–Siegel / Svensson) · Dynamic factor model · Dynamic regression (ARIMAX) · Structural VAR · VAR · Granger causality · Cointegration · VECM · ARDL & bounds test

Panel data

Panel regression · Panel cointegration tests · Heterogeneous panel: Mean Group & PMG · Gravity model of trade · Dynamic panel GMM · Panel diagnostics · Panel unit-root tests

Multivariate statistics

Principal components (PCA) · Factor analysis · Cluster analysis

Marketing research

Conjoint analysis · MaxDiff (best–worst scaling) · TURF - reach of a product line · Price sensitivity (Van Westendorp) · Market basket analysis · Perceptual map · Scale reliability (Cronbach’s alpha) · Key driver analysis

Causal

Spatial autocorrelation · Spatial regression · Heckman selection · Instrumental variables (2SLS) · Difference-in-differences · Staggered difference-in-differences · Regression discontinuity · Matching & weighting · Oaxaca–Blinder decomposition

Finance & risk

Black–Scholes option pricing · Bond price, duration & convexity · Merton distance to default · EMI / home loan planner · CAPM / beta estimation · Multi-factor model · Portfolio optimization · Value at Risk & Expected Shortfall · Performance & drawdown · Time value of money & NPV/IRR · Equity valuation (DDM, FCF, residual income) · Cost of capital (WACC) · Binomial option pricing · Option strategies (payoff & profit) · Forwards, futures & swaps · Credit risk & Basel capital · Extreme value theory (tail risk)

Actuarial

Life table · Life annuity · Life insurance pricing · Chain ladder reserving · Buhlmann credibility · Survival analysis · Mortality graduation · Aggregate loss model · Ruin probability · Multi-state Markov model · Loss severity fitting

Tests & breaks

Monte Carlo experiment · F-test, Wald & Chow · Structural breaks & stability

Machine learning

Regression vs machine learning · Ridge / Lasso / Elastic Net · Random forest · Gradient boosting

Open the workspace →

Starting engine…

EconStatsCraft rigorous, plain-spoken econometrics

Econometrics that explains itself.

Regression, panel data, time series and the whole battery of tests. Every result is followed by a verdict you can defend.

Load a dataset to see it here.