微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 R 中使用 depmixS4 包训练和测试模型?

如何解决如何在 R 中使用 depmixS4 包训练和测试模型?

我正在创建一个使用 sp500 价格时间序列示例查找隐藏状态的模型。我的任务是在训练集和测试集上找到两个状态。

library(quantmod)
library(plotly)
library(depmixS4)

# train sample
getSymbols("^GSPC",from="2015-01-01",to="2019-01-30")

# test sample
getSymbols("^GSPC",to="2019-01-30")

# Calculate differenced logarithmic returns using S&P500 Close prices

sp500_temp = diff(log(Cl(GSPC)))
sp500_returns = as.numeric(sp500_temp)

# Fit Hidden Markov Model to S&P500 returns,with two “states”

hidden_markov_model <- depmix(sp500_returns ~ 1,family = gaussian(),nstates = 2,data = data.frame(sp500_returns=sp500_returns))

model_fit <- fit(hidden_markov_model)

# Calculate posterior probabilities for each of the market states

posterior_probabilities <- posterior(model_fit)

q <- cbind(GSPC,posterior_probabilities$state)

在变量 q 价格及其对应状态中。

另外,我想将训练集中得到的结果应用到测试集中并确定其中的状态,但我不明白如何做到这一点,以免再次拟合模型

可能是我对马尔可夫隐状态的概念理解有误,求帮忙解决问题

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。