{"slug":"market-wide-circuit-breakers-explained","qid":"halt_days","label":"halt_days","post_title":"market-wide-circuit-breakers-explained","post_url":"/blog/market-wide-circuit-breakers-explained#q-halt_days","columns":["session_date","session_label","prior_close","level_1_line","session_low","open_drop_pct","low_drop_pct","close_drop_pct"],"rows":[{"session_date":"2020-03-09","session_label":"March 9","prior_close":297.46,"level_1_line":276.64,"session_low":273.45,"open_drop_pct":7.45,"low_drop_pct":8.07,"close_drop_pct":7.81},{"session_date":"2020-03-12","session_label":"March 12","prior_close":274.36,"level_1_line":255.15,"session_low":247.68,"open_drop_pct":6.69,"low_drop_pct":9.72,"close_drop_pct":9.57},{"session_date":"2020-03-16","session_label":"March 16","prior_close":269.32,"level_1_line":250.47,"session_low":237.36,"open_drop_pct":10.45,"low_drop_pct":11.87,"close_drop_pct":10.94},{"session_date":"2020-03-18","session_label":"March 18","prior_close":252.8,"level_1_line":235.1,"session_low":228.02,"open_drop_pct":6.55,"low_drop_pct":9.8,"close_drop_pct":5.06}],"shape":"series","sql":"SELECT\n    toString(d)                                            AS session_date,\n    concat(monthName(d), ' ', toString(toDayOfMonth(d)))   AS session_label,\n    round(prev_close_px, 2)                                AS prior_close,\n    round(prev_close_px * 93 / 100, 2)                     AS level_1_line,\n    round(low_px, 2)                                       AS session_low,\n    round((1 - open_px / prev_close_px) * 100, 2)          AS open_drop_pct,\n    round((1 - low_px / prev_close_px) * 100, 2)           AS low_drop_pct,\n    round((1 - close_px / prev_close_px) * 100, 2)         AS close_drop_pct\nFROM\n(\n    SELECT\n        d,\n        open_px,\n        low_px,\n        close_px,\n        lagInFrame(close_px, 1) OVER (ORDER BY d ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS prev_close_px\n    FROM\n    (\n        SELECT\n            date                        AS d,\n            toFloat64(max(open))        AS open_px,\n            toFloat64(min(low))         AS low_px,\n            toFloat64(max(close))       AS close_px\n        FROM global_markets.stocks_daily_aggs\n        WHERE ticker = 'SPY'\n          AND date BETWEEN toDate('2020-02-24') AND toDate('2020-03-31')\n        GROUP BY date\n    )\n)\nWHERE d >= toDate('2020-03-02')\n  AND (1 - low_px / prev_close_px) * 100 >= 7\nORDER BY d","computed_at":"2026-09-18T16:43:57.118059+00:00","elapsed":0.004194355}