Временная структура IV: как читать кривую волатильности
Временная структура IV отражает зависимость волатильности от срока экспирации опционов. Узнайте, как интерпретировать восходящие и инвертированные кривые на основе рыночных данных.
Временная структура подразумеваемой волатильности (IV) — это график зависимости подразумеваемой волатильности от срока экспирации опционов, где для каждого срока берется одно значение, рассчитанное для опционов с ценой исполнения (страйком) около текущей рыночной цены акции. Почти все встречающиеся формы кривой можно свести к двум типам: восходящий наклон в спокойных рыночных условиях, когда более дальние экспирации имеют более высокие значения, и инвертированная кривая, когда в ближайшем месяце ожидается конкретное событие. Обе формы ниже построены на основе данных по отдельным контрактам, а не на теоретических моделях.
Что измеряет временная структура IV
Подразумеваемая волатильность — это годовой масштаб движения, который цена опциона закладывает для базового актива. Она котируется для каждого контракта, поэтому для одной акции в любой момент времени существует сотни значений — по одному на каждый страйк и каждую дату экспирации. Если зафиксировать страйк около текущей цены и менять срок экспирации, эти значения выстроятся в кривую. Эта кривая и есть временная структура.
Метод выборки важнее, чем принято считать. В каждом графике здесь используются контракты с абсолютным значением дельты от 0,35 до 0,65 — это стандартный способ обозначить опционы «около денег» (near the money), не привязываясь к конкретному страйку, — а затем берется медианная подразумеваемая волатильность внутри каждого диапазона экспираций. Используется именно медиана, а не среднее значение: одна устаревшая котировка по низколиквидному контракту может дать неправдоподобную цифру, которая исказит средний результат.
Ниже представлена кривая для шести ликвидных инструментов по состоянию на июнь 2026 года.
Точный 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 опубликовала отчет после закрытия торгов в среду, 26 февраля 2025 года. На графике кривая показана дважды: в последнюю сессию перед публикацией, 25 февраля, и в первую сессию после нее, 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 пунктов за те же две сессии, что составляет лишь малую часть движения ближнего диапазона. Один базовый актив, одно событие, противоположная динамика на двух концах кривой. Этот обвал ближнего конца называется IV crush, и временная структура позволяет увидеть его заранее.
Наблюдение за формированием и обвалом кривой
Одна сессия до и после отчета — это лишь моментальный снимок. Формирование кривой занимает недели, и оно проявляется как расширение разрыва между двумя концами кривой.
Точный 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 сессий. Следите за формой ближней линии, а не за ее уровнем: она растет по мере приближения отчета, достигает пика в дни вокруг него и падает обратно в течение одной сессии после. Дальняя линия при этом почти не меняется. В разделе Отчеты и греки опционов рассматривается влияние того же события на вегу и тету отдельных контрактов.
Как часто кривая инвертируется?
Инверсия — не редкое явление, и то, как долго инструмент находится в этом состоянии, сильно зависит от тикера.
Точный 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За 251 сессий за двенадцать месяцев по 31 июля 2026 года, XOM показывал ближний диапазон выше диапазона 91–180 дней в 68.5% случаев, против 19.5% для SPY. Их медианные разрывы составили 1.4 пунктов и -2.1 пунктов соответственно. Инструменты с регулярными календарными событиями проводят в состоянии инверсии больше времени, в то время как широкий индексный фонд большую часть времени находится в контанго, а инверсии случаются лишь во время распродаж. Ранг IV измеряет другое: где текущий уровень находится относительно собственного диапазона за прошлый год, а не форму кривой по срокам экспирации.
Как плоская или инвертированная кривая влияет на календарный спред
Календарный спред предполагает продажу ближнего опциона и покупку дальнего опциона с тем же страйком. Диагональный спред делает то же самое с разными страйками. В любом случае позиция является «длинной» по подразумеваемой волатильности дальнего опциона и «короткой» по ближнему, что делает временную структуру главным фактором, а не фоновой деталью.
Когда кривая направлена вверх, ближний опцион продается с более низкой подразумеваемой волатильностью, чем покупается дальний. Когда перед событием ближний месяц инвертирован, это соотношение меняется на обратное, и позиция открывается в расчете на схождение кривой. После события ближний конец падает к дальнему, дальний почти не меняется, и спред между ними возвращается к обычной форме. Итоговый результат позиции также зависит от того, насколько сильно изменится цена акции, о чем временная структура не говорит. Страница Ожидаемое движение посвящена этой части задачи.
Плоская кривая — наиболее сложный случай. В ней нет наклона, который можно использовать, и результат почти полностью зависит от траектории движения акции и течения времени.
Часто задаваемые вопросы о временной структуре IV
Что такое временная структура IV в опционах?
Это график подразумеваемой волатильности, построенный по датам экспирации для опционов «около денег». По шести ликвидным инструментам в июне 2026 года медианное значение составило 19.6% в диапазоне 5-20 days и 21.5% в диапазоне 181-365 days.
Что означает инвертированная временная структура IV?
Инвертированная кривая показывает самую высокую подразумеваемую волатильность на ближайших экспирациях. Она возникает, когда в ближайшем месяце ожидается конкретное событие, а также в сессии после резкого обвала, когда ближние контракты оцениваются исходя из недавних сильных движений, а дальние — ближе к долгосрочному среднему.
Почему подразумеваемая волатильность ближнего месяца так высока перед отчетами?
Ближний контракт имеет очень мало обычных торговых дней, чтобы «размыть» одно крупное ожидаемое движение после отчета, поэтому годовой показатель растет, чтобы учесть этот риск. Диапазон 5-20 days для NVIDIA составлял 84.9% в сессию перед отчетом 26 февраля 2025 года и 66.4% в сессию после него.
Является ли временная структура тем же самым, что и волатильный перекос (skew)?
Нет. Перекос сравнивает подразумеваемую волатильность по разным страйкам внутри одной экспирации. Временная структура фиксирует «близость к деньгам» и сравнивает значения по разным экспирациям. Волатильный перекос рассматривает измерение страйков на той же поверхности.
Каждая цифра выше получена с помощью запроса к базе данных подразумеваемой волатильности по контрактам; SQL-код можно развернуть под каждым графиком. Постройте такую же кривую для любого тикера в терминале Strasmore.