网易首页 > 网易号 > 正文 申请入驻

Python回测陷阱:87%的人把过拟合当盈利

0
分享至

2019年,某量化团队用历史数据跑出一套年化收益340%的策略。实盘上线3个月,净值回撤62%。复盘时发现,他们调了47组参数,选最优那组——而那组恰好完美拟合了2015年股灾后的反弹节奏。这不是策略牛,是运气。

这种悲剧有个专业名字:过拟合。更隐蔽的是,大多数人根本没意识到自己正在制造它。

传统回测的幻觉:用同一套数据训练和验证

常规优化流程像开卷考试:拿10年历史数据,穷举所有参数组合,挑表现最好的,再用这10年数据"验证"它。逻辑漏洞很明显——你允许策略在历史里翻找直到找到最顺手的答案,最后的"成绩"里掺了多少水分?

这不一定意味着策略无用。但它确实意味着,纸面收益往往远高于实盘能拿到的。

Walk-Forward Optimisation(递进式优化,简称WFO)换了个问法。不问"哪组参数对这整段数据最好",而是问"如果我真的在交易,每隔一段时间用新数据重新调参,实际会是什么结果?"

WFO的核心机制:滚动窗口,持续自证

具体操作上,WFO把时间切成连续的片段。假设总数据是2010-2024年:

第一步:用2010-2012年训练,找出最优参数,测试2013年表现。第二步:用2010-2013年重新训练,更新最优参数,测试2014年。第三步:重复直到数据用完。

每轮测试用的都是"没见过"的数据。策略没法作弊,只能持续证明自己适应新环境的能力。

市场不会静止。2020年疫情冲击的波动率、2021年散户抱团的趋势强度、2022年加息周期的相关性崩溃——同一组参数不可能通吃所有 regime(市场状态)。静态回测把这一切压缩成单一历史练习,WFO则逼策略反复交卷。

代价是数字变难看了。WFO的结果通常比全样本优化弱得多。但弱不代表差,很多时候只是更诚实。

实战搭建:从数据获取到完整流水线

我们用Python和FMP API,以苹果(AAPL)2010年至今的数据为例,搭一套可复用的WFO框架。

数据层用Financial Modeling Prep的API拉取日线,包括开高低收和成交量。策略层选最简单的双均线交叉:短期SMA(简单移动平均)上穿长期SMA时做多,下穿时平仓或做空。

参数空间设定为短期均线5-50日,长期均线20-200日,步长5日。传统优化会在这二维网格里找全局最优,然后宣布"发现"了某组黄金参数。

WFO的做法是设定滚动窗口。比如用3年数据做in-sample(样本内)优化,接下来1年做out-of-sample(样本外)验证。窗口每次向前滚动1年,直到耗尽数据。

关键代码结构分三块:数据处理器(处理缺失值、调整复权)、优化引擎(网格搜索或更高效的贝叶斯优化)、回测执行器(跟踪持仓、计算收益、记录滑点和手续费)。

一个容易踩的坑:窗口长度选择。太短,优化不稳定,参数抖动剧烈;太长,市场regime已经切换,样本内最优参数在样本外失效。3-5年的训练窗对股票策略是常见起点,但需根据标的波动特性调整。

结果解读:为什么"更差"的数字更值得信任

假设全样本优化给出年化35%、夏普1.8的漂亮曲线。WFO跑完可能是年化12%、夏普0.6。落差巨大,但后者更接近真实交易体验。

更细颗粒度的分析是看参数稳定性。如果每轮滚动选出的最优参数跳跃剧烈——这轮是(10,30),下轮变成(40,120)——说明策略对市场结构高度敏感,实盘部署风险极高。反之,若参数在合理范围内小幅波动,策略的鲁棒性更有保障。

WFO还能暴露另一个问题:优化频率。如果每月重调参数比每年重调收益更高,但交易成本吞噬了超额,这个权衡需要用实际手续费和滑点模拟来量化。

最后一步是把WFO结果和纯样本外测试对比。2010-2020年训练、2020-2024年验证,完全不滚动。如果WFO表现显著优于这种"一次性"切分,说明策略确实受益于定期再优化,而非仅仅靠运气。

你现在用的回测框架,是让你看到想看到的数字,还是逼你看到该看到的数字?

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
深圳2-0浙江晋级四强:贺希宁23分末节4三分 程帅澎25分史密斯3双

深圳2-0浙江晋级四强:贺希宁23分末节4三分 程帅澎25分史密斯3双

醉卧浮生
2026-05-10 21:44:46
伊朗御林军被跳过了,最高领袖把电话打给了另一支部队!

伊朗御林军被跳过了,最高领袖把电话打给了另一支部队!

有态度的何总
2026-05-11 11:01:39
保送枪手夺冠?西汉姆绝平球被吹!濒临降级后将帅怒喷:判罚双标

保送枪手夺冠?西汉姆绝平球被吹!濒临降级后将帅怒喷:判罚双标

我爱英超
2026-05-11 06:44:19
深圳6岁男童吃生菜包烤肉后,全身出现大片青斑、血肿

深圳6岁男童吃生菜包烤肉后,全身出现大片青斑、血肿

听心堂
2026-05-09 18:11:29
蒯曼输球不可怕,赛后清醒认知才令人担忧

蒯曼输球不可怕,赛后清醒认知才令人担忧

老淸医学科普
2026-05-10 22:13:41
10年后,小米再次沦为Others

10年后,小米再次沦为Others

数智研究社
2026-05-11 08:00:17
小流氓遇见大流氓,美国正式封锁霍尔木兹海峡

小流氓遇见大流氓,美国正式封锁霍尔木兹海峡

海子侃生活
2026-04-14 10:10:15
帕拉迪诺:从第13追到第7名很不容易;意杯决赛全力支持国米

帕拉迪诺:从第13追到第7名很不容易;意杯决赛全力支持国米

懂球帝
2026-05-11 12:09:08
德云社弟子大洗牌!3人自断后路,岳云鹏边缘,烧饼一哥地位稳了

德云社弟子大洗牌!3人自断后路,岳云鹏边缘,烧饼一哥地位稳了

白面书誏
2026-05-08 15:52:08
罕见服软!张本智和赛后公开致歉,坦言日乒与国乒差距悬殊!

罕见服软!张本智和赛后公开致歉,坦言日乒与国乒差距悬殊!

田先生篮球
2026-05-11 12:40:12
朱可夫晚年回忆:当年德军能从莫斯科撤走,皆因斯大林的一道指令

朱可夫晚年回忆:当年德军能从莫斯科撤走,皆因斯大林的一道指令

饭小妹说历史
2026-05-11 10:25:07
熔断!刚刚,全线暴涨!芯片巨头,继续猛攻

熔断!刚刚,全线暴涨!芯片巨头,继续猛攻

证券时报
2026-05-11 09:40:12
张雪回应“参加儿子学校运动会被同学推销自家业务”:意外的供应商,必须安排去考察

张雪回应“参加儿子学校运动会被同学推销自家业务”:意外的供应商,必须安排去考察

台州交通广播
2026-05-10 23:01:46
赫鲁晓夫政变全过程!朱可夫在会议中掏出手枪,当众把贝利亚扣押

赫鲁晓夫政变全过程!朱可夫在会议中掏出手枪,当众把贝利亚扣押

云霄纪史观
2026-05-09 03:25:07
贵阳市2名干部接受纪律审查和监察调查

贵阳市2名干部接受纪律审查和监察调查

贵阳网
2026-05-11 11:50:57
我去朝鲜旅游6天,花费9888元,体验是:难以置信自己去的是朝鲜

我去朝鲜旅游6天,花费9888元,体验是:难以置信自己去的是朝鲜

梅姨在路上
2026-05-11 09:12:27
全球军队研究印巴507空战,发现最震撼细节,难怪印度不想打了

全球军队研究印巴507空战,发现最震撼细节,难怪印度不想打了

琴音似君语
2026-05-10 17:56:21
仅用2场比赛,王皓打破质疑彻底征服球迷,坚信梁靖崑只因两点

仅用2场比赛,王皓打破质疑彻底征服球迷,坚信梁靖崑只因两点

十点街球体育
2026-05-11 10:52:33
揭秘格瓦斯从火爆到消失的背后真相

揭秘格瓦斯从火爆到消失的背后真相

流苏晚晴
2026-05-10 20:16:23
一特斯拉Model 3服役7年跑了61万公里后,实测续航缩水34.2%

一特斯拉Model 3服役7年跑了61万公里后,实测续航缩水34.2%

IT之家
2026-05-10 21:38:29
2026-05-11 13:27:00
我是一个粉刷匠2
我是一个粉刷匠2
有态度网友ytd
2491文章数 32关注度
往期回顾 全部

科技要闻

黄仁勋:你们赶上了一代人一次的大机会

头条要闻

姑娘海底捞吃完饭遭多名男子殴打 两颗门牙被一拳打断

头条要闻

姑娘海底捞吃完饭遭多名男子殴打 两颗门牙被一拳打断

体育要闻

那个曾让詹姆斯抱头的兄弟,40岁从大学毕业了

娱乐要闻

谢霆锋没想到,王菲靠张艺谋重返巅峰

财经要闻

"手搓汽车"曝光:伪造证件、电池以旧代新

汽车要闻

全球化成国内车企未来胜负手,谁是出海最强"水手"?

态度原创

教育
时尚
数码
健康
游戏

教育要闻

奔赴一场英法教育之旅,遇见更好的未来

轻松拿捏又甜又酷的造型,试试这些轻熟穿搭,温柔有女人味儿

数码要闻

联想YOGA Air 14 Ultra笔记本官宣5月19日发布

干细胞能让人“返老还童”吗

曝索尼正调整PS游戏地区价格!从此告别568港元?

无障碍浏览 进入关怀版