R - 如何正确解释分层贝叶斯 VAR (BVAR) 中的结构中断?
R - How to properly account for structural breaks in Hierarchical Bayesian VAR (BVAR)?
我有兴趣使用 R 中新的 bvar
包来预测一组内生时间序列。但是,由于 COVID 大流行,我的时间序列发生了结构性断裂。在模型中考虑这一点的最佳方法是什么?一些假设:
- 添加外生虚拟变量(好像包里没有这个功能)
- 添加具有强先验的内生虚拟变量,将其他变量对它的影响系数归零(即 "artificial" 外生变量)
- 创建两个单独的模型(结构中断之前和之后)
我试过2+3的组合。我测试了一个 (i) 模型只有最近的数据(在结构中断之后)并且没有假人 vs (ii) 另一个有完整历史的模型有一个额外的内生(虚拟)变量,但没有强大的假人先验(我不明白如何正确配置)。模型 (ii) 在测试集中表现得更好。
我给包的所有者 Nikolas Kuschnig(在 SO 中找不到他的用户)写了一封电子邮件,他回复说:
Structural breaks are always a pain to model. In general it's probably
preferable to estimate two separate models, but given the short timespan and you
getting usable results your idea with adding a dummy variable should also work.
You can adjust priors from other variables by manually setting psi in
bv_mn()
(see the docs and the vignette for an explanation).
Depending on the variables you might also be fine not doing any of that, since
COVID could just be seen as another shock (which is almost always quite the
stretch, given the extent of it).
Note that if there is an actual structural break, the dummies won't suffice,
since the coefficients would change (hence my preference for your option 3). To
an extent you could model this with a Markov-switching VAR, but unfortunately I
don't know of an accessible implementation for R.
谢谢你,尼古拉斯
我有兴趣使用 R 中新的 bvar
包来预测一组内生时间序列。但是,由于 COVID 大流行,我的时间序列发生了结构性断裂。在模型中考虑这一点的最佳方法是什么?一些假设:
- 添加外生虚拟变量(好像包里没有这个功能)
- 添加具有强先验的内生虚拟变量,将其他变量对它的影响系数归零(即 "artificial" 外生变量)
- 创建两个单独的模型(结构中断之前和之后)
我试过2+3的组合。我测试了一个 (i) 模型只有最近的数据(在结构中断之后)并且没有假人 vs (ii) 另一个有完整历史的模型有一个额外的内生(虚拟)变量,但没有强大的假人先验(我不明白如何正确配置)。模型 (ii) 在测试集中表现得更好。
我给包的所有者 Nikolas Kuschnig(在 SO 中找不到他的用户)写了一封电子邮件,他回复说:
Structural breaks are always a pain to model. In general it's probably preferable to estimate two separate models, but given the short timespan and you getting usable results your idea with adding a dummy variable should also work. You can adjust priors from other variables by manually setting psi in
bv_mn()
(see the docs and the vignette for an explanation). Depending on the variables you might also be fine not doing any of that, since COVID could just be seen as another shock (which is almost always quite the stretch, given the extent of it).Note that if there is an actual structural break, the dummies won't suffice, since the coefficients would change (hence my preference for your option 3). To an extent you could model this with a Markov-switching VAR, but unfortunately I don't know of an accessible implementation for R.
谢谢你,尼古拉斯