如何负责任地对Tema进行回测?
在回测之前理解Tema的含义
TEMA通常指基于三个移动平均线构建的三重平滑移动平均线。回测的关键思想很简单:你从历史价格中计算出一个时间序列值,然后定义当该值变化时你会采取什么行动(例如,设定一个决策边界)。当你的计算和评估都透明时,回测才是负责任的。
在讨论“影响”之前,先区分两个部分:
- 指标机制:确切的公式、输入(价格类型)以及参数(通常为回看周期长度)。
- 决策规则:你如何将指标值转化为可衡量的结果。
如果你混淆了这两个部分,可能会误将指标的行为当作可交易的优势。
机制:定义数据、成本、假设和可复现性
负责任的回测始于数据合约——即对你所使用的数据及其使用方式的书面定义。
对于TEMA,至少要定义以下内容:
- 价格输入:收盘价、中间价或其他一致的字段。
- 时间对齐:你在时间 t 的信号是使用第 t 根K线结束时的信息,还是仅使用到 t-1 的信息。
- 采样方式:使用何种时间框架(例如1小时K线),以及是否保持恒定。
- 参数处理:如何选择TEMA的周期长度,是固定还是经过调优。
在模型评估中使用成本作为假设。即使你无法准确知道未来的成本,你也应包含一个成本框架,例如:
- 点差/交易成本:按每笔交易或每单位交易量估算。
- 滑点:作为执行时间的调整项。
- 交易频率影响:将指标转化为频繁交易会增加对成本的敏感性。
应像定义公式一样明确这些假设。如果指标时机与成本时机之间缺乏一致对齐,回测可能显示无法在实际执行中存活的表现。
证据与示例:避免隐含的未来信息并用样本外测试验证
一种常见的失败模式是未来信息偏差:由于对齐错误,你的回测意外使用了未来信息(例如,使用了在你“行动”时尚未可知的数据来计算某个值)。为降低此风险:
- 仅使用决策时间之前可用的历史数据来计算TEMA值。
- 使用相同的对齐方式应用决策规则。
- 通过合理性检查验证(例如,将输入数据移动一根K线,应显著改变对齐错误的结果)。
然后使用样本外测试验证结果。负责任的工作流程应保持清晰的分离:
- 样本内:确定参数或阈值。
- 样本外:仅用于评估。
为增强稳健性,可考虑多个样本外窗口或采用前向滚动方法,在多个周期中重复该过程。在检查样本外表现之前,不要调整参数。
局限性与风险:仍可能出现的问题
即使机制良好,回测仍可能失败,因为历史关系不能保证未来行为。
主要局限性和失败模式包括:
- 市场状态依赖性:移动平均平滑器在趋势市场与震荡市场中的表现可能不同。
- 过度拟合:当你尝试多种参数值并选择最佳结果时,可能只是捕捉到了噪声。
- 执行偏差:成本、成交价和延迟可能与你的假设不同。
- 数据质量问题:缺失K线、公司行为或不一致的数据源可能扭曲计算结果。
还需注意一个概念性局限:TEMA描述的是一个平滑的统计量。如果你将其作为独立的“信号”呈现,就忽略了其表现如何依赖于决策规则、时机和成本。
验证:在信任回测结果前应检查的内容
要独立验证你自己的工作,你需要一个他人可复现的检查清单:
- 可复现性:你能否根据相同的输入和公式重新计算出TEMA序列?
- 时机审计:你的信号和成本假设是否与K线可用性匹配?
- 敏感性分析:当你轻微调整参数选择时,结果是否发生显著变化?
- 样本外纪律:在调优过程中是否保持评估周期未被触碰?
- 汇总指标:报告多个度量(例如平均收益和回撤),而非单一数字。
如果这些检查不成立,应将回测视为一种探索性模型,用于说明假设如何影响结果,而非对未来结果的证明。
何时提出下一个问题
如果你的回测在时机和成本审计下表现稳定,但在不同时期仍存在显著差异,下一步的验证重点不应是寻找单一“最佳”设置。