3. 历史波动率(HV)与已实现波动率(RV):HV的计算方法(简单、EWMA、GARCH)、RV的衡量、IV与RV的价差分析

波动率这东西,说白了就是市场的心跳。做期权交易,你要是看不懂波动率,那基本就是在闭着眼开车。今天咱们聊聊两个最基础也最核心的概念——历史波动率和已实现波动率。嗯,这两个词听着像双胞胎,但用法完全不同。

核心一句话:HV是回头看过去的波动,RV是衡量刚发生的波动,IV是市场对未来的预期。三者的关系,就是期权交易的核心战场。

3.1 历史波动率(HV)的计算方法

历史波动率,就是拿过去的价格数据算出来的波动率。我个人习惯用收盘价来做,但有些人喜欢用开盘价或者日内均价。其实都行,关键是保持一致。

计算HV有三种主流方法,我一个个说。

3.1.1 简单历史波动率

这是最基础的方法。先算每日对数收益率,再算标准差,最后年化。公式长这样:

1. 计算每日对数收益率:r_i = ln(P_i / P_{i-1})
2. 计算收益率的标准差:σ = sqrt( Σ(r_i - r̄)² / (n-1) )
3. 年化:HV = σ × sqrt(252)

为什么用252?因为一年大概有252个交易日。这个数字我建议你记牢,做波动率交易天天要用。

我在项目中遇到过一个问题:用20天还是30天?其实没有标准答案。短周期对近期波动敏感,长周期更平滑。我个人习惯是同时看20天和60天,两个一起参考。

小技巧:如果你用Python,pandas的rolling函数可以直接算。但注意,一定要用对数收益率,别用简单收益率。对数收益率在时间上可加,数学性质好很多。

3.1.2 EWMA(指数加权移动平均)

简单HV有个毛病——它给每一天的权重都一样。你想想看,昨天的波动和30天前的波动,对今天的意义能一样吗?显然不能。

EWMA就是解决这个问题的。它给近期的数据更高的权重,权重按指数衰减。公式:

σ²_t = λ × σ²_{t-1} + (1-λ) × r²_{t-1}

其中λ是衰减因子,通常取0.94(日频数据)

λ取0.94是什么意思?就是昨天的波动率权重是94%,前天的权重是94%×94%=88.36%,以此类推。衰减速度由λ控制,λ越大,历史数据衰减越慢。

我曾经在实盘里试过不同的λ值。0.94是RiskMetrics的标准值,但说实话,在A股市场我更喜欢用0.96。为什么?因为A股波动率变化没那么快,稍微平滑一点反而更稳定。嗯,这个你可以自己试试看。

3.1.3 GARCH模型

GARCH是更高级的方法。它不光考虑过去的收益率,还考虑过去的波动率本身。说白了就是:波动率有聚集效应——大波动后面往往跟着大波动。

最简单的GARCH(1,1)模型:

σ²_t = ω + α × r²_{t-1} + β × σ²_{t-1}

其中:
ω 是长期均值项
α 是ARCH项系数(对近期收益的反应)
β 是GARCH项系数(对过去波动的延续)
α + β < 1 保证模型平稳

GARCH模型的好处是能捕捉波动率的自相关性。但坏处也很明显——参数估计不稳定。我记得有一次做回测,同样的数据,换了个时间窗口,参数就完全不一样了。所以我的建议是:GARCH适合做研究,但实盘交易我更喜欢用EWMA,简单可靠。

注意:GARCH模型对异常值非常敏感。如果某天出现极端行情(比如熔断),模型参数会严重偏移。我建议在使用前先做数据清洗,把超过3倍标准差的数据做缩尾处理。

3.2 已实现波动率(RV)的衡量

RV和HV的区别在哪?HV是用收盘价算的,反映的是日间的波动。但RV是用日内高频数据算的,反映的是真实的日内波动。

举个例子:某天开盘价100,收盘价100,HV算出来波动是0。但这一天可能上蹿下跳,最高105最低95。HV完全没捕捉到,但RV能。

RV的经典计算方法:

RV = sqrt( Σ r²_i )

其中r_i是日内每个时间间隔的对数收益率

频率怎么选?我个人习惯用5分钟数据。太短(比如1分钟)会有微观结构噪声,太长(比如30分钟)又会丢失信息。5分钟是个不错的平衡点。

还有一种改进方法叫RV_adj(调整后的已实现波动率),它考虑了隔夜跳空:

RV_adj = sqrt( RV²_intraday + RV²_overnight )

隔夜波动其实很重要。A股每天开盘经常跳空,这部分波动如果不算进去,RV会系统性偏低。我在做50ETF期权的时候,发现加上隔夜波动后,RV和IV的匹配度明显提高了。

3.3 IV与RV的价差分析

好了,重头戏来了。IV是隐含波动率(市场对未来波动的预期),RV是已实现波动率(实际发生的波动)。两者的差,就是你的交易机会。

核心逻辑很简单:

  • IV > RV:期权被高估,适合做卖方(卖期权收保费)
  • IV < RV:期权被低估,适合做买方(买期权赌波动)

但事情没这么简单。我踩过最大的坑就是:IV和RV的价差不是立即回归的。有时候IV比RV高20%,你以为稳赚,结果IV继续涨到30%。嗯,这就是所谓的"波动率溢价可以持续很久"。

所以我的做法是:

  1. 看价差的绝对值:IV - RV > 5% 才考虑动手
  2. 看价差的趋势:如果价差在扩大,别急着进场
  3. 看期限结构:近月合约的价差比远月更有参考价值

实战经验:我一般用20天的滚动窗口计算RV,然后用平值期权的IV做对比。如果IV比RV高出2个标准差以上,我会考虑做空波动率。但记住,一定要用Delta对冲,裸卖期权风险太大。

还有一个细节:IV和RV的对比要用同一时间尺度。IV是年化的,RV也要年化。很多人忘了这一步,直接拿日度RV和年化IV比,结果完全对不上。

下面这张图展示了HV、RV和IV三者的关系,以及它们在波动率交易中的定位:

波动率核心指标关系图 历史波动率 (HV) 回头看过去 计算方法: • 简单标准差 • EWMA (λ=0.94) • GARCH(1,1) 已实现波动率 (RV) 衡量刚发生 数据来源: • 5分钟高频数据 • 日内收益率平方和 • 考虑隔夜跳空 隐含波动率 (IV) 市场预期未来 来源: • 期权市场价格 • B-S模型反推 • 反映市场情绪 历史参考 对比基准 IV 与 RV 价差分析 价差 = IV - RV IV > RV(溢价) → 期权被高估 → 适合做卖方 IV < RV(折价) → 期权被低估 → 适合做买方 注意:价差回归需要时间,需结合趋势和期限结构综合判断

最后说一个我自己的交易框架。我每天开盘前会做三件事:

  1. 算一下过去20天的RV(用5分钟数据)
  2. 看一下平值期权的IV
  3. 算一下IV-RV的价差,以及这个价差的历史分位数

如果价差处于历史90%分位数以上,我会考虑做空波动率。如果处于10%分位数以下,考虑做多。但记住,这只是入场信号,出场和风控同样重要。

我的习惯:价差交易我一般用价差组合(比如日历价差或比率价差),而不是裸期权。这样即使方向判断错了,损失也有限。毕竟,波动率交易的核心不是预测,而是管理风险。

好了,这一章的内容就到这。HV、RV、IV这三个概念,是波动率交易的基石。搞懂了它们,你就能看懂期权市场的定价逻辑了。