单期Brinson归因模型:拆解超额收益的“手术刀”

各位同学,欢迎来到第三章。前两章我们聊了为什么要做归因,以及最基础的收益分解逻辑。从这章开始,我们要正式接触量化投资领域最经典、最常用的归因框架——Brinson模型。

说实话,我在刚入行那会儿,第一次看到Brinson模型的公式,第一反应是:“这不就是个加减法吗?” 但真正在实盘里跑过几轮之后,我才发现,这个“加减法”背后藏着不少门道。你想想看,基金经理的业绩到底是怎么来的?是押对了行业,还是选对了股票?Brinson模型就是用来回答这个问题的。

Brinson模型的数学原理:从“总超额”到“三块拼图”

我们先从最朴素的逻辑出发。假设你是一个基金经理,你的组合跑赢了基准。这个超额收益,说白了,来自两个地方:

  • 资产配置:你在某些行业上比基准“多配”或“少配”了。
  • 个股选择:你在同一个行业里,挑的股票比基准指数里的股票表现更好。

但问题来了,这两件事不是完全独立的。你多配了某个行业,恰好这个行业里的股票你又选得好,那这个收益算谁的?Brinson模型很聪明,它把超额收益拆成了三块:资产配置效应、个股选择效应,以及一个交互效应(也就是上面说的交叉项)。

数学上,我们这样定义:

  • \( w_{pi} \):组合在行业 \( i \) 上的权重
  • \( w_{bi} \):基准在行业 \( i \) 上的权重
  • \( R_{pi} \):组合在行业 \( i \) 内的收益率
  • \( R_{bi} \):基准在行业 \( i \) 内的收益率

那么,组合的总超额收益 \( R_p - R_b \) 可以写成:

超额收益 = Σ [ (w_pi - w_bi) × (R_bi - R_b) ]   // 资产配置效应
         + Σ [ w_bi × (R_pi - R_bi) ]             // 个股选择效应
         + Σ [ (w_pi - w_bi) × (R_pi - R_bi) ]    // 交互效应

嗯,这里要注意。很多初学者会问:“为什么个股选择效应要用基准权重 \( w_{bi} \) 去乘,而不是组合权重?” 我个人习惯这样理解:个股选择效应衡量的是“在基准配置水平上,你选的股票有多牛”。如果你用组合权重去乘,那就把配置的影响也混进去了。

核心逻辑一句话:Brinson归因的本质,是把“配置偏离”和“选股偏离”的贡献分开算,再把它们交叉的部分单独拎出来。

资产配置效应:你赌对方向了吗?

资产配置效应,衡量的是权重偏离带来的收益。公式是:

资产配置效应 = Σ [ (w_pi - w_bi) × (R_bi - R_b) ]

这个公式怎么理解?我举个例子。假设基准里银行板块权重是20%,你配了30%,多配了10%。如果银行板块本身跑赢了基准(比如基准涨了5%,银行涨了8%),那么你多配的这10%就给你带来了正贡献。反过来,如果银行板块跑输了基准,你多配就是“帮倒忙”。

我在项目中遇到过一种情况:有个组合在某个季度配置效应特别高,基金经理很得意。结果我一算,他是在一个波动极大的行业上做了方向性押注,虽然赚了钱,但风险敞口也放得很大。所以,配置效应高不一定代表能力强,也可能是运气好。

避坑指南:我曾经见过有人把配置效应算成 Σ[(w_pi - w_bi) × R_bi],这是错的。一定要减去基准总收益 R_b,否则你算的是“绝对偏离收益”,而不是“相对基准的超额贡献”。

个股选择效应:你的选股眼光如何?

个股选择效应,衡量的是在同一行业内,你选的股票比基准股票强多少。公式是:

个股选择效应 = Σ [ w_bi × (R_pi - R_bi) ]

注意,这里用的是基准权重 \( w_{bi} \)。为什么?因为我们要剔除配置的影响。假设你在医药行业配了10%(和基准一样),但你选的医药股涨了15%,基准医药股只涨了10%,那么你的选股贡献就是 10% × (15% - 10%) = 0.5%。

如果你在某个行业上配置很少,即使你选股能力再强,对总体的贡献也有限。这就是为什么很多量化基金喜欢在权重大的行业里做选股——因为“杠杆效应”更明显。

我个人习惯在分析个股选择效应时,先看行业内的收益差,再看权重。如果某个行业收益差很大但权重很小,那这个选股能力其实是被“浪费”了。

交互效应:配置与选股的“化学反应”

交互效应,是Brinson模型里最容易被忽略、也最容易引起争议的部分。公式是:

交互效应 = Σ [ (w_pi - w_bi) × (R_pi - R_bi) ]

这个项的含义是:你在某个行业上既多配了,又选对了股票,那么这两件事叠加产生的额外收益。

举个例子。你在科技行业多配了5%,同时你选的科技股比基准科技股多涨了3%。那么交互效应就是 5% × 3% = 0.15%。这笔收益既不能完全算作配置的功劳,也不能完全算作选股的功劳,它是两者协同的结果。

在实际工作中,交互效应可正可负。如果配置和选股方向一致(都做对了),交互效应为正;如果方向相反(比如多配了但选股很差),交互效应为负。

注意:有些机构在汇报时会把交互效应合并到个股选择效应里,或者合并到配置效应里。我个人建议不要合并,因为交互效应能揭示基金经理的操作风格——是“顺势加仓”还是“逆势操作”。

一张图看懂Brinson归因逻辑

下面我用一张SVG图,把整个Brinson归因的流程和三个效应的关系画出来。你可以把它当作一个“思维导图”来记。

单期Brinson归因模型结构图 单期Brinson归因模型:超额收益的三块拼图 总超额收益 资产配置效应 权重偏离 × 基准行业超额 个股选择效应 基准权重 × 行业内选股超额 交互效应 权重偏离 × 选股偏离 Σ[(w_p - w_b) × (R_b - R_基准)] Σ[w_b × (R_p - R_b)] Σ[(w_p - w_b) × (R_p - R_b)] 三者之和 = 组合总超额收益 配置效应 + 选股效应 + 交互效应 = R_p - R_b

一个完整的计算示例

光讲理论太干,我们直接上一个例子。假设基准只有两个行业:消费和科技。数据如下:

行业 组合权重 w_p 基准权重 w_b 组合收益 R_p 基准收益 R_b
消费 60% 50% 8% 6%
科技 40% 50% 12% 10%

基准总收益 R_b = 50% × 6% + 50% × 10% = 8%。

现在我们来算三个效应:

  1. 资产配置效应:
    • 消费:(60% - 50%) × (6% - 8%) = 10% × (-2%) = -0.2%
    • 科技:(40% - 50%) × (10% - 8%) = -10% × 2% = -0.2%
    • 合计:-0.4%
  2. 个股选择效应:
    • 消费:50% × (8% - 6%) = 50% × 2% = 1.0%
    • 科技:50% × (12% - 10%) = 50% × 2% = 1.0%
    • 合计:2.0%
  3. 交互效应:
    • 消费:(60% - 50%) × (8% - 6%) = 10% × 2% = 0.2%
    • 科技:(40% - 50%) × (12% - 10%) = -10% × 2% = -0.2%
    • 合计:0.0%

总超额收益 = 组合收益 - 基准收益 = (60%×8% + 40%×12%) - 8% = (4.8% + 4.8%) - 8% = 1.6%。

验证一下:-0.4% + 2.0% + 0.0% = 1.6%。完美对上。

从这个例子你能看到什么?

  • 配置效应是负的:因为组合在表现好的科技上低配了,在表现差的消费上高配了。
  • 选股效应是正的:两个行业里选的股票都比基准强。
  • 交互效应为零:因为配置偏离和选股偏离在消费和科技上正好一正一负抵消了。

这个基金经理的业绩,全靠选股能力撑着。配置上他其实犯了错。

使用Brinson模型时的几个常见坑

最后,我根据自己的经验,列几个实战中容易踩的坑:

  • 数据频率问题:Brinson模型是“单期”模型,如果你用日频数据算,然后简单加总到月频,会有“复利效应”导致的误差。我建议至少用周频或月频数据做一期归因。
  • 行业分类的颗粒度:分类太粗,选股效应会被掩盖;分类太细,交互效应会变得很大,难以解释。我个人习惯用申万一级行业或GICS行业分类。
  • 现金处理:如果组合里有现金仓位,而基准没有,现金的收益通常很低。这时候配置效应会显示“低配现金”是正贡献,但这其实只是杠杆效应。要小心解读。
  • 交互效应的归属:有些机构把交互效应归入选股,有些归入配置,有些单独列示。我建议单独列示,因为它能反映基金经理的“协同操作”能力。

一个小技巧:如果你用Python做Brinson归因,可以用 alphalens 或自己写一个循环。但记得,权重和收益一定要对齐时间戳。我曾经因为数据没对齐,算出来的交互效应大得离谱,排查了半天才发现是日期错位了。