# arch.unitroot.cointegration.engle_granger¶

arch.unitroot.cointegration.engle_granger(y, x, trend='c', *, lags=None, max_lags=None, method='bic')[source]

Test for cointegration within a set of time series.

Parameters
ynumpy:array_like

The left-hand-side variable in the cointegrating regression.

xnumpy:array_like

The right-hand-side variables in the cointegrating regression.

trend{“n”,”c”,”ct”,”ctt”}, default “c”

Trend to include in the cointegrating regression. Trends are:

• “n”: No deterministic terms

• “c”: Constant

• “ct”: Constant and linear trend

• “ctt”: Constant, linear and quadratic trends

lagsint, default None

The number of lagged differences to include in the Augmented Dickey-Fuller test used on the residuals of the

max_lagsint, default None

The maximum number of lags to consider when using automatic lag-length in the Augmented Dickey-Fuller regression.

method: {“aic”, “bic”, “tstat”}, default “bic”

The method used to select the number of lags included in the Augmented Dickey-Fuller regression.

Returns
EngleGrangerTestResults

Results of the Engle-Granger test.

arch.unitroot.ADF

Augmented Dickey-Fuller testing.

arch.unitroot.PhillipsPerron

Phillips & Perron’s unit root test.

arch.unitroot.cointegration.phillips_ouliaris

Phillips-Ouliaris tests of cointegration.

Notes

The model estimated is

$Y_t = X_t \beta + D_t \gamma + \epsilon_t$

where $$Z_t = [Y_t,X_t]$$ is being tested for cointegration. $$D_t$$ is a set of deterministic terms that may include a constant, a time trend or a quadratic time trend.

The null hypothesis is that the series are not cointegrated.

The test is implemented as an ADF of the estimated residuals from the cross-sectional regression using a set of critical values that is determined by the number of assumed stochastic trends when the null hypothesis is true.

Return type

EngleGrangerTestResults