

风险模型的反人性
QIML一直觉得,A股做量化,风险模型是一件很“反人性”的事。
你做得越认真,越不容易从回测里得到奖励;但你一旦做错,惩罚来得非常直接,而且往往发生在你最不希望它发生的时候。
你一定见过这种场景:行业分散了,风格也中性了,约束写得很漂亮,TE看起来也挺可控——一切都像教科书。可一到压力情境,组合还是一起跌,跌得异常整齐。
复盘会上大家互相看一眼,最后把锅丢给一个词:拥挤。
真正尴尬的是下一句:“那我们下次怎么避免?”
房间里往往会安静一下。因为大家都知道,拥挤不是一个标签,它更像一个触发器。触发器背后是策略同质化,是交易路径,是流动性结构,甚至是执行细节。你很难靠一句“以后注意”解决它。
于是讨论很容易走向另一个极端:开始争论哪个风险模型更准?
这个争论很自然。我们都是量化研究员,当然希望更准。
但问题也恰恰出在:“更准”
准,到底准在哪?
风险模型为什么总是吵不完?
QIML后来发现,不是大家水平差很多,而是大家用同一个词——“准”——在说三件完全不同的事。
同样一句“模型不准”,在组会里通常是三种意思:
所以QIML更愿意把“准”拆开:预测准、解释准、决策准
预测准,像天气预报。解释准,像病历。决策准,像方向盘。
天气预报准不准,是一回事;病历写得清不清,是另一回事;方向盘打下去车会不会乱甩,是第三回事。
很多争论之所以吵不完,是因为有人在聊天气,有人在聊病历,还有人在聊方向盘。当然对不上。
而一旦把“准”拆开,问题就变具体了:你现在最痛的是哪一种?是波动对不上,是归因讲不清,还是优化器让组合不像人?
想清楚这个问题,再去看风险模型的演化,就清晰得多。更进一步说,这三种“准”在很多时候并不是同时往一个方向走的。一个模型可能在某段时间里把预测误差压得很低,但解释结构变差,或者一接进优化器就让组合行为变得不稳定。也正因为如此,真正成熟的风险模型很少只追求单点最优,而更像是在不同“准”之间做长期权衡。
当风险模型变成“语言”之后
很多人提到Barra,习惯把它当成一套模型。但在更大的工作流里,它其实是MSCI整体组合分析与风险管理体系的底层风险结构——模型只是入口,真正形成价值的,是围绕这套风险语言展开的一整套研究框架和应用体系。
真正让一套风险模型变得重要的,不是它算得快不快,也不是某一段时间误差小多少,而是——当足够多的人用它做归因、做风控、接优化、做沟通,它开始变成一种语言。
语言的价值,不在某一个句子多漂亮,而在于:大家说的是不是同一个世界。
早期的风险模型,更像一个结构框架:行业、风格、协方差,足够用了。但市场不是静止的。当你在生产里反复遇到这些问题——
从 CNE5 到 CNEX,补的不是“数量”,而是“表达能力”!
这种演进并不是简单“加因子”,而是在长期跨周期数据验证和统一研究框架下,对中国市场结构进行系统性表达能力扩展。它既延续了全球风险模型的研究逻辑,又针对本地市场特征进行深化。
State Ownership Factor(国有持股因子)不是为了增加收益预测,而是把“默认规则”写进模型。以前这部分差异常常落在 residual 里,现在至少有了名字。更重要的是,这种“有了名字”不是概念上的升级,而是归因上的升级。换句话说,很多过去“大家都知道有、但很难在统一口径下说明白”的结构性倾向,开始进入可讨论、可约束的范围。
Stock Crowding Factor(拥挤度)不是承诺避免踩踏,而是让你不再在这个维度上完全失明。以前是复盘词,现在变成监控对象。更具体地说,在一些流动性收缩、风格快速切换的阶段,表面上行业和传统风格暴露都不高的组合,仍然可能因为持仓结构高度相似而出现同步调整。把拥挤度纳入风险结构,至少能让这类“同船风险”在事前被看见,而不是只在回撤之后才在复盘里被总结出来。尤其值得注意的是,真正危险的很多时候不是“已经很拥挤”,而是“拥挤正在快速形成”——也就是拥挤度变化的斜率,比拥挤度水平本身更值得盯。
当一件事可以被写成对象,它才真正进入语言系统。
语言的第二层:承认现实不是线性的
你以为控制了一个风格,市场往往用两个风格一起动;你以为相关是稳定的,状态一切换就变形。Machine Learning捕捉非线性与交互,Adaptive Covariance Adjustment,自适应协方差——这些名字听起来技术味很重,但本质只有一个问题:当世界在变时,语言能不能跟上?如果语言只能描述“平稳世界”,一到状态切换,它就会失真。这不是一个抽象问题。
如下图所示,当动量暴露低到一定程度时,股票的真实表现并不会简单沿着线性关系继续变差,而是会出现明显偏离;同时,不同风格之间的交互本身也会带来额外信息。换句话说,非线性不是为了炫技,而是在承认一件很朴素的事实:真实市场里,很多风险和收益关系本来就不是直线。

图表来自:MSCI

图表来自:MSCI
语言的第三层:你到底在描述哪个市场
行业口径看似只是分类问题,但口径一变,你描述的市场结构就变了。回归样本是谁?估计 universe 怎么选?行业结构是否贴近真实交易结构?语言的第一步,从来不是因子,而是“谁在说话”。
一个不成熟的风险语言,最大的特征是什么?Residual 越来越大,归因越来越心虚。当越来越多的东西落进 specific risk,不一定是模型错,而可能是表达能力不够。语言词汇量不够。
这件事之所以值得警惕,不只是因为归因变得难看,而是因为一旦越来越多的风险被留在“解释不了”的部分,后面的约束、监控和复盘都会一起失去抓手。换句话说,residual 变大,往往是整套风险语言开始失效的信号。
把结构性因子拉出来,把拥挤对象化,让相关结构更贴近真实市场,residual 不会消失,但会变得更“纯”。这才是成熟。
如果用三种“准”回看这条演化线,会很清晰:
升级的目的,不是赢 0.01,而是减少一种更昂贵的成本——关键时候讲不清、对不齐、压不住。
当风险模型成为行业语言,它要服务的,不是一条回测曲线,而是一整套工作流。在很多机构里,这套语言本身就是一种共享基础设施:归因、优化、监控、复盘,乃至不同团队之间的协作,都建立在同一套风险结构之上。
风险模型在团队里真正干三件事
把风险模型放回一线团队,它最常见的角色,其实就三件事:把风险讲明白,让组合行为可控,让风险提前露头。
但这三件事并不是三套独立工具,而是建立在同一套风险结构上的同一个闭环:归因用它,优化器用它,监控系统也用它,团队之间协作时说的还是它。
这三件事,就是一个闭环:能解释 → 能约束 → 能监控。
现实里,大家做的事情,本质上是用不同方式,把这套语言落地。
1、自己实现,是先跑起来,再慢慢修。哪里痛修哪里:极端行情不稳就补稳健处理,优化器抽风就围绕解稳定和换手去改,归因讲不清就想办法减少 residual。优点是可控,缺点也很现实——你维护的不是代码,而是一套口径。版本、复现、一致性,成本会越来越重。
2、第三方仿 Barra,是把对象配齐,把地基外包。暴露、协方差、归因接口都有,好处是省事、上手快、验证成本低。但底层口径在外部,规模变大之后,追溯和一致性会成为新问题。
3、MSCI Barra 本体更像长期语言底座。它未必在短窗口赢得最多掌声,但强调的是可追溯、可复现、跨团队对齐。当规模变大、产品线变复杂,这种“说的是同一个世界”的价值会越来越明显。它不会替你消灭风险,但能让你在关键时刻,不至于讲不清。
表面在谈模型,实质在谈——这套风险语言,能不能让工作流闭环。这也是为什么行业里大家虽然都在做 Barra-like 的框架,但真正拉开差距的,往往不是“有没有行业+风格+协方差”这套壳,而是这套语言在压力情境下是否稳定、在组织里是否可追溯,以及它能不能长期支撑一致的归因和约束体系。这也是为什么很多团队前期看起来差别不大,真正到产品线变复杂、资金规模变大、协作链路变长的时候,差距才开始显性:前面拼的是框架,后面拼的是维护这套语言的能力。
AI时代,风险模型反而更重要
AI 让做因子变得更容易。特征更多,迭代更快,同质化也更强。很多人以为这会让风险模型变得不重要。现实可能恰恰相反。当策略越来越像,交易越来越拥挤,你更需要一套稳定的风险语言,把那些“你以为分散了但其实同船”的东西提前暴露出来。
AI 没有替你解决风险,它只是把风险换了一种更隐蔽、更结构化的形式。相关性在压力情境下更容易抬起来,残差更容易变成垃圾桶,优化器更容易在高维约束下行为失真。风险模型之所以反人性,是因为它很少给你即时奖励,却会在关键时刻暴露你有没有认真对待它。
AI 时代不会改变这一点,只会放大这一点。所以下次再听到“哪个更准”的讨论,不妨换成三个更有用的问题:
1、你说的准,是预测准、解释准,还是决策准?
2、你最怕它在哪种情境下失效?
3、它在你的工作流里,承担的是解释、约束,还是监控?
当这三个问题被问清楚,很多争论自然会安静下来。你不再是在找一个“听说更准”的模型,而是在为自己的团队,建立一套真正能代表行业标准且长期使用的风险语言。