第 4 部分 · 波动率目录
  1. 4.1历史波动率
  2. 4.2隐含波动率
  3. 4.3波动率微笑与期限结构
  4. 4.4预期波动幅度与概率
Lesson 4.1进阶16 min17 / 43

历史波动率

「这只股票波动很大」到底有多大?把感觉变成一个可以比较、可以计算的数字。

Takeaways读完本课,你将会
  1. 理解波动率衡量的是收益率的离散程度,与涨跌方向无关
  2. 能用对数收益率一步步算出日波动率并年化
  3. 理解平方根时间法则:方差随时间线性增长,波动率随 √T 增长
  4. 会用「年化波动率 ÷ 16」快速估算日内典型波动
  5. 知道收盘价波动率的局限,以及短窗口与长窗口的取舍

两只「平均收益」一样的股票

假设过去一个月里,股票 A 和股票 B 都上涨了 2%。从起点到终点看,它们一模一样。

但走势完全不同:A 每天的涨跌幅都在 ±0.5% 以内,一路缓慢爬升;B 却像过山车,今天涨 4%、明天跌 3.5%,最后碰巧也停在了 +2%。

如果你持有的是股票,二者到月底的结果相同。但如果你持有的是期权,差别就大了:在 B 这样的过山车上,股价有更大的机会冲到行权价之上(或跌到行权价之下),期权的「可能性」更值钱。这就是为什么期权交易者最关心的不是平均收益,而是波动率(Volatility)——价格变化的剧烈程度。

本课要做的,是把「波动得很厉害」这种感觉,变成一个可以计算、可以比较的数字:历史波动率(Historical Volatility, HV),也常被称为已实现波动率(Realized Volatility)。

第一步:用对数收益率描述每天的变化

计算波动率之前,先要把价格序列变成收益率序列。最直观的是简单收益率:今天比昨天涨了百分之几。但在波动率计算中,我们通常使用对数收益率(Log Return):

其中 是第 天的收盘价。当每日变化不大时,对数收益率与简单收益率非常接近(例如从 $100 涨到 $102,简单收益率是 2.00%,对数收益率是 1.98%)。

为什么偏爱对数收益率?主要有两个原因:

  1. 可以相加。 连续多天的对数收益率之和,正好等于整段时间的对数收益率:。简单收益率则需要连乘。可加性让「把日波动率换算成年化波动率」变得非常自然。
  2. 与定价模型一致。 Black-Scholes 模型假设股价服从几何布朗运动,即对数收益率服从正态分布。用对数收益率估计出的波动率,就是模型里的那个 。

第二步:算出日波动率

有了收益率序列,就可以用统计学里的样本标准差来度量它的离散程度:

其中 是收益率的个数, 是收益率的平均值。分母用 而不是 ,是统计学中常用的无偏修正(样本越多,两者差别越小)。

下面用 7 个收盘价(得到 6 个日收益率)完整算一遍。

交易日收盘价对数收益率减去均值后偏差的平方(%²)
第 0 天$100.00———
第 1 天$102.00+1.9803%+1.6502%2.7232
第 2 天$99.00−2.9853%−3.3153%10.9915
第 3 天$101.00+2.0001%+1.6700%2.7890
第 4 天$100.50−0.4963%−0.8263%0.6828
第 5 天$103.00+2.4571%+2.1271%4.5245
第 6 天$102.00−0.9756%−1.3057%1.7048
从收益率到日波动率
  1. 6 个对数收益率的平均值:。
  2. 把每个收益率减去平均值,再平方,合计约为 23.4157(单位:%²)。
  3. 除以 ,得到样本方差约 4.6831(%²)。
  4. 开平方,得到日波动率 2.164%。

也就是说,这只股票在这几天里,日收益率的「典型」偏离幅度大约是 2.16%。

第三步:年化——为什么乘以 √252

日波动率 2.16% 很难和别的数字比较:期权报价、波动率指数、研究报告用的都是年化波动率。换算公式是:

代入上面的结果: 34.35%。

这里的 252 是美股一年大约的交易日数。周末和节假日没有交易,价格基本不变化,所以年化时按交易日而不是 365 个日历日来计算。

关键问题是:为什么乘以 √252,而不是 252?

这意味着波动并不会随时间「平均掉」,但也不会成比例地放大。用年化 30% 的波动率举例:

时间跨度计算1 个标准差的波动幅度
1 天30% × √(1/252)约 1.89%
1 周(5 个交易日)30% × √(5/252)约 4.23%
1 个月(21 个交易日)30% × √(21/252)约 8.66%
1 年30% × √(252/252)30%

一个月的时间是一天的 21 倍,但典型波动幅度只是一天的 √21 ≈ 4.6 倍。

需要注意的是,「1 个标准差」并不是上限。如果收益率服从正态分布,大约 68% 的交易日涨跌幅会落在 ±1 个标准差以内,约 95% 落在 ±2 个标准差以内;剩下约 5% 的日子会出现更大的波动。而真实市场的大幅波动出现得比正态分布预测的更频繁——这就是我们会在模型的边界中讨论的「肥尾」。

动手算一算

下面的组件会按设定的「真实」年化波动率随机生成一段价格序列,然后按本课的方法一步步计算历史波动率。试着多生成几次:

HV动手算历史波动率
样本长度(交易日)
$100$105$110$115$1200102030405060交易日
每日对数收益率 ln(Pₜ / Pₜ₋₁)
天收盘价对数收益率
0$100.00—
1$105.335.193%
2$107.592.123%
3$107.44−0.140%
4$107.00−0.410%
5$105.09−1.801%
… 共 60 个收益率
① 日收益率均值0.290%
② 日收益率标准差 σ_日2.034%
③ 年化:σ_日 × √2522.034% × 15.87
历史波动率32.28%
生成数据用的真实波动率30%

样本越短,估计值离真实值的偏差往往越大。多点几次「换一组数据」感受一下估计误差。

价格序列由几何布朗运动模拟(漂移为 0),标准差使用样本标准差(除以 n − 1)。

你会发现两件有意思的事:

  • 估计值总在真实值附近摆动。 即使「真实」波动率固定为 30%,用 60 天数据算出的历史波动率也可能是 26% 或 34%。历史波动率只是对真实波动率的一个估计,样本越短,误差越大。
  • 同样的波动率,走势可以很不一样。 有时序列整体上涨,有时整体下跌,但波动率并不关心方向。

计算窗口:20 天还是 60 天?

历史波动率总要指定一个回看窗口,常见的有 10 日、20 日(约一个月)、30 日、60 日(约一个季度)、90 日、252 日(约一年)。窗口的选择是一个经典的取舍:

短窗口(如 10~20 日)长窗口(如 60~252 日)
对近期变化的反应快慢、滞后
估计误差(噪声)大,一两天的大波动就能显著改变结果小,曲线平滑
适合的用途判断当前的波动状态、与短期期权的隐含波动率比较判断长期的「正常」水平、与长期期权比较

一个常见的做法是让窗口长度与你关心的期权期限相匹配:分析 30 天到期的期权时,看 20~30 日历史波动率;分析一年期期权时,看更长的窗口。

收盘价算法的局限

本课介绍的方法叫作收盘价到收盘价(Close-to-Close)波动率,它简单、透明、应用最广,但也有明显的局限:

  1. 看不到盘中波动。 一只股票盘中涨 5% 又跌回原位,收盘价不变,对数收益率为 0,在这种算法里「什么都没发生」。
  2. 对跳空和事件敏感。 窗口中如果包含一次财报跳空(比如单日 −15%),它会主导整个估计值;而当这一天滑出窗口时,历史波动率又会突然大幅下降——这种「断崖」并不代表风险真的变了。
  3. 数据利用率低。 每天只用一个价格。

为此,研究者提出了利用开盘价、最高价、最低价信息的估计方法,例如 Parkinson(基于最高价和最低价)、Garman-Klass、Yang-Zhang 等。它们在相同样本长度下通常更有效率,但也各有假设。对入门者来说,理解收盘价方法就足够了,关键是知道它只是一个估计。

历史波动率在期权交易中的用途

  • 判断期权贵不贵的参照物。 把期权的隐含波动率与标的的历史波动率比较:如果隐含波动率 45%,而过去几个月实际波动一直在 25% 左右,期权可能偏贵(但也可能是市场预期有事件发生)。
  • 估计合理的价格区间。 用年化波动率换算出日、周、月的典型波动幅度,设定止损、行权价或观察区间。
  • 风险管理。 同样金额的头寸,波动率越高的标的风险越大。许多仓位管理方法会按波动率调整头寸规模。
  • 事后检验。 卖出期权的收益,很大程度上取决于「卖出时的隐含波动率」与「之后实际实现的波动率」之差(我们会在Delta 对冲和波动率风险溢价中深入讨论)。

小结

  • 波动率是收益率的标准差,衡量价格变化的剧烈程度,与方向无关。
  • 计算历史波动率的步骤:收盘价 → 对数收益率 → 样本标准差(日波动率)→ 乘以 √252 年化。
  • 平方根时间法则:在收益率独立同分布的假设下,方差随时间线性增长,波动率随 增长。
  • 心算法:年化波动率 ÷ 16 ≈ 日波动率。
  • 窗口越短越灵敏、越嘈杂;窗口越长越平滑、越滞后。收盘价方法看不到盘中波动,对跳空事件敏感。
  • 历史波动率描述的是过去;期权价格反映的是对未来的预期。

下一课,我们换一个方向:不是从历史价格算波动率,而是从期权价格反推出市场正在「报价」的波动率——隐含波动率。

Quiz检验一下

Quiz4.1 随堂测验
0/5 已作答
01某股票日收益率的标准差为 1.5%,按 252 个交易日年化,年化历史波动率约为?
02为什么把日波动率换算成年化波动率时乘以 √252,而不是 252?
03一只股票的年化波动率为 32%,按经验法则,它一天之内的「典型」涨跌幅(1 个标准差)大约是多少?
04关于 20 日历史波动率与 60 日历史波动率,下列说法正确的是?
05一只股票某天盘中先涨 5%、又跌回来,最终收盘价与前一日完全相同。这一天对「收盘价历史波动率」的贡献是?