跳转至

Brinson 归因与 Carino 连接

定义

单期把主动收益拆成配置、选择和交互。多期用对数平滑系数,使各期主动收益的加权和等于复利之后的主动收益。

公式

\[ A_{\mathrm{BF}}=\sum_j (w_{p,j}-w_{b,j})(R_{b,j}-R_b) \]

满仓教学例子的主动收益 0.030 拆成 0.0160、0.0080、0.0060。现金被漏掉时,Fachler 合计对不上主动收益。两期复利主动收益是 0.036090。Carino 系数 0.903092,连接后 0.030675 与 0.005415 相加回到这个数。

直觉

行业配得对不对,要和基准总收益比,不能只看这个行业自己涨没涨。两期直接相加会漏掉交叉项。

实务要点 / 常见误区

  • Hood 用行业收益本身。权重和相等时,两种配置的合计相同,行业列不同。
  • Sharpe (1992) 要求风格系数非负且和为 1。把 1 和 0.5 归成 ⅔ 与 ⅓,残差平方和大于约束解 0.814815 与 0.185185。
  • 没有持仓就不要填写风格暴露。

相关概念

代码

import math

def carino_scale(port: float, bench: float) -> float:
    # 简单收益差很小时,这个比接近 1。先四舍五入再相除会丢最后一位。
    return math.log((1.0 + port) / (1.0 + bench)) / (port - bench)

教材:M14 绩效评估与归因