Strasmore Research
Deep Dives · Matt ConnorBy Matt Connor · · Updated 2026-07-25

SPCX: Di Week Wey SPCX Go Underwater

SPCX week of July 6, 2026: index-add flow comot, three of five closes print under June first-trade price, and Friday set new post-listing low.

SPCX spend di week of July 6, 2026 dey do wetin young listings no suppose ever do: e go underwater. From di prior week close of $161.86, di stock fall -10.2% across five sessions to $145.4 — e close under di $150 first-trade price for 3 of 5 sessions and print one new post-listing closing low on Friday. Di week open with di last surge of index-add flow and close on di quietest tape since listing, di first analyst ratings and first public-life quarterly numbers land in between. Every number wey dey below na stored query — expand any panel for di SQL.

First, di receipts: which SPCX be dis

SPCX bin belong to anoda, different security before, so every window wey dey here na for di entity wey list for June 12, 2026 — Space Exploration Technologies Corp. (di first-month deep-dive get di full verification):

QueryDi symbol trading history by month — di gap and wen di new entity show
The exact SQL behind every number
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-07-01 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')
GROUP BY month
ORDER BY month

Di gap wey last for months na di old entity comot from tape; di heavy bars from June 2026 go forward na di new one — everitin wey dey below concern only dose prints.

Di week for one row

QuerySPCX, week of July 6, 2026 — di slide, wey dem don receipt
The exact SQL behind every number
WITH
    (
        SELECT argMax(toFloat64(close), window_start) FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPCX' AND window_start >= toDateTime('2026-07-02 00:00:00') AND window_start < toDateTime('2026-07-03 00:00:00')
          AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
    ) AS pw_close,
    (
        SELECT min(toFloat64(low)) FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPCX' AND window_start >= toDateTime('2026-07-06 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')
    ) AS lo,
    (
        SELECT max(toFloat64(high)) FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPCX' AND window_start >= toDateTime('2026-07-06 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')
    ) AS hi,
    (
        SELECT min(c) FROM (
            SELECT argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) 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-03 00:00:00')
            GROUP BY toDate(toTimeZone(window_start, 'America/New_York'))
        )
    ) AS prior_low_close,
    (
        SELECT countIf(c < 150) FROM (
            SELECT argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) AS c
            FROM global_markets.delayed_stocks_minute_aggs
            WHERE ticker = 'SPCX' AND window_start >= toDateTime('2026-07-06 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')
            GROUP BY toDate(toTimeZone(window_start, 'America/New_York'))
        )
    ) AS closes_under_150
SELECT
    round(pw_close, 2) AS prior_week_close,
    round(toFloat64(argMaxIf(close, window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199)), 2) AS week_close,
    round((toFloat64(argMaxIf(close, window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199)) / pw_close - 1) * 100, 1) AS week_change_pct,
    round(hi, 2) AS week_high,
    round(lo, 2) AS week_low,
    formatDateTime(toTimeZone(minIf(window_start, toFloat64(low) <= lo + 0.011), 'America/New_York'), '%Y-%m-%d %H:%i') AS week_low_bar_et,
    countIf(toFloat64(close) < 150 AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) AS rth_minutes_below_150,
    150 AS underwater_threshold_usd,
    closes_under_150 AS closes_below_150,
    round(prior_low_close, 2) AS prior_closing_low,
    round(prior_low_close - toFloat64(argMaxIf(close, window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199)), 2) AS new_low_margin_usd,
    round(sumIf(toFloat64(close) * toFloat64(volume), (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / 1e9, 1) AS rth_dollar_bn,
    round(toFloat64(sum(volume)) / 1e6, 1) AS week_shares_m,
    uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS session_days_observed
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPCX'
  AND window_start >= toDateTime('2026-07-06 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')

-10.2% for di week, one $167.9 high reach one $145.07 low (e print 2026-07-10 15:59 ET), and 790 regular-session minutes wey dey below di $150 first-trade price. Friday $145.4 close cut under di old post-listing closing low of $152.74.

One anchor note: "underwater" mean say e dey below di June 12 opening-cross price — wetin public buyers first pay, wey dem receipt for di first-month deep-dive; against di lower offering price, di listing still dey above water. Total regular-hours dollars: 41.7B across 5 sessions.

Session by session: di flow comot

QuerySPCX by session — close, change, shares, dollars
The exact SQL behind every number
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-07-02 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')
        GROUP BY et_date
    )
)
WHERE et_date >= toDate('2026-07-06')
ORDER BY et_date

Monday carry 17.55B — na di tail of di index-add flow wey dem receipt for di index-add deep-dive. Den di flow comot: 11.3B Tuesday (di -6.7% session wey get di first close below $150, as e dey for di decline-from-peak note), e fade go 6.31B by Friday — roughly one-third of Monday tape. Thursday +2.6% bounce no hold; Friday close -4.4% lower for $145.4.

Wetin di news feed really tok

Wetin di feed dey write wen di tape dey sink? Di titles carry wetin bare count no fit show.

QueryDi week news flow: counts, plus di three storyline receipts, dem quote am verbatim
The exact SQL behind every number
WITH
    (
        SELECT (arrayElement(splitByString('. ', argMin(title, published_utc)), 1), toString(min(toDate(toTimeZone(published_utc, 'America/New_York')))))
        FROM global_markets.stocks_news
        WHERE has(tickers, 'SPCX') AND published_utc >= toDateTime('2026-07-06 04:00:00') AND published_utc < toDateTime('2026-07-11 04:00:00')
          AND title ILIKE '%quiet period%'
    ) AS quiet,
    (
        SELECT (arrayElement(splitByString('. ', argMin(title, published_utc)), 1), toString(min(toDate(toTimeZone(published_utc, 'America/New_York')))))
        FROM global_markets.stocks_news
        WHERE has(tickers, 'SPCX') AND published_utc >= toDateTime('2026-07-06 04:00:00') AND published_utc < toDateTime('2026-07-11 04:00:00')
          AND title ILIKE '%lost%revenue%'
    ) AS results,
    (
        SELECT (arrayElement(splitByString('. ', argMin(title, published_utc)), 1), toString(min(toDate(toTimeZone(published_utc, 'America/New_York')))))
        FROM global_markets.stocks_news
        WHERE has(tickers, 'SPCX') AND published_utc >= toDateTime('2026-07-06 04:00:00') AND published_utc < toDateTime('2026-07-11 04:00:00')
          AND title ILIKE '%borrowed%'
    ) AS borrow
SELECT
    count() AS week_articles,
    uniqExact(JSONExtractString(publisher, 'name')) AS publishers,
    countIf(title ILIKE '%nasdaq-100%') AS index_add_headlines,
    quiet.1 AS quiet_period_headline,
    quiet.2 AS quiet_period_date,
    results.1 AS results_headline,
    results.2 AS results_date,
    borrow.1 AS borrowing_headline,
    borrow.2 AS borrowing_date
FROM global_markets.stocks_news
WHERE has(tickers, 'SPCX')
  AND published_utc >= toDateTime('2026-07-06 04:00:00')
  AND published_utc < toDateTime('2026-07-11 04:00:00')

51 articles wey dem tag from 3 publishers; three storylines dey control di titles. For 2026-07-07, di feed own framing na "Analysts Go All-In on SpaceX as the Quiet Period Ends" — di underwriters' silence afta IPO dey lift and ratings dey arrive, di same day as di -6.7% session. For 2026-07-09: "SpaceX Lost $4.28 Billion on $4.7 Billion in Revenue Last Quarter" — di first quarterly figures of di stock public life dey reach di feed. E dey run alongside, di balance-sheet thread — "SpaceX Borrowed $25 Billion and Is Buying Up AI Companies" (2026-07-07) — plus 5 headlines on di Nasdaq-100 add itself. Di usual discipline: one aggregated feed attention, no be di world media own — and di slide and di storylines just share calendar; co-occurrence na all dis table fit attest.

Di entity whole weekly table so far

QueryEvery week of di new entity life — open-to-close return and RTH dollars (entity-bounded)
The exact SQL behind every number
SELECT
    toString(wk) AS period_start,
    round(ret, 1) AS week_return_pct,
    round(dollar_bn, 1) AS week_rth_dollar_bn,
    sessions
FROM (
    SELECT toStartOfWeek(toDate(toTimeZone(window_start, 'America/New_York')), 1) AS wk,
           uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
           (argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / argMinIf(toFloat64(open), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - 1) * 100 AS ret,
           sumIf(toFloat64(close) * toFloat64(volume), (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / 1e9 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-11 00:00:00')
    GROUP BY wk
)
ORDER BY period_start

Five calendar weeks of existence for one small table — di listing pop, di peak, di fade, and now dis one: a -12.4% open-to-close week on 41.7B of dollars. Di baseline na di entity own prior tape, computed live — every new week still dey rewrite one-fifth of di history.

Dis fade normal? Six oda big debuts, same ruler

Dis one na ordinary post-IPO seasoning or e worse pass dat? Di check: apply one measurement — regular-hours first trade to di day-28 regular-hours close — to oda billion-dollar-plus debuts of di past two years.

QueryLarge recent debuts, first month on one ruler: first trade to di day-28 close (ET regular hours)
The exact SQL behind every number
SELECT
    b.ticker AS ticker,
    toString(any(i.ld)) AS listed,
    round(any(i.ipx), 2) AS issue_px,
    round(argMinIf(toFloat64(b.open), b.window_start, rth), 2) AS first_trade_open,
    round(argMaxIf(toFloat64(b.close), b.window_start, rth), 2) AS day28_close,
    round((argMaxIf(toFloat64(b.close), b.window_start, rth) / argMinIf(toFloat64(b.open), b.window_start, rth) - 1) * 100, 1) AS open_to_day28_pct,
    round((argMaxIf(toFloat64(b.close), b.window_start, rth) / any(i.ipx) - 1) * 100, 1) AS issue_to_day28_pct,
    toUInt8(b.ticker = 'SPCX') AS is_spcx
FROM global_markets.delayed_stocks_minute_aggs AS b
INNER JOIN (
    SELECT ticker, max(listing_date) AS ld, argMax(toFloat64(final_issue_price), listing_date) AS ipx
    FROM global_markets.stocks_ipos
    WHERE ticker IN ('SPCX', 'CRWV', 'CBRS', 'KLAR', 'VG', 'MDLN', 'LINE')
    GROUP BY ticker
) AS i ON b.ticker = i.ticker
WHERE b.ticker IN ('SPCX', 'CRWV', 'CBRS', 'KLAR', 'VG', 'MDLN', 'LINE')
  AND b.window_start >= toDateTime('2024-07-25 00:00:00')
  AND b.window_start < toDateTime('2026-07-11 00:00:00')
  AND toDate(toTimeZone(b.window_start, 'America/New_York')) >= i.ld
  AND toDate(toTimeZone(b.window_start, 'America/New_York')) <= i.ld + 28
  AND ((toHour(toTimeZone(b.window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(b.window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS rth
GROUP BY b.ticker
ORDER BY open_to_day28_pct

For dis ruler SPCX own -3.1% sit for mid-table. VG (-36%), CBRS (-35.1%) and KLAR (-18.9%) all fall harder from dia first public trade; MDLN gain 23.9% over im own first month. Against di offering price instead, SPCX im +7.7% land where most of dis table dey — above issue, below di opening print; VG na di one debut here wey sit below im own issue at day 28. From dis evidence, first-month give-back from di opening print na common shape for large debut, no be distress signature.

Still be heavyweight — but e dey fade

QueryDi week heaviest tickers by regular-hours dollar volume — where di newcomer dey sit now
The exact SQL behind every number
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-07-06 00:00:00') AND window_start < toDateTime('2026-07-11 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 12
QueryRank receipt: di week dollar volume against every other ticker
The exact SQL behind every number
WITH (
    SELECT sum(toFloat64(volume) * toFloat64(close))
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPCX'
      AND window_start >= toDateTime('2026-07-06 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')
      AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
) AS spcx_d
SELECT
    countIf(d > spcx_d AND ticker != 'SPCX') + 1 AS spcx_rank,
    round(spcx_d / 1e9, 1) AS spcx_dollar_bn,
    round(100 * spcx_d / max(d), 1) AS pct_of_leader
FROM (
    SELECT ticker, sum(toFloat64(volume) * toFloat64(close)) AS d
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= toDateTime('2026-07-06 00:00:00') AND window_start < toDateTime('2026-07-11 00:00:00')
      AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
    GROUP BY ticker
)

Rank eleventh by dollars for the week — e still dey among di tape heaviest names, at 25.4% of di week leader, where June post-listing window put am for market top handful. Di basis: every ticker regular-hours dollars over di five sessions, subject dey inside with receipt flag instead of dem exclude am — dis page topic NA di verified entity.

Wetin make di tape

QueryPrint-size anatomy and quote census — full week
The exact SQL behind every number
WITH
    (
        SELECT (round(count() / 1e6, 2),
                round(100.0 * countIf(bid_price > 0 AND ask_price > 0 AND ask_price > bid_price) / count(), 2))
        FROM global_markets.cache_stocks_quotes
        WHERE ticker = 'SPCX'
          AND sip_timestamp >= toDateTime64('2026-07-06 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-11 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(100.0 * countIf(size < 100) / count(), 1) AS odd_lot_pct_of_prints,
    quote_census.1 AS nbbo_updates_m,
    quote_census.2 AS clean_two_sided_pct
FROM global_markets.stocks_trades
WHERE ticker = 'SPCX'
  AND sip_timestamp >= toDateTime64('2026-07-06 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-11 00:00:00', 9)

5.52 million prints, 80.1% of dem na odd lots, against 2.2 million NBBO updates (99.35% clean two-sided). One month afta listing, di microstructure dey read like any big active stock own.

Di spread: seasoning still dey happen

QueryMedian quoted spread by session, regular hours (bps of midpoint)
The exact SQL behind every number
SELECT
    session,
    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,
    count() AS quote_updates
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPCX'
  AND sip_timestamp >= toDateTime64('2026-07-06 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-07-11 00:00:00', 9)
  AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
GROUP BY toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS session
ORDER BY session

Median regular-hours spreads open for 3.12 bps on Monday, e widen go 4.07 bps by midweek, and e come down to 2.7 bps by Friday — one young listing spread dey churn inside big-name territory even as im price dey fall. Liquidity provision and price direction na different machines; dis week separate dem cleanly.

Options: puts wey dey under di market, lottery calls wey dey above am

QueryOptions on di new entity, full week: contracts, put-call, busiest contract
The exact SQL behind every number
WITH
    (
        SELECT concat('$', toString(round(toFloat64(toUInt32OrZero(substring(ticker, 14, 8))) / 1000, 2)),
               if(substring(ticker, 13, 1) = 'P', ' put', ' call'),
               ', expiry 20', substring(ticker, 7, 2), '-', substring(ticker, 9, 2), '-', substring(ticker, 11, 2))
        FROM global_markets.options_trades
        WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
          AND sip_timestamp >= toDateTime64('2026-07-06 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-11 00:00:00', 9)
        GROUP BY ticker ORDER BY sum(size) DESC LIMIT 1
    ) AS busiest_name
SELECT
    round(sum(size) / 1e6, 2) AS contracts_traded_m,
    round(toFloat64(sumIf(size, substring(ticker, 13, 1) = 'P')) / toFloat64(sumIf(size, substring(ticker, 13, 1) = 'C')), 2) AS week_put_call_ratio,
    round(sum(toFloat64(price) * size) * 100 / 1e9, 2) AS premium_notional_busd,
    busiest_name AS busiest_contract
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
  AND sip_timestamp >= toDateTime64('2026-07-06 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-11 00:00:00', 9)

Di book trade 3.14 million contracts for one put-call ratio of 0.8 — calls still pass puts for number, but e heavy well-well for put side pass wetin you go see for ordinary single stock (NVDA same-week book run roughly half of dat ratio). One ratio no fit tell you WHERE di puts siddon. Di strike map fit:

QueryDi week contracts by strike bucket ($20 buckets; tails capped at $80 and $240)
The exact SQL behind every number
SELECT
    concat('$', toString(toUInt32(bucket))) AS strike_bucket,
    toUInt64(sumIf(size, substring(ticker, 13, 1) = 'C')) AS call_contracts,
    toUInt64(sumIf(size, substring(ticker, 13, 1) = 'P')) AS put_contracts,
    round(100.0 * sumIf(size, substring(ticker, 13, 1) = 'P') / sum(size), 1) AS put_share_pct,
    round(100.0 * sumIf(size, substring(ticker, 7, 6) <= '260717') / sum(size), 1) AS expiring_by_jul17_pct,
    round(100 * sum(size) / max(sum(size)) OVER (), 1) AS pct_of_biggest_bucket
FROM global_markets.options_trades
WHERE startsWith(ticker, 'O:SPCX') AND length(ticker) = 21
  AND toUInt32OrZero(substring(ticker, 14, 8)) > 0
  AND sip_timestamp >= toDateTime64('2026-07-06 00:00:00', 9) AND sip_timestamp < toDateTime64('2026-07-11 00:00:00', 9)
GROUP BY least(greatest(floor(toFloat64(toUInt32OrZero(substring(ticker, 14, 8))) / 1000 / 20) * 20, 80), 240) AS bucket
ORDER BY bucket

Di shape na barbell. Under di trading range di book almost pure put: 95.9% puts for di $120 bucket (333149 contracts), every bucket wey dey under am still pass ninety percent. Di at-the-money $140 bucket carry di highest volume for any bucket — 61.1% puts, 83.2% of am dey expire by July 17. Above di range di polarity turn (15.5% puts for $160), and di far tail almost na call: 413356 call contracts for di $240-and-up bucket, wey be di house of di week single busiest contract (di $450 call, expiry 2026-07-17). Wetin dis table fit talk: puts stack for and under di market — di classic footprint of downside protection — with long-shot calls far above. Wetin e no fit: weda dose puts dey hedge stock or dey show straight bearish views; prints no carry identity or intent (di put-call ratio explainer draw dat boundary).

Short-sellers, with denominator this time

QueryFINRA daily short volume during di week — short shares and dia off-exchange share
The exact SQL behind every number
SELECT toString(date) AS d,
       round(toFloat64(any(short_volume)) / 1e6, 1) AS short_shares_m,
       round(toFloat64(any(total_volume)) / 1e6, 1) 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-07-06') AND date <= toDate('2026-07-10')
GROUP BY date
ORDER BY date

Reported short volume come down from 23.7 million shares for Monday go reach 12.2 million for Friday, as e dey follow the total tape wey dey drop; as share of off-exchange volume, e hold steady around 66.8% — mostly na market-maker plumbing (dem dey short to fill customer buy orders), no be directional bet, as the short-volume explainer break am down. Two caveats: July 7 own market-wide file come truncated (dem receipt am for the weekly market recap), so the week show 4 daily files instead of five — and short volume na flow, no be position. The position dey inside the short-interest series:

QueryDi new entity short-interest prints to date, with implied days-to-cover
The exact SQL behind every number
SELECT toString(settlement_date) AS settlement,
       round(toFloat64(max(short_interest)) / 1e6, 1) AS shares_short_m,
       round(toFloat64(max(avg_daily_volume)) / 1e6, 1) AS avg_daily_volume_m,
       max(days_to_cover) AS vendor_days_to_cover,
       round(toFloat64(max(short_interest)) / toFloat64(max(avg_daily_volume)), 2) AS implied_days_to_cover
FROM global_markets.stocks_short_interest
WHERE ticker = 'SPCX' AND settlement_date >= toDate('2026-06-01') AND settlement_date <= toDate('2026-06-30')
GROUP BY settlement_date
ORDER BY settlement_date

Between the 2026-06-15 and 2026-06-30 settlements, shares short grow from 23.3 million go reach 111.3 million — but the denominator matter: against the vendor own 151.6 million-share average day, that one na implied days-to-cover of just 0.73 (the vendor own field floor dey at 1) — the whole short book fit cover inside one average session. One disclosure stand out: the source don already restate the June 15 print once since the first-month page first publish — these figures na im current record, dem re-run am and check the bounds for every regeneration.

Wetin to dey watch from here

Four threads still dey open. Di index-add flow na one-time thing by design — index funds dey buy for inclusion, den dem dey hold — so Monday 17.55B tape na ceiling wey dat mechanism no go rebuild. Di July 17 expiry go retire most of di at-the-money options traffic (83.2% of di biggest strike bucket); where di put wall rebuild na di cleanest read on whether di protection bid still dey persist. Di next short-interest settlement go publish on FINRA usual lag and e go show whether shares short keep growing into di slide. And every IPO standing supply date — di lock-up expiration — dey inside di FAQ below.

FAQ

SPCX still dey above im IPO price?

E dey above di offering price, but e dey below di first public trade. SPCX close di week for $145.4 — na 7.7% above di $135 offering price, but e still dey under di $150 opening cross wey public trading start for June 12.

Wetin SPCX im put-call ratio really mean?

0.8 puts trade for every call — calls still plenty pass puts, but e roughly double di same-week tilt wey dey inside NVDA im options book. One ratio alone no fit separate hedging from bearish bets; di strike map show say puts gada for at and below di market, na di shape wey protection dey take.

Why di index-add buying vanish?

Index inclusion na one-time rebalance: tracking funds dey buy around di effective date, den dem just hold. Di big July 6 closing cross na dat purchase wey happen; di mechanism no dey ever buy again.

Di June first-trade price na support level for SPCX?

Dat $150 mark na where di June 12 opening cross print — na reference point, no be mechanical floor. Di tape spend 790 regular-session minutes below am dis week and e close under am 3 times, so as hard floor e don already give way.

When di SPCX IPO lock-up go expire?

Di prospectus set di date; di normal term na 180 days from di offering — for June 12, 2026 listing, na early December 2026. Until e pass, most insider and pre-IPO shares no fit sell; di lock-up expiration na di standard supply date for every IPO calendar.

Data notes

All timestamps na UTC; regular hours na di 810-1199 UTC-minute band (di EDT session); di debut-comparison panel instead dey filter di 9:30-16:00 ET clock so winter listings go stay on di true session. Di week run July 6-10 with di prior close from Thursday July 2 (July 3 na holiday). Dis symbol dey on di ambiguity guard list: every SPCX window dey start at or after di June 12, 2026 listing of di verified entity, and di symbol-history panel dey make di old entity boundary visible. Di "underwater" measure dey count regular-session minutes and closes wey dey below di first-trade price (di June 12 opening cross, wey dem emit as a declared column) — no be di offering price. Di debut comparison dey run each listing from im own first regular-hours trade to im own day-28 close — same ruler, different calendars — with issue prices from di IPO record. OCC option tickers dem dey parse positionally; unparseable strikes dem dey exclude by a strike > 0 filter. News counts and quoted headlines dey measure ONE aggregated feed; headline receipts na first-sentence trims. Short-volume dey inherit im source file completeness, wey dem flag above; di short-interest series dem don restate before.

How We Do Am

  • Where we get info: consolidated tape — delayed_stocks_minute_aggs, stocks_trades, cache_stocks_quotes, options_trades, stocks_news, stocks_ipos, FINRA stocks_short_volume and stocks_short_interest.
  • How we handle entities: we dey use verified_tickers assertion; windows dey bound to di entity after e list; di reuse receipt dey lead di page.
  • Deterministic aggregates; prior-period and cross-listing comparisons we compute live, we no dey quote from oda posts.
  • Warehouse as-of: July 12, 2026.

Cross-links: di first month, di index add, di decline from peak, and di week market recap. Every panel na one stored object — chart, table, SQL — and every query dey run on di Strasmore terminal.