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

Credit Spread vs Debit Spread: Same Trade?
Every $5-wide vertical on one AAPL chain: debit paid against credit takenranking · 2026-08-07 · 6×4Preview: 6 ranked values, largest first. Profit and loss at expiration: the debit structure against the credit structureranking · 2026-08-07 · 8×4Preview: 8 ranked values, smallest first. Put-call parity on one AAPL chain: call minus put against stock minus striketable · 2026-08-07 · 5×8 Where the volume sat on that AAPL chain: call contracts against put contracts, by strikeranking · 2026-08-07 · 14×4Preview: 14 ranked values, smallest first.
Every $5-wide vertical on one AAPL chain: debit paid against credit taken

Every $5-wide vertical on one AAPL chain: debit paid against credit taken

most recentas of ranking 6×4read in context →
Every $5-wide vertical on one AAPL chain: debit paid against credit taken — 6 rows by 4 columns, computed from US exchange, SIP and OPRA data.
spread_strikescall_debitput_creditdebit_plus_credit
$275 / $2803.71.044.74
$280 / $2853.491.424.91
$285 / $2903.211.895.1
$290 / $2952.62.915.51
$295 / $30022.544.54
$315 / $3200.494.655.14
the exact SQL behind every number
WITH chain AS
(
    SELECT
        toFloat64(strike_price)                                                  AS strike,
        any(toFloat64(underlying_close))                                         AS spot,
        avgIf(toFloat64(option_close), lower(option_type) IN ('call', 'c'))      AS call_px,
        avgIf(toFloat64(option_close), lower(option_type) IN ('put', 'p'))       AS put_px
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'AAPL'
      AND date = '2026-06-12'
      AND expiration_date = '2026-07-17'
      AND volume >= 50
      AND toFloat64(strike_price) = round(toFloat64(strike_price) / 5) * 5
      AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.10
    GROUP BY strike
    HAVING countIf(lower(option_type) IN ('call', 'c')) > 0
       AND countIf(lower(option_type) IN ('put', 'p')) > 0
)
SELECT
    concat('$', toString(lo.strike), ' / $', toString(hi.strike))                AS spread_strikes,
    round(lo.call_px - hi.call_px, 2)                                            AS call_debit,
    round(hi.put_px - lo.put_px, 2)                                              AS put_credit,
    round((lo.call_px - hi.call_px) + (hi.put_px - lo.put_px), 2)                AS debit_plus_credit
FROM chain AS lo
INNER JOIN chain AS hi ON hi.strike = lo.strike + 5
ORDER BY lo.strike
$