量化回测如何减少过拟合:用 FiClaw 组织样本外与滚动验证

区分参数优化、样本外检验和 Walk-forward 滚动验证,按时间划分研究区间,用 FiClaw 整理策略规格、参数比较和复核材料。

发布人 FiClaw 产品团队 · 发布于 · 更新于

Read in English

先看结论

减少回测过拟合,先按时间分开参数选择和结果检验:在较早区间确定规则与参数,再用未参与选择的较晚区间检验。滚动验证重复这一过程,逐段保留结果。FiClaw 可辅助整理 spec、生成代码、回测和参数比较;验证窗口、选择标准与最终判断仍需研究员明确。

适合已经跑完首轮回测、正在比较参数或需要向团队解释验证过程的量化研究者。

验证计划示例:先约定规则,再读取验证结果

请把当前策略整理成验证计划:列出固定规则、待比较参数和选择标准;按时间划分训练与验证区间,每次只用较早数据选参数,再在随后区间评估。记录窗口、数据版本、参数、费用、交易数与回撤。先检查信号和持有期是否跨越边界;不要根据验证区间表现倒改本轮参数。

为什么最高收益的参数不一定值得保留

同一段历史上尝试的参数、因子和规则越多,越容易挑出恰好贴合那段数据的组合。把试过但放弃的设置也记下来,避免报告只展示最好的一次,而看不到选择过程。

先约定比较标准,例如成本后的表现、回撤、交易数量与参数邻域稳定性。标准应服务于研究假设;不要看到验证结果后再更换标准,并继续把同一段数据称为独立样本外。

样本外检验与 Walk-forward 怎样安排

样本外检验使用未参与参数选择的数据。Walk-forward 则把研究分成多轮:每轮在较早窗口选参数,在随后的窗口检验,再把窗口向前移动。训练窗口可以扩展或固定长度,报告中要写清采用哪一种。

时间顺序不能随机打乱。信号、标签或持有期跨越分界时,需要检查信息重叠,必要时预留间隔或剔除重叠样本;间隔长度取决于具体定义,没有一个适合所有策略的固定天数。

在 FiClaw 研究流程里留下哪些证据

把窗口划分、参数候选和选择规则写进策略 spec,再按计划生成或检查代码、运行历史回测、比较结果。这里描述的是实验组织方法,不代表 FiClaw 已提供一键完成所有滚动窗口的功能;具体执行方式以当前工作站与接口能力为准。

逐窗口查看成本后指标、交易数、回撤与参数变化,再汇总互不重叠的验证段。窗口结果差异大时,应解释样本、市场状态和实现假设。通过一轮验证不能直接等同于可以上线,也不能保证未来收益。

三类结果应分开记录

三类结果应分开记录
材料记录什么复核问题
参数选择记录候选范围、尝试次数、目标与约束是否只保留了最高收益的一次
单轮验证结果训练/验证起止、最终参数、成本与指标参数是否在验证开始前确定
跨窗口汇总各验证段、交易数、回撤与参数漂移是否重复计算重叠区间,表现是否集中于少数窗口
复核结论失效条件、待核实数据与下一步计划是否把验证失败也保留下来

常见问题

样本外表现不好,能继续调整吗?

可以继续研究,但一旦根据该区间结果改规则,它就参与了选择。应记录这次调整,并寻找新的未参与选择的数据或后续观察,不能继续把原区间称为独立检验。

FiClaw 会自动完成全部 Walk-forward 分析吗?

本指南介绍验证设计,不承诺一键滚动验证。FiClaw 可辅助策略规格、代码、回测和参数比较;窗口调度、数据可用性和具体运行方式需按当前版本与接口确认。

滚动验证通过就能实盘吗?

不能据此直接做出上线决定。还需复核数据时点、费用、成交假设、容量与权限,进行独立评估,并由授权人员决定后续动作。

方法参考

继续阅读

从一个有明确规则的研究问题开始