IV Rank vs IV Percentile: Formulas Explained
IV rank vs IV percentile, eight liquid names, 52 week lookbacktable ·
2026-08-22 · 8×5
The same session scored at five different lookback windowsranking ·
2026-08-22 · 5×4
Current, 52 week low and 52 week high ATM IV for each nametable ·
2026-08-22 · 8×6
AAPL at the money implied volatility, weekly, trailing 52 weeksseries ·
2026-08-22 · 53×5
One stock, one session, three definitions of the IV inputtable ·
2026-08-22 · 3×6
IV rank vs IV percentile, eight liquid names, 52 week lookback
IV rank vs IV percentile, eight liquid names, 52 week lookback
| symbol | iv_rank | iv_percentile | gap | as_of_label |
|---|---|---|---|---|
| AAPL | 21.9 | 45.5 | 23.6 | Aug 19, 2026 |
| AMZN | 11.1 | 23 | 11.9 | Aug 19, 2026 |
| NVDA | 31.3 | 41.5 | 10.2 | Aug 19, 2026 |
| MSFT | 21.1 | 30 | 8.9 | Aug 19, 2026 |
| QQQ | 25.2 | 32.4 | 7.2 | Aug 19, 2026 |
| TSLA | 13.7 | 7.1 | 6.6 | Aug 19, 2026 |
| SPY | 5 | 9.5 | 4.5 | Aug 19, 2026 |
| KO | 38.7 | 37.2 | 1.5 | Aug 19, 2026 |
the exact SQL behind every number
WITH daily AS
(
SELECT
underlying_symbol AS symbol,
date,
avg(toFloat64(implied_volatility)) * 100 AS atm_iv
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('AAPL', 'MSFT', 'NVDA', 'AMZN', 'TSLA', 'SPY', 'QQQ', 'KO')
AND date >= today() - 371
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY symbol, date
),
latest AS
(
SELECT
symbol,
argMax(atm_iv, date) AS iv_now,
max(date) AS as_of
FROM daily
GROUP BY symbol
)
SELECT
d.symbol AS symbol,
round(100 * (l.iv_now - min(d.atm_iv)) / nullIf(max(d.atm_iv) - min(d.atm_iv), 0), 1) AS iv_rank,
round(100 * countIf(d.atm_iv < l.iv_now) / count(), 1) AS iv_percentile,
round(abs(iv_rank - iv_percentile), 1) AS gap,
formatDateTime(any(l.as_of), '%b %e, %Y') AS as_of_label
FROM daily AS d
INNER JOIN latest AS l ON l.symbol = d.symbol
GROUP BY d.symbol, l.iv_now
ORDER BY gap DESC
More from this analysisIV Rank vs IV Percentile: Formulas Explained
Current, 52 week low and 52 week high ATM IV for each name
table 8×6
→
One stock, one session, three definitions of the IV input
table 3×6
→
AAPL at the money implied volatility, weekly, trailing 52 weeks
series 53×5
→
The same session scored at five different lookback windows
ranking 5×4
→
See all 2,170 queries →