{"slug":"market-recap-2026-06-30","qid":"baseline_scoreboard","label":"SPY / QQQ / DIA / IWM: June 30 vs the June 29 close, regular hours","post_title":"Market Recap: June 30, 2026, The Day in Numbers","post_url":"/blog/market-recap-2026-06-30#q-baseline_scoreboard","columns":["ticker","prior_close","day_open","day_close","pct_change","day_high","day_low","shares_traded_m"],"rows":[{"ticker":"DIA","prior_close":521.68,"day_open":522.35,"day_close":522.28,"pct_change":0.12,"day_high":523.14,"day_low":519.59,"shares_traded_m":2.7},{"ticker":"IWM","prior_close":298.95,"day_open":298.56,"day_close":300.42,"pct_change":0.49,"day_high":300.98,"day_low":297.44,"shares_traded_m":19.7},{"ticker":"QQQ","prior_close":723.95,"day_open":724.18,"day_close":735.76,"pct_change":1.63,"day_high":737.62,"day_low":723.91,"shares_traded_m":35.7},{"ticker":"SPY","prior_close":740.88,"day_open":741.29,"day_close":746.32,"pct_change":0.73,"day_high":748.02,"day_low":740.89,"shares_traded_m":42.7}],"shape":"table","sql":"WITH prior AS (\n    SELECT ticker, argMax(close, window_start) AS prior_close\n    FROM global_markets.delayed_stocks_minute_aggs\n    WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')\n      AND window_start >= '2026-06-29 13:30:00' AND window_start < '2026-06-29 20:00:00'\n    GROUP BY ticker\n),\nsess AS (\n    SELECT ticker,\n           argMin(open, window_start) AS day_open,\n           argMax(close, window_start) AS day_close,\n           max(high) AS day_high,\n           min(low) AS day_low,\n           round(toFloat64(sum(volume)) / 1e6, 1) AS shares_traded_m\n    FROM global_markets.delayed_stocks_minute_aggs\n    WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')\n      AND window_start >= '2026-06-30 13:30:00' AND window_start < '2026-06-30 20:00:00'\n    GROUP BY ticker\n)\nSELECT\n    s.ticker AS ticker,\n    round(toFloat64(p.prior_close), 2) AS prior_close,\n    round(toFloat64(s.day_open), 2) AS day_open,\n    round(toFloat64(s.day_close), 2) AS day_close,\n    round((toFloat64(s.day_close) / toFloat64(p.prior_close) - 1) * 100, 2) AS pct_change,\n    round(toFloat64(s.day_high), 2) AS day_high,\n    round(toFloat64(s.day_low), 2) AS day_low,\n    s.shares_traded_m AS shares_traded_m\nFROM sess s\nJOIN prior p ON s.ticker = p.ticker\nORDER BY s.ticker","computed_at":"2026-07-26T05:43:13.835057+00:00","elapsed":0.865355013}