如何负责任地对HMA进行回测?

负责任地回测HMA数据会因成本而产生样本外偏差。

如何负责任地对HMA进行回测?

什么是“负责任的”HMA回测

负责任的回测意味着使用透明的数据准备、明确的假设和验证步骤来评估Hull移动平均线(HMA)规则,以减少误导性结果。HMA是一种旨在平滑价格同时快速响应的价格移动平均线;在给定输入价格序列和选定参数的情况下,它是一种确定性计算。因此,回测应聚焦于你的规则(例如,你如何决定使用HMA的时机)在已知约束条件下是否曾表现出合理的行为。

“负责任”还意味着你不应将历史表现视为未来结果的保证。市场会变化,而回测可能过度拟合仅存在于特定时期内的模式。

机制:你实际在测试什么

定义HMA计算及其输入

在测试之前,定义你输入到HMA中的数据序列(例如收盘价序列)以及使用的参数(通常是周期长度)。由于HMA是对过去值的数学变换,不同的预处理选择会影响输出结果。

一个常见的错误来源是时间对齐的混淆:如果你在时间 t 的决策使用了时间 t 或之后的信息,测试就会变得不可靠。确保用于做出决策的每个值在当时都是可获得的。

区分稳定机制与可变条件

HMA计算本身是稳定的。回测结果取决于以下可变因素:

  • 数据质量(缺失K线、公司行为调整、采样不一致)。
  • 成本与摩擦(佣金、点差、滑点)。
  • 执行假设(下单时机、成交逻辑)。
  • 市场状态(趋势市与盘整市)。

为了保持实验的公平性,应将这些项目视为明确的假设,并在可能的情况下测试其敏感性,而不是依赖单一设定。

证据或示例:一种基于假设的实用工作流程

以下是一个你可以使用的模板,无需假设任何确定的优势。

1) 明确假设并保持一致性

记录:

  • 时间框架和K线构建方式,
  • 用于HMA的价格字段,
  • HMA参数选择,
  • 交易或决策的执行方式(即使执行是模拟的)。

如果你计算绩效,请明确定义指标(例如,你是衡量百分比回报率、风险调整后指标,还是决策规则的分类准确率)。在整个过程中使用相同的定义。

2) 保守建模成本与执行(作为假设)

“漂亮图表”与真实回测之间的关键区别在于,实际交易面临摩擦。即使是简单的评估也必须包含对成本的假设,例如类似点差的惩罚和类似滑点的延迟。你不需要实时数据;但你需要一个明确的规则来说明成本如何影响结果。

3) 使用偏差控制

常见失败模式包括:

  • 前视偏差:在计算HMA或决策规则时使用了未来数据。
  • 幸存者偏差:如果你在随时间变化的精选数据集上进行测试。
  • 过拟合偏差:根据用于报告结果的同一数据集的绩效选择参数。

为减少这些问题,保持你的决策逻辑固定,避免反复“调优直到看起来不错”,并使用验证程序。

4) 在样本外进行验证

一次负责任的测试应至少包含一个样本外周期,该周期未用于参数选择。使用以下方法之一:

  • 前向滚动验证:在较早的时间窗口上训练或调优,然后在下一个窗口上评估,重复进行。
  • 保留分割:在训练期内选择参数,然后在后续的保留期内一次性评估。

如果样本外绩效崩溃,这强烈表明样本内拟合并不稳健。

5) 检查对可变因素的敏感性

不要只运行一次,而应在合理范围内变化假设(例如不同的成本水平或略有不同的参数值)。在不同变化下的稳定性比单一最佳结果更具信息价值。

局限性与风险:为什么回测可能误导

HMA的历史行为并不能保证未来表现。即使有谨慎的控制,结果仍可能因以下原因而失败:

  • 波动性和流动性变化,使相同的成本假设在后期变得不现实。
  • 状态转换,在趋势市与盘整市中,平滑方法的行为可能不同。
  • 数据问题,如缺失K线或时间戳不一致。
  • 模型风险:你可能评估了一个无法泛化的解释规则。

一个重要的局限是,由于许多市场在特定周期内存在自相关性,移动平均线在样本内可能显得有效。但这种效应可能减弱,尤其是在计入交易成本之后。

外汇和差价合约交易具有重大风险。FoxiForex的信息仅用于教育,不构成个人财务建议。赞助内容会被清楚标注。