用 R 拟合 VAR 模型

机器算法验证 r 时间序列 向量自回归
2022-03-21 18:30:51

我有一个双变量时间序列z_t,其中z_1t是美国每月国库券(到期 3 个月)的变化和z_2t美国每月消费者价格指数(CPI)的通货膨胀率(百分比)。使用的 CPI 是所有城市消费者的消费价格指数:所有项目 (CPIAUCSL)。原始数据从圣路易斯联邦储备银行下载。CPI 率是对数 CPI 指数的一阶差分的 100 倍。我想拟合指定的 VAR 模型并通过阈值为 1.65的命令 R(refVar来自 packageMTSrestrictfrom package )简化拟合。vars

我在芝加哥大学 R. Tsay 的网站上找到了这个练习 ( pdf )。数据在这里

到目前为止,我所做的如下:

y <- diff(zt[,3])
lot(y, type="l", ylab="tb3m")

 # difference 
x <- diff(log(zt[,4]))
plot(x, type="l", ylab="CPI rate")

new <- cbind(x, y)
 # order selection gives VAR(6)
VARselect(new, lag.max=9, type="const")

data1 <- data[,c("tb3m","cpiaucsl")]
fit   <- VAR(data1,p=6)
fit

restrict(fit, method="ser", thresh=1.65, resmat=T)

restrict并且VAR不要在 pdf 的答案中给我正确的结果或 Var 模型的相同系数。

1个回答

使用以下方法拟合模型后:

fit <- VAR(data1,p=6)

您可以使用以下方法对其进行细化refVAR

fit2 <- refVAR(fit,thres=1.65)