{"slug":"the-best-and-worst-thousand-dollars-of-june-2026","qid":"distribution","label":"The full distribution: for every jackpot, thousands of near-total losses (put/call split included)","post_title":"The Best and Worst Thousand Dollars of June 2026","post_url":"/blog/the-best-and-worst-thousand-dollars-of-june-2026#q-distribution","columns":["contracts_with_50_trades","put_contracts","up_100x_plus","up_10x_plus","up_10x_puts","up_10x_calls","down_90_pct_plus","down_90_calls","down_90_call_share_pct","ended_at_two_cents_or_less"],"rows":[{"contracts_with_50_trades":30951,"put_contracts":14994,"up_100x_plus":1,"up_10x_plus":14,"up_10x_puts":14,"up_10x_calls":0,"down_90_pct_plus":9385,"down_90_calls":4403,"down_90_call_share_pct":46.9,"ended_at_two_cents_or_less":8949}],"shape":"scalar","sql":"SELECT\n    count() AS contracts_with_50_trades,\n    countIf(substring(ticker, -9, 1) = 'P') AS put_contracts,\n    countIf(last_px / first_px >= 100) AS up_100x_plus,\n    countIf(last_px / first_px >= 10) AS up_10x_plus,\n    countIf(last_px / first_px >= 10 AND substring(ticker, -9, 1) = 'P') AS up_10x_puts,\n    countIf(last_px / first_px >= 10 AND substring(ticker, -9, 1) = 'C') AS up_10x_calls,\n    countIf(last_px / first_px <= 0.1) AS down_90_pct_plus,\n    countIf(last_px / first_px <= 0.1 AND substring(ticker, -9, 1) = 'C') AS down_90_calls,\n    round(100.0 * countIf(last_px / first_px <= 0.1 AND substring(ticker, -9, 1) = 'C') / countIf(last_px / first_px <= 0.1), 1) AS down_90_call_share_pct,\n    countIf(last_px <= 0.02) AS ended_at_two_cents_or_less\nFROM (\n    SELECT ticker,\n        toFloat64(argMin(price, (sip_timestamp, price))) AS first_px,\n        toFloat64(argMax(price, (sip_timestamp, price))) AS last_px,\n        count() AS trades\n    FROM global_markets.options_trades\n    WHERE ((startsWith(ticker, 'O:MU') AND length(ticker) = 19) OR (startsWith(ticker, 'O:NVDA') AND length(ticker) = 21) OR (startsWith(ticker, 'O:TSLA') AND length(ticker) = 21) OR (startsWith(ticker, 'O:SPY') AND length(ticker) = 20) OR (startsWith(ticker, 'O:QQQ') AND length(ticker) = 20) OR (startsWith(ticker, 'O:AAPL') AND length(ticker) = 21))\n      AND sip_timestamp >= toDateTime64('2026-06-01 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)\n    GROUP BY ticker\n    HAVING count() >= 50 AND argMin(price, (sip_timestamp, price)) > 0\n)","computed_at":"2026-07-26T06:15:39.575346+00:00","elapsed":15.630190219}