给DeepSeek V3四十次机会,让它自己找一套能赚钱的交易策略。结果先输给了一个不需要模型、成本为零的启发式搜索器。
![]()
整套流程的规则只有一条:提出策略的不管打分。智能体负责提方案,打分的是同一套回测框架——时点一致的标的池、滚动前推、计入交易成本、只看样本外得分。手工策略走这套规则,模型提的方案也走这套规则,没有例外,也没法靠嘴把数字说好看。
每份提案是一个带类型的JSON对象,字段包括策略族(反转、因子残差、动量)、K线周期、回看天数、持有期和入场阈值。智能体循环四十轮,每轮把"什么失败了、什么活下来了"塞进提示词,再交给DeepSeek V3生成下一份提案。
旁边还并排跑着一个启发式提案器:随机采样参数空间,偶尔对当前最优做局部扰动。它不需要模型,也不花钱,同样跑满四十轮评估。这个基线后来被证明很关键。
第一轮:模型输给了启发式
DeepSeek的直觉其实是对的——它偏向日线上的因子残差反转,也就是买入近期收益落后于横截面平均的币,持有约三十天。这恰好是唯一真正活下来的角落。但它挑了短回看、快调仓:
- 因子残差/日线/回看30/调仓15:-23.7%,淘汰
- 因子残差/日线/回看20/调仓10:-44.4%,淘汰
- 反转/15分钟/回看5/调仓2:-99.1%,淘汰
启发式那边撞进了因子残差/日线/回看60/调仓30,净收益约+52%,多数样本外窗口为正,换手极低。模型离这个边缘只差一步,却站到了错的一侧。族选对了,标定错了。
三个不报错的bug
在放弃模型之前,更有用的东西浮出来了。有几份提案返回的是零换手、零收益——不是亏损,是平的。策略从头到尾没开过仓。查下去是三个bug,全都没有崩溃、没有报错,只有沉默。
- 动量的波动率窗口写死成96根K线。15分钟数据上这是一天,没问题;日线上就是96天,比形成窗口还长,信号永远无法生效。修法是按周期缩放,并给日线设5根的下限。
- 回看长度可能超过形成窗口。智能体在90天的形成窗口上提了100天回看。修法是把回看钳制在实际可用的范围内。
- 调仓网格从第0根K线起算,第0、40、80根刷新。如果信号到第90根才活过来,每个刷新点都落在预热期里。持有期40完全不动,30和45却在交易——这种非单调结果说明是bug,不是没有边缘。修法是把网格锚定在第一根有效K线上。
三个bug的共同点是:回测把"没有持仓"静默当成零收益,就会把它们全部埋掉。
第二轮:它自己画出了边界
空间清理干净后重跑,模型这次聚在日线因子残差上,并自己扫了回看:回看70/调仓35是+67.1%,回看50/调仓25是+65.9%,回看40/调仓20只有+6.5%,回看30/调仓15是-26.6%。
长回看为正、短回看为负,这条线是模型从反馈里自己找出来的,它并不知道启发式搜到了什么。族对了,方向对了,只是需要一个干净的空间。
那这个边缘是真的吗?诚实的回答是:一般。回看40到80天、月度调仓的范围内,净收益大致在+46%到+84%之间,五年里四年为正,2023年跌得很重,扛得住每边30个基点的悲观成本假设,年化夏普约0.9。一个打乱标签的置换检验给出p=0.048,刚好卡在显著性的边上。参数和族是在同一批结果上选出来的,这个p值没有覆盖整个搜索过程。它是一条有希望但未确认的线索,回测窗口已经用完了。
第三轮:数字翻倍,宽度没动
把模型包进一个混合提案器——模型选族和周期,交替轮次里围绕当前最优扫回看和调仓。它在回看50天、月度调仓处找到峰值:净收益+123.7%。
这是个陷阱,有一列数据直接暴露了它:幅度翻倍,宽度几乎没动。挑更好的参数能把幅度吹起来,宽度不吃这一套。而且这是35组配置里的最优,不是平均值——就算35组全都没有真实边缘,随机波动也会造出一个赢家。通缩夏普算下来是0.70,门槛要求0.95。最优配置没过线,这不证明没有边缘,但意味着35路搜索之后不能声称显著。
第四轮:平均整个高原,而不是挑一个赢家
过拟合有现成的解药,之前一个都没用。做法是把日线上回看40到80之间、符号保持一致的因子残差配置全部等权平均,不挑赢家,月度调仓。结果是净收益+75.8%,年化夏普0.61,62%的窗口为正。
这个区间本身也是看着同一批结果划出来的,所以没有完全消除选择偏差,但它降低了对任何单一幸运配置的敏感度。+75.8%是一个对参数不那么敏感的样本内研究结果,不是对阿尔法的独立确认。
结论很朴素:没有造出一个会找阿尔法的AI。造出的是一个直觉对、标定错的便宜智能体,一套靠"把平仓返回成平仓"抓出三个静默bug的框架,一个用干净空间把数字吹高60%的优化器,以及一步把有希望的研究信号和虚高的回测结果分开的集成。
三件事值得带走:先跑启发式基线,搜索空间没清理干净之前它一直赢;智能体的诚实程度取决于给它打分的那个东西,裁判先立,提案器随时可换;一旦提案器能优化,它就会优化——盯宽度,别盯幅度,能平均高原就别挑最优配置,+124%和+76%之间的差距全部来自参数敏感度。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
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.