我想在R中使用VECM模型。为此,我尝试使用urca
(由Bernhard Pfaff编写)和{{1}软件包来复制Lütkepohl, 2006 p 302-304中的估计值}(由Matthieu Stigler撰写)。数据可用here,其中包含2个变量R和Dp。 Lütkepohl建议使用具有恒定季节性季节性变量,三个滞后差异以及预先指定的协整实现R_ {t} -4Dp_ {t}的VAR。
结果应为:Results Lütkepohl
使用
tsDyn
对于#install.packages(c("data.table","tsDyn","urca"))
library(data.table)
library(tsDyn)
library(urca)
d<-fread("http://jmulti.de/download/datasets/e6.dat",skip=10)
#seasonal Dummy
Dummy <- cbind(
"Dummy1" = c(rep(c(1,0,0,0),26),c(1,0,0)),
"Dummy2" = c(rep(c(0,1,0,0),26),c(0,1,0)),
"Dummy3" = c(rep(c(0,0,1,0),26),c(0,0,1)))
class(Dummy)
#tsDyn Method
tsDyn_1 <- VECM(d, lag = 3, estim="ML", r=1,include="const",exogen = Dummy)
tsDyn_sum<-summary(tsDyn_1)
round(tsDyn_sum$coefMat,digits=3)
#urca Method
urca_1<-ca.jo(d,type="trace",ecdet="const",K=4,spec="longrun",season = 4)
summary(cajorls(urca_1,r=1)$rlm)
,短期系数gamma的系数正确。但是,我的确定性术语以及ETC系数都不合适。请问对此有解释吗? (附加问题:如果我使用VECM
而不是season=4
,即使这些系数也是错误的。通过exogen=Dummy
预先指定系数beta并不能解决问题,而且不幸的是,也会导致错误的系数,为什么?)
在beta=4
包中,结果也有所不同。
有人可以帮我解决这个问题吗?