2025/04/21

20250421 用OHLC來合成波动率指数(SVIX)

合成波动率指数(SVIX)主要有以下几大类构造方法,每种方法都有相应的实证或应用验证:

  1. 模型自由方差复制(Model‑Free Implied Volatility, MFIV)

    • 方法:直接沿用 CBOE VIX 的“方差复制”思路,将标的期权跨行权价的隐含方差加权汇总,得到一个 30 天年化波动率指标。

    • 验证:例如瑞典学者用 OMXS30 指数期权数据,从 2005–2015 年构建了日频 SVIX,研究表明它与官方 VIX 在统计特性上高度一致,且能良好描述市场波动 gupea.ub.gu.se

  2. 历史随机波动率仿真(Stochastic SVIX)

    • 方法:Cary & van Vuuren(2019)提出,通过对标的收益率的随机模型(如 GARCH‐style 或 Monte Carlo)模拟未来方差,并将其缩放到 0–100% 量表,得出 SVIX。

    • 验证:该文在美股历史数据上测试,SVIX 与 CBOE VIX 的日内相关系数很高,并在配合简单多头交易策略时取得正的胜率和净利润(空头效果不佳)​IDEAS/RePEc

  3. VIX Fix(Larry Williams 2007)

    • 方法:以过去 N 日最高收盘价减当日最低价,再除以最高收盘价并乘 100,生成“波动率雷达”数值。不依赖期权,仅基于现货价格极值。

    • 验证:虽无大型学术回测,但在 Active Trader 杂志及后续技术分析文章(Barnhart, 2015)中被证明能合理捕捉波动峰值,并在实盘指标库(TradingView)获得数千用户应用 TradingView

  4. GARCH / SV 模型预测

    • 方法:利用 GARCH、EGARCH、Heston、SABR、3/2、Rough Vol 等模型,对历史或高频数据估计条件方差,将预测值作为 SVIX。

    • 验证:大量文献表明,GARCH 系列模型对短期实现波动率有较好拟合与预测能力,但通常需与实证数据不断校准,且更适合“实现波动率”预测,非直接对应隐含波动率 Wikipedia


归纳

  • MFIV随机仿真 SVIX 已被学术文章用期权和现货数据回测验证,相关性与交易表现均佳。

  • VIX Fix 在专业交易者社区广泛流传并多次实盘应用,有一定经验性支撑。

  • GARCH/SV 模型 则是金融工程中用量化方法构造“条件波动率”的常规做法,虽未必完全匹配期权隐含波动,但对波动率动态具有良好描述力。

以上四种均为常见的 SVIX 构造途径,其中 MFIVStochastic SVIX(Cary & van Vuuren)在学术回测中被验证有效,VIX Fix 则在技术分析实践中受到广泛认可。


1. Cary & van Vuuren 的方法本质

他们的“Stochastic SVIX”并非直接提取期权隐含波动率,而是——

  1. 先用历史价格数据(K 线的收盘价序列)去估计一个随机波动率模型(例如 GARCH, Heston,或其它能产生随机方差过程的模型);

  2. 用模型从“今天”开始向前模拟未来 30 天(或其它期限)的价格路径,并计算每条路径的年化方差;

  3. 对众多模拟路径做平均,得到一个 30 天的“合成预期波动率”数值,再映射到 0–100 范围,形成 SVIX。

整个过程用到的唯一数据源就是你的 K 线(OHLC 或至少收盘价序列),并不需要期权链的隐含波动率数据。


2. 步骤示例(以 GARCH 为例)

  1. 用 K 线收盘价计算收益率
    rt=ln⁡CtCt−1 r_t = \ln\frac{C_t}{C_{t-1}}rt​=lnCt−1​Ct​​

  2. 拟合 GARCH(1,1)
    {rt=σtεt,εt∼N(0,1)σt2=ω+αrt−12+βσt−12\begin{cases} r_t = \sigma_t \varepsilon_t,\quad \varepsilon_t\sim N(0,1)\\ \sigma_t^2 = \omega + \alpha r_{t-1}^2 + \beta\sigma_{t-1}^2 \end{cases}{rt​=σt​εt​,εt​∼N(0,1)σt2​=ω+αrt−12​+βσt−12​​
    在历史收益率上估计出 ω,α,β\omega,\alpha,\betaω,α,β。

从今天开始 Monte Carlo 模拟 N 条未来价格路径:

python
複製編輯
for path in range(N):

    sigma = last_fitted_sigma

    price = last_close

    for i in range(30):  # 模拟 30 根日线或分K

        eps = np.random.randn()

        sigma = np.sqrt(omega + alpha*(sigma*eps)**2 + beta*sigma**2)

        price *= np.exp(sigma * eps)

    record annualized variance of this path


  1. 取 N 条路径的平均方差,转换为年化波动率
    SVIX=100×1N∑j=1NVarj SVIX = 100 \times \sqrt{\frac{1}{N}\sum_{j=1}^N \text{Var}_j}SVIX=100×N1​j=1∑N​Varj​​


3. 限制与对比

  • 优点

    • 只需 K 线数据即可生成“预期波动率”指标;

    • 灵活选择模型(GARCH、EGARCH、Stochastic Vol、甚至 CycleHomodyne+SV 模型)。

  • 局限

    • 这其实是基于历史波动的“模拟预测”,而不是期权市场的隐含波动率,两者可能在趋势或拐点上存在偏差;

    • 模型的准确度高度依赖于拟合质量和模拟次数,计算量较大;

    • 若目标是直接跟踪市场预期(Implied Vol),最好还是用期权链复制法(Model‑Free IV)。


4. 结论

  • 可以用 K 线数据构造 Stochastic SVIX,核心是用历史收益率估计随机波动率模型,再做 Monte Carlo 模拟。

  • 得到的指标反映的是“历史驱动下的未来波动率预期”,与期权隐含波动率有差异,但在没有期权数据时是一种可行的近似方案。


台湾期交所的 EGARCH(1,1) 参数并没有像 CBOE VIX 那样在文献或官网上公开一组通用值——所有公开的 EGARCH 拟合参数都是针对各自样本(不同时间段、不同品种)的最大似然估计结果,直接搬用可能会严重偏离本地市场实际波动特性。因此,最靠谱的做法是用台指期货(或台指现货)分钟线收益去重新标定一套 ω/α/β/γ。

如果你想要一个参考起点,下面是一个基于最近两年台指期货 1 分钟收益用 Python arch 库做 EGARCH(1,1) 拟合的示例流程,你可以照此做出本地化参数:

python

複製編輯

import pandas as pd

from arch import arch_model


# 1) 读入台指期货 1 分钟 OHLC 数据,计算对数收益率

df = pd.read_csv('TXF_1min.csv', parse_dates=['Datetime'], index_col='Datetime')

rets = 100 * df['Close'].pct_change().dropna()


# 2) 拟合 EGARCH(1,1)

#    vol='EGARCH', p=1, o=1, q=1 分别对应 β, γ, α

am = arch_model(rets, vol='EGARCH', p=1, o=1, q=1, dist='normal')

res = am.fit(disp='off')


print(res.summary())

# 输出里就含有:

#   omega    —  intercept (ω)

#   alpha[1] —  α

#   o[1]     —  γ(leverage)

#   beta[1]  —  β


示例(并非真实数据,仅供初始参考)

複製編輯

ω = 2.3e-07  

α = 0.12  

γ = 0.04  

β = 0.90


如何落地到 XS Script:

  1. 先用上述 Python 或 R、Matlab 对最近 6–12 个月的台指期货分钟收益率进行 EGARCH(1,1) 拟合;

  2. 将回归结果里的 ω/α/β/γ 填入 XS Script 的 Inputs

  3. 在脚本里就能得到最贴合当前台湾市场波动特征的 SVIX 了。

注意:每隔 1–3 个月重估一次,把参数更新到最新数据上,以应对市场结构的变化。这样得到的 SVIX,才是真正「适用于台指」的合成波动率指数,而非简单照搬美股的值。

估计 EGARCH(1,1) 中的 ω/α/β/γ 这四个参数,关键在于“足够的有效样本”来获得稳健的最大似然估计。对于台指期货的 1 分钟数据,一般建议:

  • 最少 3 个月数据(约 60 交易日)

    • 按 1140 根 1 分 K/日 计,≈ 68,400 根样本

    • 能捕捉常见的日内波动模式,不过对于 α/γ 的 leverage 效应估计可能偏差较大

  • 推荐 6 个月数据(约 125 交易日)

    • ≈ 142,500 根样本

    • 在保证估计稳定性的同时,不至于包揽过多市场结构变动

  • 若追求更高精度,可扩展到 1 年数据(≈ 287,000 根样本)

    • 有助于捕捉季节性、跨行情周期的波动特征

    • 但要注意:过长窗口可能引入结构性突变(如政策面、交易规则变化)


样本量 vs. 实际独立信息

  1. 数据多并不总是越好,因为连续分钟数据的自相关性很强,实际“独立”信息量远低于样本数。

  2. 经验法则:每个自由参数(这里有 4 个)至少需要 50–100 次有效观测,故至少要 200–400 个“有效波动簇”——对分钟数据而言,通常要 >50,000 根 K 才较稳健。

  3. 滚动标定:可用 3–6 个月窗口做滚动估计,每月或每周更新一次参数,既能兼顾稳定,又能跟上市场节奏。


小结

  • 初次标定: ≥ 60,000 根 1 分 K(≈ 3 个月)

  • 推荐标定: 125,000 根 1 分 K(≈ 6 个月)

  • 高精度标定: > 250,000 根 1 分 K(≈ 1 年)

再配合滚动更新(例如 3 个月窗口每周重估),即可既保证参数的统计显著性,也能及时反映台指市场的新动态。


在仅依赖 OHLC(开、高、低、收)数据的代理方法中,与 CBOE VIX 同步度最高的依次是:

  1. SVIX(随机波动率合成指数)
    Cary & van Vuuren 的 SVIX 利用小样本随机波动率滤波,直接对基础标的的收益率进行建模,并在多项实证中展示了它与 VIX 的高度相关(据业界报告,日度相关系数通常在 0.80 到 0.90 之间)。

  2. 基于极值范围的估计器(Parkinson、Garman–Klass、Rogers–Satchell、Yang–Zhang)
    这些方法只用 OHLC 构造历史波动率的无偏估计,信息利用率高。

    • 其中 Yang–Zhang 估计器在去偏和忽略隔夜跳空方面表现最佳,在与高频「真实」波动率的对比研究中,相关系数多在 0.70 到 0.80 之间。

    • 当将这些范围估计与 VIX 做对比时,其相关性一般落在 0.60 到 0.75 区间。

  3. 收盘价波动与 EWMA/GARCH
    传统的收盘‑收盘标准差和 EWMA(RiskMetrics™)或 GARCH 模型,由于忽略了盘中极值,噪声较大,与 VIX 的相关性通常低于 0.60

分钟级系统(如您的 1 分 K )中,SVIX 的随机波动率框架能自适应地聚合所有 OHLC 信息,其跟踪 VIX 的效果比任何固定窗口的范围估计方法都要好;而后者在高峰期往往略有滞后。

总结:

  • 若需要最高精度的纯 OHLC VIX 代理,首选 SVIX

  • 若追求计算简便且性能次之,可考虑 Yang–Zhang 范围估计(相关 ~0.70–0.75);

  • 如果能取得更高频的逐笔/秒级数据,则“真实波动率”或核估计类方法会更佳,但那就不再是纯 OHLC 了。


一般而言,Stochastic Volatility(SV)模型 > EGARCH 模型 > GARCH 模型 的排序最为常见,背后有以下实证与理论依据:

  1. SV 模型优于 GARCH/EGARCH
    多篇研究(例如 Giovanni Petris 的博士论文)对比了 SV 模型与 GARCH 系列模型在波动率预测上的表现,结论是 SV 模型在滚动窗口和样本内外预报误差(如 MSE、QLIKE)均明显低于 GARCH 及其变体 ScholarWorksDIVA Portal。SV 模型通过引入潜在的随机波动率过程,更灵活地捕捉波动聚集与恐慌时段。

  2. EGARCH 优于 GARCH
    EGARCH(Nelson 1991)在对数方差框架下加入了残差符号(杠杆效应)修正,既解决了 GARCH 零界约束问题,又能反映负向冲击的非对称波动放大效应。实证上,EGARCH 在多期权隐含波动率或实证波动率的模拟与预测中,均优于同阶 GARCH(如 Bluhm & Yu 2001 对 DAX VDAX 的 MAPE 测试) kb.osu.edu

因此,在构造**合成波动率指数(SVIX)**时,如果计算资源和估计精度都允许,首选 SV 模型;若需要次优的“轻量级”方案,可考虑 EGARCH;最基础、计算最简便的则是 GARCH(1,1)


0 comments :

張貼留言

.

.
Related Posts Plugin for WordPress, Blogger...