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)))
wk379779001 回答:R - Quantstart:在不同的回测期间测试多个股票

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/975229.html

大家都在问