如何负责任地对 Rmi 进行回测?
定义 Rmi 和回测目标
Rmi(在动量类指标的语境中)通常用作从历史价格序列中导出的数值度量,旨在总结动量或类似速率的行为。负责任的回测始于明确定义你的设置中“Rmi”的含义:你使用的具体价格输入(例如收盘价到收盘价的变化)、应用的参数值(回看周期长度及任何平滑步骤),以及将指标值映射到评估量的精确规则(例如,你是衡量该指标与未来价格变化的预测关系,还是评估基于它生成的决策规则)。
同样重要的是区分两个目标:
- 估计关系:在给定假设下,Rmi 是否与未来结果相关?
- 估计策略:如果你将 Rmi 转化为交易决策,这些决策在计入现实摩擦后表现如何?
一个回测可以同时包含两者,但若不加区分地混合,就容易将指标的历史模式误认为是可用的、可执行的决策方法。
机制:列出数据、假设和计算
要负责任地进行回测,必须记录从原始数据到结果的完整链条。
-
数据定义
明确说明数据集及其转换步骤。例如:交易品种范围、时间框架、交易时段处理、缺失数据处理方式,以及价格是否经过调整(如适用,是否已调整公司行为影响)。如果你对K线进行重采样或聚合,请说明所用方法。 -
Rmi 计算规则
写下你在每个时间点实施的公式。如果指标涉及平滑或归一化操作,请明确定义这些步骤。如果“Rmi 设置”存在多种合理解释,你的回测应选择其中一种并保持固定。 -
决策映射(如适用)
如果你将 Rmi 转换为操作行为,请精确地定义规则:入场/出场时机、阈值,以及你是否基于同一根K线收盘时计算出的指标值立即行动,还是存在延迟。一种常见的失败模式是“前瞻偏差”(look-ahead bias),即回测无意中使用了在交易时点尚不可用的信息。 -
成本和执行假设
回测应包含现实的摩擦建模。这不仅包括佣金,还涉及点差假设、滑点以及下单时机的影响。即使缺乏逐笔数据,你也应设定保守且一致的假设(理想情况下测试多个成本水平)。假设零成本的回测可能在纸面上表现强劲,但在实际中却极为脆弱。
证据与示例:使用样本外验证
负责任的回测应将历史结果视为证据,而非证明。应采用能限制过拟合的评估设计。
-
划分时间线
先进行一个初始的样本内(in-sample)阶段用于方法开发,然后保留一个后期的样本外(out-of-sample)阶段,直到最终评估时才使用。更优的做法是使用前向滚动(滚动)验证(walk-forward validation),即在每个窗口内参数保持固定,并仅按预定义程序更新。 -
控制自由度数量
如果你尝试了大量参数组合、多种阈值选择或不同的数据处理方式,实际上是在对噪声进行调优。为减少这种偏差,应使用受限搜索选择参数,并保留样本外阶段用于最终评估。 -
报告你所测量的内容
对于仅研究指标的情况,你可能会衡量 Rmi 值与未来收益之间的关系(需明确时间范围)。对于策略研究,则需衡量计入成本后的决策结果。无论哪种情况,都应包含能反映不确定性的指标,避免将单一表现优异的时期作为决定性证据。 -
跨市场环境的稳健性检验
测试该关系在市场行为变化时是否依然成立(如趋势市与震荡市、高波动与低波动环境)。如果表现完全依赖于某一狭窄环境,则应视为警示信号。
局限性与风险:主要的失败模式
即使再严谨的回测也可能失败。至少应明确考虑一个实质性的局限性:
- 非平稳性:当市场结构变化时,Rmi 与未来价格变动之间的统计关系可能发生改变。回测结果可能仅反映历史环境,而非稳定机制。
- 前瞻偏差:使用在决策时点尚不可用的信息计算指标值,会导致结果虚高。
- 幸存者偏差和选择偏差:如果你的数据集排除了仅在特定时期存在的交易品种,结果可能产生偏差。
- 成本设定错误:错误的点差/滑点假设可能逆转结论。策略评估对此尤其敏感。