{"slug":"what-is-a-liquidity-sweep","qid":"top_sweeps","label":"SPY 2025: the ten widest pokes above the prior day's high that closed back below it","post_title":"What Is a Liquidity Sweep in Trading?","post_url":"/blog/what-is-a-liquidity-sweep#q-top_sweeps","columns":["session_date","session_label","prior_day_high","session_high","session_close","poke_above_pct","close_below_pct"],"rows":[{"session_date":"2025-11-20","session_label":"November 20, 2025","prior_day_high":667.34,"session_high":675.56,"session_close":652.53,"poke_above_pct":1.23,"close_below_pct":2.22},{"session_date":"2025-10-15","session_label":"October 15, 2025","prior_day_high":665.83,"session_high":670.23,"session_close":665.17,"poke_above_pct":0.66,"close_below_pct":0.1},{"session_date":"2025-08-07","session_label":"August 7, 2025","prior_day_high":633.44,"session_high":636.98,"session_close":632.25,"poke_above_pct":0.56,"close_below_pct":0.19},{"session_date":"2025-01-31","session_label":"January 31, 2025","prior_day_high":606.6,"session_high":609.96,"session_close":601.82,"poke_above_pct":0.55,"close_below_pct":0.79},{"session_date":"2025-09-05","session_label":"September 5, 2025","prior_day_high":649.15,"session_high":652.21,"session_close":647.24,"poke_above_pct":0.47,"close_below_pct":0.29},{"session_date":"2025-04-28","session_label":"April 28, 2025","prior_day_high":551.05,"session_high":553.55,"session_close":550.85,"poke_above_pct":0.45,"close_below_pct":0.04},{"session_date":"2025-03-03","session_label":"March 3, 2025","prior_day_high":594.72,"session_high":597.34,"session_close":583.77,"poke_above_pct":0.44,"close_below_pct":1.84},{"session_date":"2025-07-15","session_label":"July 15, 2025","prior_day_high":625.16,"session_high":627.86,"session_close":622.14,"poke_above_pct":0.43,"close_below_pct":0.48},{"session_date":"2025-04-08","session_label":"April 8, 2025","prior_day_high":523.17,"session_high":524.98,"session_close":496.48,"poke_above_pct":0.35,"close_below_pct":5.1},{"session_date":"2025-07-31","session_label":"July 31, 2025","prior_day_high":637.68,"session_high":639.85,"session_close":632.08,"poke_above_pct":0.34,"close_below_pct":0.88}],"shape":"series","sql":"SELECT\n    toString(toDate(date))                                                                     AS session_date,\n    concat(monthName(date), ' ', toString(toDayOfMonth(date)), ', ', toString(toYear(date)))   AS session_label,\n    round(toFloat64(prior_hi), 2)                                                              AS prior_day_high,\n    round(toFloat64(hi), 2)                                                                    AS session_high,\n    round(toFloat64(cl), 2)                                                                    AS session_close,\n    round(100.0 * (toFloat64(hi) - toFloat64(prior_hi)) / toFloat64(prior_hi), 2)              AS poke_above_pct,\n    round(100.0 * (toFloat64(prior_hi) - toFloat64(cl)) / toFloat64(prior_hi), 2)              AS close_below_pct\nFROM\n(\n    SELECT\n        date,\n        hi,\n        cl,\n        lagInFrame(hi) OVER (ORDER BY date ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prior_hi\n    FROM\n    (\n        SELECT\n            date,\n            argMax(high,  _ingest_time) AS hi,\n            argMax(close, _ingest_time) AS cl\n        FROM global_markets.stocks_daily_aggs\n        WHERE ticker = 'SPY'\n          AND date >= '2024-12-31'\n          AND date <  '2026-01-01'\n        GROUP BY date\n    )\n)\nWHERE date >= '2025-01-01'\n  AND prior_hi > 0\n  AND hi > prior_hi\n  AND cl < prior_hi\nORDER BY (toFloat64(hi) - toFloat64(prior_hi)) / toFloat64(prior_hi) DESC, date DESC\nLIMIT 10","computed_at":"2026-09-19T15:04:29.143082+00:00","elapsed":0.003045973}