STRASMORE/EXPLORE 2,178 QUERIES

Near-the-money implied volatility, 20 to 45 days to expiry, three weeks to Aug 21 2026

Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-08-28, from Implied Volatility vs Beta: What Each Tells You.

as of table 11×5read in context →
Near-the-money implied volatility, 20 to 45 days to expiry, three weeks to Aug 21 2026 — 11 rows by 5 columns, computed from US exchange, SIP and OPRA data.
symboliv_pctexpected_move_30d_pctcontract_countiv_through
COIN65.518.8598Aug 19
TSLA4111.7653Aug 19
NVDA40.311.6437Aug 19
XOM28.28.1463Aug 19
MSFT27.88922Aug 19
AAPL24.87.1599Aug 19
GLD22.96.62780Aug 19
JNJ22.86.5332Aug 19
KO18.65.3574Aug 19
SPY13.53.97451Aug 19
TLT11.73.41305Aug 19
Rows × columns
11 × 5
Computed
Completeness
No missing values
Source
US exchange, SIP and OPRA market data
Licence
Strasmore terms · free, no signup
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for Near-the-money implied volatility, 20 to 45 days to expiry, three weeks to Aug 21 2026, derived from the stored result.
ColumnTypeRangeNotes
symbol text 11 distinct values (AAPL, COIN, GLD…)
iv_pct number 11.7 to 65.5 percent
expected_move_30d_pct number 3.4 to 18.8 percent
contract_count number 332 to 7,451 count
iv_through text 1 distinct value (Aug 19)

Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.

the exact SQL behind every number
SELECT
    underlying_symbol                                                       AS symbol,
    round(avg(toFloat64(implied_volatility)) * 100, 1)                      AS iv_pct,
    round(avg(toFloat64(implied_volatility)) * 100 * sqrt(30.0 / 365.0), 1) AS expected_move_30d_pct,
    count()                                                                 AS contract_count,
    formatDateTime(max(date), '%b %e')                                      AS iv_through
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY','AAPL','MSFT','NVDA','TSLA','COIN','KO','JNJ','XOM','GLD','TLT')
  AND date >= '2026-08-03'
  AND date <= '2026-08-21'
  AND iv_converged = 1
  AND volume > 0
  AND days_to_expiry BETWEEN 20 AND 45
  AND underlying_close > 0
  AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY symbol
HAVING contract_count >= 25
ORDER BY iv_pct DESC

Run your own version of this

The same 22 years of US equities and 12 years of options data are queryable in SQL or plain English. A free account runs 100 queries a day and takes no card.

More from this analysisImplied Volatility vs Beta: What Each Tells You
Beta and R-squared against SPY: daily returns versus weekly, twelve months to Aug 21 2026 table 10×5 NVDA beta against SPY, re-estimated monthly over a rolling twelve-month window series 48×4 Average absolute daily move on sessions when SPY moved less than 0.25 percent ranking 10×4 Highest ATM implied volatility: liquid single names and funds, latest session table 12×5 Where IV percentile sits furthest above IV rank, latest session table 12×6 The same reading against each name's own 52-week implied volatility range (July 28, 2026) table 11×5 See all 2,178 queries →