Skip to main content
Version: v5

cointegration_johansen

Perform the Johansen cointegration test on multiple time series.

The Johansen test detects cointegrating relationships among two or more series simultaneously, reporting the number of cointegrating vectors via the trace and maximum-eigenvalue statistics.

Examples​

from openbb import obb
obb.econometrics.cointegration_johansen(columns=['open', 'close'], data=[{'date': '2023-01-02', 'open': 110.0, 'high': 120.0, 'low': 100.0, 'close': 115.0, 'volume': 10000.0}, {'date': '2023-01-03', 'open': 165.0, 'high': 180.0, 'low': 150.0, 'close': 172.5, 'volume': 15000.0}, {'date': '2023-01-04', 'open': 146.67, 'high': 160.0, 'low': 133.33, 'close': 153.33, 'volume': 13333.33}, {'date': '2023-01-05', 'open': 137.5, 'high': 150.0, 'low': 125.0, 'close': 143.75, 'volume': 12500.0}, {'date': '2023-01-06', 'open': 132.0, 'high': 144.0, 'low': 120.0, 'close': 138.0, 'volume': 12000.0}])

Parameters​

data: Data | DataFrame | Series | dict | list | list[DataFrame] | list[Data] | list[Series] | ndarray
Input dataset.

columns: list[str]
Columns (time series) to test jointly for cointegration.

deterministic_order: int
Default: 0
Deterministic trend: -1 none, 0 constant, 1 constant and trend.

k_ar_diff: int
Default: 1
Number of lagged differences in the model.


Returns​

results: list[CointegrationJohansenData]

Serializable results.

provider: str

Provider name.

warnings: Optional[list[Warning_]]

List of warnings.

chart: Optional[Chart]

Chart object.

extra: dict[str, Any]

Extra info.


Data​

rank: int
Cointegration rank hypothesis (r <= rank).

eigenvalue: float
Eigenvalue associated with the rank.

trace_statistic: float
Trace test statistic.

trace_crit_90: float
Trace critical value at the 90% level.

trace_crit_95: float
Trace critical value at the 95% level.

trace_crit_99: float
Trace critical value at the 99% level.

max_eig_statistic: float
Maximum-eigenvalue test statistic.

max_eig_crit_90: float
Maximum-eigenvalue critical value at the 90% level.

max_eig_crit_95: float
Maximum-eigenvalue critical value at the 95% level.

max_eig_crit_99: float
Maximum-eigenvalue critical value at the 99% level.