刚接触量化的人经常会听到一句评价:"这策略过拟合了",或者反过来"这策略太简单,欠拟合"。听起来很专业,但很多人只是记住了这两个词,没真正搞清楚它们在策略回测里具体指什么、怎么判断自己的策略中了哪一个。

这篇文章用两句话先把结论摆出来,再展开讲:

过拟合:策略在历史数据上表现极好,是因为它"记住"了这段历史的具体噪声和偶然事件,而不是学到了真实规律——换一段数据、换一批股票,立刻打回原形。
欠拟合:策略太粗糙、太简单,连历史数据里真实存在的规律都没抓住,表现平庸,怎么调都不会好看。


一、一个直观的例子:为什么"历史上年化40%"不一定可信

假设你在做一个MACD策略的参数扫描,测试了200组不同的快线/慢线/信号线周期组合,回测区间是过去3年。扫描结束后,你发现有一组参数"年化收益42%,夏普1.8",看起来非常漂亮。

这时候要警惕一个事实:哪怕策略的逻辑完全是瞎写的、纯随机的,只要你测试的参数组合足够多,也几乎必然会出现一组"历史上表现很好"的结果——这不是运气特别好,而是"多重比较"下的数学必然。这组参数很可能只是恰好匹配上了这3年历史数据里的某些偶然波动,而不是真的找到了普适规律,这就是过拟合的典型表现。

反过来,如果你的策略只用一条最简单的均线金叉,什么过滤条件都不加,回测结果长期平庸、无论怎么微调周期都提升不大——这更接近欠拟合:策略本身的表达能力太弱,连数据里存在的真实规律都表达不出来。

二、怎么从回测结果上判断是过拟合还是欠拟合

现象更像过拟合更像欠拟合
参数敏感度稍微改一点参数,收益天差地别("参数悬崖")怎么改参数,结果都差不多
换股票池表现换一批股票立刻崩盘换股票池表现依然平庸,没有明显变化
交易次数往往交易次数很少,靠几笔极端交易撑起收益交易次数正常,但单笔胜率/盈亏比都不出色
样本外表现样本外(未参与调参的数据)表现大幅衰减样本外表现和样本内差不多,但两者都不理想

需要说明的是,过拟合和欠拟合不是两个互斥的黑白结论,很多策略其实处在中间状态——比如逻辑本身欠拟合(太简单),但某个参数又恰好过拟合了某段历史。判断时不能只看一个数字,要结合"参数敏感度+样本外表现+交易次数"一起看。

指标探测:参数扫描热力图,判断参数高原还是参数悬崖
指标探测:参数扫描热力图,判断参数高原还是参数悬崖

热力图是一个很直观的判断工具:如果表现好的参数只是热力图上孤零零的一格"尖峰",周围表现骤降,大概率是过拟合;如果是一整片连续区域表现都不错("参数高原"),说明这组参数相对稳健,不是靠碰运气对上历史噪声。

三、防止过拟合的核心方法:样本外验证(Walk-Forward)

判断出问题后,怎么解决?量化研究里最直接的方法是样本外验证(也叫Walk-Forward,步进验证):把历史数据切成"训练窗"和"测试窗"两段,只在训练窗里调参数、选策略,然后把这组参数原封不动地拿到测试窗(模型完全没见过的数据)上检验表现。

如果一组参数在训练窗里表现很好,但在测试窗里表现大幅衰减,基本可以确认是过拟合;如果测试窗表现和训练窗接近甚至更稳定,说明这组参数捕捉到的是相对普适的规律,可信度更高。

历史回测:默认参数、样本外推荐参数与全样本最优参数三组对照
历史回测:默认参数、样本外推荐参数与全样本最优参数三组对照

在实际操作中,比较推荐的做法是同时跑三组回测做对照:默认参数(教科书常用值)、全样本最优参数(扫描出来历史上最好的一组)、样本外推荐参数(经过训练/测试窗验证后的一组)。如果全样本最优和样本外推荐差异巨大,本身就是一个"这组参数可能过拟合"的信号。

四、常见误区

  1. 1. 误区一:回测收益越高越好。收益极高往往伴随过拟合风险,尤其当交易次数很少、参数敏感度很高时,更应该打个问号,而不是直接采信。
  2. 2. 误区二:把"全样本最优参数"当成实盘参数。全样本最优是"如果我能穿越回去、提前知道未来哪组参数最好"这种上帝视角的结果,实盘中你永远不可能提前知道,这组参数上实盘的表现通常会明显衰减。
  3. 3. 误区三:欠拟合的策略"稳定"就是好事。稳定的平庸和稳定的优秀是两件事,欠拟合策略的"稳定"只是因为它什么都没学到,不代表可以放心用。

五、结语:目标不是"找到最优参数",而是"找到样本外仍站得住的参数"

过拟合和欠拟合本质上是一个"模型复杂度和数据规律之间怎么匹配"的问题,量化策略只是这个通用概念的一个具体应用场景。判断自己的策略有没有踩坑,不能只看历史收益一个数字,而要结合参数敏感度、样本外验证结果、交易次数一起综合评估。

如果你正在做参数扫描和历史回测,青柠量化 提供策略编辑器、历史回测与专业版的参数扫描、样本外验证(WFO)能力,可以帮你把"这个参数是不是碰运气"从直觉判断变成有数据支撑的结论。免费版即可完成策略搭建、常规回测与动画复盘。

下载与说明见产品页:
https://www.zpyztech.com/product/qingquant/


免责声明: 本文仅作量化研究方法与软件使用说明,不构成任何投资建议。历史回测结果不代表未来表现,请独立判断并自行承担交易风险。