halo 的技术博客

返回

Black-Litterman模型的核心思想#

Black-Litterman模型是由Fischer Black和Robert Litterman在1992年提出的资产配置模型,它巧妙地解决了传统均值方差模型的两个主要问题:

  1. 输入敏感性问题:传统模型对预期收益率的微小变化非常敏感
  2. 集中投资问题:往往产生极端集中的投资组合

模型的核心优势#

Black-Litterman模型通过以下方式改进资产配置:

  • 基准组合:以市场均衡组合作为基准(CAPM均衡收益)
  • 观点融合:允许投资者加入主观观点(绝对或相对观点)
  • 置信度调整:为不同观点分配不同的置信水平
  • 稳健性提升:输出更稳定的资产配置结果

数学模型详解#

1. 市场均衡收益(逆向优化)#

使用逆向优化方法从市场权重中推导出隐含均衡收益:

E[R] = λΣw_market
plaintext

其中:

  • E[R]:资产的均衡预期收益
  • λ:风险厌恶系数
  • Σ:资产收益率的协方差矩阵
  • w_market:市场权重向量

2. 投资者观点建模#

投资者可以表达两种观点:

绝对观点:资产A的年化收益将达到10% 相对观点:资产A的表现将比资产B高出5%

3. 后验收益计算#

融合市场均衡和投资者观点:

E[R] = [(τΣ)^(-1) + P'Ω^(-1)P]^(-1) * [(τΣ)^(-1)Π + P'Ω^(-1)Q]
plaintext

实战案例:A股行业配置#

数据准备#

加入投资者观点#

# 观点矩阵P(绝对观点 + 相对观点)
P = np.array([
    [1, 0, 0, 0, 0],  # 观点1:金融行业的绝对收益
    [0, 1, -1, 0, 0], # 观点2:科技相对消费的超额收益
])

# 观点向量Q
Q = np.array([0.10, 0.03])  # 金融10%收益,科技相对消费高3%

# 观点不确定性矩阵Ω
omega = np.diag([0.02, 0.01])  # 观点的置信度
python

Black-Litterman公式实现#

def black_litterman(mu_eq, cov_matrix, P, Q, omega, tau=0.05):
    """Black-Litterman模型实现"""
    # 后验收益计算
    M_inv = np.linalg.inv(tau * cov_matrix) + P.T @ np.linalg.inv(omega) @ P
    M = np.linalg.inv(M_inv)
    
    posterior_mean = M @ (np.linalg.inv(tau * cov_matrix) @ mu_eq + P.T @ np.linalg.inv(omega) @ Q)
    posterior_cov = cov_matrix + M
    
    return posterior_mean, posterior_cov

# 计算后验收益
post_mu, post_cov = black_litterman(mu_eq, cov_matrix, P, Q, omega, tau)
print("后验预期收益:", post_mu)
python

资产配置优化#

有效前沿对比#

模型优势与局限性#

优势#

  1. 稳定性:相比传统模型,配置结果更稳定
  2. 灵活性:可以融合不同置信度的观点
  3. 直观性:以市场均衡为基准,便于理解调整原因
  4. 实用性:广泛应用于机构资产配置

局限性#

  1. 参数敏感:τ和Ω的选择对结果影响较大
  2. 观点构建:需要投资者具备构建有效观点的能力
  3. 计算复杂:相比传统模型计算更复杂

结论#

Black-Litterman模型为量化投资提供了一套系统化的资产配置框架,特别是在融合主观观点和量化模型方面具有独特优势。对于希望结合定量分析和基本面判断的投资者来说,这是一个强大的工具。

Black-Litterman模型配置对比

观点融合过程示意图

Black-Litterman模型实战:融合市场均衡与主观观点的资产配置
https://blog.halo26812.eu.org/blog/2026-06-04-black-litterman-practice
Author halo
Published at 2026年6月4日
版权声明 CC BY-NC-SA 4.0
Comment seems to stuck. Try to refresh?✨