如何解决用Python解释VECM模型的问题
我有一个名为 null
的数据集,其中包含 3 个变量列 goldret、equityret 和 btcret。
我发现协整等级为 3,我尝试运行 allret_q2btc
提供的 VCEM 模型,但是,我无法理解结果。
statsmodels.tsa.vector_ar.vecm
下图给出了上述代码的结果。但是,与 R 或 Eviews 不同,我无法理解结果的格式,我无法解释结果。请帮我解决这个问题。
同时我想知道是否有人使用过上述包。如果是,请告诉我其中的 VECMResult 模块有什么用处。附上任何示例,不胜感激。
解决方法
首先,记住 statsmodel 用于 VECM 的这个方程:Δyt=Πyt−1+Γ1Δyt−1+…+Γkar−1Δyt−kar+1+ut
您在 image1 的前 3 个表中看到的是 VECM(kar-1) 模型的 kar−1(在本例中为 1)参数矩阵 Γ1,...,Γkar−1 的估计值。您可以使用 VECM_fit.gamma
获得准确的系数。
其他表格是关于 alpha 和 beta 的估计值。您可以直接使用 VECM_fit.alpha
和 VECM_fit.beta
获得这两个 neqsxcoint_rank(在本例中为 3x3)矩阵。
注意:Π=αβ′(Π=VECM_fit.alpha.dot(VECM_fit.beta.T)
)
您可以在此处阅读有关 VECMResult 属性的更多信息:https://www.statsmodels.org/stable/generated/statsmodels.tsa.vector_ar.vecm.VECMResults.html#statsmodels.tsa.vector_ar.vecm.VECMResults
您还可以通过 VECM_fit.var_rep
获得 VECM(1) 模型的 VAR(2) 表示。
最后,您可以检查一下:
-
VECM_fit.var_rep[0]
=VECM_fit.gamma + VECM_fit.alpha.dot(VECM_fit.beta.T) + np.diag(v=[1,1,1])
- 而
VECM_fit.var_rep[1]
=-VECM_fit.gamma
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。