2. 波动率基础

在波动率目标与动态仓位控制体系中,波动率不是附属指标,而是仓位决策的核心输入。理解波动率的定义、类型与计算口径,决定了后续目标波动率设定、杠杆缩放和风险预算是否可靠。本节从定义出发,梳理历史波动率、隐含波动率与已实现波动率三类口径,并给出可落地的计算流程与常见误区。

一、核心原理:波动率到底是什么

波动率衡量的是资产收益率围绕其均值波动的离散程度,通常以年化标准差表示。若把日收益率序列记为 rt,波动率刻画的是“未来一段时间收益率可能偏离均值的幅度”。它不等于风险本身,但在正态近似下,波动率越大,极端亏损的概率与幅度通常越高。

金融含义上有三点必须明确:第一,波动率是前瞻性概念,我们真正关心的是持仓期间未来的波动;第二,波动率具有聚集性,高波动往往成簇出现,这为波动率目标策略提供了可预测性基础;第三,波动率是可缩放的,若将仓位乘以 k,组合波动率近似乘以 k,这正是动态仓位控制的数学前提。

波动率目标策略的核心等式:目标仓位 ≈ 目标波动率 ÷ 当前预测波动率 × 基准仓位。理解波动率口径,就是理解这个分母从何而来。

二、三类波动率:历史、隐含与已实现

实务中常说的波动率至少有三类,它们的时间指向和用途完全不同:

  • 历史波动率(HV):基于过去一段时间的收益率序列计算,是回看口径,常用于估计当前波动水平与设定基准。
  • 隐含波动率(IV):从期权价格反推的市场对未来波动的预期,是前瞻口径,反映市场定价与风险溢价。
  • 已实现波动率(RV):在指定区间内实际发生的波动,通常用高频或日频收益计算,是事后验证口径,用于评估预测误差。

三者的关系可以概括为:HV 是“过去发生了什么”,RV 是“这段时间实际实现了多少”,IV 是“市场愿意为未来波动付多少钱”。在波动率目标策略中,HV 与 RV 用于建模和回测,IV 用于风险预警与仓位上限约束。

三类波动率的时间指向与用途 过去 现在 未来 历史波动率 HV 回看 · 建模基准 已实现波动率 RV 事后 · 验证误差 隐含波动率 IV 前瞻 · 风险预警 波动率目标策略:HV/RV 建模预测 → 计算目标仓位 → IV 约束上限 仓位 ≈ 目标波动率 ÷ 预测波动率 × 基准仓位

三、计算方法与流程

最常用的历史波动率计算采用对数收益率标准差并年化。流程如下:

  1. 取收盘价序列 Pt,计算对数收益率 rt = ln(Pt / Pt-1)。
  2. 在窗口 N 内计算收益率标准差 σdaily。
  3. 按年化因子缩放:σannual = σdaily × √252(日频、每年约252个交易日)。
  4. 若需更贴近近期波动,可使用指数加权(EWMA)或 GARCH 类模型替代简单标准差。
import numpy as np
import pandas as pd

# 假设 df 含 'close' 列
df['ret'] = np.log(df['close'] / df['close'].shift(1))

# 20日历史波动率(年化)
N = 20
df['hv_20'] = df['ret'].rolling(N).std() * np.sqrt(252)

# EWMA 波动率(lambda=0.94,RiskMetrics 常用)
lam = 0.94
df['ewma_var'] = df['ret'].pow(2).ewm(alpha=1-lam, adjust=False).mean()
df['ewma_vol'] = np.sqrt(df['ewma_var']) * np.sqrt(252)

print(df[['close','ret','hv_20','ewma_vol']].tail())

隐含波动率无法直接计算,需通过期权定价模型反解。以 Black-Scholes 为例,给定市场价格、行权价、到期时间、无风险利率与股息率,用数值方法求解使理论价格等于市场价格的 σ。实务中常用牛顿法或二分法,并注意隐含波动率微笑与期限结构。

类型数据来源时间指向主要用途常见陷阱
历史波动率 HV历史收盘价回看建模、基准设定窗口选择敏感
已实现波动率 RV高频/日频收益事后验证预测误差采样频率影响大
隐含波动率 IV期权价格前瞻风险预警、上限约束含风险溢价,偏高

四、案例与场景:从波动率到仓位

假设某策略基准仓位为 100%,目标年化波动率为 10%。当前用 20 日 HV 估计的年化波动率为 20%,则目标仓位 ≈ 10% ÷ 20% × 100% = 50%。若波动率降至 10%,仓位可升至 100%;若升至 40%,仓位应降至 25%。这就是波动率目标最直接的动态仓位映射。

在真实场景中,还需考虑三点:一是波动率预测存在滞后,高波动后仓位调整可能偏慢;二是杠杆上限与流动性约束会限制实际仓位;三是隐含波动率飙升往往先于已实现波动率,可作为提前降仓的预警信号。

实操建议:用 HV 与 EWMA 双口径交叉验证,当两者差异显著时,优先采用更保守(更高)的波动率估计,以避免仓位过激。

五、误区与复盘

  • 误区一:把波动率等同于风险。波动率只刻画离散程度,不区分上行与下行,也不反映尾部风险与流动性风险。
  • 误区二:窗口越短越灵敏越好。短窗口反应快但噪声大,容易频繁调仓、增加交易成本;长窗口稳定但滞后。
  • 误区三:直接用 IV 做仓位分母。IV 含风险溢价,通常高于 RV,直接使用会导致仓位系统性偏低。
  • 误区四:忽略年化因子与交易日差异。不同市场每年交易日不同,年化因子需按实际调整。
复盘要点:每次仓位调整后,记录当时使用的波动率口径、窗口、数值与最终仓位,并在一段时间后对比 RV,评估预测偏差。偏差持续偏大时,应优先检查窗口选择与模型设定,而非直接调参拟合。

掌握波动率的定义、三类口径与计算方法,是后续设定目标波动率、构建预测模型和执行动态仓位控制的基础。只有在口径一致、计算可复现的前提下,波动率目标策略的收益风险特征才具备可解释性与可比较性。