best_bid_venues
Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-09-28, from how-exchange-speed-bumps-work.
| venue | mic | best_bid_update_count | pct_of_best_bid_updates |
|---|---|---|---|
| Nasdaq | XNAS | 51426 | 36.17 |
| Investors Exchange | IEXG | 36809 | 25.89 |
| NYSE Arca, Inc. | ARCX | 35439 | 24.93 |
| Cboe BZX | BATS | 8443 | 5.94 |
| Members Exchange | MEMX | 4363 | 3.07 |
| Cboe EDGX | EDGX | 2090 | 1.47 |
| New York Stock Exchange | XNYS | 985 | 0.69 |
| NYSE Texas, Inc. | XCHI | 660 | 0.46 |
| Cboe EDGA | EDGA | 432 | 0.3 |
| Cboe BYX | BATY | 427 | 0.3 |
| MIAX Pearl | EPRL | 344 | 0.24 |
| Nasdaq Philadelphia Exchange LLC | XPHL | 204 | 0.14 |
| 24X National Exchange LLC | 24EQ | 174 | 0.12 |
| Nasdaq Texas, Inc. | XBOS | 173 | 0.12 |
| NYSE National, Inc. | XCIS | 132 | 0.09 |
| NYSE American, LLC | XASE | 58 | 0.04 |
- Rows × columns
- 16 × 4
- Computed
- Completeness
- No missing values
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
venue |
text | 16 distinct values | |
mic |
text | 16 distinct values (24EQ, ARCX, BATS…) | |
best_bid_update_count |
number | 58 to 51,426 | count |
pct_of_best_bid_updates |
number | 0.04 to 36.17 | percent |
Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.
Run it yourself
This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.
SELECT
e.name AS venue,
e.mic AS mic,
count() AS best_bid_update_count,
round(100.0 * count() / sum(count()) OVER (), 2) AS pct_of_best_bid_updates
FROM global_markets.cache_stocks_quotes AS q
INNER JOIN
(
SELECT
toUInt32(id) AS exchange_id,
any(name) AS name,
any(mic) AS mic
FROM global_markets.stocks_exchanges
WHERE asset_class = 'stocks'
GROUP BY exchange_id
) AS e ON toUInt32(q.bid_exchange) = e.exchange_id
WHERE q.ticker = 'AAPL'
AND q.sip_timestamp >= '2026-06-10 15:00:00'
AND q.sip_timestamp < '2026-06-10 15:30:00'
GROUP BY venue, mic
ORDER BY best_bid_update_count DESC
Work with this data in your AI assistant
Opens ready to query, with this page's data. Free, no account.