Strasmore Research
Marktrückblicke Matt ConnorVon Matt Connor · Aktualisiert 2026-07-24

Marktrückblick 6. Juli 2026 Zahlen

Nach dem Independence-Day-Wochenende eröffnete der Markt mit einem Gap up. Der QQQ zeigt eine starke Rotation gegenüber dem DIA bei engen Kursen.

Montag, 6. Juli 2026 — die erste Handelssitzung nach dem Independence-Day-Wochenende — eröffnete mit einem durch Wachstum getriebenen Gap up und hielt dieses Niveau. Der QQQ schloss bei 1.39% gegenüber dem DIA bei 0.42%, was die Rotation vom Donnerstag widerspiegelt; zudem war die Marktbreite positiv: 3861 liquide Titel stiegen gegenüber 2242. Der Großteil der Bewegung resultierte aus dem Reopening-Gap, das zum engsten Index-Kurs des vergangenen Monats bewertet wurde. Alle unten aufgeführten Zahlen stammen aus einer gespeicherten Abfrage.

Die Ergebnistabelle

Die Veränderungen vergleichen die letzte Minute der regulären Sitzung am 6. Juli mit Donnerstag, dem 2. Juli – ein Markttag zurück.

AbfrageSPY / QQQ / DIA / IWM — 6. Juli vs. Schlusskurs am 2. Juli, reguläre Handelszeiten
Das exakte SQL hinter jeder Zahl
WITH prior AS (
    SELECT ticker, argMax(close, window_start) AS prior_close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
      AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00'
    GROUP BY ticker
),
sess AS (
    SELECT ticker,
           argMin(open, window_start) AS day_open,
           argMax(close, window_start) AS day_close,
           max(high) AS day_high,
           min(low) AS day_low,
           round(toFloat64(sum(volume)) / 1e6, 1) AS shares_traded_m
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
      AND window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'
    GROUP BY ticker
)
SELECT
    s.ticker AS ticker,
    round(toFloat64(p.prior_close), 2) AS prior_close,
    round(toFloat64(s.day_open), 2) AS day_open,
    round(toFloat64(s.day_close), 2) AS day_close,
    round((toFloat64(s.day_open) / toFloat64(p.prior_close) - 1) * 100, 2) AS gap_pct,
    round((toFloat64(s.day_close) / toFloat64(s.day_open) - 1) * 100, 2) AS intraday_pct,
    round((toFloat64(s.day_close) / toFloat64(p.prior_close) - 1) * 100, 2) AS pct_change,
    round(toFloat64(s.day_high), 2) AS day_high,
    round(toFloat64(s.day_low), 2) AS day_low,
    s.shares_traded_m AS shares_traded_m
FROM sess s
JOIN prior p ON s.ticker = p.ticker
ORDER BY s.ticker

Der 1.39% von QQQ führte die vier Index-ETFs an, während der 0.42% von DIA das Schlusslicht bildete – genau das Gegenteil von Donnerstag, als der DIA stieg und der QQQ fiel. SPY schloss mit 0.87%, IWM mit 0.45%. Die heutige Marktdynamik war durch Sprünge statt stetiger Bewegungen geprägt: QQQ eröffnete 1.01% über dem Schlusskurs vom Donnerstag und legte nur weitere 0.38% vom Eröffnungskurs bis zum Schlusskurs zu; der 0.53%-Gap von SPY machte den Großteil des täglichen 0.87% aus. IWM (0.07%) und DIA (0.17%) zeigten kaum Gaps und stiegen stattdessen innerhalb der Sitzung stetig an.

War der Tag ungewöhnlich?

AbfrageSPY Open-to-Close-Bewegung im Vergleich zum vorangegangenen Monat (Rang 1 = größte absolute Bewegung)
Das exakte SQL hinter jeder Zahl
SELECT round(anyIf(oc_pct, d = toDate('2026-07-06')), 2) AS day_move_pct,
       arrayCount(x -> x > abs(anyIf(oc_pct, d = toDate('2026-07-06'))), groupArrayIf(abs(oc_pct), d != toDate('2026-07-06'))) + 1 AS abs_move_rank,
       count() AS sessions_compared,
       toString(min(d)) AS first_session
FROM (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           (argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS oc_pct
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2026-06-06 00:00:00')
      AND window_start < toDateTime('2026-07-07 00:00:00')
      AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
    GROUP BY d
)

Auf Indexebene: Nein. Die Kursbewegung des SPY von der Eröffnung bis zum Schluss betrug 0.34%. Damit liegt sie im Vergleich zu den letzten 19 Handelstagen an 13 Stelle der absoluten Veränderung – also im Mittelfeld. Die Kursentwicklung innerhalb des Handelstages war gewöhnlich; entscheidend war die Kurslücke.

Marktdurchdringung: positive Tendenz, Wachstum im Fokus

AbfrageAdvancers vs. Decliners bei Tickern mit mindestens 1 Mio. $ Handelsvolumen am 6. Juli
Das exakte SQL hinter jeder Zahl
WITH per_ticker AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-06 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-06 00:00:00')) AS day_close,
        sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-06 00:00:00') AS day_dollar_volume
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE (window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00')
       OR (window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00')
    GROUP BY ticker
)
SELECT
    countIf(day_close > prior_close AND day_dollar_volume >= 1000000) AS advancers,
    countIf(day_close < prior_close AND day_dollar_volume >= 1000000) AS decliners,
    countIf(day_close = prior_close AND day_dollar_volume >= 1000000) AS unchanged,
    countIf(day_dollar_volume >= 1000000) AS liquid_tickers,
    count() AS tickers_traded_both_sessions,
    count() - countIf(day_dollar_volume >= 1000000) AS dropped_by_liquidity_filter,
    round(100.0 * countIf(day_close > prior_close AND day_dollar_volume >= 1000000)
        / countIf(day_dollar_volume >= 1000000), 1) AS advancer_pct
FROM per_ticker
WHERE prior_close > 0 AND day_close > 0

3861 Zunahmen, 2242 Abnahmen, 86 unverändert — 62.4% der liquiden Titel stiegen. Die gewichtete Marktdurchdringung und die gleichgewichtete Marktdurchdringung waren beide positiv, während sie sich am Donnerstag noch unterschieden. Der Filter schließt 5361 von 11550 Titeln mit einem Handelsvolumen unter 1 Mio. $ aus, die an zwei Handelstagen gehandelt wurden.

Sektor für Sektor: Wie groß war die Spaltung?

Vier Megacaps definieren nicht den gesamten Markt. Das Panel bewertet den Tag anhand der elf großen Sektor-ETFs – ein Fonds pro Sektor des S&P 500, jeden Tag derselbe Korb. Achten Sie auf den Spread zwischen dem besten und dem schlechtesten Sektor: die Dispersion des Tages.

AbfrageDie elf Sektor-ETFs: 6. Juli vs. Schlusskurs am 2. Juli, unterteilt in Gap und Intraday
Das exakte SQL hinter jeder Zahl
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-06 00:00:00')) AS prior_close,
        toFloat64(argMinIf(open, window_start, window_start >= '2026-07-06 00:00:00')) AS day_open,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-06 00:00:00')) AS day_close,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-06 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('XLB', 'XLC', 'XLE', 'XLF', 'XLI', 'XLK', 'XLP', 'XLRE', 'XLU', 'XLV', 'XLY')
      AND ((window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00')
        OR (window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'))
    GROUP BY ticker
)
SELECT
    ticker,
    round((day_close / prior_close - 1) * 100, 2) AS pct_chg,
    round((day_open / prior_close - 1) * 100, 2) AS gap_pct,
    round((day_close / day_open - 1) * 100, 2) AS intraday_pct,
    day_dollar_bn,
    round(max((day_close / prior_close - 1) * 100) OVER () - (day_close / prior_close - 1) * 100, 2) AS points_behind_leader
FROM per_name
ORDER BY pct_chg DESC, ticker ASC

Technologie (XLK) dominierte den Tag mit 1.71%, wobei fast die gesamte Differenz auf diesen Sektor entfiel: 1.19% zur Eröffnung, 0.52% in den folgenden sechs und einem halben Stunden. Finanzwerte (0.99%) und Industrie (0.9%) folgten. Dann kehrt sich das Bild um: fünf grüne Zeilen weichen sechs roten; die defensiven Sektoren – Versorger, Gesundheitswesen, Basiskonsumgüter – fielen auf bis zu -1.08%. Von oben nach unten trennten 2.79 Prozentpunkte den besten vom schlechtesten Sektor an einem Tag, an dem sich der S&P-Tracker um 0.87% bewegte – das entspricht dem Vielfachen der Indexbewegung. Dies zeigt, warum man einen grünen Tag nicht pauschal bewerten kann. Immobilien und Versorger entwickelten sich entgegengesetzt zu Tech: nahezu unveränderte Eröffnungen (0.09%, -0.11%), gefolgt von einem Kursrückgang über die gesamte Sitzung (-1.01% und -0.92% von Eröffnung bis Schluss).

Der Höhepunkt des Tages: die halbe Erholung des Memory-Rout

Der Memory- und Storage-Sektor, der am Mittwoch und Donnerstag eingebrochen war, erholte sich am Montag – allerdings nur teilweise.

AbfrageMemory- und Storage-Werte: Veränderung vs. Schlusskurs am Donnerstag, Range-Timing und Dollar-Volumen
Das exakte SQL hinter jeder Zahl
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-06 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-06 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-06 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-06 00:00:00') AS day_low,
        argMinIf(window_start, toFloat64(low), window_start >= '2026-07-06 00:00:00') AS low_bar,
        argMaxIf(window_start, toFloat64(high), window_start >= '2026-07-06 00:00:00') AS high_bar,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-06 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('MU', 'SNDK', 'STX', 'WDC')
      AND ((window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00')
        OR (window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'))
    GROUP BY ticker
)
SELECT
    ticker,
    round(prior_close, 2) AS prior_close,
    round(day_close, 2) AS day_close,
    round((day_close / prior_close - 1) * 100, 2) AS pct_chg,
    round(day_high, 2) AS day_high,
    formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
    round(day_low, 2) AS day_low,
    formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
    round((day_high / day_low - 1) * 100, 2) AS range_pct,
    day_dollar_bn
FROM per_name
ORDER BY ticker

Die beiden Festplattenhersteller führten die Erholung an: Western Digital 7.14% und Seagate 6%, die beide am Vormittag ihre Höchststände erreichten (10:44 und 10:39 ET). Die beiden Schwergewichte blieben zurück: MU legte um 0.88% zu und erreichte seinen Tiefpunkt in der letzten Handelsminute (15:59); SanDisk schloss mit einem Plus von -0.03% innerhalb einer Spanne von 7.27%. MU bewegte weiterhin Aktien im Wert von $30.9 Milliarden, was mehr ist als die Summe der anderen drei Unternehmen (die MU-Analyse behandelt das Quartal).

Die andere Hälfte der Rotation fand innerhalb der Megacaps statt:

AbfrageMegacap-Rotation: Veränderung vs. Schlusskurs am Donnerstag, Range-Timing und Dollar-Volumen
Das exakte SQL hinter jeder Zahl
WITH per_name AS (
    SELECT
        ticker,
        toFloat64(argMaxIf(close, window_start, window_start < '2026-07-06 00:00:00')) AS prior_close,
        toFloat64(argMaxIf(close, window_start, window_start >= '2026-07-06 00:00:00')) AS day_close,
        maxIf(toFloat64(high), window_start >= '2026-07-06 00:00:00') AS day_high,
        minIf(toFloat64(low), window_start >= '2026-07-06 00:00:00') AS day_low,
        argMinIf(window_start, toFloat64(low), window_start >= '2026-07-06 00:00:00') AS low_bar,
        argMaxIf(window_start, toFloat64(high), window_start >= '2026-07-06 00:00:00') AS high_bar,
        round(sumIf(toFloat64(close) * toFloat64(volume), window_start >= '2026-07-06 00:00:00') / 1e9, 2) AS day_dollar_bn
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'TSLA')
      AND ((window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00')
        OR (window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'))
    GROUP BY ticker
)
SELECT
    ticker,
    round(prior_close, 2) AS prior_close,
    round(day_close, 2) AS day_close,
    round((day_close / prior_close - 1) * 100, 2) AS pct_chg,
    round(day_high, 2) AS day_high,
    formatDateTime(toTimeZone(high_bar, 'America/New_York'), '%H:%i') AS day_high_et,
    round(day_low, 2) AS day_low,
    formatDateTime(toTimeZone(low_bar, 'America/New_York'), '%H:%i') AS day_low_et,
    round((day_high / day_low - 1) * 100, 2) AS range_pct,
    day_dollar_bn
FROM per_name
ORDER BY ticker

TSLA verzeichnete einen einseitigen Anstieg auf 6.86% – Tiefpunkt bei 09:37 ET, Höchststand in der letzten Handelsminute (15:59) – als Spiegelbild des Rückgangs am Donnerstag. AAPL stieg um 1.49% und NVDA um 0.57%; MSFT war die einzige Megacap mit Verlusten bei -0.7%, wobei der Höchststand zur Eröffnung um 09:30 erreicht wurde.

Handelsvolumen

AbfrageVolumen-Leader in zwei Kategorien: Top 6 nach Handelsvolumen in $, Top 4 nach Anzahl der gehandelten Aktien (ein wiederholter Ticker ohne Bestätigung ausgeschlossen)
Das exakte SQL hinter jeder Zahl
SELECT leaderboard, ticker, dollar_volume_bn, shares_m,
    round(100 * if(leaderboard = 'by dollars traded', dollar_volume_bn, shares_m)
        / max(if(leaderboard = 'by dollars traded', dollar_volume_bn, shares_m)) OVER (PARTITION BY leaderboard), 1) AS pct_of_board_leader
FROM (
    SELECT
        'by dollars traded' AS leaderboard,
        ticker,
        round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 2) AS dollar_volume_bn,
        round(sum(toFloat64(volume)) / 1e6, 1) AS shares_m
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
    ORDER BY dollar_volume_bn DESC
    LIMIT 6
    UNION ALL
    SELECT
        'by shares traded' AS leaderboard,
        ticker,
        round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 2) AS dollar_volume_bn,
        round(sum(toFloat64(volume)) / 1e6, 1) AS shares_m
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
    ORDER BY shares_m DESC
    LIMIT 4
)
ORDER BY leaderboard ASC, if(leaderboard = 'by dollars traded', dollar_volume_bn, shares_m) DESC

SPY führte das Handelsvolumen mit $31.49 Milliarden an, gefolgt von MU ($30.9 Milliarden). Damit endete die viertägige Serie von MU an der Spitze (Montag bis Donnerstag). Bei den Aktien verzeichnete SOXS — der 3x-inverse Halbleiter-ETF — ein Volumen von 467.1 Millionen Anteilen. Damit lag er trotz steigender Kurse der von ihm nachzubildenden Chips wieder an der Spitze.

AbfrageGehandelte Aktien pro 30-Minuten-Intervall, reguläre Handelszeiten (Milliarden)
Das exakte SQL hinter jeder Zahl
SELECT
    formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
    round(sum(toFloat64(volume)) / 1e9, 2) AS shares_bn,
    round(100 * sum(toFloat64(volume)) / max(sum(toFloat64(volume))) OVER (), 1) AS pct_of_biggest_bucket
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'
GROUP BY et_time
ORDER BY et_time

1.96 Milliarden Anteile in der ersten halben Stunde, ein Tiefpunkt von 0.68 Milliarden bei 14:30, und 2.1 Milliarden zum 15:30-Schluss — die typische Intraday-Kurve mit hoher Aktivität an beiden Handelsenden.

Der Optionsmarkt

AbfrageEin Datensatz für den gesamten Optionshandel: Volumen, Call-Anteil und die Fälligkeit am Montag
Das exakte SQL hinter jeder Zahl
WITH
    (
        SELECT (any(underlying_symbol), any(toFloat64(strike_price)), any(option_type),
                any(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))),
                sum(size), count(), round(avg(toFloat64(price)), 3))
        FROM global_markets.options_trades
        WHERE sip_timestamp >= '2026-07-06 00:00:00' AND sip_timestamp < '2026-07-07 00:00:00'
        GROUP BY ticker
        ORDER BY sum(size) DESC
        LIMIT 1
    ) AS top_contract,
    (
        SELECT round(toFloat64(argMax(close, window_start)), 2)
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'
    ) AS spy_regular_close
SELECT
    round(count() / 1e6, 2) AS option_prints_m,
    round(toFloat64(sum(size)) / 1e6, 2) AS contracts_m,
    round(100.0 * sumIf(size, option_type = 'C') / sum(size), 1) AS call_pct_of_volume,
    round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260706') / sum(size), 1) AS same_day_expiry_pct,
    round(toFloat64(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260706')) / 1e6, 2) AS same_day_contracts_m,
    round(toFloat64(sumIf(size, underlying_symbol = 'SPY')) / 1e6, 2) AS spy_contracts_m,
    round(toFloat64(sumIf(size, underlying_symbol = 'QQQ')) / 1e6, 2) AS qqq_contracts_m,
    round(toFloat64(sumIf(size, underlying_symbol = 'TSLA')) / 1e6, 2) AS tsla_contracts_m,
    top_contract.1 AS top_contract_underlying,
    top_contract.2 AS top_contract_strike,
    top_contract.3 AS top_contract_type,
    if(top_contract.3 = 'C', 1, 0) AS top_contract_is_call,
    top_contract.4 AS top_contract_expiry,
    round(toFloat64(top_contract.5) / 1e6, 2) AS top_contract_volume_m,
    round(top_contract.7, 3) AS top_contract_avg_price,
    round(spy_regular_close - top_contract.2, 2) AS spy_close_minus_strike
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-06 00:00:00' AND sip_timestamp < '2026-07-07 00:00:00'

Es wurden 60.98 Millionen Kontrakte über 10.53 Millionen Transaktionen gehandelt, davon 58.4% in Calls. Kontrakte mit heutigem Verfallstag machten 38.7% des Volumens aus (23.57 Millionen Kontrakte) – ein üblicher Montag mit 0DTE-Aktien, unter dem hohen Wert von Donnerstag vor dem Feiertag. Der am häufigsten gehandelte Kontrakt war der SPY $751 Call mit heutigem Verfall, 1.08 Millionen Kontrakte zu einem Durchschnittspreis von $0.564, wobei der SPY $0.3 über dem Strike schloss – somit im Geld. Ein Call an der Spitze der Liste, während Donnerstag mit einem Put schloss.

Der Quote-Tape: Gab es bei weiten Märkten einen Gap-up-Handel?

Unter jedem Preis liegt der Quote-Stream – das National Best Bid and Offer, das für jede gelistete Aktie kontinuierlich neu bewertet wird. Ein Gap-Open ist ein Zeitpunkt, an dem die Quotes feindselig werden können; daher messen wir dies in jeder Sitzung.

AbfrageGesamter Equity NBBO-Stream: 6. Juli vs. Session am 2. Juli sowie Clusterung der Monday-Quotes
Das exakte SQL hinter jeder Zahl
SELECT
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-06')) / 1e6, 2) AS jul6_updates_m,
    round(countIf(toDate(sip_timestamp) = toDate('2026-07-02')) / 1e6, 2) AS jul2_updates_m,
    round((countIf(toDate(sip_timestamp) = toDate('2026-07-06')) / countIf(toDate(sip_timestamp) = toDate('2026-07-02')) - 1) * 100, 1) AS day_over_day_pct,
    round(countIf(sip_timestamp >= '2026-07-06 13:30:00' AND sip_timestamp < '2026-07-06 14:00:00') / 1e6, 2) AS jul6_open_half_hour_m,
    round(countIf(sip_timestamp >= '2026-07-06 17:30:00' AND sip_timestamp < '2026-07-06 18:00:00') / 1e6, 2) AS jul6_midday_half_hour_m,
    round(countIf(sip_timestamp >= '2026-07-06 19:30:00' AND sip_timestamp < '2026-07-06 20:00:00') / 1e6, 2) AS jul6_close_half_hour_m
FROM global_markets.cache_stocks_quotes
WHERE (sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00')
   OR (sip_timestamp >= '2026-07-06 00:00:00' AND sip_timestamp < '2026-07-07 00:00:00')

Der Tape verzeichnete am Montag 391.96 Millionen NBBO-Updates im Vergleich zu 597.22 Millionen am Donnerstag – -34.4%, also ein Drittel weniger Nachrichten als in der Sitzung vor dem Feiertag – und das Volumen stieg zur Eröffnung an: 58.66 Millionen in der ersten halben Stunde gegenüber 20.74 Millionen um 13:30 Uhr und 33.7 Millionen bis zum Handelsschluss. Es gab weniger Quotes als am Donnerstag, aber keine weiteren:

AbfrageTouch zum Gap-Open: Median-Spread und Quote-Rate, 9:30–9:42 ET vs. Midday-Kontrollwert (jeweils 12 Minuten)
Das exakte SQL hinter jeder Zahl
SELECT
    ticker,
    round(quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-06 13:30:00' AND sip_timestamp < '2026-07-06 13:42:00'), 2) AS open_spread_bps,
    round(quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-06 17:30:00' AND sip_timestamp < '2026-07-06 17:42:00'), 2) AS midday_spread_bps,
    round(quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-06 13:30:00' AND sip_timestamp < '2026-07-06 13:42:00')
        - quantileExactIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, bid_price > 0 AND ask_price >= bid_price AND sip_timestamp >= '2026-07-06 17:30:00' AND sip_timestamp < '2026-07-06 17:42:00'), 2) AS spread_delta_bps,
    round(countIf(sip_timestamp >= '2026-07-06 13:30:00' AND sip_timestamp < '2026-07-06 13:42:00') / 1e3, 1) AS open_updates_k,
    round(countIf(sip_timestamp >= '2026-07-06 17:30:00' AND sip_timestamp < '2026-07-06 17:42:00') / 1e3, 1) AS midday_updates_k,
    round(countIf(sip_timestamp >= '2026-07-06 13:30:00' AND sip_timestamp < '2026-07-06 13:42:00') / countIf(sip_timestamp >= '2026-07-06 17:30:00' AND sip_timestamp < '2026-07-06 17:42:00'), 1) AS quote_rate_ratio,
    round(count() / 1e6, 2) AS session_updates_m,
    countIf(bid_price <= 0 OR ask_price <= 0 OR bid_price > ask_price) AS dropped_invalid_quotes
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('DIA', 'IWM', 'MSFT', 'MU', 'QQQ', 'SNDK', 'SPY', 'STX', 'TSLA', 'WDC')
  AND sip_timestamp >= '2026-07-06 13:30:00' AND sip_timestamp < '2026-07-06 20:00:00'
GROUP BY ticker
ORDER BY ticker

Der bid-ask spread stellt die Kosten für das Überkreuzen dar, gemessen in Basispunkten des Mid-Preises – 1 bp entspricht einem Cent bei einer 100-Dollar-Aktie. Keine geprüfte Aktie wies in den ersten zwölf Minuten des Gaps einen engeren Spread auf als zur Mittagszeit, und der SPY wies in beiden Fällen identische Spreads auf (0.27 bps, 0 bps Änderung), obwohl er sich zur Eröffnung 3x schneller aktualisierte. Die Spread-Strafe traf Einzelaktien und nicht Indexfonds: SanDisk verzeichnete den höchsten Anstieg (+12.9 bps, 8.16 bis 21.07), gefolgt von MU +3.63 und TSLA +2.89, im Vergleich zu 0.42 bps bei einem Touch von 0.83 bps beim QQQ. Seagate liefert die Antwort auf die Frage „Ist nicht alles liquide?“: 30.94 bps Breite zur Eröffnung, was mehr als das Hundertfache des SPY-Touche ist.

AbfrageSPY Update-gewichteter durchschnittlicher Quote-Spread: 6. Juli im Vergleich zum vorangegangenen Monat (Rang 1 = engster Spread)
Das exakte SQL hinter jeder Zahl
SELECT
    round(anyIf(avg_spread_cents, d = toDate('2026-07-06')), 3) AS jul6_avg_spread_cents,
    arrayCount(x -> x < anyIf(avg_spread_cents, d = toDate('2026-07-06')), groupArrayIf(avg_spread_cents, d != toDate('2026-07-06'))) + 1 AS tightness_rank,
    count() AS sessions_compared,
    round(max(avg_spread_cents), 3) AS widest_session_cents,
    round(avgIf(avg_spread_cents, d != toDate('2026-07-06')), 3) AS other_sessions_avg_cents,
    replaceAll(formatDateTime(min(d), '%M %e, %Y'), '  ', ' ') AS first_session,
    sum(dropped_invalid) AS dropped_invalid_quotes
FROM (
    SELECT toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS d,
           avgIf(toFloat64(ask_price - bid_price), bid_price > 0 AND ask_price >= bid_price) * 100 AS avg_spread_cents,
           countIf(NOT (bid_price > 0 AND ask_price >= bid_price)) AS dropped_invalid
    FROM global_markets.cache_stocks_quotes
    WHERE ticker = 'SPY'
      AND sip_timestamp >= toDateTime('2026-06-04 00:00:00')
      AND sip_timestamp < toDateTime('2026-07-07 00:00:00')
      AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
    GROUP BY d
)

Über den gesamten regulären Handelstag hinweg war der 6. Juli die engste Sitzung des SPY im letzten Monat: ein aktualisierungsgewichteter Durchschnitts-Spread von 1.815 Cent, Rang 1 von 21 Sitzungen seit June 4, 2026, gegenüber einem Monatsdurchschnitt von 2.337 Cent und einem Höchstwert von 2.865. Trotz der durch den Feiertag reduzierten Quote-Anzahl erhielt der Indexkäufer den günstigsten Touch am Markt.

Zinsen: eine ruhige Kurve über das lange Wochenende

AbfrageTreasury-Kurve: 6. Juli vs. Print vom 2. Juli (nur verfügbare Laufzeiten)
Das exakte SQL hinter jeder Zahl
SELECT
    t.1 AS curve_point,
    round(t.2, 2) AS jul6_yield_pct,
    round((t.2 - t.3) * 100) AS session_change_bp
FROM (
    SELECT arrayJoin([
        ('1 month',  toFloat64(d.yield_1_month),  toFloat64(p.yield_1_month)),
        ('3 month',  toFloat64(d.yield_3_month),  toFloat64(p.yield_3_month)),
        ('1 year',   toFloat64(d.yield_1_year),   toFloat64(p.yield_1_year)),
        ('2 year',   toFloat64(d.yield_2_year),   toFloat64(p.yield_2_year)),
        ('5 year',   toFloat64(d.yield_5_year),   toFloat64(p.yield_5_year)),
        ('10 year',  toFloat64(d.yield_10_year),  toFloat64(p.yield_10_year)),
        ('30 year',  toFloat64(d.yield_30_year),  toFloat64(p.yield_30_year)),
        ('2s10s spread', toFloat64(d.yield_10_year - d.yield_2_year), toFloat64(p.yield_10_year - p.yield_2_year))
    ]) AS t
    FROM (SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-06') AS d,
         (SELECT * FROM global_markets.treasury_yields WHERE date = '2026-07-02') AS p
)

Die Zinskurve bewegte sich über das lange Wochenende kaum. Die 10-jährige Rendite lag bei 4.48% und der 2s10s spread bei 0.35 Prozentpunkten; beide Werte lagen nur ein oder zwei Basispunkte vom Print vom 2. Juli entfernt. Die 3-Monats-Rendite war mit 5 Basispunkten die einzige nennenswerte Veränderung.

Der Kalender des Tages

AbfrageUnternehmenskalender und Informationsfluss vom 6. Juli in einer Zeile (inkl. Reverse-Split-Effekten)
Das exakte SQL hinter jeder Zahl
WITH
    (
        SELECT (count(), uniqExact(publisher))
        FROM global_markets.stocks_news
        WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-06'
    ) AS news,
    (
        SELECT (argMax(t, n), max(n))
        FROM (
            SELECT t, count() AS n
            FROM (
                SELECT arrayJoin(tickers) AS t
                FROM global_markets.stocks_news
                WHERE toDate(toTimeZone(published_utc, 'America/New_York')) = '2026-07-06'
            )
            WHERE t != 'SPCX'
            GROUP BY t
        )
    ) AS top_news
SELECT
    (SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = '2026-07-06') AS ex_dividend_records,
    (SELECT count() FROM global_markets.stocks_splits WHERE execution_date = '2026-07-06') AS splits_executed,
    (SELECT countIf(toFloat64(split_from) > toFloat64(split_to)) FROM global_markets.stocks_splits WHERE execution_date = '2026-07-06') AS reverse_splits,
    (SELECT countIf(toFloat64(split_to) > toFloat64(split_from)) FROM global_markets.stocks_splits WHERE execution_date = '2026-07-06') AS forward_splits,
    (SELECT count() FROM global_markets.stocks_ipos WHERE listing_date = '2026-07-06') AS ipos_listed,
    (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-06') AS sec_filings,
    (SELECT uniqExactIf(accession_number, form_type = '4') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-06') AS insider_form4_filings,
    (SELECT uniqExactIf(accession_number, form_type = '8-K') FROM global_markets.stocks_sec_edgar_index WHERE filing_date = '2026-07-06') AS filings_8k,
    news.1 AS news_articles,
    news.2 AS news_publishers,
    top_news.1 AS most_covered_ticker,
    top_news.2 AS most_covered_articles

118 Dividenden wurden ex-dividend, 15 Splits wurden durchgeführt, 0 Neunotierungen erfolgten und der SEC-Index verzeichnete 3161 Einreichungen — 1219 Form 4s, 201 8-Ks — ein geringeres Volumen als am Donnerstag vor dem Feiertag. Der Newsfeed enthielt 236 Artikel, wobei der am häufigsten behandelte Name NVDA mit 25 war.

Die Barriere der Reverse-Splits hinter den Movers-Screens

14 der 15 Splits waren Reverse-Splits – Aktienkonsolidierungen, meist bei Kursen unter einem Dollar – im Gegensatz zu 1 Forward-Splits. Ein Reverse-Split wandelt viele alte Aktien in eine Aktie zu einem proportional höheren Preis um. Ein unbereinigter Screener meldet dies als einstelligen oder zweistelligen prozentualen „Gewinn“, obwohl kein Wertzuwachs stattgefunden hat. Die vollständige Liste:

AbfrageAlle am 6. Juli durchgeführten Splits mit unbereinigtem Schlusskurs davor und danach (Splits ohne reguläre Session an beiden Tagen werden ausgeschlossen)
Das exakte SQL hinter jeder Zahl
SELECT
    s.ticker AS ticker,
    toFloat64(s.split_from) AS old_shares,
    toFloat64(s.split_to) AS new_shares,
    round(toFloat64(s.split_from) / toFloat64(s.split_to), 0) AS old_shares_per_new,
    p.prev_close AS jul2_close,
    d.day_close AS jul6_close,
    round((d.day_close / p.prev_close - 1) * 100, 1) AS unadjusted_pct_chg
FROM (
    SELECT ticker, any(split_from) AS split_from, any(split_to) AS split_to
    FROM global_markets.stocks_splits
    WHERE execution_date = '2026-07-06'
    GROUP BY ticker
) s
INNER JOIN (
    SELECT ticker, round(toFloat64(argMax(close, window_start)), 2) AS prev_close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00'
      AND ticker IN (SELECT ticker FROM global_markets.stocks_splits WHERE execution_date = '2026-07-06')
    GROUP BY ticker
    HAVING prev_close > 0
) p ON s.ticker = p.ticker
INNER JOIN (
    SELECT ticker, round(toFloat64(argMax(close, window_start)), 2) AS day_close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00'
      AND ticker IN (SELECT ticker FROM global_markets.stocks_splits WHERE execution_date = '2026-07-06')
    GROUP BY ticker
    HAVING day_close > 0
) d ON s.ticker = d.ticker
ORDER BY unadjusted_pct_chg DESC, ticker ASC

Jede der 12 Zeilen ist eine Konsolidierung, die im Rohdaten-Ticker einen prozentualen „Gewinn“ von dreistellig oder höher ausweist – von 31450% an der Spitze (eine 200-zu-eins Konsolidierung, unbereinigter Schlusskurs von $0.02 auf $6.31) bis hin zu 226.1% beim kleinsten Verhältnis (3-zu-eins). In der Mitte der Tabelle findet sich das deutlichste Beispiel: Ein 10-zu-eins Reverse-Split führte dazu, dass der unbereinigte Schlusskurs von TXXS von $2.35 am Donnerstag auf $24.34 am Montag stieg – zehn alte Aktien wurden zu einer, nicht ein zehnmaliger Rally. Ein Screener für Rohpreisänderungen setzt diese gesamte Tabelle über jeden echten Mover; unser System schließt Splits aus. Der CRWD Forward-Split am Donnerstag simulierte das Gegenteil: einen Crash.

Die Sitzung, verifiziert — die erste nach der Pause

AbfrageSession-Check: Beobachtete Minuten-Bar-Spanne von SPY, Schlusskurs vom 3. Juli und der nächste Kalendertermin
Das exakte SQL hinter jeder Zahl
SELECT
    formatDateTime(min(toTimeZone(window_start, 'America/New_York')), '%H:%i') AS first_spy_bar_et,
    formatDateTime(max(toTimeZone(window_start, 'America/New_York')), '%H:%i') AS last_spy_bar_et,
    count() AS spy_minute_bars,
    countIf(window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00') AS regular_session_bars,
    uniqExactIf(toDate(toTimeZone(window_start, 'America/New_York')), window_start >= '2026-07-06 13:30:00' AND window_start < '2026-07-06 20:00:00') AS day_sessions,
    (SELECT count() FROM global_markets.delayed_stocks_minute_aggs
     WHERE ticker = 'SPY' AND window_start >= '2026-07-03 00:00:00' AND window_start < '2026-07-04 00:00:00') AS jul3_spy_bars,
    (SELECT replaceAll(formatDateTime(min(date), '%M %e, %Y'), '  ', ' ') FROM global_markets.stocks_market_holidays WHERE date > '2026-07-06' AND status = 'closed') AS next_closure_date,
    (SELECT argMin(name, date) FROM global_markets.stocks_market_holidays WHERE date > '2026-07-06' AND status = 'closed') AS next_closure_name
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-06 00:00:00' AND window_start < '2026-07-07 00:00:00'

Der 6. Juli war eine vollständige Sitzung, kein früher Börsenschluss: Die SPY-Bars liefen von 04:00 bis 19:59 New York Zeit mit genau 390 Bars im regulären Zeitfenster. Der vorangegangene Freitag, der 3. Juli, verzeichnete 0 SPY-Bars – ein vollständiger Abschluss, da der Independence Day am 4. Juli auf einen Samstag fiel. Nächster Börsenschluss: Labor Day, September 7, 2026. Die vier Sitzungen umfassende Woche vor der Pause sind in der Wochenrückschau aufgeführt.

FAQ

Wie hat sich der Aktienmarkt am 6. Juli 2026 entwickelt?

Alle vier großen Index-ETFs schlossen höher — QQQ 1.39%, SPY 0.87%, IWM 0.45%, DIA 0.42% — wobei 62.4% der liquiden Titel zulegten, primär durch eine Overnight-Gap.

Welcher Sektor war am 6. Juli 2026 führend?

Technologie (XLK) führte die elf Sektor-ETFs mit 1.71% an, während defensive Sektoren nur -1.08% erreichten — der Spread zwischen dem besten und dem schlechtesten Sektor betrug 2.79 Prozentpunkte, was ein Vielfaches der Bewegung des S&P-Trackers von 0.87% war.

War der Aktienmarkt am Independence Day 2026 geöffnet?

Nein. Der 4. Juli fiel auf einen Samstag, weshalb die Börsen den Independence Day am Freitag, den 3. Juli, feierten — eine Schließung, die durch die 0 SPY-Minutenbars bestätigt wurde. Der 6. Juli war die erste Handelssitzung nach der Pause.

Warum verzeichneten einige Aktien am 6. Juli enorme Tagesgewinne?

Es wurden Rückwärts-Splits (14) durchgeführt. Die Konsolidierung vieler alter Aktien zu einer Aktie zu einem proportional höheren Preis führt in unbereinigten Berichten zu einem „Gewinn“ von hunderten Prozent, obwohl der Wert der Position des Anlegers unverändert bleibt — die oben genannten 12 Namen gehören alle dieser Kategorie an.

Waren die Spreads bei der Eröffnung durch die Gap breit?

Nur bei Einzelaktien. Der mediane Spread von SPY in den ersten zwölf Minuten lag bei 0.27 Basispunkten, was dem Niveau zur Mittagszeit entsprach; SanDisk notierte 12.9 bps breiter als zur Mittagszeit.

Datenhinweise

  • Dollar-Volumen ist ein Proxy pro Minute — Schlusskurs × Volumen, summiert pro Minuten-Bar.
  • Der Sektor-Korb ist eine definierte Methode, kein Vendor-Feld: die elf großen S&P-Sektor-ETFs (XLB, XLC, XLE, XLF, XLI, XLK, XLP, XLRE, XLU, XLV, XLY), derselbe Satz in jeder Sitzung.
  • Angegebene Spreads sind Mediane von (Ask − Bid) ÷ Mid über gültige beidseitige Kurse; einseitige, Null- oder Crossed-Kurse werden ausgeschlossen und im Panel gezählt.
  • Ein wiederverwendetes Symbol wird vor der Verifizierung der Einheit aus den Bestenlisten ausgeschlossen (Belege).

Methodik

  • Der Zeitraum umfasst eine einzige Handelssitzung (1 Sitzung, verifiziert anhand der beobachteten Bars). Zeitstempel werden in UTC gespeichert und innerhalb der Abfragen in New York Zeit umgerechnet. „Close“ bezeichnet die letzte Minute der regulären Handelssitzung; Tageswechsel werden durch den Vergleich von 6. Juli mit 2. Juli ermittelt – die vorangehende Sitzung vor der Schließung am 3. Juli wurde anhand der Bars verifiziert und nicht bloß angenommen.
  • Dezimalzahlen werden vor der Verhältnisrechnung in 64-Bit-Floats umgewandelt. Panels werden zum Zeitpunkt der Erstellung einmalig über den geschützten Read-only-Pfad ausgelesen.

Jedes Panel ist ein gespeichertes Abfrageergebnis – Chart, Tabelle und SQL bilden ein Objekt. Kopieren Sie eines dieser Elemente in das Strasmore-Terminal, um es individuell anzupassen. Vorherige Sitzung: 2. Juli. Nächste: 7. Juli.