Strasmore Research
بررسی عمیق Matt Connorتوسط Matt Connor · به‌روزرسانی شده در 2026-07-24

تحلیل سقوط بازار در سال 2020 و توقف‌های چهارگانه

بررسی دقیق ریزش شاخص S&P 500 در سال 2020، شامل چهار بار فعال شدن circuit-breaker و تحلیل دقیق روند قیمت‌ها از نقطه اوج تا دره در بازار SPY.

بحران کووید در سال 2020 باعث شد شاخص S&P 500 از رکورد بسته‌شدن در 19 فوریه، با کاهش -34.2% از نقطه اوج تا دره، در قالب 23 روز معاملاتی سقوط کند. در این مسیر، چهار بار توقف خودکار بازار (circuit-breaker) رخ داد که اولین مورد از آن به سال 1997 بازمی‌گردد. این صفحه تمام روند بازار را بازسازی می‌کند: نقشه سقوط، جزئیات دقیقه به دقیقه جلسه توقف بازار در 9 مارس (شامل دقایق فاقد داده که دقیق‌ترین مستندات این صفحه هستند)، سهامی که بیشترین ریزش را داشتند، و عملکرد اوراق قرضه Treasuries و بازار اختیار معامله (options) در کنار آن‌ها. تمام اعداد از طریق پرس‌وجوهای ذخیره‌شده استخراج شده‌اند؛ برای مشاهده کد SQL، هر پنل را باز کنید.

کل سقوط در یک سطر

پیش از آن روز مشهور، نقشه بازار. یک پرس‌وجوی واحد بر روی قیمت‌های بسته‌شدن جلسات عادی روزانه SPY، نقطه اوج، نقطه حضیض، سرعت سقوط و روند بازیابی را مشخص می‌کند؛ همچنین همین معیار برای بازار خرسی سال 2008 جهت مقایسه اعمال شده است.

پرس‌وجوسقوط COVID، از اوج تا دره تا بازیابی — قیمت‌های بسته‌شدن روزانه SPY، در یک ردیف
کد دقیق SQL پشت هر عدد
WITH dailies AS (
    SELECT
        toDate(toTimeZone(window_start, 'America/New_York')) AS d,
        argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS c
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2020-02-01 00:00:00') AND window_start < toDateTime('2020-09-01 00:00:00')
    GROUP BY d
),
peak AS (SELECT argMax(d, (c, -toInt32(d))) AS pd, max(c) AS pc FROM dailies WHERE d < toDate('2020-03-01')),
trough AS (SELECT argMin(d, (c, toInt32(d))) AS td, min(c) AS tc FROM dailies WHERE d < toDate('2020-04-01')),
gfc AS (
    SELECT
        toDate(toTimeZone(window_start, 'America/New_York')) AS d,
        argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS c
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2007-06-01 00:00:00') AND window_start < toDateTime('2009-01-01 00:00:00')
    GROUP BY d
),
gpeak AS (SELECT argMax(d, (c, -toInt32(d))) AS pd, max(c) AS pc FROM gfc WHERE d < toDate('2008-01-01'))
SELECT
    toString((SELECT pd FROM peak)) AS peak_date,
    round((SELECT pc FROM peak), 2) AS peak_close,
    toString((SELECT td FROM trough)) AS trough_date,
    round((SELECT tc FROM trough), 2) AS trough_close,
    round(((SELECT tc FROM trough) / (SELECT pc FROM peak) - 1) * 100, 1) AS decline_pct,
    countIf(d > (SELECT pd FROM peak) AND d <= (SELECT td FROM trough)) AS sessions_peak_to_trough,
    dateDiff('day', (SELECT pd FROM peak), (SELECT td FROM trough)) AS calendar_days,
    countIf(d > (SELECT pd FROM peak) AND d <= (SELECT min(d) FROM dailies WHERE c <= 0.7 * (SELECT pc FROM peak))) AS sessions_to_minus_30,
    (SELECT countIf(d > (SELECT pd FROM gpeak) AND d <= (SELECT min(d) FROM gfc WHERE c <= 0.7 * (SELECT pc FROM gpeak))) FROM gfc) AS gfc_2008_sessions_to_minus_30,
    toString((SELECT min(d) FROM dailies WHERE d > (SELECT td FROM trough) AND c >= (SELECT pc FROM peak))) AS recovery_date,
    countIf(d > (SELECT td FROM trough) AND d <= (SELECT min(d) FROM dailies WHERE d > (SELECT td FROM trough) AND c >= (SELECT pc FROM peak))) AS sessions_trough_to_recovery
FROM dailies

قیمت بسته‌شدن در نقطه اوج SPY در تاریخ 2020-02-19 برابر با $338.31 بود. قیمت بسته‌شدن در نقطه حضیض، $222.51 در تاریخ 2020-03-23، معادل -34.2% پایین‌تر از نقطه اوج است؛ یک بازار خرسی که در قالب 23 جلسه معاملاتی و 33 روز تقویمی فشرده شده است. ادعای پرتکرار «سریع‌ترین ریزش 30 درصدی ثبت‌شده» در همین سطر تایید می‌شود: قیمت بسته‌شدن SPY تنها در 22 جلسه، برای اولین بار به 30 درصد پایین‌تر از نقطه اوج رسید. بازار خرسی سال 2008 که با همان روش از نقطه اوج بسته‌شدن در اکتبر 2007 اندازه‌گیری شد، برای از دست دادن همان 30 درصد به 250 جلسه نیاز داشت. آنچه در سال 2008 تقریباً یک سال طول کشید، در سال 2020 حدود یک ماه زمان برد.

ساختار زمانی این سقوط، با تمام ارقام استخراج شده از پنل‌های این صفحه:

  • 19 فوریه 2020 — قیمت بسته‌شدن رکوردشکن SPY، $338.31.
  • 9 مارس — اولین توقف خودکار (circuit breaker) در کل بازار از سال 1997؛ SPY با -7.7% کاهش بسته شد. جزئیات دقیق در ادامه آمده است.
  • 12، 16 و 18 مارس — سه توقف دیگر از نوع Level-1. روز 16 مارس با -11.6% کاهش، بدترین جلسه معاملاتی در این دوره سقوط را ثبت کرد.
  • 23 مارس — پایین‌ترین قیمت بسته‌شدن: $222.51، معادل -34.2% از نقطه اوج.
  • 24 مارس — نقطه بازگشت. رالی محرک‌های اقتصادی در 24 مارس این روند را ادامه داد.
  • 2020-08-18 — SPY در حالی که 103 جلسه از نقطه حضیض گذشته بود، دوباره بالاتر از نقطه اوج فوریه بسته شد.

9 مارس 2020: جلسه‌ای که باعث فعال شدن قطع‌کننده خودکار شد

قطع‌کننده‌های خودکار (circuit breakers) کل بازار بر اساس S&P 500 عمل می‌کنند؛ بنابراین این پنل وضعیت توقف معاملات را از طریق SPY — یعنی S&P 500 ETF — و نه هیچ شاخص جایگزین دیگری — نمایش می‌دهد. در آخر هفته پیش از آن، بازنگری قیمت‌ها به دلیل پاندمی با شوک عرضه نفت (جزئیات بیشتر در ادامه) برخورد کرد و بازار هرگز به شکلی منظم باز نشد.

پرس‌وجوSPY در ۹ مارس ۲۰۲۰ — جلسه قطع‌کننده مدار (circuit-breaker)، ثبت شده
کد دقیق SQL پشت هر عدد
WITH
    (
        SELECT argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= toDateTime('2020-03-06 00:00:00') AND window_start < toDateTime('2020-03-09 04:00:00')
    ) AS prior_rth_close,
    (
        SELECT (formatDateTime(toTimeZone(addMinutes(prev_bar, 1), 'America/New_York'), '%H:%i'), gap_minutes - 1)
        FROM (
            SELECT
                lagInFrame(window_start) OVER (ORDER BY window_start ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_bar,
                dateDiff('minute', prev_bar, window_start) AS gap_minutes
            FROM global_markets.delayed_stocks_minute_aggs
            WHERE ticker = 'SPY'
              AND window_start >= toDateTime('2020-03-09 04:00:00') AND window_start < toDateTime('2020-03-09 23:59:00')
              AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
        )
        WHERE prev_bar > toDateTime('2020-03-09 00:00:00')
        ORDER BY gap_minutes DESC
        LIMIT 1
    ) AS halt_gap
SELECT
    round(prior_rth_close, 2) AS prior_close,
    round(toFloat64(argMinIf(open, window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)), 2) AS rth_open,
    round((toFloat64(argMinIf(open, window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)) / prior_rth_close - 1) * 100, 1) AS gap_pct,
    halt_gap.1 AS halt_first_missing_et,
    halt_gap.2 AS halt_missing_minutes,
    round(minIf(toFloat64(low), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS rth_low,
    formatDateTime(toTimeZone(argMinIf(window_start, (toFloat64(low), toInt64(toUnixTimestamp(window_start))), (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 'America/New_York'), '%H:%i') AS low_et,
    round(toFloat64(argMaxIf(close, window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)), 2) AS rth_close,
    round((toFloat64(argMaxIf(close, window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)) / prior_rth_close - 1) * 100, 1) AS day_change_pct,
    round(toFloat64(sum(volume)) / 1e6, 1) AS day_shares_m,
    countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS rth_minute_bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
  AND window_start >= toDateTime('2020-03-09 04:00:00') AND window_start < toDateTime('2020-03-09 23:59:00')

دو عدد در ابتدا. نخست، شکاف قیمتی: SPY در قیمت $275.3 باز شد که -7.4% کمتر از قیمت بسته‌شدن روز جمعه در $297.42 بود — و در همان دقایق اولیه، کاهش S&P 500 به آستانه 7 درصدی Level-1 رسید. دوم، و خبر بهتر: 376 کندل‌های دقیقه‌ای در جلسات عادی به جای 390 کندل معمول. ثبت معاملات پس از ساعت 9:34 صبح متوقف می‌شود: از ساعت 09:35 ET، 14 دقیقه متوالی هیچ کندلی ثبت نمی‌شود. هیچ معامله‌ای در هیچ‌کجا انجام نشد. این شکاف در داده‌ها، همان قطع‌کننده خودکار است. جلسه در قیمت $274.4، با کاهش -7.7%، با حجم 304.6 میلیون سهم بسته شد.

ساختار یک جلسه معاملاتی متوقف شده

پرس‌وجوSPY در بازه‌های نیم‌ساعته — جلسه عادی ۹ مارس ۲۰۲۰
کد دقیق SQL پشت هر عدد
SELECT
    formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
    round(toFloat64(argMax(close, window_start)), 2) AS bucket_close,
    round(min(toFloat64(low)), 2) AS bucket_low,
    round(toFloat64(sum(volume)) / 1e6, 1) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
  AND window_start >= toDateTime('2020-03-09 04:00:00') AND window_start < toDateTime('2020-03-09 23:59:00')
  AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY et_time
ORDER BY et_time

بخش بازگشایی شامل سقوط، توقف و ازسرگیری معاملات به صورت همزمان است: کف قیمتی آن در سطح $273.5، تنها چند سنت با کف قیمت کل روز یعنی $273.45 فاصله دارد؛ ثبت قیمت در ساعت 14:44 ET صرفاً بازبینی سطح صبحگاهی بود. پس از بازگشایی مجدد، روند قیمت تقریباً ثابت ماند: قیمت بسته‌شدن در هر نیم‌ساعت، در محدوده چند دلاریِ قیمت بازگشایی قرار داشت و بخش عمده ضرر روز در همان دقایق اولیه رخ داد. حجم معاملات نیز داستان معکوسی را روایت کرد؛ نیم‌ساعت پایانی با 46.7 میلیون سهم، پرحجم‌ترین بخش روز در زمان عبور جریان‌های بسته‌شدن بود. قطع‌کننده‌های خودکار (Circuit breakers) دقیقاً برای ایجاد چنین ساختاری طراحی شده‌اند: متوقف کردن سقوط قیمت، اجبار به برگزاری حراج بازگشایی و اجازه به ازسرگیری معاملات پیوسته در سطح قیمت‌گذاری مجدد. ساعت بازار اکنون این مکانیزم را به صورت دائمی در خود نهفته دارد.

چهار توقف در هشت جلسه معاملاتی

9 مارس تنها اولین مورد بود.

پرس‌وجوچهار جلسه قطع‌کننده مدار در مارس ۲۰۲۰ — قیمت بسته‌شدن، تغییر و حجم SPY
کد دقیق SQL پشت هر عدد
SELECT
    toString(et_date) AS session,
    close_usd,
    change_pct,
    shares_m
FROM (
    SELECT et_date, close_usd, shares_m,
           round((close_usd / lagInFrame(close_usd) OVER (ORDER BY et_date ASC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) - 1) * 100, 1) AS change_pct
    FROM (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS et_date,
            round(argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS close_usd,
            round(toFloat64(sum(volume)) / 1e6, 1) AS shares_m
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= toDateTime('2020-03-06 00:00:00') AND window_start < toDateTime('2020-03-19 00:00:00')
        GROUP BY et_date
    )
)
WHERE toString(et_date) IN ('2020-03-09', '2020-03-12', '2020-03-16', '2020-03-18')
ORDER BY et_date

توقف‌های سطح 1 (Level-1) در 12 مارس (بسته شدن در -9.6%)، 16 مارس (بسته شدن در -11.6% با قیمت $239.41 — بزرگترین ریزش درصدی یک‌روزه S&P از سال 1987) و 18 مارس (توقف در حین معاملات، بسته شدن در -5.2%) نیز رخ دادند. چهار توقف در کل بازار طی هشت روز معاملاتی، پس از بیست و سه سال نبودِ چنین اتفاقی. به این نکته توجه کنید که چه چیزی رخ نداد: تمام توقف‌ها از نوع سطح 1، یعنی محدوده 7 درصد، بودند. محدوده 13 درصد و 20 درصد هرگز لمس نشدند؛ حتی در 16 مارس، پس از توقف، روند نزولی کند شد و جلسه معاملاتی در محدوده سطح 2 (Level-2) پایان یافت.

بیشترین ریزش‌ها

یک شاخص می‌تواند پراکندگی داده‌ها در لایه‌های زیرین خود را پنهان کند. محاسبه میانگین قیمت‌های بسته‌شده در پایان معاملات، تنها با بررسی تعدادی از شرکت‌های بزرگ و شاخص‌ساز، نشان می‌دهد که سقوط در واقعیت کجا رخ داده است؛ هم در تاریخ 9 مارس و هم در کل بازه نزولی 19 فوریه تا 23 مارس.

پرس‌وجوحرکات ۹ مارس و کل دوره سقوط — صنایع گردشگری، هواپیمایی، انرژی، بانک، تکنولوژی، کالاهای اساسی در برابر SPY
کد دقیق SQL پشت هر عدد
WITH dailies AS (
    SELECT
        ticker,
        toDate(toTimeZone(window_start, 'America/New_York')) AS d,
        argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS c
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('UAL', 'CCL', 'XOM', 'JPM', 'AAPL', 'WMT', 'SPY')
      AND window_start >= toDateTime('2020-02-18 00:00:00') AND window_start < toDateTime('2020-03-25 00:00:00')
    GROUP BY ticker, d
)
SELECT
    ticker,
    round((anyIf(c, d = toDate('2020-03-09')) / anyIf(c, d = toDate('2020-03-06')) - 1) * 100, 1) AS mar9_pct,
    round((anyIf(c, d = toDate('2020-03-23')) / anyIf(c, d = toDate('2020-02-19')) - 1) * 100, 1) AS crash_pct
FROM dailies
GROUP BY ticker
ORDER BY crash_pct ASC

بیشترین ریزش در این گروه مربوط به CCL (Carnival، اپراتور کشتی‌های کروز) بود که تنها در 9 مارس -19.9% و در کل بازه از نقطه اوج تا دره، -72.3% از ارزش خود را از دست داد. United Airlines در طول این سقوط -66.9% کاهش یافت؛ ExxonMobil -47.9%؛ و JPMorgan -42.6%. در مقابل، کاهش -34.2% در SPY تقریباً ملایم به نظر می‌رسد؛ Apple با کاهش تقریبی در سطح بازار، -31% را ثبت کرد و Walmart — که محصولات غذایی و کالاهای اساسی و مورد نیاز در دوران قرنطینه را عرضه می‌کند — در پایان این بازه تنها -2.9% کاهش داشت. بخش‌های سفر و انرژی به دلیل توقف فعالیت‌ها در جهان بازنگری قیمت شدند؛ اما کالاهای اساسی تقریباً بدون تغییر ماندند.

جنگ قیمت نفت، به اختصار

بخش مربوط به انرژی در بالا نیاز به یک توضیح کوتاه دارد، زیرا عبارت «جنگ قیمت نفت» نیمه دیگر گزارش 9 مارس را در بر می‌گیرد. مذاکرات تولید OPEC+ میان عربستان سعودی و روسیه در روز جمعه، 6 مارس 2020، بدون توافق پایان یافت. در طول آخر هفته، عربستان سعودی قیمت‌های رسمی فروش خود را کاهش داد و برنامه‌های خود را برای افزایش تولید در جهانی که تقاضای سفر در حال فروپاشی بود، اعلام کرد؛ این امر یک شوک عرضه را در کنار شوک تقاضا قرار داد. بازگشایی بازار سهام در روز دوشنبه، هر دو شوک را همزمان تجربه کرد و نتیجه در جدول بالا مشخص است: ارزش سهام ExxonMobil در آن دوشنبه -12.2% نسبت به -7.7% در SPY کاهش یافت.

حرکت به سمت امنیت — و هفته‌ای که این روند را شکست

سهام تنها نیمی از داستان بود. نیم دیگر بازار Treasury بود؛ جایی که روند کلاسیک «فرار به سمت امنیت» به رکورد جدیدی رسید و سپس، در یک هفته استثنایی، برعکس شد.

پرس‌وجوبازدهی ۱۰ ساله و ۳ ماهه Treasury در طول سقوط، قیمت‌های بسته‌شدن روزانه
کد دقیق SQL پشت هر عدد
SELECT
    toString(date) AS date,
    round(yield_10_year, 2) AS ten_year_pct,
    round(yield_3_month, 2) AS three_month_pct
FROM global_markets.treasury_yields
WHERE date >= '2020-02-18' AND date <= '2020-03-31'
  AND isNotNull(yield_10_year)
ORDER BY date

در اوج بازار سهام در 19 فوریه، بازدهی 10 ساله در سطح 1.56% بود. تا 9 مارس — جلسه توقف بازار — این بازدهی در پایین‌ترین سطح تاریخی خود یعنی 0.54% بسته شد؛ زمانی که خریداران برای دریافت امنیت، بازدهی نیم درصدی سالانه را برای یک دهه پذیرفتند. سپس این الگو معکوس شد: تا 18 مارس، بازدهی 10 ساله در حالی که سهام همچنان در حال سقوط بود، به 1.18% افزایش یافت؛ دورانی که به «هجوم برای نقدینگی» معروف شد؛ هفته‌ای که در آن صندوق‌ها، شرکت‌ها و دارندگان خارجی، هر دارایی نقد از جمله Treasuries را برای جمع‌آوری دلار فروختند. در همین حال، اوراق 3 ماهه در آن روز در سطح 0.02% بسته شد — معادل‌های نقدی که به صفر نزدیک شده بودند. وقتی امن‌ترین دارایی و پرریسک‌ترین دارایی همزمان سقوط می‌کنند، آنچه خریداری می‌شود خودِ نقدینگی است. منحنی بازده این واقعه را برای همیشه در تاریخ خود ثبت کرده است.

آنچه نوار معاملات آپشن نشان می‌دهد

آپشن‌های لیست شده در SPY — که مرجع اصلی پوشش ریسک در بازار محسوب می‌شوند — اثرات این وحشت را ثبت کرده‌اند؛ نکته جالب، زمان‌بندی این اتفاق است.

پرس‌وجوگزینه‌های SPY: حجم معاملات put در برابر call، ۲ تا ۱۳ مارس ۲۰۲۰ (میلیون قرارداد)
کد دقیق SQL پشت هر عدد
SELECT
    toString(toDate(toTimeZone(sip_timestamp, 'America/New_York'))) AS session,
    round(sumIf(toFloat64(size), substring(ticker, 12, 1) = 'P') / 1e6, 2) AS put_contracts_m,
    round(sumIf(toFloat64(size), substring(ticker, 12, 1) = 'C') / 1e6, 2) AS call_contracts_m,
    round(sumIf(toFloat64(size), substring(ticker, 12, 1) = 'P') / sumIf(toFloat64(size), substring(ticker, 12, 1) = 'C'), 2) AS put_call_ratio
FROM global_markets.options_trades
WHERE ticker >= 'O:SPY2' AND ticker < 'O:SPY3'
  AND sip_timestamp >= toDateTime('2020-03-02 00:00:00') AND sip_timestamp < toDateTime('2020-03-14 00:00:00')
GROUP BY session
ORDER BY session

نسبت حجم معاملات Put به Call در روز جمعه 6 مارس، یعنی پیش از توقف معاملات، به نقطه اوج خود یعنی 1.95 رسید؛ به این معنا که تقریباً به ازای هر قرارداد Call، دو قرارداد Put معامله شد. در خود روز 9 مارس، 4.35 میلیون قرارداد Put در مقابل 2.38 میلیون قرارداد Call معامله شد که نسبت آن 1.83 بود. تا 12 مارس — یک جلسه معاملاتی -9.6% — با افزایش حجم معاملات Call در کنار Put، این نسبت به 1.32 کاهش یافت. شدیدترین سوگیری به سمت قراردادهای Put در ابتدای این ریزش رخ داد، نه در انتهای آن: پوشش ریسک در مراحل اولیه خریداری شد و روزهای نزولیِ بعدی و بزرگ‌تر، با نوار معاملات آپشنِ متوازن‌تر و دوطرفه انجام شد.

سازوکار واقعی توقف سراسری بازار

از آنجایی که توقف‌های سراسری به ندرت رخ می‌دهند و ممکن است از ذهن فراموش شوند، مکانیسم آن‌ها به این صورت است: قطع‌کننده‌های سراسری بر اساس میزان کاهش شاخص S&P 500 نسبت به قیمت بسته‌شدن روز قبل عمل می‌کنند. در صورت رسیدن به کاهش 7 درصدی (سطح 1) یا 13 درصدی (سطح 2) پیش از ساعت 3:25 بعد از ظهر به وقت ET، بازار برای 15 دقیقه متوقف می‌شود. رسیدن به کاهش 20 درصدی (سطح 3) باعث پایان کامل جلسه معاملاتی می‌شود. در طول زمان توقف، هیچ معامله‌ای در هیچ بورسی انجام نمی‌شود؛ سفارش‌ها در صف انتظار برای مزاد بازگشایی قرار می‌گیرند. این فرآیند، تمام تقاضای انباشته‌شده را در قالب یک قیمت واحد متمرکز می‌کند، مشابه کاری که مزاد بازگشایی هر صبح انجام می‌دهد. این ساختار از پیامدهای سقوط ناگهانی سال 2010 نشأت می‌گیرد؛ زمانی که مشخص شد آستانه‌های قدیمی برای واکنش در برابر یک ریزش زنجیره‌ای واقعی، بسیار مرتفع هستند.

مارس 2020 اولین — و تا به امروز تنها — آزمایش عملی این ساختار بود و نتیجه در پنل‌های بالا مشخص است: چهار توقف در سطح 1 که هر کدام با بازگشایی منظم دنبال شدند، هیچ‌کدام از سطوح 2 یا 3 لمس نشدند، و بازار در تمامی جلسات 23 در سریع‌ترین ریزش بزرگ تاریخ این شاخص، به درستی کار کرد. قوانین پس از آن پابرجا ماندند: همان آستانه‌های 7/13/20 درصد که نسبت به S&P 500 سنجیده می‌شوند، همچنان برقرار هستند. سیستم تحت فشار قرار گرفت، اما زیرساخت‌ها پایداری خود را حفظ کردند.

سوالات متداول درباره سقوط بازار در دوران COVID

علت فعال شدن قطع‌کننده بازار (circuit breaker) در 9 مارس 2020 چه بود؟

سقوط 7 درصدی S&P 500 نسبت به قیمت بسته‌ شدن قبلی — که آستانه سطح 1 (Level-1) در کل بازار است — در دقایق اولیه بازگشایی. معاملات در کل بازار به مدت 15 دقیقه متوقف شد و سپس از طریق مزایده مجدداً آغاز گردید. این توقف در نوار قیمت‌های دقیقه‌ای این صفحه، به صورت 14 کندل متوالی از 09:35 ET مشاهده می‌شود.

بازار سهام در سقوط COVID چقدر کاهش یافت؟

با اندازه‌گیری بر اساس قیمت‌های بسته‌ شدن روزانه SPY، میزان کاهش -34.2% بود — از $338.31 در 19 فوریه 2020 تا $222.51 در 23 مارس 2020، طی 23 جلسه معاملاتی.

در مارس 2020 چند بار قطع‌کننده بازار فعال شد؟

چهار بار توقف سطح 1 (Level-1) در کل بازار: در روزهای 9، 12، 16 و 18 مارس. این اولین موارد از اکتبر 1997 تاکنون بود.

آیا در سال 2020 قطع‌کننده سطح 2 یا سطح 3 فعال شد؟

خیر. هر چهار توقف در سال 2020 از نوع سطح 1 (7 درصدی) بودند. تحت ساختار فعلی، هیچ توقف سطح 2 (13 درصدی) یا سطح 3 (20 درصدی) در کل بازار رخ نداده است — حتی در 16 مارس، که بدترین جلسه معاملاتی سقوط با نرخ -11.6% بود.

آیا بازار پس از سقوط COVID به طور کامل بازیابی شد؟

بله. SPY در تاریخ 2020-08-18 — پس از 103 جلسه معاملاتی از پایین‌ترین سطح 23 مارس — بالاتر از اوج قیمت 19 فوریه 2020 بسته شد؛ این یکی از سریع‌ترین بازیابی‌های کامل از یک بازار خرسی با این عمق بود.


تمام پنل‌های بالا، پرس‌وجوهای ذخیره‌شده و نسخه‌بندی‌شده بر روی نوار قیمت‌های تاریخی هستند — برای مشاهده هر اندازه‌گیری، کد SQL را گسترش دهید. می‌خواهید به جای خواندن، این روز را تجربه کنید؟ این یکی از سناریوهای قابل بازیابی در شبیه‌ساز معاملاتی Strasmore Labs است.

#market history#covid crash#circuit breakers#spy