
拆开市场状态才是这篇论文的杀招
整个研究最值得反复嚼的部分,不是换了个什么花哨模型,而是把"市场状态"从一个被平均掉的隐变量,强行拎出来作为独立维度塞进贝叶斯超参搜索。具体做法是先按波动率、按趋势强度把数据切成不同的桶,然后在每一个状态桶里分别跑贝叶斯优化,最终拿到的不再是一组全局最优参数,而是一组"按状态切换"的参数集。
这一刀直接捅在实盘最疼的地方。多少策略死在"回测净值曲线美如画,实盘净值曲线滑滑梯"?根因之一就是超参优化在整个时间序列上被平均掉了——极端闪崩走出来的那组最优参数,扔到低波动慢牛行情里就是原地踏步;反过来,慢牛里精挑细选的参数到了闪崩那天就是等着被扫损的活靶子。把状态切片单独优化,等于在参数层面真正实现了"在不同路况开不同的车"。
很多号称"自适应"的策略最后都变成了"伪自适应"——内核参数纹丝不动,只有仓位在动,结果就是在低波动环境里被来回打脸、在趋势市里仓位永远跟不上。状态切换不是光调仓位就完事的,参数本身就要跟着切。这个道理讲一万遍都不嫌多,但真正落到自己策略代码里的人,十个里面不到两个。
判断"状态"在实战里也有讲究。隐变量模型如HMM可以做,但实战派更喜欢简单的波动率分桶——ATR分位、20日波动率分位都好使。论文里具体用哪种划分没展开,但这部分实现成本不高,关键是分桶后样本量要撑得起贝叶斯搜索的迭代次数。论文里另一个隐含但重要的细节是,这种状态感知的贝叶斯优化对样本量的要求是膨胀的。原本一组全局参数只需要一个时间序列训练集;拆成多个状态桶之后,每个桶里的样本量都被压缩。这意味着状态切得越细,单个桶里过拟合的风险反而上升。所以拆状态也得有度,不能为了切得漂亮把数据切碎。这就是实战里的平衡术——切得太粗,状态自适应变成摆设;切得太细,样本不够又掉进过拟合的坑里。
表格深度学习输了,但拼起来才赢
五种表格模型单独拎出来,没有一个在样本外能稳定压过XGBoost。这一刀砍得够狠,等于把过去几年"表格深度学习大一统"的叙事直接按在地上摩擦。这条结论其实和过去几年学界对表格DL的整体定调一致:在没有海量辅助特征、没有自监督预训练、没有强时序结构的前提下,深度架构相对GBDT并没有压倒性优势。
但关键在下一步。当XGBoost和TabNet的预测被丢进秩聚合——也就是在排序层面集成,而不是简单加权——样本外表现立刻拉开差距。秩聚合对单模型输出的绝对分值不敏感,它在乎的是相对排序的稳定性。这一点和交易室里多年的实战直觉高度吻合:单一信号永远会被市场结构的演化针对,今天能薅到钱的因子,明天可能变成扫损的机器。
两个差异化大的信号源在排序层面互相纠错,本质上和实战里"两个不同逻辑的信号互相验证才能下手"是同一种直觉的两种表述。一个靠趋势、一个靠波动率反转;一个看量价、一个看资金流——这种异构信号拼起来,最后的胜率和稳定性才靠得住。盘口上真正扛得住的资金曲线,不是任何一根单独的曲线,是几条相关性低的曲线叠在一起的那条。
秩聚合的实现比想象中简单:把不同模型的预测都转成排序分(比如按预测值在截面上的分位),然后按规则做组合——可以是简单平均分位,也可以按历史IC加权分位。论文里没展开具体权重怎么定,但即便用最简单的等权平均,样本外稳定性也已经显著拉开。
还有一个值得注意的点是:TabNet本身在样本外单独跑并不如XGBoost,但它和XGBoost拼起来之后贡献巨大。这说明集成里需要的不是每个组件都强,而是组件之间要有差异。两个都很强的模型如果高度相关,拼起来和单跑一个没区别;一个强一个弱、但两者犯错的地方错开,这种组合反而最有价值。这个道理在仓位管理上一样适用——相关性低的两组仓位才是真正分散风险。
盘后该动手的三件事
第一件,把你手里的主力策略按市场状态切片重做超参。按波动率分桶、按趋势强度分桶,分别在每个桶里跑一遍贝叶斯搜索。回测脚本写半小时就能跑起来,但这一步会直接告诉你,原来那套全局参数到底吃掉了多少状态切换的利润。多数人不愿意做这一步,因为结果会让过去一年精心调出来的"最优参数"显得非常可笑——所谓的最优,只是在全样本平均意义下的最优,根本经不起按状态切片的检验。贝叶斯优化的搜索空间定义要跟策略逻辑对齐,不能拍脑袋设一组参数上限下限;否则跑出来的所谓最优解,只是你拍脑袋设定的范围里最优,跟真实最优根本不是一回事。
第二件,把你现有的信号组合拿出来检视一遍,看能不能改成秩聚合或类似的排序集成方式。弱信号的稳定性比强信号的峰值重要一个数量级。一个能在三年里每个月稳定赚1%出头的信号组合,远比一个能在三个月翻倍、剩下九个月连本带利吐回去的信号有实战价值。盘口上活得久的,从来不是那一波暴利的人,是那个每月都能从市场里抠出一点的人。把这个想法落到具体代码上:把现有信号的预测从分值转成排序,然后按桶做集成,比加权平均稳得多。
第三件,把你脑子里"更大、更深、更复杂的模型"这种执念彻底放一放。300只票、11年的硬数据已经足够说明问题:在表格数据上,没有外挂特征、没有自监督预训练的前提下,深层架构不会自动吐出alpha。真正能拉开差距的,是信号源的多样性和集成方式的设计深度,不是模型本身的复杂度。换一个更大的transformer进去,不会让一个稀烂的信号组合起死回生。硬件堆出来的精度,最后都被市场结构的演化磨平。
数据不会替你赚钱,但它会替你指出哪些努力是浪费的。换模型从来解决不了信号烂的问题;真正能拉开差距的,是信号源的多样性和集成方式的设计深度。盘后盯着K线把状态切片和秩集成这两件事想清楚,比盘里多敲几笔强。
相关阅读: 强化学习在量化交易中为什么屡屡失效?从模拟盘到实盘的四大鸿沟 、 Options Technology接入CIX:加拿大股票市场量化交易的底层重构.