【发布时间】:2017-05-04 23:37:20
【问题描述】:
如何回测特定日期,例如 Quantstrat 中的 2008::2010? 我想从 2001::2017 加载符号,但我只想对日期子集进行回测。 (而不是在特定日期范围内每次都重新加载符号)
【问题讨论】:
标签: r quantstrat
如何回测特定日期,例如 Quantstrat 中的 2008::2010? 我想从 2001::2017 加载符号,但我只想对日期子集进行回测。 (而不是在特定日期范围内每次都重新加载符号)
【问题讨论】:
标签: r quantstrat
quantstrat 中没有内置的方法来执行此操作。事实上,在 apply* 函数的开头有一条注释说:
#TODO add Date subsetting
(欢迎打补丁)
不过,使用现有代码有多种可能的方法。
可能最简单的方法是将所有市场数据加载到环境中,然后在每次调用 applyStrategy 之前将市场数据子集到 .GlobalEnv。
指标和信号应该使用矢量化函数,并且应该(最多)几秒钟才能应用于整个系列。所以最简单的方法可能是在整个系列中手动运行applyIndicators 和applySignals,然后只使用您想要的子集调用applyRules。
您还可以添加一个能够理解子集的信号函数。此信号函数将位于策略规范中的最后一个,并将您的所有其他信号过滤为您首选日期范围之外的 0。
【讨论】: