SPCX: Analisi primo mese quotazione SpaceX
Analisi del debutto di SPCX a giugno 2026: dal delayed opening cross al volume monetario record, con focus su spread, opzioni e posizioni short.
SpaceX è quotata in borsa dal 12 giugno 2026 con il ticker SPCX — quattro lettere che ad aprile appartenevano ancora a una società diversa. Con un prezzo di emissione di $135, il titolo ha aperto a $150 (11.1% sopra l'emissione), ha raggiunto un picco di chiusura a $201.99 il 2026-06-16, ha registrato un minimo pre-market di $146.88 e si è concluso a $170.72 — 26.5% sopra l'emissione, 15.5% sotto il picco — posizionandosi al quarto posto nell'intero mercato statunitense per volume monetario durante l'orario regolare, superando NVDA. Ogni numero riportato deriva da una query memorizzata; espandere qualsiasi pannello per visualizzare il codice SQL esatto.
L'esatto SQL dietro ogni numero
WITH
(
SELECT toFloat64(final_issue_price)
FROM global_markets.stocks_ipos
WHERE ticker = 'SPCX'
ORDER BY listing_date DESC LIMIT 1
) AS issue_px,
(
SELECT count() FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2026-05-01 00:00:00') AND window_start < toDateTime('2026-06-01 00:00:00')
) AS may_bars,
(
SELECT count() FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-06-19 00:00:00') AND window_start < toDateTime('2026-06-20 00:00:00')
) AS spy_jun19,
(
SELECT (toString(argMax(et_date, c)), max(c), argMax(c, et_date))
FROM (
SELECT
toDate(toTimeZone(window_start, 'America/New_York')) AS et_date,
argMax(toFloat64(close), window_start) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2026-06-12 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY et_date
)
) AS closes,
(
SELECT max(toFloat64(high)) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2026-06-12 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
) AS hi,
(
SELECT min(toFloat64(low)) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2026-06-12 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
) AS lo
SELECT
round(issue_px, 2) AS issue_price_usd,
round(toFloat64(argMin(open, window_start)), 2) AS opening_cross_price,
round((toFloat64(argMin(open, window_start)) / issue_px - 1) * 100, 1) AS open_pop_vs_issue_pct,
closes.1 AS peak_close_date,
round(closes.2, 2) AS peak_close,
round(closes.3, 2) AS final_close,
round((closes.3 / issue_px - 1) * 100, 1) AS final_vs_issue_pct,
round((1 - closes.3 / closes.2) * 100, 1) AS final_below_peak_pct,
round(hi, 2) AS month_high,
formatDateTime(toTimeZone(minIf(window_start, toFloat64(high) >= hi - 0.011), 'America/New_York'), '%Y-%m-%d %H:%i') AS month_high_first_bar_et,
countIf(toFloat64(high) >= hi - 0.011) AS bars_within_cent_of_high,
argMinIf(transactions, window_start, toFloat64(high) >= hi - 0.011) AS high_minute_trades,
round(lo, 2) AS month_low_extended,
formatDateTime(toTimeZone(argMin(window_start, toFloat64(low)), 'America/New_York'), '%Y-%m-%d %H:%i') AS month_low_bar_et,
countIf(toFloat64(low) <= lo + 0.011) AS bars_within_cent_of_low,
argMin(transactions, toFloat64(low)) AS low_minute_trades,
round(minIf(toFloat64(low), (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS month_low_regular_hours,
round(minIf(toFloat64(low), (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - lo, 2) AS rth_minus_extended_low,
round(toFloat64(sum(volume)) / 1e9, 2) AS month_shares_bn,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
may_bars AS may_2026_bars,
spy_jun19 AS spy_bars_june19
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2026-06-12 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')Un ticker, due società
SPCX è un simbolo riutilizzato, pertanto i dati di verifica sono prioritari. Fino ad aprile 2026 il ticker è stato scambiato come un fondo poco liquido — 13 candele minute nel suo ultimo mese di attività, tra $21.92 e $23.64. A maggio 2026 non ha registrato alcun movimento (0 candele). Il 12 giugno è stato riassegnato a Space Exploration Technologies Corp.:
L'esatto SQL dietro ogni numero
WITH
(
SELECT (toString(listing_date), toFloat64(final_issue_price), round(toFloat64(total_offer_size) / 1e9, 1),
primary_exchange, issuer_name, security_description, toFloat64(max_shares_offered))
FROM global_markets.stocks_ipos
WHERE ticker = 'SPCX'
ORDER BY listing_date DESC LIMIT 1
) AS ipo,
(SELECT count() FROM global_markets.stocks_balance_sheets WHERE cik = '0001181412' OR has(tickers, 'SPCX')) AS bs_rows,
(SELECT count() FROM global_markets.stocks_cash_flow_statements WHERE cik = '0001181412' OR has(tickers, 'SPCX')) AS cf_rows,
(SELECT count() FROM global_markets.stocks_income_statements WHERE cik = '0001181412' OR has(tickers, 'SPCX')) AS is_rows
SELECT
ipo.1 AS listing_date,
ipo.5 AS issuer,
round(ipo.2, 2) AS final_issue_price_usd,
ipo.3 AS offer_size_busd,
round(ipo.7 / 1e6, 1) AS max_shares_offered_m,
ipo.4 AS listing_exchange,
ipo.6 AS security,
bs_rows + cf_rows + is_rows AS fundamentals_rowsL'esatto SQL dietro ogni numero
SELECT
toStartOfMonth(window_start) AS month,
count() AS minute_bars,
round(min(toFloat64(low)), 2) AS low_usd,
round(max(toFloat64(high)), 2) AS high_usd,
round(toFloat64(sum(volume)) / 1e6, 2) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2025-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY month
ORDER BY monthUna query "SPCX history" senza filtraggio unisce due società non correlate — pertanto ogni finestra temporale qui presente inizia il 12 giugno 2026. Il feed delle notizie mostra lo stesso crollo (0 articoli con tag SPCX negli ultimi dodici mesi), così come lo short interest: un salto di circa 11461x attraverso il divario.
La documentazione è arrivata per prima
L'esatto SQL dietro ogni numero
SELECT
form_type,
uniqExact(accession_number) AS filings,
toString(min(filing_date)) AS first_filed,
toString(max(filing_date)) AS last_filed
FROM global_markets.stocks_sec_edgar_index
WHERE cik = '0001181412'
AND filing_date >= toDate('2026-01-01') AND filing_date <= toDate('2026-06-30')
GROUP BY form_type
ORDER BY min(filing_date), form_typeLeggendo dall'alto verso il basso, l'IPO si compone così: un emendamento riservato (DRS/A) su 2026-05-07, il modulo S-1 pubblico su 2026-05-20, gli emendamenti 2 a quest'ultimo, poi i prospetti di free-writing 7 FWP — documenti per il roadshow — tra 2026-06-04 e 2026-06-11. La registrazione e la certificazione dell'Exchange sono arrivate il 2026-06-10; l'avviso di efficacia e il primo di 10 moduli Form 3 per insider su 2026-06-11; il prospetto finale 424B4 e un modulo S-8 nel giorno stesso della quotazione. Successivamente, il ritmo si è spostato sugli 8-K:
L'esatto SQL dietro ogni numero
SELECT
toString(filing_date) AS filed,
form_type,
replaceAll(substring(items_text, 1, 170), '\n', ' · ') AS opening_lines
FROM global_markets.stocks_8k_text
WHERE cik = '0001181412'
AND filing_date >= toDate('2026-06-01') AND filing_date <= toDate('2026-06-30')
ORDER BY filing_date6 di essi in meno di due settimane: vendite di azioni non registrate alla chiusura dell'IPO (Item 3.02); un accordo rilevante con X67 Inc., una sussidiaria interamente controllata (1.01); cambiamenti nel board e negli officer (5.02); un avviso secondo la Regulation FD (7.01); e avvisi Item 8.01 su un'offerta di senior unsecured notes iniziata il 22 giugno, secondo l'8-K depositato il 2026-06-23. Un titolo del 23 giugno lo ha sintetizzato: "SpaceX's Fundraising Is Not Over With a $20 Billion New Bond Offering". La finestra di offerta e i minimi mensili del titolo cadono sugli stessi giorni del calendario; questo dato non indica altro.
Listing day: an open with no 9:30
An IPO does not open with the market. Nasdaq began publishing SPCX quotes at 09:50:01 ET — locked, indicative bid-equals-ask pairs walking the book toward a clearing price — and for nearly two hours there were no trades at all. SpaceX's first public print was the opening cross itself: 58.21 million shares at $150, stamped 11:46:45 ET under condition codes 17, 9 and 41 (market-center opening print, cross, trade-through exempt). The stock ran to 176.52, held a 149.34 low, and went out on a 7.85 million-share closing cross at $160.95 — 19.2% over issue. Totals: 513.5 million shares, $84.1 billion, 8.57 million prints, in a regular session a little over four hours long.
L'esatto SQL dietro ogni numero
WITH
(
SELECT toFloat64(final_issue_price)
FROM global_markets.stocks_ipos
WHERE ticker = 'SPCX'
ORDER BY listing_date DESC LIMIT 1
) AS issue_px,
(
SELECT (formatDateTime(toTimeZone(min(sip_timestamp), 'America/New_York'), '%H:%i:%S'), round(count() / 1e6, 2))
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPCX'
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-06-13 00:00:00', 9)
) AS q,
(
SELECT (round(toFloat64(sum(volume)) / 1e6, 1), round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 1),
round(max(toFloat64(high)), 2), round(min(toFloat64(low)), 2))
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2026-06-12 00:00:00') AND window_start < toDateTime('2026-06-13 00:00:00')
) AS bars
SELECT
q.1 AS first_quote_et,
q.2 AS day_quote_updates_m,
formatDateTime(toTimeZone(minIf(sip_timestamp, has(conditions, 17)), 'America/New_York'), '%H:%i:%S') AS opening_cross_et,
round(toFloat64(maxIf(size, has(conditions, 17))) / 1e6, 2) AS opening_cross_shares_m,
round(toFloat64(argMaxIf(price, size, has(conditions, 17))), 2) AS opening_cross_price,
formatDateTime(toTimeZone(minIf(sip_timestamp, has(conditions, 8)), 'America/New_York'), '%H:%i:%S') AS closing_cross_et,
round(toFloat64(maxIf(size, has(conditions, 8))) / 1e6, 2) AS closing_cross_shares_m,
round(toFloat64(argMaxIf(price, size, has(conditions, 8))), 2) AS closing_cross_price,
round((toFloat64(argMaxIf(price, size, has(conditions, 8))) / issue_px - 1) * 100, 1) AS close_vs_issue_pct,
round(count() / 1e6, 2) AS day_prints_m,
bars.1 AS day_shares_m,
bars.2 AS day_dollar_bn,
bars.3 AS day_high,
bars.4 AS day_low
FROM global_markets.stocks_trades
WHERE ticker = 'SPCX'
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-06-13 00:00:00', 9)The quote stream tells the price-discovery half. Before the cross, the only NBBO updates are the locked indicatives (18 in the 09:30 half hour, spread zero by construction). Then quoting flooded in: 445211 updates in the 11:30 bucket alone, at a median bid-ask spread of 30 cents (18.6 bps). By the 13:00 bucket the median was 6 cents (3.5 bps) — a spread is not born tight; this one tightened within two hours.
L'esatto SQL dietro ogni numero
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_bucketSession per session
L'esatto SQL dietro ogni numero
SELECT
et_date,
close_usd,
round(if(prev_close = 0, NULL, (close_usd / prev_close - 1) * 100), 1) AS change_pct,
shares_m,
dollar_bn
FROM (
SELECT et_date, close_usd, shares_m, dollar_bn,
lagInFrame(close_usd) OVER (ORDER BY et_date ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_close
FROM (
SELECT
toDate(toTimeZone(window_start, 'America/New_York')) AS et_date,
round(argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS close_usd,
round(toFloat64(sum(volume)) / 1e6, 1) AS shares_m,
round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 2) AS dollar_bn
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
AND window_start >= toDateTime('2026-06-12 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY et_date
)
)
ORDER BY et_dateL'andamento: 19.3% nella seconda sessione, una chiusura con picco a $201.99 su 2026-06-16, seguita da tre cali consecutivi — il più brusco è stato un movimento del -16.4% su 2026-06-22, la prima sessione dopo la festività del 19 giugno e il giorno di inizio dell'offerta di note. Il ribasso ha toccato il minimo di $152.74 su 2026-06-26; le ultime due sessioni si sono chiuse rispettivamente 7.4% e 4.1% più in alto (2026-06-29 ha il suo riepilogo giornaliero e il suo approfondimento tick-level). I volumi sono diminuiti più velocemente di quanto il prezzo si sia ripreso: 513.5 milioni di azioni nel primo giorno, 75.8 milioni su 2026-06-30.
Entrambi gli estremi mensili superano un controllo incrociato dei dati — e appartengono a fasi di mercato differenti. Il massimo di $225.64 registrato alle 2026-06-16 10:02 ET: 2 barre con scarto di un centesimo, 47699 scambi nel primo minuto di picco. Il minimo di $146.88 registrato alle 2026-06-23 04:11 ET con 2 barre con scarto di un centesimo e 14844 scambi in quel minuto. Il minimo durante l'orario regolare è di $147.11, ovvero $0.23 sopra di esso; qualsiasi dato indichi un "minimo di giugno" deve specificare a quale dei due si riferisce.
Il quarto ticker per volume di scambi
Classifica ogni simbolo quotato negli Stati Uniti per volume di dollari durante l'orario regolare tra il 12 e il 30 giugno — un'aggregazione completa dell'intero mercato, non una lista di candidati — e la nuova quotazione si posiziona al quarto posto: 344.6 miliardi di dollari, superata solo da MU (585.4 miliardi di dollari), SPY e QQQ, e davanti a NVDA (253.1 miliardi di dollari), TSLA e AAPL. Ogni riga ha fatto riferimento allo stesso numero di sessioni 12.
L'esatto SQL dietro ogni numero
SELECT
ticker,
round(sum(toFloat64(volume) * toFloat64(close)) / 1e9, 1) AS regular_hours_dollar_bn,
round(100 * sum(toFloat64(volume) * toFloat64(close)) / max(sum(toFloat64(volume) * toFloat64(close))) OVER (), 1) AS pct_of_leader,
toUInt8(ticker = 'SPCX') AS is_spcx
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-06-12 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY ticker
ORDER BY regular_hours_dollar_bn DESC
LIMIT 12Composizione del tape
L'esatto SQL dietro ogni numero
WITH
(
SELECT (round(count() / 1e6, 2),
round(100.0 * countIf(bid_price > 0 AND ask_price > 0 AND ask_price > bid_price) / count(), 2),
countIf(bid_price > 0 AND ask_price > 0 AND ask_price = bid_price),
countIf(bid_price > 0 AND ask_price > 0 AND ask_price < bid_price),
countIf(bid_price <= 0 OR ask_price <= 0),
countIf(bid_price > 0 AND ask_price > 0 AND ask_price < bid_price AND sip_timestamp < toDateTime64('2026-06-13 00:00:00', 9)),
countIf(bid_price > 0 AND ask_price > 0 AND ask_price < bid_price AND sip_timestamp >= toDateTime64('2026-06-30 00:00:00', 9)))
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPCX'
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
) AS quote_census
SELECT
round(count() / 1e6, 2) AS prints_m,
quantileDeterministic(0.5)(toFloat64(size), toUInt64(abs(sequence_number))) AS median_print_shares,
round(avg(toFloat64(size)), 1) AS avg_print_shares,
round(100.0 * countIf(size < 100) / count(), 1) AS odd_lot_pct_of_prints,
round(100.0 * countIf(toFloat64(size) != round(toFloat64(size))) / count(), 2) AS fractional_pct_of_prints,
quote_census.1 AS nbbo_updates_m,
quote_census.2 AS clean_two_sided_pct,
quote_census.3 AS locked_updates,
quote_census.4 AS crossed_updates,
quote_census.5 AS one_sided_or_empty_updates,
quote_census.6 AS crossed_first_session,
quote_census.7 AS crossed_final_session
FROM global_markets.stocks_trades
WHERE ticker = 'SPCX'
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)I dati presentano caratteri piccoli e un'alta densità di quote: 41.01 milioni di operazioni con una mediana di 10 azioni (media di 64.2 — i grandi cross trascinano verso l'alto la media), 81.9% odd lots (sotto le 100 azioni), 8.73% frazionari — dati coerenti con l'uso di app retail che frazionano gli ordini, con i market makers dall'altra parte. La metà relativa alle quote: 11.78 milioni di aggiornamenti NBBO, 99.32% quote bid-ask bilanciate; 46377 quote crossed (bid superiore all'ask — venue non sincronizzate), in calo da 17730 del primo giorno a 437 il 30 giugno; 34118 quote locked; 116 quote unilatere o vuote. Le statistiche sullo spread riportate di seguito escludono le quote crossed e unilatere, con il conteggio dei drop visualizzato nel pannello.
Le stagioni dello spread
La caratteristica distintiva di una nuova quotazione è la stabilizzazione dello spread, misurato per sessione sia come mediana delle quotazioni sia come media ponderata per il tempo. Il primo giorno inizia con il cross delle 11:46; l'inclusione degli indicativi pre-open bloccati ne ridurrebbe l'ampiezza.
L'esatto SQL dietro ogni numero
SELECT
session,
quote_updates,
invalid_dropped,
med_spread_cents,
tw_spread_cents,
med_spread_bps,
tw_spread_bps,
round(100 * (tw_spread_bps / min(tw_spread_bps) OVER () - 1), 0) AS pct_above_tightest_session
FROM (
SELECT
session,
count() AS quote_updates,
countIf(NOT valid) AS invalid_dropped,
round(quantileDeterministicIf(0.5)(spread, toUInt64(ts_us), valid) * 100, 1) AS med_spread_cents,
round(sumIf(spread * dt, valid AND dt > 0) / sumIf(dt, valid AND dt > 0) * 100, 1) AS tw_spread_cents,
round(quantileDeterministicIf(0.5)(spread / mid * 10000, toUInt64(ts_us), valid), 2) AS med_spread_bps,
round(sumIf(spread / mid * dt, valid AND dt > 0) / sumIf(dt, valid AND dt > 0) * 10000, 2) AS tw_spread_bps
FROM (
SELECT session, spread, mid, valid, ts_us,
greatest(if(next_us = 0, end_us, least(next_us, end_us)) - ts_us, 0) AS dt
FROM (
SELECT
toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS session,
toFloat64(ask_price) - toFloat64(bid_price) AS spread,
(toFloat64(ask_price) + toFloat64(bid_price)) / 2 AS mid,
(bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price) AS valid,
toUnixTimestamp64Micro(sip_timestamp) AS ts_us,
toUnixTimestamp64Micro(toDateTime64(concat(toString(toDate(toTimeZone(sip_timestamp, 'America/New_York'))), ' 20:00:00'), 6, 'UTC')) AS end_us,
leadInFrame(toUnixTimestamp64Micro(sip_timestamp)) OVER (PARTITION BY toDate(toTimeZone(sip_timestamp, 'America/New_York')) ORDER BY sip_timestamp ASC, sequence_number ASC ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) AS next_us
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPCX'
AND sip_timestamp >= toDateTime64('2026-06-12 15:46:00', 9)
AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
)
)
GROUP BY session
)
ORDER BY sessionSu base ponderata per il tempo, lo spread è passato da 23.5 centesimi (7.64 bps) del primo giorno a 7.9 centesimi (4.7 bps) in 2026-06-30 — circa due terzi più stretto in termini di dollari, ma molto meno in termini relativi; le serie del dollaro e quella relativa divergono durante un intervallo in cui il prezzo si è mosso in un range di $146.88–$225.64. La sessione con lo spread più stretto è stata 2026-06-22 a 2 bps, con allargamenti avvenuti in 2026-06-17 (8.96 bps, la sessione successiva al picco di prezzo) e 2026-06-24 (7.38 bps), questo secondo caso in coincidenza con il calo dei volumi a 71.7 milioni di azioni da 152.3 milioni. Per confronto, tre punti di riferimento del 30 giugno:
L'esatto SQL dietro ogni numero
SELECT
ticker,
count() AS quote_updates,
countIf(NOT valid) AS invalid_dropped,
round(quantileDeterministicIf(0.5)(spread, toUInt64(ts_us), valid) * 100, 1) AS med_spread_cents,
round(quantileDeterministicIf(0.5)(spread / mid * 10000, toUInt64(ts_us), valid), 2) AS med_spread_bps,
round(sumIf(spread / mid * dt, valid AND dt > 0) / sumIf(dt, valid AND dt > 0) * 10000, 2) AS tw_spread_bps
FROM (
SELECT ticker, spread, mid, valid, ts_us,
greatest(if(next_us = 0, end_us, least(next_us, end_us)) - ts_us, 0) AS dt
FROM (
SELECT
ticker,
toFloat64(ask_price) - toFloat64(bid_price) AS spread,
(toFloat64(ask_price) + toFloat64(bid_price)) / 2 AS mid,
(bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price) AS valid,
toUnixTimestamp64Micro(sip_timestamp) AS ts_us,
toUnixTimestamp64Micro(toDateTime64('2026-06-30 20:00:00', 6, 'UTC')) AS end_us,
leadInFrame(toUnixTimestamp64Micro(sip_timestamp)) OVER (PARTITION BY ticker ORDER BY sip_timestamp ASC, sequence_number ASC ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) AS next_us
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPCX', 'AAPL', 'NATH')
AND sip_timestamp >= toDateTime64('2026-06-30 13:30:00', 9)
AND sip_timestamp < toDateTime64('2026-06-30 20:00:00', 9)
)
)
GROUP BY ticker
ORDER BY tickerLo spread mediano quotato di Apple: 3 centesimi (1.04 bps). SPCX: 6 centesimi (3.54 bps). Nathan's Famous, con 1036 aggiornamenti della quotazione durante la sessione: 30 centesimi (29.66 bps). Dopo diciotto giorni, SpaceX quotava con uno spread leggermente più ampio rispetto a una mega-cap, ma diverse volte più stretto rispetto a un titolo poco liquido.
Opzioni dal terzo giorno
L'esatto SQL dietro ogni numero
WITH
(
SELECT (round(sum(toFloat64(price) * size) * 100 / 1e9, 2), round(sum(size) / 1e6, 1))
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:AAPL') AND length(ticker) = 21
AND sip_timestamp >= toDateTime64('2026-06-01 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
) AS aapl,
(
SELECT (
concat('$', toString(intDiv(toUInt32OrZero(substring(ticker, 14, 8)), 1000)),
if(substring(ticker, 13, 1) = 'P', ' put', ' call'),
', expiry 20', substring(ticker, 7, 2), '-', substring(ticker, 9, 2), '-', substring(ticker, 11, 2)),
toUInt64(sum(size)), toUInt64(count()),
round(toFloat64(sum(toFloat64(price) * size)) / toFloat64(sum(size)), 2),
round(sum(toFloat64(price) * size) * 100 / 1e6, 1))
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
GROUP BY ticker ORDER BY sum(size) DESC LIMIT 1
) AS busiest,
(
SELECT (
concat('$', toString(intDiv(toUInt32OrZero(substring(ticker, 14, 8)), 1000)),
if(substring(ticker, 13, 1) = 'P', ' put', ' call'),
', expiry 20', substring(ticker, 7, 2), '-', substring(ticker, 9, 2), '-', substring(ticker, 11, 2)),
round(toFloat64(sum(toFloat64(price) * size)) / toFloat64(sum(size)), 2),
round(sum(toFloat64(price) * size) * 100 / 1e6, 1))
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
GROUP BY ticker ORDER BY sum(toFloat64(price) * size) DESC LIMIT 1
) AS premium_magnet,
(
SELECT max(pc)
FROM (
SELECT round(toFloat64(sumIf(size, substring(ticker, 13, 1) = 'P')) / toFloat64(sumIf(size, substring(ticker, 13, 1) = 'C')), 3) AS pc
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
GROUP BY toDate(sip_timestamp)
)
) AS max_daily_pc
SELECT
formatDateTime(toTimeZone(min(sip_timestamp), 'America/New_York'), '%Y-%m-%d %H:%i:%S') AS first_print_et,
uniqExact(toDate(sip_timestamp)) AS option_sessions,
round(count() / 1e6, 2) AS prints_m,
uniqExact(ticker) AS distinct_contracts,
round(sum(size) / 1e6, 2) AS contracts_traded_m,
round(sum(toFloat64(price) * size) * 100 / 1e9, 2) AS premium_notional_busd,
round(toFloat64(sumIf(size, substring(ticker, 13, 1) = 'P')) / toFloat64(sumIf(size, substring(ticker, 13, 1) = 'C')), 2) AS month_put_call_ratio,
max_daily_pc AS max_session_put_call_ratio,
uniqExact(substring(ticker, 7, 6)) AS expiries_traded,
concat('20', substring(max(substring(ticker, 7, 6)), 1, 2), '-', substring(max(substring(ticker, 7, 6)), 3, 2), '-', substring(max(substring(ticker, 7, 6)), 5, 2)) AS longest_expiry,
round(100 * toFloat64(sumIf(size, substring(ticker, 7, 6) = '260618')) / toFloat64(sum(size)), 1) AS jun18_expiry_share_pct,
busiest.1 AS busiest_contract,
busiest.2 AS busiest_contract_volume,
busiest.3 AS busiest_contract_prints,
busiest.4 AS busiest_contract_avg_premium,
busiest.5 AS busiest_contract_notional_musd,
premium_magnet.1 AS top_premium_contract,
premium_magnet.2 AS top_premium_avg,
premium_magnet.3 AS top_premium_notional_musd,
aapl.1 AS aapl_full_june_notional_busd,
aapl.2 AS aapl_full_june_contracts_m,
round(round(sum(toFloat64(price) * size) * 100 / 1e9, 2) - aapl.1, 2) AS spcx_minus_aapl_notional_busd
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)Opzioni quotate alle 2026-06-16 09:30:00 ET — la terza sessione del titolo. Nelle 10 sessioni di opzioni: 2.18 milioni di print, 10.4 milioni di contratti su 3199 quotazioni, $9.15 miliardi in premium (prezzo moltiplicato per il moltiplicatore standard di 100 azioni) — $0.31 miliardi in più rispetto al premium raccolto dalle opzioni di AAPL nell'MESE intero di giugno ($8.84 miliardi su 27 milioni di contratti; dieci sessioni contro un mese intero — un'asimmetria deliberata che non inficia il dato). Sono stati scambiati 22 scadenziamenti, da una scadenza settimanale di giovedì 18 giugno (il mercato era chiuso quel venerdì) fino a 2028-12-15 LEAPS; solo la prima scadenza settimanale ha registrato 26.7% del volume mensile. Il contratto più scambiato è stato il $175 put, expiry 2026-06-18 — 203765 contratti su 41648 print con un premium medio di $1.43. Il principale driver del premium è stato il $225 call, expiry 2026-09-18 — $121.3 milioni a $40.12.
L'esatto SQL dietro ogni numero
SELECT
toDate(sip_timestamp) AS session,
count() AS prints,
toUInt64(sum(size)) AS contracts_traded,
toUInt64(sumIf(size, substring(ticker, 13, 1) = 'C')) AS call_contracts,
toUInt64(sumIf(size, substring(ticker, 13, 1) = 'P')) AS put_contracts,
round(toFloat64(sumIf(size, substring(ticker, 13, 1) = 'P')) / toFloat64(sumIf(size, substring(ticker, 13, 1) = 'C')), 2) AS put_call_ratio,
round(100 * toFloat64(sum(size)) / max(toFloat64(sum(size))) OVER (), 1) AS pct_of_busiest_session
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
GROUP BY session
ORDER BY sessionI Call hanno superato i Put in ogni singola sessione: il rapporto put/call giornaliero ha raggiunto un picco di 0.987 il 2026-06-17, vicino al massimo di prezzo, e un minimo di 0.46 il 2026-06-29, nella sessione in cui il titolo ha chiuso 7.4% in rialzo — il volume dei Put ha raggiunto il picco con il prezzo, non con il minimo. La sessione più intensa è stata quella del 2026-06-18, il giorno di scadenza della prima settimanale: 1844490 contratti.
L'esatto SQL dietro ogni numero
SELECT
concat('$', toString(toUInt32(bucket))) AS strike_bucket,
call_contracts,
put_contracts,
round(100.0 * put_contracts / (call_contracts + put_contracts), 1) AS put_share_pct,
round(100 * (call_contracts + put_contracts) / max(call_contracts + put_contracts) OVER (), 1) AS pct_of_biggest_bucket
FROM (
SELECT
least(floor(toFloat64(toUInt32OrZero(substring(ticker, 14, 8))) / 1000 / 25) * 25, 450) AS bucket,
toUInt64(sumIf(size, substring(ticker, 13, 1) = 'C')) AS call_contracts,
toUInt64(sumIf(size, substring(ticker, 13, 1) = 'P')) AS put_contracts
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
AND sip_timestamp >= toDateTime64('2026-06-12 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-01 00:00:00', 9)
GROUP BY bucket
)
ORDER BY toUInt32OrZero(substring(strike_bucket, 2))La mappa degli strike presenta una struttura a barbell attorno al percorso del prezzo. Il bucket $150 ha registrato il maggior volume, con 55% Put — traffico bidirezionale at-the-money. Al di sotto del range di trading dominano i Put (92.7% del bucket $125); al di sopra i Call (1.6% Put a $250), con 42228 contratti Call nel bucket $450, circa il doppio del massimo mensile.
L'esatto SQL dietro ogni numero
SELECT
toDate(sip_timestamp) AS session,
count() AS nbbo_updates,
countIf(bid_price <= 0 OR ask_price < bid_price) AS dropped_bad_quotes,
round(avgIf(toFloat64(ask_price) - toFloat64(bid_price), bid_price > 0 AND ask_price >= bid_price) * 100, 1) AS avg_spread_cents,
round(quantileDeterministicIf(0.5)(toFloat64(ask_price) - toFloat64(bid_price), toUInt64(sequence_number), bid_price > 0 AND ask_price >= bid_price) * 100, 1) AS med_spread_cents,
round(100 * avgIf((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2), bid_price > 0 AND ask_price >= bid_price), 2) AS avg_spread_pct_of_mid
FROM global_markets.cache_options_quotes
WHERE ticker = 'O:SPCX260618P00175000'
AND sip_timestamp >= toDateTime64('2026-06-16 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-06-19 00:00:00', 9)
GROUP BY session
ORDER BY sessionIl costo di trading è stato contenuto fin dalla prima ora: il contratto più scambiato ha registrato un NBBO spread medio di 10.3 centesimi nella sua prima sessione (6.7% del mid; la mediana era di 10 centesimi), con la mediana che si è ridotta a 5 centesimi entro il giorno di scadenza (5.23% del mid, 93198 aggiornamenti quote, 37 bad quotes scartate e non conteggiate). Spread da nickel a dime sul centro liquido di un book vecchio di giorni — le far wings costano di più, e questo pannello non le rappresenta.
Il cambio di notizie e gli shorts
L'esatto SQL dietro ogni numero
WITH
(
SELECT count()
FROM global_markets.stocks_news
WHERE has(tickers, 'SPCX')
AND published_utc >= toDateTime('2025-06-01 00:00:00')
AND published_utc < toDateTime('2026-06-01 00:00:00')
) AS prior_12mo,
(
SELECT (toString(d), n)
FROM (
SELECT toDate(toTimeZone(published_utc, 'America/New_York')) AS d, count() AS n
FROM global_markets.stocks_news
WHERE has(tickers, 'SPCX')
AND published_utc >= toDateTime('2026-06-01 00:00:00')
AND published_utc < toDateTime('2026-07-01 04:00:00')
GROUP BY d ORDER BY n DESC, d ASC LIMIT 1
)
) AS peak_day,
(
SELECT (JSONExtractString(any(publisher), 'name'), count())
FROM global_markets.stocks_news
WHERE has(tickers, 'SPCX')
AND published_utc >= toDateTime('2026-06-01 00:00:00')
AND published_utc < toDateTime('2026-07-01 04:00:00')
GROUP BY JSONExtractString(publisher, 'name') ORDER BY count() DESC LIMIT 1
) AS top_pub,
(
SELECT n
FROM (
SELECT toDate(toTimeZone(published_utc, 'America/New_York')) AS d, count() AS n
FROM global_markets.stocks_news
WHERE has(tickers, 'SPCX')
AND published_utc >= toDateTime('2026-06-01 00:00:00')
AND published_utc < toDateTime('2026-07-01 04:00:00')
GROUP BY d ORDER BY d ASC LIMIT 1
)
) AS first_day_n,
(
SELECT substring(title, 1, 90)
FROM global_markets.stocks_news
WHERE has(tickers, 'SPCX')
AND published_utc >= toDateTime('2026-06-22 04:00:00')
AND published_utc < toDateTime('2026-06-24 04:00:00')
AND title ILIKE '%bond%'
ORDER BY published_utc ASC LIMIT 1
) AS notes_headline
SELECT
prior_12mo AS prior_12_months_articles,
toString(min(toDate(toTimeZone(published_utc, 'America/New_York')))) AS first_tagged_day,
first_day_n AS first_day_articles,
peak_day.1 AS peak_day_date,
peak_day.2 AS peak_day_articles,
count() AS june_articles,
uniqExact(JSONExtractString(publisher, 'name')) AS publishers,
top_pub.1 AS top_publisher,
top_pub.2 AS top_publisher_articles,
round(100.0 * top_pub.2 / count(), 0) AS top_publisher_pct,
countIf(has(tickers, 'TSLA')) AS tsla_co_articles,
countIf(has(tickers, 'NVDA')) AS nvda_co_articles,
countIf(hasAny(tickers, ['GOOG', 'GOOGL', 'GOOGN', 'GOOGM'])) AS alphabet_co_articles,
countIf(has(tickers, 'RKLB')) AS rklb_co_articles,
countIf(has(tickers, 'ASTS')) AS asts_co_articles,
countIf(has(tickers, 'TSLA')) - countIf(has(tickers, 'RKLB')) AS tsla_minus_rklb,
notes_headline AS notes_offering_headline
FROM global_markets.stocks_news
WHERE has(tickers, 'SPCX')
AND published_utc >= toDateTime('2026-06-01 00:00:00')
AND published_utc < toDateTime('2026-07-01 04:00:00')Il tagging delle notizie è una prova in sé: 0 articoli taggati SPCX nei dodici mesi precedenti la quotazione, poi 14 su 2026-06-11 (giorno del pricing), un picco di 42 articoli su 2026-06-12, 347 per il mese. Leggete questi conteggi con scetticismo: 4 editori, e solo The Motley Fool hanno scritto 65% — l'attenzione di un singolo feed, non dei media mondiali. I co-tag mostrano l'approccio editoriale: TSLA in 83 articoli, NVDA in 59, Alphabet (le classi azionarie sono collassate) in 57, mentre Rocket Lab (21) e AST SpaceMobile (15) restano molto indietro: questo feed ha trattato il tema come una storia di mega-cap, non come una del settore space.
L'esatto SQL dietro ogni numero
SELECT
date,
round(toFloat64(any(short_volume)) / 1e6, 2) AS short_shares_m,
round(toFloat64(any(total_volume)) / 1e6, 2) AS offexchange_total_m,
round(100 * toFloat64(any(short_volume)) / toFloat64(any(total_volume)), 1) AS short_pct_of_offexchange
FROM global_markets.stocks_short_volume
WHERE ticker = 'SPCX' AND date >= toDate('2026-06-01') AND date <= toDate('2026-06-30')
GROUP BY date
ORDER BY dateGli shorts sono comparsi dal primo giorno — con una definizione specifica. Il volume short off-exchange è la quota di volume riportata da FINRA (off-exchange) contrassegnata come short; gran parte di questo consiste in market maker che vendono short per coprire gli acquisti dei clienti — routine operativa, e non short interest. La quota marked-short di SPCX è partita da 33.7% al giorno della quotazione ed è salita a 71% entro il 2026-06-30, mentre il volume off-exchange riportato è sceso da 131.53 milioni di azioni a 35.77 milioni. Il co-movimento è ciò che questi dati possono mostrare; il suo significato non è contenuto in questi dati.
L'esatto SQL dietro ogni numero
SELECT
toString(maxIf(settlement_date, settlement_date >= toDate('2026-06-01'))) AS new_entity_settlement,
round(toFloat64(maxIf(short_interest, settlement_date >= toDate('2026-06-01'))) / 1e6, 2) AS shares_short_m,
round(toFloat64(maxIf(avg_daily_volume, settlement_date >= toDate('2026-06-01'))) / 1e6, 2) AS avg_daily_volume_m,
maxIf(days_to_cover, settlement_date >= toDate('2026-06-01')) AS reported_days_to_cover,
round(toFloat64(maxIf(short_interest, settlement_date >= toDate('2026-06-01'))) / toFloat64(maxIf(avg_daily_volume, settlement_date >= toDate('2026-06-01'))), 2) AS implied_days_to_cover,
countIf(settlement_date > toDate('2026-06-15')) AS settlements_published_after_june15,
toString(argMaxIf(settlement_date, settlement_date, settlement_date < toDate('2026-06-01'))) AS last_old_entity_settlement,
argMaxIf(short_interest, settlement_date, settlement_date < toDate('2026-06-01')) AS last_old_entity_short_interest,
round(toFloat64(maxIf(short_interest, settlement_date >= toDate('2026-06-01'))) / toFloat64(argMaxIf(short_interest, settlement_date, settlement_date < toDate('2026-06-01'))), 0) AS jump_multiple_vs_old_entity
FROM global_markets.stocks_short_interest
WHERE ticker = 'SPCX'Il reale short interest — posizioni aperte alla data di settlement — è stato pubblicato per la prima volta il 2026-06-30: 111.3 milioni di azioni short contro una media giornaliera di 151.63 milioni di azioni. Il vendor riporta i days-to-cover a 1 — un limite minimo; il rapporto grezzo è 0.73: gli shorts potrebbero coprirsi in meno di un giorno medio. L'ultimo settlement dell'entità precedente (2026-03-31) mostrava 9711 azioni — ancora il crollo dovuto al riutilizzo del ticker. Dalla prima edizione di questa pagina, è stato pubblicato un settlement successivo (30 giugno) pari a 1, e la fonte ha rivisto sostanzialmente al rialzo il dato del 15 giugno — le cifre sopra sono il record attuale, ricalcolato ad ogni generazione, e la pagina viene messa in attesa di revisione ogni volta che i valori escono dai range dichiarati. Questo è il meccanismo di revisione della pagina che funziona come previsto.
Note sui dati
Note complete sui dati
- Confine dell'entità (la base per verified_tickers). Il record stocks_ipos (Space Exploration Technologies Corp., quotato 2026-06-12 a $135 il XNAS), il gap a zero-bar di maggio 2026 e il cambio del news-tag determinano la riassegnazione del 12 giugno. Nessuna riga precedente al 12 giugno è attribuita a SpaceX; il frontmatter verified_tickers: ["SPCX"] è un'affermazione editoriale deliberata per il periodo 12–30 giugno 2026 su queste ricevute.
- I totali del raw trade-tape contano due volte il volume delle aste (re-report ufficiali di apertura/chiusura); i totali di azioni e dollari derivano dagli aggregati al minuto, le dimensioni dei cross derivano dai cross prints (il approfondimento del 29 giugno ne deriva la correzione).
- Il primo giorno è una sessione parziale — quotazioni dalle 09:50:01 ET, prima stampa 11:46:45 ET. Il massimo/minimo del primo giorno sono gli estremi delle barre al minuto; gli estremi mensili contengono conteggi di corroborazione entro un centesimo nel scoreboard.
- Il conteggio EDGAR elimina i duplicati tramite accession_number e seleziona il CIK 0001181412; il filer Form D "Space Exploration I" (CIK 0002130081), non correlato, è escluso per costruzione.
- Non esistono fondamentali da pubblicare: 0 righe SpaceX nelle tre tabelle dei financial-statement.
- Il file FINRA short-volume del 29 giugno è troncato per l'intero mercato (il file sorgente termina a metà alfabeto); SPCX è ordinato prima del taglio e la sua riga è completa — il approfondimento del 29 giugno contiene la ricevuta dell'indagine sul short-volume.
- Il 19 giugno è stata una chiusura dell'intero mercato, osservata e non presunta: 0 barre SPY quel giorno, quindi il periodo di giugno di SPCX copre 12 sessioni.
Metodologia
- I timestamp sono memorizzati in UTC e filtrati con intervalli UTC grezzi; giugno 2026 è interamente EDT, quindi gli orari regolari sono 13:30–20:00 UTC (9:30 am–4:00 pm ET). toTimeZone appare solo nelle liste SELECT.
- La chiusura della sessione è l'ultima barra da un minuto degli orari regolari; i prezzi dell'auction derivano dai cross prints (giorno uno: $161.29 per barra, $160.95 per cross).
- Il volume in dollari è la somma del prodotto tra chiusura della barra da un minuto e volume della barra; un proxy ponderato sulla chiusura per il valore nominale.
- La scadenza, il tipo e lo strike delle opzioni sono rielaborati dal ticker OCC (la colonna expiration_date della tabella non è affidabile); il notiziale del premio assume il moltiplicatore di 100 azioni.
- Le statistiche sullo spread per ogni aggiornamento ponderano ogni aggiornamento NBBO allo stesso modo; le statistiche ponderate per il tempo ponderano ogni quotazione in base alla sua durata. Le mediane utilizzano quantili deterministici.
- La generazione avviene solo tramite batch attraverso il percorso di sola lettura protetto; la pagina pubblica non interroga mai i dati live. Il warehouse conserva la cronologia completa dei tick senza scadenza rotativa, pertanto questa analisi può essere riprodotta dalle stesse tabelle in qualsiasi momento. Stato del warehouse al 3 luglio 2026.
Questo elenco fa parte di una più ampia analisi del 2026 — il mercato delle IPO del primo semestre, misurato fornisce il contesto necessario. Ogni pannello è un singolo oggetto memorizzato — grafico, tabella e SQL. È possibile approfondire qualsiasi query tramite il terminale Strasmore.