主题
第38章:基准与策略归因
2025 年,A 股几个宽基指数的全年涨幅是:沪深300 +17.66%、中证500 +30.39%、中证1000 +27.49%、中证2000 +36.42%(Wind 数据)。假设你的只做多组合这一年赚了 30%——同一份持仓、同一年,只换比较对象,结论就有四种:对沪深300 是超额 +12.34 个百分点,对中证500 是 −0.39 个百分点,对中证1000 是 +2.51 个百分点,对中证2000 是 −6.42 个百分点。“赚了多少”这句话本身不含信息,它必须跟着“跟谁比”。
但这只是第一层。就算基准定对了,那个 +12.34 个百分点仍然可能是三件完全不同的事:押对了行业(2025 年申万一级行业里有色金属涨 94.73%,食品饮料跌 9.69%);持仓整体比基准更偏小盘(中证2000 比沪深300 多涨 18.76 个百分点);或者真的在每一个行业里都挑中了更好的公司。三者的可复制性完全不同——前两种要求你每年押对行业或风格,只有第三种要求你分辨公司。
本章要回答三个问题:该拿什么当基准;超额里行业配置、风格暴露、个股选择各占多少;以及亏损该记在谁头上。
第36章已经把“先扣掉暴露,再看剩下多少是选择”立成一个必须做的动作(风格暴露指组合在市值、估值、波动这些共同特征上偏离基准的程度),本章把它做成能照着算的分解:行业这一层用 Brinson 分解,风格这一层用“主动暴露乘以因子收益”。第37章回答策略在别的条件下还成不成立,本章回答它挣的到底是什么钱——只有知道来源,第39章要管的那些暴露才有对象。
一、先定基准:同一份持仓,四个基准四种结论
一个数字怎么变成四种结论
把开头那组数字摆成表,问题就藏不住了。下表沿用“组合 2025 年赚 30%”这个教学示意,四个基准都是真实涨幅:
| 比较对象 | 2025 年涨幅 | 组合的超额收益 |
|---|---|---|
| 沪深300 | +17.66% | +12.34 个百分点 |
| 中证500 | +30.39% | −0.39 个百分点 |
| 中证1000 | +27.49% | +2.51 个百分点 |
| 中证2000 | +36.42% | −6.42 个百分点 |
同一份持仓,“大幅跑赢”和“明显跑输”只隔着一行表格。所以任何一句“我的策略今年赚了 30%”,在补上基准之前都不能拿来评价。
读图:四根柱子是同一个组合、同一年的超额收益,只有比较对象不同。从左到右,基准的持仓市值越来越小,超额从 +12.34 个百分点一路变到 −6.42 个百分点。柱子过零线那一刻,结论就从“跑赢”翻成“跑输”,而组合本身一个字都没改。 这就是基准必须最先定下来的原因。
选基准的三条检查
知道基准重要,不等于知道该选哪一个。下面三条可以照着做,顺序不能反。
第一,持仓匹配度。 把组合和候选基准的市值、行业权重、估值水平并排放一行看。第36章给过一个具体检查,做法是这样的:把股票池里的股票按市值从大到小排序、等分成五档,再分别算组合相对基准在每一档里的平均超额。如果超额几乎全挤在市值最小的那一两档,说明组合的实际栖息地就在小盘,基准就该落在那边,而不是沪深300。 反过来说,如果持仓市值中位数和沪深300 差不多,却拿中证1000 当基准,超额会被人为抬高——抬高的部分不是你挣的。
第二,可投资性。 基准必须是真能买到的东西。对个股组合,这意味着基准指数要有对应的、规模与成交额足够的 ETF(第18章、第32章);对一个只做多不能做空的账户,这也意味着你没法靠做空把基准的某一部分对冲掉。一个买不到的基准,它的超额无法兑现——你可以在报告里写“跑赢中证2000 六个百分点”,但账户里拿不到这六个百分点。
第三,可算性。 基准的权重和收益要能按 point-in-time 取到,还要知道它什么时候调样、按什么规则调样(第27章)。沪深300、中证500、中证1000 这些指数的成分与权重是公开可得的,所以能算;自己临时拼的一个“等权平均收益”不是合格基准,因为它的权重在事后才可知,回测里很容易混入未来信息。
对个股加 ETF 的混合组合,基准要分开定:个股部分对照股票指数,ETF 部分对照它跟踪的指数,最后按两部分的资金占比合并成一个混合基准。
边界:基准要写死,而且换基准要重报
基准和股票池、成本假设一样,是必须在研究开始前写死的东西,不能等看到结果再挑(第30章的三条纪律)。研究中途换基准,等于把之前所有“超额”数字作废重算。
ETF 组合在这里有一个特殊情形:一篮子行业或主题 ETF 没有天然的宽基基准。这时要么自己按持仓权重拼一个混合基准,要么坦白说“这个组合只做绝对收益评价,不谈超额”。声称“跑赢沪深300”却又满手行业 ETF,是最常见的自我美化:那笔超额里绝大部分是行业选择,而沪深300 根本不承担这种比较。
二、行业配置还是行业内选股:一次 Brinson 分解
两个组合,同样的超额,完全不同的本事
甲、乙两个组合,2025 年都跑赢基准 10 个百分点。甲的持仓里,有色金属从基准的 4% 加到 12%,其余行业基本照抄基准——它挣的是“押对了涨 94.73% 的那个行业”。乙的行业权重和基准一模一样,但它在每一个行业里持有的都是该行业内表现更好的那一批公司。
两个组合的绩效数字完全相同,可复制性却不同:甲要求你每年都能判断对哪个行业最强,乙要求你能在同一行业里持续分辨公司。不拆开看,你没法知道自己练的是哪一种本事,也没法知道自己明年会栽在哪一种失败上。
三块贡献,一块都不能少
把超额拆成三块,用的是 Brinson 分解(Brinson、Hood 与 Beebower,1986;Brinson 与 Fachler,1985 的改进版)。设
三块依次是:
- 行业配置收益
:权重偏离乘以该行业相对基准总收益的超额。它回答“超配的那些行业,是不是比基准整体涨得更好”。 - 个股选择收益
:按基准权重加权、衡量行业内选得好不好。它回答“如果行业权重完全照抄基准,我还能不能多赚”。 - 交互项
:权重偏离与选股偏离的乘积。它回答“我超配的行业里,是不是恰好也选得更好”。
用 2025 年的真实行业涨幅算一遍
下面换一个示意组合来演示分解:它 2025 年拿到 27.70%,与开头那个赚 30% 的组合不是同一个,两节的示意数字互不相干。例子用 2025 年申万一级行业的真实涨幅(有色金属 +94.73%、食品饮料 −9.69%),组合的权重与行业内选股收益是教学示意。为看清结构,把 31 个行业合成三组:
| 行业组 | 基准权重 | 组合权重 | 基准内该组收益 | 组合内该组收益 |
|---|---|---|---|---|
| 有色金属 | 4% | 12% | +94.73% | +99.73% |
| 食品饮料 | 8% | 2% | −9.69% | −14.69% |
| 其余行业合计 | 88% | 86% | +16.64% | +18.64% |
(其余行业这一组的收益是反解出来的:让基准总收益正好等于沪深300 的 17.66%。)
先算两端的总收益。基准:
| 来源 | 有色金属 | 食品饮料 | 其余行业 | 合计 |
|---|---|---|---|---|
| 行业配置 | 7.83 | |||
| 个股选择 | 1.56 | |||
| 交互项 | 0.66 | |||
| 合计 | 10.05 |
(单位均为百分点,因四舍五入各项之和与总数相差不超过 0.01。)
三块加起来正好等于 10.05,一分不多一分不少——这是这套分解的价值:它不是三种估计,而是一次彻底的切分。
读图要注意最后那段结论:这 10.05 个百分点里,7.83 个百分点是“多配了有色金属”这一件事带来的,1.56 个百分点才是照抄基准权重、靠行业内挑股挣到的,剩下 0.66 是“押注叠加”——在超配的行业里恰好也选得更好。也就是说,这套被称作“选股策略”的东西,2025 年大约八成的超额来自一次行业判断。
交互项不是杂物。它为正,说明你把钱加在了自己也更会挑的行业上;如果它显著为负,说明你的行业判断和选股能力在互相拆台——在最会挑的行业上反而配得最少。这种组合本身就是一条值得处理的信号。
边界
它假设期内不调仓。 上例用一整年做单期,实际等于假设你年初就拿着这套权重不动。真实归因要按月或按季滚动做,再把各期贡献连起来。
各期贡献不能直接相加(跨期这一种不能加)。 收益是复利相乘的,Brinson 的各期贡献却是可加的,所以简单求和会与累计超额对不上。业界的做法是用链接系数对各期结果做缩放(Cariño 1999 的对数链接法是最常见的一种),使各期之和等于真正的累计超额。看到一份多年归因报告,先问它用了哪种链接方法;说不上来的,各期数字多半是硬加出来的。
行业分类标准会改变结论。 申万一级 31 个行业、中信一级 30 个行业、按产业链粗分的七八个板块,切出来的“行业配置收益”不是同一个数。报告里必须写明用的是哪一套。
权重为零的行业要特殊处理。 组合完全不配某个行业时,该行业内没有持仓、收益无从计算,直接填零会凭空产生一笔“选股收益”。标准做法是把它设成等于基准行业收益,这样不影响等式成立。
不要把 Brinson 读成“行业配置最重要”。 那篇 1986 年的论文有个被引用了几十年的数字:资产配置政策解释了样本基金季度收益变动的 93.6%。它解释的是收益随时间的波动,不是收益的水平,而且后来 Ibbotson 与 Kaplan(2000)用截面回归给出的“基金之间收益差异有多大比例来自配置政策”约为 40%。本章的例子里行业配置占八成,是这个示意组合的特定结果,不是普遍规律。
三、除了行业还有风格:因子归因与市值下沉
扣掉行业之后剩下的,可能仍然是风格
上一节那个组合,就算行业权重完全照抄基准、一年只挣到 1.56 个百分点,也还不能宣布“选股有效”。因为它可能只是在每一个行业里都买了更小的那只——行业权重一样,市值暴露不一样。
2025 年把这件事放得很大:中证2000 涨 36.42%,沪深300 涨 17.66%,差 18.76 个百分点;同期万得微盘股指数(由市值最小的一批股票等权构成)上涨 70.7%。在这一年,“每个行业里挑市值更小的那只”本身就是一种能挣到钱的行为,但它挣的是风格,不是选股。 反过来的年份也有:2024 年 1 月,万得微盘股指数单月跌 21.28%,沪深300 只跌 6.29%,同一套做法当月就大幅落后。
这里要先把两把尺子分开。 第二节的 Brinson 分解、以及本节下面第一张因子表,起点都是“相对基准的超额”;本节最后那张“从总收益往下扣”的表,起点是“组合自己的绝对收益”。起点不同、扣的层次也不同,两组数字不能互相对照。真实归因里行业与风格还会互相重叠——超配有色金属同时也抬高了小盘暴露——所以行业层与风格层的贡献也不能加在一起。实务中一次通常只选一套口径来报:想知道“行业判断值多少”就用超额口径,想知道“我总共承担了多少偏离”就用总收益口径。
因子贡献等于主动暴露乘以因子收益
风格这一层的算法只有一句话:某一因子的贡献 = 组合相对该因子的主动暴露 × 该因子当期的因子收益。
- 因子暴露是标准化的坐标:全市场股票的该特征值经去极值、标准化后,0 是平均水平,+1 表示比平均高一个标准差。以规模因子为例,数值越小代表市值越小,所以 −0.55 读作“偏小盘 0.55 个标准差”。组合的暴露就是各持仓暴露按权重加权平均。
- 因子收益是“暴露每增加一个单位,当期能带来多少收益”,由每一期对全市场做横截面回归估计出来(第19章)。它每期都在变:小盘占优的月份规模因子收益为负(因为暴露越大、即市值越大,收益越差),大盘占优时转为正。
用一个月度示意把这一步走完。下表是某组合相对基准的主动暴露,以及当月的因子收益(均为教学示意):
| 因子 | 主动暴露(组合 − 基准) | 当月因子收益 | 贡献 |
|---|---|---|---|
| 市场 | +0.05 | +2.0% | +0.10 |
| 规模 | −0.55 | −1.2% | +0.66 |
| 价值 | +0.20 | +0.4% | +0.08 |
| 动量 | +0.35 | −0.8% | −0.28 |
| 波动 | −0.10 | +0.3% | −0.03 |
| 因子合计 | +0.53 |
规模那一行的读法是:组合比基准偏小盘 0.55 个标准差,而该月规模因子收益是 −1.2%(大盘吃亏),所以偏小盘这一侧挣到
假设这个组合当月对基准的超额是 +0.70%,那么残差(也就是选股那一部分)是:
0.70% 的超额里,0.53% 来自暴露,只有 0.17% 是因子解释不了的残差。 残差才是通常说的选股能力——它不依赖你押对了哪一类股票,只依赖你在一群特征相近的公司里挑得更好。
这一步需要的因子不止五个。实务中的风险模型(以 Barra 的中国版为例)用九个一级风格因子:波动、动量、价值、规模、流动性、质量、成长、股息率、情绪,再加三十个左右的行业因子。因子清单变长,残差就会变小——这是好事也是风险:扣得越干净,剩下的越像真本事;但扣得过头,也可能把本来属于你的收益算成了风格。
从总收益到残差 alpha:一层一层扣
风格归因和“Beta 收益与 Alpha 收益”是同一件事的两种说法,只是扣的层数不同。用开头那个 2025 年赚 30% 的示意组合把它走完(无风险利率取 2025 年末十年期国债收益率 1.85%;
| 层次 | 怎么算 | 这一层 | 扣掉后还剩 |
|---|---|---|---|
| 组合总收益 | — | 30.00% | |
| 无风险利率 | 十年期国债 1.85% | 1.85% | 28.15% |
| 市场 Beta 部分 | 18.18% | 9.97% | |
| 规模下沉 | 约 30% 的仓位等效从沪深300 移到中证2000: | 5.63% | 4.34% |
| 残差(选股 alpha) | 剩下的部分 | 4.34% | — |
(
一个 2025 年赚 30% 的偏小盘组合,扣掉市场涨跌和规模下沉之后,真正属于选股的可能只剩 4.3% 左右,不到总收益的七分之一。 这就是为什么只看总收益会严重高估策略:前两层不要求你做任何判断,只要在场、并且站在小盘那一侧就能拿到。
三种 alpha 不是同一个数
“我的 alpha 是多少”这句话必须补上“扣掉了什么”,因为它们数值差得很远:
| 口径 | 扣掉了什么 | 剩下的东西意味着什么 |
|---|---|---|
| CAPM alpha | 只扣市场涨跌 | 含全部风格与行业偏离,通常被高估 |
| 多因子 alpha | 市场 + 规模、价值、动量等风格 | 风格之外的选择能力,但对行业偏离不设防 |
| 行业中性后的选股收益 | 再加行业权重 | 同一行业内挑公司的能力,最严格也最小 |
第36章那个“先扣掉行业和市值”的动作,对应的就是最后一行。报数时把口径写清楚,否则两个人的 alpha 根本没法放在一张表里比。
边界
- 因子收益是估出来的,不是观察到的。 它来自每期的横截面回归,估计误差会直接进入贡献值。单月归因的噪声很大,要看的是多个月的分布,不是某一个月。
- 暴露不等于收益。 偏小盘 0.55 个标准差只是你站的位置,它值多少钱取决于当期的因子收益。风格反转时,同一个位置立刻变成亏损来源。
- 残差为正也不等于策略好。 残差小、稳定、且能给出经济解释,才算可信;残差大但波动剧烈,可能只是模型漏掉了某个因子(第31章讲过因子冗余与共线性的同类问题)。
四、回撤也要归因:亏损同样分三层
同一个分解,用在亏钱的那段
前面三节拆的是收益,同样的方法必须再拆一遍亏损——因为回撤的原因决定了该做什么,而这一点从净值曲线上看不出来。
2026 年 7 月是一个现成的样本:万得全A(覆盖全部 A 股的宽基指数)当月跌 13.14%,科创50 跌 25.90%,同期红利指数(由高股息股票构成的指数)上涨约 12.8%,沪深300 跌 7.86%。假设你的组合当月跌 18.0%(教学示意),那么对沪深300 的超额回撤是 −10.14 个百分点。把它拆开:
| 来源 | 贡献 | 说明 |
|---|---|---|
| 行业配置 | −2.4 | 超配的行业(科技方向)当月跌得更多 |
| 风格暴露 | −8.0 | 小盘与高波动暴露在去杠杆中同时被卖出 |
| 行业内选股 | +0.3 | 在同一行业里挑得仍然比基准好 |
| 合计 | −10.1 | 与 −10.14 的差异来自四舍五入 |
读这张表的关键在最后一行:选股那一层还是正的。 这套策略的选股逻辑没有坏,坏的是它承担的那两份暴露在这个月同时反向兑现。
两种回撤,两种处理
把回撤拆完之后,判断只剩两个方向:
- 亏损集中在暴露层(上例的风格 −8.0):机制没坏,是暴露在兑现它的反面。这类回撤的处理是暴露管理——按第39章要讲的限额降低偏离,或者按计划扛住。改因子、改参数是错的,因为信号本身还在工作。
- 亏损集中在残差层(行业内选股由正转负,且连续数月):这是信号在退化。第37章把“可以上模拟盘”的通过条件写成两句话——样本外各段的超额方向要与样本内一致,量级不低于样本内的约一半;残差连续为负就是这两句话被破坏,对应第42章要处理的失效判断:那时该做的是回到因子检验,而不是调仓位。
分辨这两件事,是回撤归因唯一的用途。 净值跌 18% 本身不提供任何决策信息;知道这 18% 里有多少是市场、多少是暴露、多少是选股,才知道下一步该动哪里。
边界
- 先分清“市场跌的”和“我多亏的”。 只做多组合在市场下跌月份跑输基准是结构性的,不是错误。上例里沪深300 那 −7.86% 不是归因要处理的对象,要处理的是那 −10.14 个百分点的超额回撤。
- 回撤期更短,噪声更大。 一个月、甚至一个季度的归因结果,单看意义有限(第37章讲过分段结论的噪声)。要看的是多次回撤是否落在同一层。
- 极端日的归因会失真。 全市场跌停时,很多成交根本没有发生,那一天的收益本身是估出来的(第35章)。这类日子的归因只能看方向,不能看数值。
五、ETF 与混合组合:先穿透,再归因
ETF 组合不能用同一套做法直接套上去,因为它的持仓是基金份额,不是公司。
第一,先穿透到底层。 归因需要的行业权重、市值暴露、风格暴露,都得用穿透后的公司权重来算:持有某公司的实际权重等于直接持有的权重,加上各 ETF 的账户权重乘以该公司在 ETF 净资产中的占比(第33章给过这个公式)。不穿透,行业配置收益算不出来,风格暴露也算不出来。
第二,区分“指数给的”和“你选的”。 一只沪深300 ETF 的行业权重是指数编制规则决定的,不是你的判断;你真正做出的选择是“买哪几只 ETF、各配多少”。所以纯宽基 ETF 组合的行业配置收益通常接近零,这是正常的;只有当你用行业或主题 ETF 主动偏离时,行业配置这一项才有内容。把宽基 ETF 自带的行业分布算成自己的配置能力,是 ETF 归因里最常见的错误。
第三,产品层要单列一行。 跟踪误差、折溢价、管理费与托管费、跨境 ETF 的额度与汇率影响,都属于“产品层”而不是“投资逻辑层”。它们会实打实地吃掉收益,但与选股能力无关。如果把它们留在残差里,一个跟踪得很好的 ETF 组合会显得“选股能力为负”——这不是策略的问题,是归因漏了一层。
第四,重复持仓要先去重。 同时持有沪深300 ETF 和中证1000 增强 ETF,两只产品在成分上有重叠;穿透之后对同一家公司会算到两次权重。不去重,行业权重之和会超过 100%,归因结果全部失真。
混合组合的处理顺序就清楚了:个股部分按前面四节做完整归因,ETF 部分穿透后做同样的事,产品层单独列一行,最后按两部分的资金占比合并。不要用一个个股指数去对照整个混合组合,那等于把 ETF 的指数收益算成你的 alpha。
本章小结
- 基准先定,且必须写死。同一份持仓 2025 年对沪深300 是 +12.34 个百分点,对中证2000 是 −6.42 个百分点——柱子过零线那一刻,组合本身一个字都没改。选基准查三件事:持仓匹配度、能不能真的买到、权重能不能按 point-in-time 取到。
- 行业这一层用 Brinson 分解,超额被彻底切成行业配置、个股选择、交互项三块,一分不多一分不少。示意算例中 10.05 个百分点里有 7.83 来自一次行业押注。多期不能直接相加,要问用了哪种链接方法。
- 风格这一层用“主动暴露 × 因子收益”扣。示意算例中 0.70% 的超额有 0.53% 来自暴露,残差只剩 0.17%。从总收益往下扣,30% 的收益扣完无风险利率、市场 Beta 和规模下沉,可能只剩约 4.3% 属于选股。报 alpha 必须写明扣掉了什么。两节的两套分解起点不同(一个切超额、一个切总收益),不能互相对照,也不应相加。
- 回撤按同样的层次拆一遍。亏损落在暴露层就管暴露,落在残差层才怀疑信号失效——这是回撤归因唯一的用途。
- ETF 组合要穿透到底层公司再归因,把指数自带的行业分布与自己的选择分开,并把跟踪误差、折溢价、费用单列为产品层。
这一章把“收益是谁挣的”变成了可以照着算的分解。但分解出来的是已经发生的事实:你的组合站在小盘这一侧、超配了科技,这些暴露在下一刻会带来什么,取决于它们被允许有多大。第39章把这些暴露变成可以事先设定的限额。