STRASMORE/EXPLORE 2,882 QUERIES

Day one by half hour: quote updates and the median spread finding its level

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-07-27, from SPCX: SpaceX's First Month on the Public Market.

as of ranking 13×4read in context →
Day one by half hour: quote updates and the median spread finding its level — 13 rows by 4 columns, computed from US exchange, SIP and OPRA data.
et_bucketquote_updatesmed_spread_centsmed_spread_bps
09:301800
10:003200
10:3018500
11:001200
11:304452113018.6
12:00413345106.03
12:3027526763.6
13:0023437563.5
13:3014263174.07
14:0019307184.64
14:309260184.71
15:0016302184.94
15:3023798874.34
Rows × columns
13 × 4
Computed
Completeness
No missing values
Source
US exchange, SIP and OPRA market data
Licence
Strasmore terms · free, no signup
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for Day one by half hour: quote updates and the median spread finding its level, derived from the stored result.
ColumnTypeRangeNotes
et_bucket text 13 distinct values (09:30, 10:00, 10:30…)
quote_updates number 12 to 445,211
med_spread_cents number 0 to 30
med_spread_bps number 0 to 18.6

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
    formatDateTime(toStartOfInterval(toTimeZone(sip_timestamp, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_bucket,
    count() AS quote_updates,
    round(quantileDeterministicIf(0.5)(toFloat64(ask_price) - toFloat64(bid_price), toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price) * 100, 1) AS med_spread_cents,
    round(quantileDeterministicIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price), 2) AS med_spread_bps
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPCX'
  AND sip_timestamp >= toDateTime64('2026-06-12 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-06-12 20:00:00', 9)
GROUP BY et_bucket
ORDER BY et_bucket
⌘/Ctrl + Enter

Работайте с этими данными в своём ИИ-ассистенте

Открывается готовым к запросам, с данными этой страницы. Бесплатно, без аккаунта.

More from this analysisSPCX: SpaceX's First Month on the Public Market
SpaceX's 2026 SEC trail by form type, in filing order (CIK 0001181412, deduped by accession) ranking 12×4 → The whole US tape ranked by June 12–30 regular-hours dollar volume ranking 12×4 → Where the contracts landed: call and put volume by strike bucket table 19×5 → Symbol-reuse receipt: thirteen months of SPCX minute bars, May 2026 is absent entirely series 12×5 → The seasoning curve: regular-hours spread by session, per-update and time-weighted series 12×8 → FINRA off-exchange short volume by session: marked-short share and reported volume series 12×4 → See all 2,882 queries →