STRASMORE/EXPLORE 3,256 QUERIES 22Y EQUITIES · 12Y OPTIONS

3,256 answered market questions

every one with its exact SQL, its result and the date it was computed · free, no signup

Highest IV Rank Stocks Right Now
Where IV percentile sits furthest above IV rank, latest sessiontable · 2026-10-08 · 12×6 How the screened universe distributes across IV rank, latest sessiontable · 2026-10-08 · 10×7 The top-ranked name's implied volatility by week, with its 52-week high and lowseries · 2026-10-08 · 53×4Preview: a 16-point series, roughly flat. Highest IV rank, screened US underlyings, latest options sessionseries · 2026-10-08 · 15×7Preview: a 15-point series, ending lower. IV rank and IV percentile for twelve widely held tickers, latest sessionseries · 2026-10-08 · 12×7Preview: a 12-point series, roughly flat.
ZM Implied Volatility: Zoom IV and Earnings
ZM at-the-money IV by days to expiry, most recent week of dataranking · 2026-10-04 · 5×4Preview: 5 ranked values, smallest first. ZM at-the-money 30-day implied volatility, recent sessionsseries · 2026-10-04 · 81×4Preview: a 16-point series, ending lower. ZM at-the-money IV by calendar year: average, low and hightable · 2026-10-04 · 8×5 ZM at-the-money IV before and on the biggest one-session drop in each quartertable · 2026-10-04 · 8×5
IV Rank vs IV Percentile: Formulas Explained
IV rank vs IV percentile, eight liquid names, 52 week lookbacktable · 2026-10-04 · 8×5 The same session scored at five different lookback windowsranking · 2026-10-04 · 5×4Preview: 5 ranked values, largest first. Current, 52 week low and 52 week high ATM IV for each nametable · 2026-10-04 · 8×6 AAPL at the money implied volatility, weekly, trailing 52 weeksseries · 2026-10-04 · 53×5Preview: a 16-point series, roughly flat. One stock, one session, three definitions of the IV inputtable · 2026-10-04 · 3×6
Is High Implied Volatility Good? IV in Context
Implied volatility beside the movement each stock actually delivered over the prior 30 sessionsranking · 2026-08-17 · 11×4Preview: 11 ranked values, largest first. The same reading against each name's own 52-week implied volatility range (July 28, 2026)table · 2026-08-17 · 11×5 At-the-money implied volatility, eleven familiar tickers (July 28, 2026)ranking · 2026-08-17 · 11×2Preview: 11 ranked values, largest first. Where near-the-money implied volatility sat across the traded options market (July 28, 2026)ranking · 2026-08-17 · 6×4Preview: 6 ranked values, smallest first.
Is 30% IV High? It Depends on the Ticker
IV rank against IV percentile: the latest reading inside each ticker's 52-week rangetable · 2026-08-02 · 8×6 Where a 30% reading sits in each ticker's own two-year distributiontable · 2026-08-02 · 8×6 Monthly median 30-day implied volatility: index ETF, staple, and chipmakerseries · 2026-08-02 · 24×5Preview: a 16-point series, ending lower. Implied volatility band against the move the underlying made the next sessiontable · 2026-08-02 · 5×5
Where IV percentile sits furthest above IV rank, latest session

Where IV percentile sits furthest above IV rank, latest session

most recentas of table 12×6read in context →
Where IV percentile sits furthest above IV rank, latest session — 12 rows by 6 columns, computed from US exchange, SIP and OPRA data.
tickeriv_now_pctiv_rankiv_percentilepercentile_minus_rankiv_52w_high_pct
NFLX44.83190.559.589.9
AMZN38.618.767.548.899.4
MSFT31.624.77146.365.8
NET66.622.665.542.9194.3
MRNA98.554.697.242.6133
KLAC59.533.773.339.6101.4
IEF8.153.391.738.411.4
PCG43.646.884.83864.3
PLTR5518.55435.5112.1
AAPL2618.453.635.255.9
EWZ38.455.390.134.854.7
XBI33.755.189.334.241.5
the exact SQL behind every number
WITH per_session AS (
    SELECT underlying_symbol AS u,
           date AS d,
           quantileExact(0.5)(implied_volatility) AS iv,
           sum(volume) AS vol
    FROM global_markets.options_greeks
    WHERE date >= (SELECT max(date) FROM global_markets.options_greeks) - 380
      AND iv_converged AND implied_volatility BETWEEN 0.02 AND 5
      AND abs(strike_price / underlying_close - 1) <= 0.05
      AND expiration_date BETWEEN date + 20 AND date + 60
      AND underlying_symbol NOT IN ('SPCX','KORU','SOXL','SOXS','TQQQ','SQQQ','NVDL','NVDS','NVD','TSLL','TSLQ','TSLZ','SPXL','SPXS','UPRO','SPXU','LABU','LABD','FAS','FAZ','TNA','TZA','YINN','YANG','UDOW','SDOW','BOIL','KOLD','UCO','SCO','USD','SSO','SDS','QLD','QID','ERX','ERY','DRN','DRV','CURE','SOXY','MUU','SNXX','UVXY','SVXY','UVIX','SVIX','BULZ','WEBL','WEBS','DPST','DRIP','GUSH','AGQ','ZSL','BITX','ETHU','MSTX','MSTU','CONL','DUST','JNUG','JDST','NUGT','AMDL','NUAI','VXX','VIXY')
    GROUP BY u, d
    HAVING count() >= 10
),
ranked AS (
    SELECT u, d, iv, vol,
           row_number() OVER w AS rn,
           first_value(iv) OVER w AS iv_latest,
           first_value(d) OVER w AS d_latest
    FROM per_session
    WINDOW w AS (PARTITION BY u ORDER BY d DESC)
),
agg AS (
    SELECT u,
           any(iv_latest) AS iv_cur,
           any(d_latest) AS last_d,
           count() AS sessions,
           min(iv) AS iv_lo,
           max(iv) AS iv_hi,
           countIf(iv < iv_latest) AS below_now,
           sumIf(vol, rn <= 20) AS vol_20d
    FROM ranked
    WHERE rn <= 252
    GROUP BY u
),
board AS (
    SELECT u,
           round(100 * iv_cur, 1) AS iv_now_pct,
           round(100 * (iv_cur - iv_lo) / (iv_hi - iv_lo), 1) AS iv_rank,
           round(100 * below_now / sessions, 1) AS iv_percentile,
           round(100 * iv_hi, 1) AS iv_52w_high_pct
    FROM agg
    WHERE sessions >= 200
      AND vol_20d >= 20000
      AND iv_hi > iv_lo
      AND last_d = (SELECT max(date) FROM global_markets.options_greeks)
)
SELECT u AS ticker,
       iv_now_pct,
       iv_rank,
       iv_percentile,
       round(iv_percentile - iv_rank, 1) AS percentile_minus_rank,
       iv_52w_high_pct
FROM board
ORDER BY percentile_minus_rank DESC, iv_now_pct DESC, ticker
LIMIT 12
$