STRASMORE/EXPLORE 2,170 QUERIES 22Y EQUITIES · 12Y OPTIONS

2,170 answered market questions

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

Trading Options Inside an IRA: How It Works
Near the money put premium as a percent of the cash it locks upranking · 2026-08-22 · 5×3Preview: 5 ranked values, smallest first. Next declared ex dividend dates and the cash at stake per contractseries · 2026-08-22 · 2×4Preview: a 2-point series, ending higher. What one fully collateralized contract ties up, by underlyingranking · 2026-08-22 · 6×4Preview: 6 ranked values, largest first. Average call delta by strike versus spot, one week or less to expirationranking · 2026-08-22 · 6×3Preview: 6 ranked values, smallest first.
Near the money put premium as a percent of the cash it locks up

Near the money put premium as a percent of the cash it locks up

most recentas of ranking 5×3read in context →
Near the money put premium as a percent of the cash it locks up — 5 rows by 3 columns, computed from US exchange, SIP and OPRA data.
dte_bucketspy_premium_pctnvda_premium_pct
1-14 days0.822.8
15-30 days1.264.37
31-60 days1.65.72
61-120 days2.47.85
121-365 days3.919.65
the exact SQL behind every number
SELECT
    multiIf(days_to_expiry <=  14, '1-14 days',
            days_to_expiry <=  30, '15-30 days',
            days_to_expiry <=  60, '31-60 days',
            days_to_expiry <= 120, '61-120 days',
                                   '121-365 days')                                                       AS dte_bucket,
    round(avgIf(100 * toFloat64(option_close) / toFloat64(strike_price), underlying_symbol = 'SPY'), 2)   AS spy_premium_pct,
    round(avgIf(100 * toFloat64(option_close) / toFloat64(strike_price), underlying_symbol = 'NVDA'), 2)  AS nvda_premium_pct
FROM global_markets.options_greeks
WHERE date = (
        SELECT max(date)
        FROM global_markets.options_greeks
        WHERE underlying_symbol IN ('SPY', 'NVDA')
      )
  AND lower(toString(option_type)) IN ('put', 'p')
  AND days_to_expiry BETWEEN 1 AND 365
  AND toFloat64(option_close) > 0
  AND toFloat64(strike_price) > 0
  AND toFloat64(underlying_close) > 0
  AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.03
  AND underlying_symbol IN ('SPY', 'NVDA')
GROUP BY dte_bucket
HAVING countIf(underlying_symbol = 'SPY')  > 0
   AND countIf(underlying_symbol = 'NVDA') > 0
ORDER BY min(days_to_expiry)
$