statsmodels.tsa.vector_ar.vecm.VECM¶
-
class statsmodels.tsa.vector_ar.vecm.VECM(endog, exog=
None, exog_coint=None, dates=None, freq=None, missing='none', k_ar_diff=1, coint_rank=1, deterministic='n', seasons=0, first_season=0)[source]¶ 表示向量误差修正模型(VECM)的类。
一个VECM(\(k_{ar}-1\))具有以下形式
\[\Delta y_t = \Pi y_{t-1} + \Gamma_1 \Delta y_{t-1} + \ldots + \Gamma_{k_{ar}-1} \Delta y_{t-k_{ar}+1} + u_t\]哪里
\[\Pi = \alpha \beta'\]如[1]第7章所述。
- Parameters:¶
- endogarray_like (
nobs_totxneqs) 二维内生响应变量。
- exog
ndarray(nobs_totxneqs)orNone 协整关系外的确定性项。
- exog_coint
ndarray(nobs_totxneqs)orNone 协整关系内的确定性项。
- datesarray_like
ofdatetime,optional 参见
statsmodels.tsa.base.tsa_model.TimeSeriesModel了解更多信息。- freq
str,optional 参见
statsmodels.tsa.base.tsa_model.TimeSeriesModel了解更多信息。- missing
str,optional 参见
statsmodels.base.model.Model了解更多信息。- k_ar_diff
int 模型中的滞后差分数量。等于上述公式中的 \(k_{ar} - 1\)。
- coint_rank
int 协整秩,等于矩阵 \(\Pi\) 的秩以及 \(\alpha\) 和 \(\beta\) 的列数。
- deterministic
str{"n","co","ci","lo","li"} "n"- 无确定性项"co"- 协整关系外的常数"ci"- 协整关系中的常数项"lo"- 协整关系外的线性趋势"li"- 协整关系内的线性趋势
这些组合是可能的(例如,
"cili"或"colo"用于带截距的线性趋势)。当使用常数项时,您必须选择是将其限制在协整关系中(即"ci")还是保持不受限制(即"co")。不要同时使用"ci"和"co"。当使用线性项时,"li"和"lo"也是如此。有关更多信息,请参阅注释部分。- seasons
int, default: 0 季节性周期中的期数。0 表示没有季节性。
- first_season
int, default: 0 第一次观测的季节。
- endogarray_like (
- Attributes:¶
endog_names内生变量的名称。
exog_names外生变量的名称。
注释
一个带有确定性项的VECM(\(k_{ar} - 1\))的形式为
\[\begin{split}\Delta y_t = \alpha \begin{pmatrix}\beta' & \eta'\end{pmatrix} \begin{pmatrix}y_{t-1}\\D^{co}_{t-1}\end{pmatrix} + \Gamma_1 \Delta y_{t-1} + \dots + \Gamma_{k_{ar}-1} \Delta y_{t-k_{ar}+1} + C D_t + u_t.\end{split}\]在 \(D^{co}_{t-1}\) 中,我们有确定性项,这些项位于协整关系内部(或被限制在协整关系中)。 \(\eta\) 是对应的估计量。要将确定性项传递到协整关系内部,我们可以使用 exog_coint 参数。 对于截距和线性趋势这两种特殊情况,存在一种更简单的声明这些项的方法:我们可以分别将
"ci"和"li"传递给 deterministic 参数。因此,对于协整关系内部的截距,我们可以将"ci"作为 deterministic 传递,或者如果 data 作为 endog 参数传递,则将 np.ones(len(data)) 作为 exog_coint 传递。 这确保了对于所有 \(t\),\(D_{t-1}^{co} = 1\)。我们也可以在协整关系之外使用确定性项。 这些在上述公式中定义为 \(D_t\),并在矩阵 \(C\) 中对应估计量。我们通过将这些项传递给 exog 参数来指定它们。对于截距和/或线性趋势,我们再次可以选择使用 deterministic。对于截距,我们传递
"co",对于线性趋势,我们传递"lo",其中 o 代表 outside。下表显示了[2]中考虑的五种情况。最后一列指示了在这些情况下应传递给deterministic参数的字符串。
案例
截距
线性趋势的斜率
确定性
我
0
0
"n"第二部分
\(- \alpha \beta^T \mu\)
0
"ci"三
\(\neq 0\)
0
"co"第四
\(\neq 0\)
\(- \alpha \beta^T \gamma\)
"coli"V
\(\neq 0\)
\(\neq 0\)
"colo"参考文献
方法
fit([方法])估计VECM的参数。
from_formula(公式, 数据[, 子集, 删除列])从公式和数据框创建模型。
hessian(params)模型的海森矩阵。
information(params)模型的费舍尔信息矩阵。
初始化(可能重新初始化)一个模型实例。
loglike(params)模型的对数似然值。
predict(params[, exog])模型拟合后,predict 返回拟合值。
score(params)模型的得分向量。
属性
内生变量的名称。
外生变量的名称。