如何解决R - Quantstart:在不同的回测期间测试多个股票
我正在测试一种使用 3 种股票“XLF”、“XLP”、“XLE”的策略。我的整体回测期从“2018-01-01”开始。我可以运行以下代码来测试从“2018-01-01”到今天的所有这 3 只股票。我想做的是2018年只测试“XLF”,2019年只测试“XLP”,2020年只测试“XLE”,然后查看整体回测结果。我可以通过更改初始日期并分别运行 3 次来实现这一点,但最后我必须汇总结果,这并不理想。
是否可以在 Quantstart 中执行此操作而不运行此代码 3 次?
library(quantstrat)
.blotter <<- new.env()
.strategy <<- new.env()
data(stratBBands) #load a test strategy
symbols = c("XLF","XLP","XLE")
initDate="2018-01-01"
initEq=100000
getSymbols(symbols,src='yahoo',index.class=c("POSIXt","POSIXct"),from=initDate)
currency("USD")
stock(symbols,currency="USD",multiplier=1)
strategy.st <- "bbands"
portfolio.st <- "bbands"
account.st <- "bbands"
initPortf(name=portfolio.st,symbols=symbols,initDate=initDate,currency='USD')
initAcct(name=account.st,portfolios=portfolio.st,currency='USD',initEq=initEq)
initOrders(portfolio=portfolio.st,initDate=initDate)
out<-try(applyStrategy(strategy=stratBBands,parameters=list(sd=2,n=60)))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。