为什么 VECM 中的脉冲响应是永久性的?

机器算法验证 解释 向量自回归 矢量纠错模型 冲动反应
2022-03-24 00:14:01

标准向量自回归 (VAR) 模型中脉冲响应函数的通常解释是它们表示变量的响应,例如yt,对系统的另一个变量中一个标准偏差(或一个单位,取决于它们的计算方式)的冲击,比如说xt, 随着时间的推移。

在 VAR 中,脉冲响应函数恢复为0,并且您可以计算总(或长期)影响xtyt使用累积函数(通过对脉冲响应求和)。

然而,在矢量纠错模型 (VECM) 中,脉冲响应函数有时不会返回到0. 一些教科书(例如 Lütkepohl's New Introduction to Multiple Time Series Analysis)提到这是正常的。但是,目前尚不清楚为什么。

什么是对不回溯到的脉冲响应的正确解释0在 VECM 中?在这种情况下,如何解释累积的脉冲响应,然后它会无限增长(或减少)?

为了清楚起见,假设说明响应的函数yt冲动xt收敛于 +0.5 并保持在该值。这是否意味着当xt增加一单位(或一标准差),yt每个周期增加 0.5,一次又一次,直到时间结束?

如果变量是协整的,它们不应该保持“接近”彼此,由一些随时间不变的值分开吗?在这种情况下,当另一个变量发生固定量的变化时,一个变量不能无限增长。

我找不到明确的答案,非常感谢任何帮助。

1个回答

这是一个很好的问题,我正在学习,所以请耐心等待。

在 VECM 中不回到 0 的脉冲响应的正确解释是什么?

重复醉酒行走的主题,假设一个醉汉在一个卑鄙的少年推他时随意行走。这一推使该男子跌跌撞撞,但他在一小段距离后重新站稳了脚跟。他耸耸肩继续走,但他已经错位了几英尺,继续他醉酒的步行,可能永远不会回到原来的位置。

在这种情况下,如何解释累积的脉冲响应,然后它会无限增长(或减少)?

由于 VECM 是 delta 的模型,只要其中一个变量的“脉冲”导致未来的 delta 最终变为零,那么累积响应就不会无限增长!(请记住,没有噪音来推动它。)但是位移也不会恢复到参考值。

如果变量是协整的,它们不应该保持“接近”彼此,由一些随时间不变的值分开吗?在这种情况下,当另一个变量发生固定量的变化时,一个变量不能无限增长。

他们会这样做,而这正是纠错机制所强制执行的,粉碎了任何“外生”冲击的希望。在我即将向您展示的模拟中,单位“冲击”是发生在平衡状态还是发生在远离平衡状态的地方也很重要……很多。据我所知,urca/vars R 包组合为您带来的脉冲响应是当恰好一个变量增加一个单位并且起始位置处于平衡状态时每个变量会发生什么(恰好在协整向量)。一旦冲击发生,系统就会失去平衡,冲击的滞后效应和纠错机制都会发挥作用。它根本不干净。

我有一个模拟试图从:

(ΔytΔxt)=(.3.4)(11.3)(yt1xt1)+(.5.40.8)(Δyt1Δxt1)+ϵt,
我试图做的通知xt尽可能外生yt之前的 delta 没有输入xt的当前期间增量。但这似乎没有多大作用。

这是我从 x 输入单位脉冲的方式:

T <- 50
x0 <- 100
shock <- 1
offset <- 0

beta <- 1.3  # y_t - beta * x_t is stationary
Alpha <- matrix(c(.3, .4), ncol=1)
Beta_T <- matrix(c(1, -beta), ncol=2)
Gamma <- matrix(c(.5, .4, 0, .8), ncol=2, byrow=T)

# Shock x and run Generate Data block
x_t1 <- c(offset + beta * x0, x0)  # start at equilibrium
x_t2 <- c(offset + beta * x0, x0 + shock)  # shock in x only

# Generate data
X <- matrix(NA, nrow=T, ncol=2)
X[1, ] <- x_t1
X[2, ] <- x_t2
for (t in 3:T) {
  x_lag1 <- X[t - 1, ]
  del_x_lag1 <- X[t - 1, ] - X[t - 2, ]
  del_x <- Alpha %*% Beta_T %*% x_lag1 + Gamma %*% del_x_lag1
  X[t, ] <- x_lag1 + del_x
}
df <- as.data.frame(X)
names(df) <- c('y', 'x')
plot(df$y, main="Effect on y_t of x's impulse at t=2")
plot(df$x, main="Effect on x_t of x's impulse at t=2")

在此处输入图像描述

所以单位冲量在xt离开两者xt+30yt+30降低约 10 个单位,没有任何噪音。注意从x1x2导致更高的价值x3,但之后两个形状看起来相似。来自 vars 包函数的脉冲响应图irf如下所示(显示单位脉冲在xy):

在此处输入图像描述

如果您更改偏移量以使 y 和 x 从非平衡位置开始,则脉冲响应的比例会显着不同。