我有点偏见,但我将向您展示如何使用arch
包(我维护)执行 CI 分析
import numpy as np
from arch.unitroot import engle_granger
rg = np.random.default_rng(20210215)
x = np.cumsum(rg.standard_normal(250))
y = 7 + 0.5*x + rg.standard_normal(250)
res = engle_granger(y,x)
# Print the summary
print(res.summary())
# Print the CI vector
print(res.cointegrating_vector)
版画
Engle-Granger Cointegration Test
=========================================
Test Statistic -15.393
P-value 0.000
ADF Lag length 0
Estimated Root ρ (γ+1) 0.022
-----------------------------------------
Trend: Constant
Critical Values: -3.07 (10%), -3.37 (5%), -3.95 (1%)
Null Hypothesis: No Cointegration
Alternative Hypothesis: Cointegration
Distribution Order: 1
和 CI 向量
y 1.000000
x1 -0.507630
const -6.883263
dtype: float64
所以错误是y + res.cointegrating_vector["const"] + res.cointegrating_vector["x1"] * x