Robust Johansen Cointegration Test
Also known as: outlier-robust Johansen test, robust trace test, robust maximum eigenvalue test, robust cointegration rank test
The Robust Johansen Cointegration test extends the classical Johansen (1988, 1991) likelihood-ratio framework for determining the cointegrating rank of a multivariate I(1) system to settings where standard Gaussian assumptions fail — in particular when the data exhibit outliers, fat-tailed innovations, or conditional heteroskedasticity. Robust modifications adjust residuals, re-weight observations, or bootstrap critical values so that rank inference remains valid under these violations.
Read the full method
Sign in with a free account to read this section.
Method map
The neighbourhood of related methods — select a node to explore.
When to use it
Use the Robust Johansen test when you have two or more non-stationary time series and suspect a long-run equilibrium relationship, but standard residual diagnostics reveal outliers, excess kurtosis, or ARCH effects in the VECM residuals — conditions that inflate the size of the classical Johansen test. It is especially valuable for financial and macroeconomic data spanning crisis periods where sharp jumps are common. Do not use it as a substitute for pre-testing stationarity: all series must still be I(1) (verified by ADF, PP, or KPSS). Avoid it when the system includes I(2) variables or when the sample is very short (fewer than about 50 observations per variable), where robust re-weighting reduces effective sample size and power.
Strengths & limitations
- Controls empirical test size under non-Gaussian, heavy-tailed, or heteroskedastic errors that inflate the classical Johansen test.
- Retains the multivariate framework of Johansen, allowing simultaneous estimation of multiple cointegrating vectors and adjustment speeds.
- Wild-bootstrap and robust variants are asymptotically justified under a wide class of error distributions, including conditional heteroskedasticity.
- More reliable long-run inference during crisis periods or structural episodes with outliers, without requiring a priori knowledge of the break dates.
- Compatible with standard VECM machinery for impulse-response analysis and forecasting after rank determination.
- Down-weighting observations reduces effective sample size and can decrease power to detect cointegration when the data are genuinely Gaussian.
- Bootstrap-based critical values require repeated estimation and are computationally intensive, especially for large systems or long samples.
- The choice of robustification method (M-estimator, wild bootstrap, trimming) is not standardised, making results potentially sensitive to implementation.
- Does not resolve cointegration rank ambiguity when the series are I(2) or when deterministic trend specification is uncertain.
- Software support is less widespread than for classical Johansen; specialised packages or custom code are typically required.
Frequently asked
How does the robust Johansen test differ from the standard Johansen test?
The standard Johansen test derives critical values under Gaussian errors. When errors are heavy-tailed or heteroskedastic, the empirical size can exceed the nominal level substantially. Robust variants either down-weight influential residuals before the reduced-rank regression or replace asymptotic critical values with bootstrap counterparts that remain valid under non-Gaussian error structures.
Do I still need to pre-test for unit roots before using this test?
Yes. The robust Johansen test, like its classical counterpart, is designed for I(1) systems. Applying it to stationary or I(2) variables produces meaningless rank estimates. Pre-test each series with ADF, PP, or KPSS, using robust variants of those tests if the series also contain outliers.
Which software implements the robust Johansen test?
The wild-bootstrap version is available in R packages such as tsDyn and in custom scripts accompanying Cavaliere et al. (2010). M-estimation-based approaches appear in specialised robust time series packages. EViews and Stata do not yet offer this variant natively, so users typically call R or Python routines.
What if I find a different cointegrating rank than with the classical test?
A higher rank from the classical test typically indicates that outliers or heteroskedasticity inflated the test statistic, creating false rejections of lower-rank hypotheses. The robust test rank is generally more credible when residual diagnostics reveal non-Gaussian errors. Report both results and document the diagnostic evidence.
Can I use this method with structural breaks in the data?
Robust re-weighting partially absorbs the effect of isolated outliers associated with breaks, but it is not a substitute for explicit structural-break cointegration tests (e.g., Gregory-Hansen or Hatemi-J) when there is a known or suspected regime shift. Use structural-break Johansen cointegration methods if breaks are the primary concern.
Sources
- Johansen, S. (1991). Estimation and Hypothesis Testing of Cointegration Vectors in Gaussian Vector Autoregressive Models. Econometrica, 59(6), 1551–1580. DOI: 10.2307/2938278 ↗
- Cavaliere, G., Rahbek, A., & Taylor, A. M. R. (2010). Cointegration Rank Testing under Conditional Heteroskedasticity. Econometric Theory, 26(6), 1719–1760. DOI: 10.1017/s0266466609990776 ↗
How to cite this page
ScholarGate. (2026, June 3). Robust Johansen Cointegration Test. ScholarGate. https://scholargate.app/en/econometrics/robust-johansen-cointegration
Which method?
Set this method beside its closest kin and read them side by side — the library lays the books on the table; the choice is yours.
- Engle-Granger Cointegration TestEconometrics↔ compare
- Panel Johansen CointegrationEconometrics↔ compare
- Robust Engle-Granger CointegrationEconometrics↔ compare
- Structural break Johansen cointegrationEconometrics↔ compare
- Vector Error Correction ModelEconometrics↔ compare