我正在使用fMarkovSwitching
R 中的包来做我在这里尝试做的事情:Fitting Markov Switching Models to data in R。
但是,我收到另一个奇怪的错误消息。我正在尝试复制本文第 12 页的示例(使用我的日志返回时间序列): http://papers.ssrn.com/sol3/papers.cfm?abstract_id= 1714016
这是我正在使用的代码:
library(tseries)
#Prices
ftse <- get.hist.quote(instrument="^FTSE", start="1984-01-03", end="2014-01-01", quote="AdjClose", compression="m")
#Log-returns
ftse.ret <- diff(log(ftse))
ftse.ret1 <- as.numeric(ftse.ret)
library(fMarkovSwitching)
dep <- ftse.ret1
constVec <- matrix(1,nrow=length(dep),ncol=1)
indep <- constVec
k <- 2
S <- c(1,1)
myModel<-MS_Regress_Fit(dep=dep,indep=indep,S=S,k=k,distIn = "Normal")
我收到的错误消息如下:
MS_Regress_Fit(dep = dep, indep = indep, S = S, k = k, distIn = "Normal") 中的错误:indep 处的列数应与 S 处的列数匹配
我写的代码只是论文中 MATLAB 示例的“翻译”。如果我修改S
为匹配列数,我仍然会收到相同的错误消息,而如果我修改 indep
输出我得到的是错误的。
编辑:可以使用以下命令将包安装在 R 中:install.packages("fMarkovSwitching", repos="http://R-Forge.R-project.org")