因子投资-02-风险波动率协方差与相关性

QUANT RESEARCH NOTE LESSON 02

两只股票都可能平均赚 5%,但一只每次上下剧烈波动,另一只较平稳;它们显然不是同一种投资。更重要的是,组合风险不只由每只股票自身波动决定,还取决于它们是否同时涨跌。本讲从两个经济状态手算期望、方差、协方差和相关系数。

类型核心课程
模块基础语言
阅读约 6 分钟
材料10 节 · 1 段代码

本节解决什么问题

两只股票都可能平均赚 5%,但一只每次上下剧烈波动,另一只较平稳;它们显然不是同一种投资。更重要的是,组合风险不只由每只股票自身波动决定,还取决于它们是否同时涨跌。本讲从两个经济状态手算期望、方差、协方差和相关系数。

前置知识与学习目标

前置知识是第 01 讲的简单收益和百分比。学完后你应该能:

  • 从离散状态计算期望、方差和标准差;
  • 解释协方差与相关系数的区别;
  • 用协方差矩阵计算组合风险;
  • 说明相关不等于因果、波动不等于全部风险;
  • 判断何时可以近似做平方根年化。

直觉与手算

假设未来只有繁荣和衰退两种状态,各有 50% 概率。股票 A 在两种状态的收益分别为 20%、-10%;股票 B 分别为 -5%、15%。

两只股票的期望收益都为 5%:

A 相对均值的偏差是 +15%、-15%,所以方差是 0.5×0.15²+0.5×(-0.15)²=0.0225,标准差为 15%。B 的偏差是 -10%、+10%,方差为 0.01,标准差为 10%。

两者在每个状态的偏差乘积都是 -0.015,因此协方差为 -0.015。除以 0.15×0.10 后,相关系数为 -1:它们在这个两状态模型里完全反向。

若各投一半,组合在繁荣和衰退的收益分别为 7.5% 与 2.5%,期望仍是 5%,标准差却只有 2.5%。分散化不是因为持有数量变多,而是因为不同资产的共同变化不完全一致。

定义与公式

期望、方差与标准差

离散状态 s 的概率为 p(s),收益为 R(s):

收益与标准差单位相同,方差单位是收益率平方。期望描述分布中心,标准差描述围绕中心的总离散程度;它不区分上涨和下跌。

协方差与相关系数

协方差保留两者尺度,相关系数消除尺度并限制在 -1 到 1。若某变量标准差为零,相关系数没有定义。相关为零只表示无线性共同变化,并不保证独立。

组合风险

两资产权重分别为 w 与 1-w:

一般 N 资产写成:

w 是 N×1 权重,Σ 是 N×N 协方差矩阵。对角线是各资产方差,非对角线是两两协方差。分散化效果来自非对角线,而不只是资产数量。

下行风险

如果投资者只关心低于目标 MAR 的结果,可定义下行偏差:

目标可以是零、无风险收益或负债要求。下行风险更贴近“坏波动”,但结果依赖目标选择,且仍不能完整描述尾部、流动性和永久损失。

Python 最小实验

PYTHON 可复现实验
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import numpy as np

prob = np.array([0.5, 0.5])
a = np.array([0.20, -0.10])
b = np.array([-0.05, 0.15])

mean_a = prob @ a
mean_b = prob @ b
var_a = prob @ (a - mean_a) ** 2
var_b = prob @ (b - mean_b) ** 2
cov_ab = prob @ ((a - mean_a) * (b - mean_b))
corr_ab = cov_ab / np.sqrt(var_a * var_b)

portfolio = 0.5 * a + 0.5 * b
mean_p = prob @ portfolio
std_p = np.sqrt(prob @ (portfolio - mean_p) ** 2)

assert np.isclose(corr_ab, -1.0)
assert np.isclose(std_p, 0.025)
print(mean_a, np.sqrt(var_a), mean_b, np.sqrt(var_b), std_p)

代码使用的是已知状态概率,因此除以概率总和;从历史样本估计方差时,常使用 T-1 分母修正自由度。这两种对象不要混写。

A 股实现注意事项

  1. 日收益不是独立同分布。 涨跌停、停牌、波动聚集和政策事件会造成自相关与条件波动变化;日波动乘根号 252 只是近似。
  2. 停牌与零收益。 向前填价得到的零收益会机械压低波动率,但复牌跳跃和无法交易的风险仍存在。应同时报告停牌比例和可成交口径。
  3. 涨跌停截断。 日收益被制度上限截断不等于真实经济价值只变化到该幅度,连续封板还会把调整分散到多日。
  4. 协方差估计。 股票多、历史窗口短时,样本协方差矩阵噪声大、甚至不可逆;组合优化通常需要收缩、因子风险模型或更长但不过时的窗口。
  5. 不同交易历史。 新股、退市股和长期停牌使收益面板不齐。用成对可得样本估协方差可能得到非半正定矩阵,必须检查特征值和统一样本规则。
  6. 相关结构会变。 市场压力期资产相关性常上升,平静期估出的分散化不能当作危机期保证。

常见错误与边界

  • 把方差与标准差混用:0.04 的方差对应 20% 标准差,不是 4%。
  • 用价格水平计算相关性,得到共同趋势;资产研究通常关注同频收益相关。
  • 看到相关为 0.8 就宣称 A 导致 B。共同市场暴露、行业或宏观变量都可能解释相关。
  • 只按个股波动率选“低风险”组合,忽略高正相关使组合风险集中。
  • 用全样本协方差优化历史每个时点,泄露未来相关结构。
  • 把低波动等同于安全。负债、流动性、跳跃、信用和永久资本损失可能不体现在日标准差中。

标准差对厚尾和异常值很敏感,但这不是删除极端日的理由。极端收益可能是风险最重要的部分;应该核验数据错误,并并列报告分位数、最大损失、回撤和压力情景。

原书与论文

原书第 1 章(PDF 文件页 7–26)讨论风险收益权衡,第 2 章(27–96)进入模型和实证方法。本讲补足组合风险所需的概率语言。

经典起点是 Harry Markowitz(1952)Portfolio Selection,论文把组合选择明确写成期望与方差问题:DOI 10.1111/j.1540-6261.1952.tb01525.x。阅读时重点问:方差是投资者真正关心的风险,还是一个可计算的代理?

练习

  1. 资产 C 在两状态收益为 30%、-20%,概率仍各半。计算期望、方差和标准差。
  2. A 与另一资产 D 的收益分别为 20%、-10% 和 5%、5%。D 的标准差为零,为什么相关系数无定义?它还能分散风险吗?
  3. 两资产标准差均为 20%、权重各半,分别在相关系数 1、0、-1 下计算组合标准差。
  4. 使用一个月 A 股日收益,比较“停牌日缺失”“停牌日填零”两种口径的波动率,并解释哪个数字适合估值、哪个不能代表可交易风险。

校验:第 3 题组合标准差依次为 20%、约 14.14%、0%。最后一种结果依赖参数完全稳定,现实中几乎不会永久成立。

小结与下一步

期望告诉我们平均方向,方差和标准差描述总离散,协方差决定资产如何共同变化,相关系数提供无尺度比较。组合风险是权重与整个协方差矩阵的函数;分散化的前提是共同变化不完全一致。

这些都是总体概念,但现实中我们只能看到有限样本。下一讲将讨论样本如何产生估计不确定性,以及显著性检验为什么很容易被误读。


因子投资-02-风险波动率协方差与相关性
https://www.polarishaw.top/2026/07/17/因子投资-02-风险波动率协方差与相关性/
作者
Polaris
发布于
2026年7月17日
许可协议