0

在 python 中使用 statsmodels.tsa.stattools.coint 来测试协整,您输入向量 Y 和向量 X 以使用增广 engle-granger 测试来测试协整。它返回检验显着性的 p 值。

协整变量是两个变量 X 和 Y,使得 X-aY = c + e,其中 a 是常数,c 是常数,e 是平稳过程。所以 X-aY 将是一个平稳的过程。

第一个问题是,当将 Y 和 X 输入到 statsmodels.tsa.stattools.coint 函数时,我是输入原始/未转换的 Y 和 X 向量,还是输入 aY 和 X 向量?

我从阅读文档中假设它是原始/未转换的值。在那种情况下,我如何获得常数 a 和 c 使得 X-aY = c + e?即使在协整测试之后(或之前),我也需要知道它们之间的关系,这使得它们成为协整的。

4

1 回答 1

0

我有点偏见,但我将向您展示如何使用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

于 2021-02-15T14:34:18.237 回答