4、多资产组合:多资产组合的方差协方差矩阵表示,矩阵运算基础

当组合从两只资产扩展到 n 只资产时,方差计算的核心工具将从代数公式升级为矩阵运算。矩阵表示不仅让公式更紧凑,更重要的是它揭示了组合风险的结构:每个资产自身的波动(方差项)与资产之间的联动(协方差项)如何共同决定组合总风险。本节将系统讲解方差协方差矩阵的构造、矩阵运算规则及其在组合风险分解中的应用。

多资产组合方差协方差矩阵与风险分解 协方差矩阵 Σ (n×n) σ₁² σ₁₂ σ₁₃ … σ₁ₙ σ₂₁ σ₂² σ₂₃ … σ₂ₙ σ₃₁ σ₃₂ σ₃² … σ₃ₙ ⋮ ⋮ ⋮ ⋱ ⋮ σₙ₁ σₙ₂ σₙ₃ … σₙ² 对称矩阵:σᵢⱼ = σⱼᵢ 权重向量 w w = [w₁, w₂, …, wₙ]ᵀ 组合方差公式 σₚ² = wᵀ Σ w 展开形式 σₚ² = Σᵢ wᵢ² σᵢ² + 2 Σᵢ₌₁ Σⱼ₌ᵢ₊₁ wᵢ wⱼ σᵢⱼ = Σᵢ Σⱼ wᵢ wⱼ σᵢⱼ 其中:σᵢ² 为资产 i 的方差,σᵢⱼ 为资产 i 与 j 的协方差 约束条件:Σᵢ wᵢ = 1(权重之和为 1) 组合风险分解(边际贡献法) 边际风险贡献 MCRᵢ = wᵢ × (Σw)ᵢ / σₚ (Σw)ᵢ = Σⱼ wⱼ σᵢⱼ 风险贡献占比 RCᵢ = MCRᵢ / σₚ Σᵢ RCᵢ = 100% 组合风险归因 σₚ = Σᵢ MCRᵢ 可加性:总风险 = 各资产贡献之和

4.1 核心原理:从两资产到 n 资产的方差协方差矩阵

两资产组合的方差公式为 σₚ² = w₁²σ₁² + w₂²σ₂² + 2w₁w₂σ₁₂。当资产数量增加到 n 时,直接展开公式将包含 n 个方差项和 n(n-1) 个协方差项,表达式冗长且容易遗漏。矩阵表示法将所有这些信息封装在一个 n×n 的对称矩阵中,即方差协方差矩阵(简称协方差矩阵)Σ:

Σ = [σ₁²  σ₁₂  …  σ₁ₙ]
    [σ₂₁  σ₂²  …  σ₂ₙ]
    [  ⋮    ⋮   ⋱   ⋮ ]
    [σₙ₁  σₙ₂  …  σₙ²]

该矩阵具有三个关键性质:对称性(σᵢⱼ = σⱼᵢ,因为协方差本质上是两个变量之间的对称度量)、半正定性(对于任意非零权重向量 w,均有 wᵀΣw ≥ 0,这保证了组合方差非负)、对角线为方差(σᵢᵢ = σᵢ²,即资产自身的方差)。组合方差的计算简化为二次型:σₚ² = wᵀΣw,其中 w 为 n×1 的权重列向量。

核心理解:协方差矩阵是组合风险的“基因图谱”。对角线上的方差项代表每个资产自身的独立风险,非对角线上的协方差项代表资产之间的联动风险。矩阵运算将这两类风险统一在一个框架中,使得风险计算、优化和分解都变得系统化。

4.2 矩阵运算基础:组合方差的计算流程

使用矩阵方法计算多资产组合方差,需要掌握以下基本运算规则:

  1. 向量与矩阵的乘法:wᵀΣ 得到一个 1×n 的行向量,其第 j 个元素为 Σᵢ wᵢσᵢⱼ,表示资产 j 与组合中所有资产的加权协方差之和。
  2. 二次型展开:(wᵀΣ)w = Σᵢ Σⱼ wᵢwⱼσᵢⱼ,这就是组合方差的完整展开式。
  3. 权重约束:实际应用中通常要求 Σᵢwᵢ = 1(满额投资)且 wᵢ ≥ 0(禁止做空),这些约束在优化问题中通过拉格朗日乘子法处理。

实际操作中,计算步骤为:第一步,收集 n 个资产的收益率时间序列数据;第二步,计算每对资产的协方差,构建 Σ 矩阵;第三步,确定权重向量 w;第四步,执行矩阵乘法 wᵀΣw 得到组合方差,开平方即得组合标准差。

运算步骤数学表达维度变化实际含义
权重转置wᵀ1×n将列向量转为行向量
第一次乘法wᵀΣ1×n计算各资产与组合的加权协方差
第二次乘法(wᵀΣ)w1×1汇总得到组合方差
开方σₚ = √(wᵀΣw)标量组合标准差(波动率)

4.3 案例拆解:三资产组合的矩阵计算与风险分解

假设某投资组合包含三只资产:股票A(权重40%)、债券B(权重40%)、黄金C(权重20%)。基于过去一年的月度收益率数据,计算得到协方差矩阵如下(单位:%²/月):

Σ = [ 4.0  0.8  0.2 ]
    [ 0.8  1.0  0.1 ]
    [ 0.2  0.1  2.5 ]

权重向量 w = [0.4, 0.4, 0.2]ᵀ。首先计算 wᵀΣ:

wᵀΣ = [0.4×4.0 + 0.4×0.8 + 0.2×0.2,  0.4×0.8 + 0.4×1.0 + 0.2×0.1,  0.4×0.2 + 0.4×0.1 + 0.2×2.5]
     = [1.6 + 0.32 + 0.04,  0.32 + 0.4 + 0.02,  0.08 + 0.04 + 0.5]
     = [1.96,  0.74,  0.62]

再计算组合方差:σₚ² = 1.96×0.4 + 0.74×0.4 + 0.62×0.2 = 0.784 + 0.296 + 0.124 = 1.204(%²/月),组合标准差 σₚ = √1.204 ≈ 1.097%/月,年化波动率约为 1.097%×√12 ≈ 3.80%。

进一步做风险分解:资产 i 的边际风险贡献 MCRᵢ = wᵢ × (Σw)ᵢ / σₚ。先计算 Σw:

Σw = [4.0×0.4 + 0.8×0.4 + 0.2×0.2]   [1.6 + 0.32 + 0.04]   [1.96]
     [0.8×0.4 + 1.0×0.4 + 0.1×0.2] = [0.32 + 0.4 + 0.02] = [0.74]
     [0.2×0.4 + 0.1×0.4 + 2.5×0.2]   [0.08 + 0.04 + 0.5 ]   [0.62]

则 MCR_A = 0.4×1.96/1.097 ≈ 0.715,MCR_B = 0.4×0.74/1.097 ≈ 0.270,MCR_C = 0.2×0.62/1.097 ≈ 0.113。验证:0.715 + 0.270 + 0.113 = 1.098 ≈ σₚ(四舍五入误差)。风险贡献占比分别为:股票A 65.2%、债券B 24.6%、黄金C 10.3%。

实战启示:股票A虽然权重与债券B相同(均为40%),但其风险贡献(65.2%)远高于债券B(24.6%),原因是股票A的方差(4.0)显著高于债券B(1.0),且与债券的协方差(0.8)为正。若希望降低组合风险,应优先降低股票A的权重或寻找与股票A负相关的资产。

4.4 常见误区与总结复盘

在多资产组合的矩阵运算中,初学者常犯以下错误:

  • 忽略协方差矩阵的对称性:在手工计算时重复计算 σᵢⱼ 和 σⱼᵢ,导致结果翻倍。正确做法是只计算上三角(或下三角)部分,展开时乘以 2。
  • 混淆协方差与相关系数:协方差 σᵢⱼ = ρᵢⱼσᵢσⱼ,相关系数 ρᵢⱼ 无量纲且范围在 [-1,1],而协方差受量纲影响。在矩阵中必须使用协方差,不能直接用相关系数矩阵替代。
  • 权重约束遗漏:在优化问题中忘记 Σwᵢ = 1 的约束,导致求出的“最优”权重无实际意义。
  • 样本协方差矩阵的估计误差:当资产数量 n 接近或超过样本期长度 T 时,样本协方差矩阵可能奇异或严重失真,需要采用收缩估计(如 Ledoit-Wolf 方法)或因子模型降维。
风险提示:协方差矩阵的估计质量直接决定组合风险计算的可靠性。实际应用中,建议至少使用 2-3 年的日频或周频数据,并定期滚动更新矩阵参数。对于 n > 50 的大规模组合,应优先考虑使用因子模型(如 CAPM、Fama-French 三因子)来压缩协方差矩阵的维度,避免维度灾难。

总结复盘:多资产组合的方差协方差矩阵表示是组合风险管理的基石。通过矩阵运算,我们不仅能够高效计算组合方差,还能将总风险精确分解到每个资产,识别真正的风险源。核心要点包括:协方差矩阵的对称半正定结构、二次型公式 σₚ² = wᵀΣw 的几何意义、边际风险贡献的可加性原理。在实际工作中,建议使用 Python(NumPy/Pandas)或 R 语言进行矩阵运算,同时注意协方差矩阵的估计稳健性,并结合压力测试和情景分析验证风险模型的可靠性。