IV期限结构怎么看?曲线形态代表什么
了解IV期限结构如何按到期日绘制,以及向上倾斜和倒挂分别意味着什么,并通过六只高流动性股票的真实期权数据判断事件风险。
IV期限结构是将隐含波动率按到期日绘制而成,每个到期日对应一个读数,所用期权的行权价接近当前股价。您遇到的情况几乎都可归入两种形态:市场平静时曲线向上倾斜,较远到期日的隐含波动率更高;当前月存在已确定日期的事件时,曲线则会倒挂。下文两种形态均基于逐合约期权数据构建,而非教科书式示意图。
IV期限结构衡量什么
隐含波动率是期权价格所隐含的标的股票价格变动幅度,按年化表示。它按每份合约报价,因此一只股票在任一时点都有数百个读数,分别对应期权链上的每个行权价和到期日。将行权价固定在接近当前股价的位置,再让到期日变化,这些读数就会排列成一条曲线。这条曲线就是期限结构。
取样方式的重要性往往被低估。本文每个面板都选取绝对Delta介于0.35和0.65之间的合约。这是表达接近平值的标准方法,既不会把行权价固定在某一档,也能避免样本偏离当前价格。随后,计算每个期限区间内隐含波动率的中位数。这里使用中位数而不是平均值:一份几乎没有交易的合约若存在滞后报价,可能显示不合理的数值,而平均值会将这一异常值带入结果。
以下是六只流动性较高股票在2026年6月各交易日的期限结构曲线。
每个数字背后的完整 SQL
WITH (
SELECT quantileDeterministic(0.5)(toFloat64(implied_volatility), cityHash64(ticker))
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'KO', 'JNJ', 'PG')
AND date >= toDate('2026-06-01')
AND date < toDate('2026-07-01')
AND iv_converged = 1
AND volume > 0
AND implied_volatility BETWEEN 0.03 AND 3
AND abs(toFloat64(delta)) BETWEEN 0.35 AND 0.65
AND days_to_expiry BETWEEN 5 AND 20
) AS front_band_iv
SELECT multiIf(days_to_expiry <= 20, '5-20 days',
days_to_expiry <= 45, '21-45 days',
days_to_expiry <= 90, '46-90 days',
days_to_expiry <= 180, '91-180 days',
'181-365 days') AS expiry_band,
round(100 * quantileDeterministic(0.5)(toFloat64(implied_volatility), cityHash64(ticker)), 1) AS median_iv_pct,
round(100 * (quantileDeterministic(0.5)(toFloat64(implied_volatility), cityHash64(ticker)) - front_band_iv), 1) AS pts_vs_front_band,
count() AS contract_count
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'KO', 'JNJ', 'PG')
AND date >= toDate('2026-06-01')
AND date < toDate('2026-07-01')
AND iv_converged = 1
AND volume > 0
AND implied_volatility BETWEEN 0.03 AND 3
AND abs(toFloat64(delta)) BETWEEN 0.35 AND 0.65
AND days_to_expiry BETWEEN 5 AND 365
GROUP BY expiry_band
ORDER BY min(days_to_expiry)中位数隐含波动率在19.6%区间为5-20 days,在21.5%区间为181-365 days,比近月合约高1.9点。这种形态沿用了期货市场的名称:正价差,即较晚交割的合约价格更高。曲线倒挂则称为逆价差。
为什么曲线通常向上倾斜
两种机制共同维持着这种正常形态。
第一是事件密度。九天后到期的合约覆盖九个日历日的风险。对于在这段时间内没有预定事件的大盘股而言,这些大多只是普通交易日。一年后到期的合约则覆盖四次季度财报、数次央行会议,以及期间所有未预见的头条新闻。每份合约包含的已知不确定性越多,市场愿意支付的年化波动率就越高。
第二是波动率本身的行为。实现波动率会呈现聚集特征:平静的几周往往接着平静的几周,剧烈波动的几周也往往接踵而来。市场平静时,近月期权的定价会接近当前较低的波动率水平;一年后到期的期权则更接近较高的长期平均水平。冲击发生后,情况会反过来。在崩盘后的几个交易日内,最前端到期合约的隐含波动率会升至报价板上的最高水平,整条曲线都会倒挂,而远月合约仍锚定在通常水平附近。
哪些因素会扭曲曲线:一个有明确日期的事件
预定发布的财报是最容易观察到曲线倒挂的情形。财报会在已知日期的收盘后发布。所有在该日期之后结算的到期日都包含这次价格变动;在该日期之前结算的到期日则不包含。覆盖该事件的最近到期合约,只有最少的普通交易日可将这次变动摊平,因此其年化读数升幅最大。六个月期权会将同一事件分摊到大约125个交易日中,几乎看不出影响。
NVIDIA于2025年2月26日(星期三)收盘后发布财报。该面板完整读取了两次期权曲线:一次是在财报发布前的最后一个交易日,即2月25日;另一次是在财报发布后的第一个交易日,即2月27日。
每个数字背后的完整 SQL
SELECT multiIf(days_to_expiry <= 20, '5-20 days',
days_to_expiry <= 45, '21-45 days',
days_to_expiry <= 90, '46-90 days',
days_to_expiry <= 180, '91-180 days',
'181-365 days') AS expiry_band,
round(100 * quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
toDate(date) = toDate('2025-02-25')), 1) AS iv_before_print_pct,
round(100 * quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
toDate(date) = toDate('2025-02-27')), 1) AS iv_after_print_pct,
round(100 * (quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
toDate(date) = toDate('2025-02-25'))
- quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
toDate(date) = toDate('2025-02-27'))), 1) AS iv_drop_pts
FROM global_markets.options_greeks
WHERE underlying_symbol = 'NVDA'
AND date >= toDate('2025-02-25')
AND date < toDate('2025-02-28')
AND iv_converged = 1
AND volume > 0
AND implied_volatility BETWEEN 0.05 AND 5
AND abs(toFloat64(delta)) BETWEEN 0.35 AND 0.65
AND days_to_expiry BETWEEN 5 AND 365
GROUP BY expiry_band
HAVING countIf(toDate(date) = toDate('2025-02-25')) >= 3
AND countIf(toDate(date) = toDate('2025-02-27')) >= 3
ORDER BY min(days_to_expiry)5-20 days区间在财报发布前一个交易日的读数为84.9%,在财报发布后的交易日为66.4%,变动了18.5点。181-365 days区间在同两个收盘日之间变动了1点,仅为前端区间变动的一小部分。同一标的、同一事件,却让曲线两端呈现出完全不同的结果。前端的这种坍塌称为隐含波动率崩跌,而期限结构会提前显示这一现象。
观察曲线的形成与坍塌
报告前后各一个交易日只能提供一个截面。整个形成过程需要数周,并表现为曲线两端之间的差距不断扩大。
每个数字背后的完整 SQL
SELECT toDate(date) AS session_date,
round(100 * quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
days_to_expiry BETWEEN 5 AND 20), 1) AS front_iv_pct,
round(100 * quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
days_to_expiry BETWEEN 91 AND 180), 1) AS back_iv_pct,
round(100 * (quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
days_to_expiry BETWEEN 5 AND 20)
- quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
days_to_expiry BETWEEN 91 AND 180)), 1) AS front_minus_back_pts
FROM global_markets.options_greeks
WHERE underlying_symbol = 'NVDA'
AND date >= toDate('2025-02-10')
AND date < toDate('2025-03-15')
AND iv_converged = 1
AND volume > 0
AND implied_volatility BETWEEN 0.05 AND 5
AND abs(toFloat64(delta)) BETWEEN 0.35 AND 0.65
AND ((days_to_expiry BETWEEN 5 AND 20) OR (days_to_expiry BETWEEN 91 AND 180))
GROUP BY session_date
HAVING countIf(days_to_expiry BETWEEN 5 AND 20) >= 3
AND countIf(days_to_expiry BETWEEN 91 AND 180) >= 3
ORDER BY session_date在这段窗口期内,两条带状线之间的差距从首个交易日的 12.4 点扩大至最后一个交易日的 3.3 点,共持续 24 个交易日。应关注前端曲线的形态,而不是其水平:随着报告临近,前端曲线上升;在报告前后几个交易日达到顶点;随后在一个交易日内回落。后端曲线在整个期间几乎没有变化。盈利与期权希腊字母介绍了同一事件对单个合约的 vega 和 theta 的影响。
曲线出现倒挂的频率是多少?
倒挂并不罕见。不同 ticker 处于倒挂状态的全年时间占比差异也非常大。
每个数字背后的完整 SQL
WITH daily AS (
SELECT underlying_symbol,
toDate(date) AS session_date,
quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
days_to_expiry BETWEEN 5 AND 30) AS front_iv,
quantileDeterministicIf(0.5)(toFloat64(implied_volatility), cityHash64(ticker),
days_to_expiry BETWEEN 91 AND 180) AS back_iv
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('NVDA', 'AAPL', 'MSFT', 'AMZN', 'KO', 'JNJ', 'PG', 'SPY', 'XOM', 'WMT')
AND date >= toDate('2025-08-01')
AND date < toDate('2026-08-01')
AND iv_converged = 1
AND volume > 0
AND implied_volatility BETWEEN 0.03 AND 5
AND abs(toFloat64(delta)) BETWEEN 0.35 AND 0.65
AND ((days_to_expiry BETWEEN 5 AND 30) OR (days_to_expiry BETWEEN 91 AND 180))
GROUP BY underlying_symbol, session_date
HAVING countIf(days_to_expiry BETWEEN 5 AND 30) >= 3
AND countIf(days_to_expiry BETWEEN 91 AND 180) >= 3
)
SELECT underlying_symbol AS ticker,
count() AS sessions,
round(100 * countIf(front_iv > back_iv) / count(), 1) AS inverted_pct,
round(100 * quantileDeterministic(0.5)(front_iv - back_iv,
cityHash64(concat(underlying_symbol, toString(session_date)))), 1) AS median_spread_pts
FROM daily
GROUP BY underlying_symbol
ORDER BY inverted_pct DESC截至 2026 年 7 月 31 日的十二个月内,251 个交易日中,XOM 有 68.5% 个交易日的近端区间高于 91 至 180 天区间,而 SPY 的这一比例为 19.5%。两者的价差中位数分别为 1.4 点和 -2.1 点。定期公布事件的标的有更长时间处于倒挂状态;宽基指数基金大部分时间处于正价差状态,倒挂主要集中在抛售期间。IV排名 衡量的是另一项指标:今日水平在过去一年自身区间中的位置,而不是不同到期日之间的曲线形态。
平坦或倒挂的期限结构如何影响日历价差
日历价差卖出近到期日权利仓位,同时买入相同行权价的远到期日权利仓位。对角价差则是在两个不同行权价之间采用相同结构。无论是哪一种策略,持仓都是做多远期到期日的隐含波动率、做空近期到期日的隐含波动率。因此,期限结构是其主要输入因素,而不是次要背景信息。
当曲线向上倾斜时,近期期权的隐含波动率低于远期期权的买入波动率。若事件发生前近月期限出现倒挂,这一关系就会反转,建仓时面对的是一条有收敛空间的曲线。事件过后,近期波动率会向远期波动率回落,远期波动率变化不大,两者之间的差距恢复到通常形态。持仓最终的表现还取决于股价走了多远,而期限结构无法说明这一点。预期波动幅度页面介绍了问题的这一部分。
平坦曲线是最棘手的情况。无论向哪个方向,都没有斜率可供利用,结果几乎完全取决于股价路径和时间流逝。
IV期限结构常见问题
期权中的IV期限结构是什么?
它是按到期日绘制的、针对平值附近期权的隐含波动率。2026年6月,六个流动性较高的标的中,读数中位数在5-20 days区间为19.6%,在181-365 days区间为21.5%。
IV期限结构倒挂意味着什么?
倒挂曲线在最近到期日显示最高的隐含波动率。当某个有明确日期的事件落在最近到期月内时,曲线可能倒挂。急跌后的几个交易日内也可能出现这种情况:临近到期合约根据近期的大幅波动定价,而远期合约的隐含波动率更接近长期均值。
为什么财报发布前最近到期月的隐含波动率如此之高?
临近到期合约剩余的正常交易日很少,难以将一次预期中的大幅隔夜波动进行平均,因此年化数值会相应上升。NVIDIA的5-20 days区间在其2025年2月26日发布财报前一个交易日为84.9%,次日为66.4%。
期限结构与波动率偏斜是一回事吗?
不是。偏斜比较同一到期日内不同行权价的隐含波动率。期限结构大致固定期权的价内外程度,比较不同到期日的隐含波动率。波动率偏斜涵盖的是同一波动率曲面的行权价维度。
以上每个数值均来自按合约统计的隐含波动率存储查询,每个面板下方都可展开查看SQL。您可以在Strasmore终端上为任意ticker绘制同一条曲线。