多因子模型理论:从CAPM到Barra的演进之路
做量化选股的人,没人能绕开多因子模型。这就像学开车必须懂刹车油门一样基础。
我个人习惯把多因子模型的发展看作一部「资产定价的进化史」。从最简单的CAPM开始,一步步打补丁,最终演变成今天大家用的Barra模型。这个过程很有意思,咱们今天就来捋一捋。
1. CAPM模型:一切的开端
CAPM,全称资本资产定价模型。1960年代由Sharpe他们搞出来的。
公式很简单:
E(Ri) = Rf + βi × (E(Rm) - Rf)
什么意思呢?一只股票的预期收益 = 无风险利率 + 它的β乘以市场超额收益。
说白了,CAPM认为:股票的收益只跟市场整体走势有关。你买茅台还是买工商银行,区别就在于β大小。
核心观点:系统性风险(市场风险)是唯一被定价的风险。非系统性风险可以通过分散化消除。
我在项目中遇到过不少新手,上来就问我:「老师,CAPM这么简单,能用吗?」
嗯,能用,但不够用。为什么呢?
因为现实世界中,股票的收益受很多因素影响。光看市场β,你解释不了为什么小盘股长期跑赢大盘股,也解释不了为什么价值股比成长股表现好。
我的经验:CAPM更适合做基准比较,而不是选股工具。我一般用它来计算组合的α,也就是超额收益。
2. Fama-French三因子模型:打第一个补丁
1992年,Fama和French两位大神出手了。他们发现,CAPM解释不了的两个现象:
- 规模效应:小市值公司长期跑赢大市值公司
- 价值效应:低市净率(价值股)跑赢高市净率(成长股)
于是他们加了两个因子:SMB(小减大)和HML(高减低)。
三因子模型公式:
E(Ri) - Rf = βi × (E(Rm) - Rf) + si × SMB + hi × HML
你想想看,这个模型比CAPM强在哪?
它承认了市场不是完全有效的。小盘股之所以有超额收益,是因为它们风险更高、流动性更差。价值股之所以跑赢,是因为市场对它们的悲观预期过度了。
实战意义:三因子模型告诉我们,选股时应该关注市值和估值这两个维度。我自己的量化策略里,市值因子和估值因子永远是标配。
我记得有一次做回测,一个简单的「买入小市值+低市盈率」组合,年化超额收益能达到8%以上。当然,这是十几年前的事了,现在这个策略已经拥挤了很多。
注意:三因子模型在中国A股市场的表现跟美股不太一样。A股的小市值效应更明显,但价值效应有时会失效。做策略时一定要本地化验证。
3. Carhart四因子模型:再加一个动量
1997年,Carhart在Fama-French三因子的基础上,加了一个动量因子(MOM)。
动量效应是什么?说白了就是「强者恒强,弱者恒弱」。过去12个月涨得好的股票,未来几个月往往继续涨;跌得惨的,继续跌。
四因子模型公式:
E(Ri) - Rf = βi × (E(Rm) - Rf) + si × SMB + hi × HML + wi × MOM
这个模型在学术界和业界都挺受欢迎的。为什么?
因为它抓住了市场的一个核心特征:趋势会延续。虽然有效市场假说认为价格已经反映所有信息,但现实中,信息是逐步扩散的,投资者的反应也是滞后的。
避坑指南:我曾经在A股上直接套用美股的标准动量因子(过去12个月,剔除最近1个月),结果回测效果很差。后来发现,A股的动量周期更短,大概3-6个月。所以,因子参数一定要根据市场调整。
四因子模型也有它的局限性。它没有考虑波动率、质量、分红等因子。而这些因子在实战中也很重要。
4. Barra模型:工业级的多因子框架
前面三个模型都是学术界的产物。Barra模型不一样,它是MSCI公司开发的,专门用于投资实战。
Barra模型的核心思想是:用多个风格因子来解释股票收益。常见的因子包括:
| 因子类别 | 具体因子 | 说明 |
|---|---|---|
| 市场因子 | Beta | 股票对市场的敏感度 |
| 规模因子 | 市值 | 大市值 vs 小市值 |
| 价值因子 | BP、EP、CP | 账面市值比、盈利收益率等 |
| 动量因子 | 过去收益 | 短期和长期动量 |
| 波动率因子 | 残差波动率、Beta | 低波动异象 |
| 质量因子 | ROE、杠杆率、盈利稳定性 | 公司基本面质量 |
| 成长因子 | 盈利增长、营收增长 | 成长性 |
| 分红因子 | 股息率 | 分红水平 |
Barra模型的公式长这样:
ri = f_market × βi + Σ(f_j × x_ij) + εi
其中,ri是股票超额收益,f_market是市场因子收益,βi是市场暴露,f_j是风格因子收益,x_ij是股票在因子j上的暴露,εi是残差。
我个人觉得,Barra模型最大的优势在于:它把因子暴露和因子收益分开了。这样你就可以:
- 知道每只股票在哪些因子上有暴露
- 知道每个因子当前赚了多少钱
- 控制组合的因子暴露,实现真正的市场中性
实战要点:做市场中性策略时,Barra模型是标配。你可以用它来对冲掉你不想要的因子暴露,只保留你想要的α。
举个例子。假设你发现了一个选股因子,但你的组合在市值因子上有正暴露(偏小盘)。如果你不做对冲,市场风格切换到大盘时,你的组合就会亏钱。用Barra模型,你可以计算出市值因子的暴露,然后做空对应市值的股指期货来对冲。
注意:Barra模型在中国应用时,因子定义需要调整。比如A股的市值因子,用对数市值比用原始市值更稳定。另外,A股的因子收益波动比美股大,需要更频繁地更新模型。
5. 四个模型的对比总结
咱们用一张表来对比一下:
| 模型 | 因子数量 | 核心因子 | 适用场景 | 局限性 |
|---|---|---|---|---|
| CAPM | 1 | 市场β | 基准比较、资本成本计算 | 解释力弱,忽略其他风险 |
| Fama-French三因子 | 3 | 市场、规模、价值 | 学术研究、简单选股 | 缺少动量、质量等因子 |
| Carhart四因子 | 4 | 市场、规模、价值、动量 | 基金业绩归因 | 因子数量仍有限 |
| Barra | 10+ | 市场、风格、行业 | 风险控制、市场中性策略 | 模型复杂,需要频繁更新 |
从CAPM到Barra,其实就是从「简单解释」到「精细控制」的进化。CAPM告诉你市场风险是重要的,Barra告诉你哪些风格因子在起作用,以及如何管理它们。
6. 知识体系结构图
下面我用一张SVG图来展示这四个模型的关系和演进路径:
这张图很直观地展示了从CAPM到Barra的演进。你会发现,每增加一个模型,因子数量都在增加,对现实的解释力也在增强。但代价是模型变得更复杂,需要处理的数据也更多。
7. 实战中的选择建议
说了这么多,到底该用哪个模型?
我的建议是:
- 做学术研究或快速验证:用Fama-French三因子或Carhart四因子就够了。数据好拿,计算简单。
- 做基金业绩归因:用Carhart四因子,加上一个债券因子(如果涉及固收)。
- 做市场中性策略或风险控制:必须上Barra模型。只有它才能精细地控制因子暴露。
- 做选股因子挖掘:先用Barra模型把已知因子剥离掉,再去寻找新的α因子。
我的习惯:在实盘中,我会用Barra模型做风险控制,用Fama-French三因子做收益归因。两个模型配合使用,效果最好。
好了,多因子模型的理论基础就讲到这里。记住一句话:模型是工具,不是真理。再好的模型,也要结合市场实际情况来用。
公众号:蓝海资料掘金营,微信deep3321