{"slug":"quote-driven-vs-order-driven-markets","qid":"option_sizes","label":"AAPL option trade sizes, one June 2026 session","post_title":"Quote-Driven vs Order-Driven Markets","post_url":"/blog/quote-driven-vs-order-driven-markets#q-option_sizes","columns":["size_bucket","trade_count","share_of_trades_pct","share_of_contracts_pct"],"rows":[{"size_bucket":"1 contract","trade_count":94759,"share_of_trades_pct":52.3,"share_of_contracts_pct":10.8},{"size_bucket":"2 to 10","trade_count":73631,"share_of_trades_pct":40.6,"share_of_contracts_pct":37.1},{"size_bucket":"11 to 100","trade_count":12279,"share_of_trades_pct":6.8,"share_of_contracts_pct":38.6},{"size_bucket":"101 to 500","trade_count":448,"share_of_trades_pct":0.2,"share_of_contracts_pct":9.9},{"size_bucket":"over 500","trade_count":25,"share_of_trades_pct":0,"share_of_contracts_pct":3.5}],"shape":"ranking","sql":"WITH\nsession_trades AS\n(\n    SELECT toUInt32(size) AS contracts\n    FROM global_markets.options_trades\n    WHERE underlying_symbol = 'AAPL'\n      AND sip_timestamp >= '2026-06-16 13:00:00'\n      AND sip_timestamp <  '2026-06-16 21:00:00'\n      AND size > 0\n),\ntotals AS\n(\n    SELECT\n        count()        AS all_trades,\n        sum(contracts) AS all_contracts\n    FROM session_trades\n)\nSELECT\n    b.size_bucket                                            AS size_bucket,\n    b.trades                                                 AS trade_count,\n    round(100 * b.trades / t.all_trades, 1)                  AS share_of_trades_pct,\n    round(100 * b.bucket_contracts / t.all_contracts, 1)     AS share_of_contracts_pct\nFROM\n(\n    SELECT\n        multiIf(contracts = 1,    '1 contract',\n                contracts <= 10,  '2 to 10',\n                contracts <= 100, '11 to 100',\n                contracts <= 500, '101 to 500',\n                                  'over 500') AS size_bucket,\n        min(contracts)                        AS bucket_floor,\n        count()                               AS trades,\n        sum(contracts)                        AS bucket_contracts\n    FROM session_trades\n    GROUP BY size_bucket\n) AS b\nCROSS JOIN totals AS t\nORDER BY b.bucket_floor","computed_at":"2026-08-11T15:48:11.357686+00:00","elapsed":0.002887748}