关于算法:R语言向量误差修正模型-VECMs分析长期利率和通胀率影响关系

4次阅读

共计 2077 个字符,预计需要花费 6 分钟才能阅读完成。

向量自回归模型预计的先决条件之一是被剖析的工夫序列是安稳的。然而,经济实践认为,经济变量之间在程度上存在着平衡关系,能够使这些变量差分而安稳。这就是所谓的协整关系。因为晓得这种关系能够改善剖析的后果,所以心愿有一个计量经济学模型,可能捕捉到这种关系。所谓的向量误差修改模型(VECMs)就属于这一类模型。下文介绍了 VECMs 的基本概念,并在 R 中预计这种模型。

模型和数据

向量误差修改模型与 VAR 模型十分类似,能够有如下模式。

其中,Δx 为向量 x 中各变量的第一次差分,Pi 为协整关系的系数矩阵,Γ 为 x 的差分变量滞后的系数矩阵,d 为确定性项的向量,C 为其对应的系数矩阵,p 为 VAR 模式下模型的滞后阶数,ϵ 为均值为零的误差项,方差 - 协方差矩阵 Σ。

由上式可知,与 VAR 模型惟一不同的是误差修改项 Πxt-1,它反映了如果其中一个变量偏离其平衡值,则 x 中的变量增长率会如何变动的影响。系数矩阵 Π 能够写成矩阵乘积 Π =αβ′,这样误差修改项就变成了 αβ′xt-1。协整矩阵 β 蕴含了各层次变量之间的平衡关系信息。β′xt- 1 形容的向量能够解释为变量与平衡值之间的间隔,α 是所谓的载荷矩阵,形容了因变量向平衡值收敛的速度。

为了阐明 R 向量误差修改模型预计,咱们应用数据集 E6(2007),其中蕴含从季度 1972Q2 到 1998Q4,季节性调整的长期利率和通胀率工夫序列。

plot(data) #绘图数据 

预计

有多种办法能够预计 VEC 模型。第一种办法是应用一般最小二乘法,这种办法能够失去精确的后果,但不能预计变量之间的协整关系。预计狭义最小二乘法(EGLS)是一种代替办法。然而,最风行的 VECMs 预计办法是 Johansen(1995)的最大似然预计。

然而,在预计 VEC 模型之前,必须指定滞后阶数 p、协整矩阵的等级 r 和确定性项。抉择滞后阶数的一个无效策略是在程度上预计 VAR,并抉择最小化信息准则的滞后办法。因为工夫序列体现出强烈的季节性法则,咱们通过指定节令参数 = 4 来管制,其中 4 是数据的频率。

# 预计 VAR
VAR(data,ic = "AIC", season = 4 ,....)

# AIC 倡议的滞后阶数
var$p
## AIC(n) 
##      4

依据 AIC,能够应用滞后阶数为 4,这与 Lütkepohl(2007)中应用的数值雷同。这意味着 VEC 模型对应的 VAR 在程度上有 3 个滞后期。因为 ca.jo 函数要求 VAR 模型的滞后阶数,咱们设置 K =4。

在 VECM 中退出确定性项是一个奇妙的问题。一个常见的策略是在误差修改项中退出一个线性趋势,在方程的非协整局部退出一个常数,这个策略就不做赘述了。在这个例子中,咱们遵循 Lütkepohl(2007)的办法,在方程的非协整局部增加一个常数项和季节性伪变量。

cajo 函数不仅仅是预计 VECM,它还计算了方程的测验统计量。它还计算了 r 的不同特异性的测验统计量,用户能够在两种办法中进行抉择,即迹测验和特征值测验。在这个例子中,应用了迹测验,即 type = “trace”。

# 预计
 cajo(e6, ecdet = "none", type = "trace",...)

迹测验表明,r=1,协整关系 β 和载荷矩阵 α 的第一列估计值与 Lütkepohl(2007 年,第 7 章)中 ML 预计的后果统一。

# Beta
round(vec@V, 2)
##        R.l1 Dp.l1
## R.l1   1.00   1.0
## Dp.l1 -3.96   1.7
# Alpha
round(vec@W, 2)
##       R.l1 Dp.l1
## R.d  -0.10 -0.04
## Dp.d  0.16 -0.02

然而,模型中非协整局部的预计系数与 EGLS 预计的后果统一。

round(GAMMA, 2)
##      constant  sd1  sd2  sd3 R.dl1 Dp.dl1 R.dl2 Dp.dl2 R.dl3 Dp.dl3
## R.d      0.01 0.01 0.00 0.00  0.29  -0.16  0.01  -0.19  0.25  -0.09
## Dp.d    -0.01 0.02 0.02 0.03  0.08  -0.31  0.01  -0.37  0.04  -0.34

因为应用了不同的参考日期,与 Lütkepohl(2007)的后果不同。

脉冲响应剖析

VECM 的脉冲响应函数通常由其 VAR 模式取得。

# 将 VEC 转换为 VAR,r=1。vec2var(vec, r = 1)

而后用通常的形式计算脉冲响应函数。

# 取得 IRF
irf(impulse = "R", response = "Dp",...)

请留神,和安稳的 VAR 模型的一个重要区别是,协整 VAR 模型的脉冲反馈不是必须靠近零,因为变量是不安稳的。

参考文献

Lütkepohl, H. (2007). _New introduction to multiple time series analysis_ (2nd ed.). Berlin: Springer.

正文完
 0