{"slug":"mbo-vs-mbp-order-book-data","qid":"top_of_book_churn","label":"What changed between consecutive top-of-book messages (AAPL, 10:00 to 10:30 a.m. ET, June 16, 2026)","post_title":"MBO vs MBP Order Book Data Explained","post_url":"/blog/mbo-vs-mbp-order-book-data#q-top_of_book_churn","columns":["message_type","message_count","share_pct"],"rows":[{"message_type":"best bid price changed","message_count":20177,"share_pct":17.6},{"message_type":"size joined at the best bid","message_count":19996,"share_pct":17.4},{"message_type":"size left the best bid","message_count":13730,"share_pct":12},{"message_type":"bid untouched, ask side updated","message_count":60887,"share_pct":53}],"shape":"ranking","sql":"WITH\n    ordered AS\n    (\n        SELECT\n            row_number() OVER (ORDER BY sip_timestamp, sequence_number) AS msg_index,\n            bid_price,\n            bid_size,\n            lagInFrame(bid_price) OVER (ORDER BY sip_timestamp, sequence_number) AS prev_bid_price,\n            lagInFrame(bid_size)  OVER (ORDER BY sip_timestamp, sequence_number) AS prev_bid_size\n        FROM global_markets.cache_stocks_quotes\n        WHERE ticker = 'AAPL'\n          AND sip_timestamp >= '2026-06-16 14:00:00'\n          AND sip_timestamp <  '2026-06-16 14:30:00'\n          AND bid_price > 0\n    ),\n    classified AS\n    (\n        SELECT multiIf(\n            bid_price != prev_bid_price, 'best bid price changed',\n            bid_size  >  prev_bid_size,  'size joined at the best bid',\n            bid_size  <  prev_bid_size,  'size left the best bid',\n            'bid untouched, ask side updated') AS message_type\n        FROM ordered\n        WHERE msg_index > 1\n    )\nSELECT\n    message_type,\n    count()                                        AS message_count,\n    round(100 * count() / sum(count()) OVER (), 1) AS share_pct\nFROM classified\nGROUP BY message_type\nORDER BY indexOf(['best bid price changed', 'size joined at the best bid', 'size left the best bid', 'bid untouched, ask side updated'], message_type)","computed_at":"2026-08-12T15:20:10.021618+00:00","elapsed":0.003088696}