Cách thị trường phục hồi sau các đợt crash
Mọi đợt sụt giảm của S&P 500 từ năm 2016 đều đã phục hồi. Chúng tôi phân tích lịch sử drawdown để xem thị trường đã giảm sâu bao nhiêu và hiện đang ở đâu.
Mọi đợt sụt giảm của S&P 500 kể từ năm 2016 cho đến nay đều đã phục hồi lên mức cao mới. Chỉ số này đã mất khoảng một phần ba giá trị trong vòng năm tuần vào đầu năm 2020 và tăng trở lại mức kỷ lục trong vòng sáu tháng. Nó đã giảm một phần tư trong suốt năm 2022 và giành lại mức cao vào năm 2024. Thị trường dành phần lớn thời gian ở mức thấp hơn đỉnh trước đó, và cho đến nay mọi mức đáy đó đều chỉ là tạm thời.
Câu cuối cùng chính là nội dung chính của bài viết. Một đợt sụt giảm mạnh (crash) tạo cảm giác như một sự đứt gãy trên biểu đồ. Nhưng trên thực tế, đó chỉ là một đợt sụt giảm (dip) mà cuối cùng chỉ số luôn vượt qua được. Điều này không đảm bảo đợt sụt giảm tiếp theo cũng sẽ như vậy. Nó chỉ cho thấy những gì thập kỷ qua đã thực sự diễn ra, dựa trên các mức giá lưu trữ mà bạn có thể kiểm chứng.
Thị trường thường nằm thấp hơn mức cao nhất bao nhiêu
Các nhà đầu tư thường hình dung thị trường là một đường thẳng đi lên. Nhưng phần lớn thời gian, nó là một đường nằm dưới mức cao mà nó đã thiết lập trước đó. Drawdown là mức giảm từ mức đóng cửa cao nhất cho đến mức giá hiện tại, và nó sẽ tiếp tục duy trì cho đến khi chỉ số lập một kỷ lục mới. Biểu đồ dưới đây phân loại mọi ngày giao dịch kể từ năm 2016 dựa trên khoảng cách mà S&P 500, đo lường qua ETF SPY, đóng cửa thấp hơn đỉnh hiện tại.
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH d AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS dt,
argMax(toFloat64(close), toTimeZone(window_start, 'America/New_York')) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2016-01-01'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY dt
),
dd AS (
SELECT dt,
(c / max(c) OVER (ORDER BY dt ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) - 1) * 100 AS ddpct
FROM d
),
b AS (
SELECT multiIf(ddpct >= -0.5, 'At a new high',
ddpct >= -5, 'Within 5% of the high',
ddpct >= -10, '5-10% below',
ddpct >= -20, '10-20% below',
'More than 20% below') AS bucket,
multiIf(ddpct >= -0.5, 0, ddpct >= -5, 1, ddpct >= -10, 2, ddpct >= -20, 3, 4) AS ord
FROM dd
)
SELECT bucket, round(100.0 * count() / (SELECT count() FROM b), 1) AS pct_of_trading_days
FROM b GROUP BY bucket, ord ORDER BY ordChỉ số chỉ đóng cửa ở mức cao kỷ lục mới trong 29.7% số ngày giao dịch. Nó nằm trong phạm vi 5% so với mức cao trong 38.7% số ngày khác, và thấp hơn hơn 20% so với mức cao trong 2.8% số ngày. Trạng thái "dưới nước" (underwater) là điều kiện bình thường của thị trường, không phải là tín hiệu báo động. Những hố sâu thì hiếm gặp, còn những hố nông thì gần như xuất hiện liên tục.
Lịch sử sụt giảm của thị trường kể từ năm 2016
Khi vẽ mức drawdown lớn nhất trong mỗi tháng, hình thái của thập kỷ qua sẽ hiện ra. Mỗi đợt sụt giảm đều đi xuống, sau đó leo ngược lại đường zero khi chỉ số thiết lập kỷ lục mới. Giá trị bằng zero nghĩa là thị trường đã chạm mức cao mới trong tháng đó.
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH d AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS dt,
argMax(toFloat64(close), toTimeZone(window_start, 'America/New_York')) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2016-01-01'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY dt
),
dd AS (
SELECT dt, c,
max(c) OVER (ORDER BY dt ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS peak
FROM d
)
SELECT toStartOfMonth(dt) AS month, round(min((c / peak - 1) * 100), 1) AS worst_drawdown_pct
FROM dd GROUP BY month ORDER BY monthHai đáy sâu là không thể nhầm lẫn. Đợt sụt giảm COVID vào tháng 3 năm 2020 đã khiến chỉ số giảm khoảng một phần ba chỉ trong vài tuần. Thị trường gấu năm 2022 đã kéo giảm liên tục trong phần lớn cả năm. Xung quanh đó là những đợt điều chỉnh thông thường: một tháng 12 đầy biến động vào năm 2018, một mùa thu khắc nghiệt vào năm 2019, và những đợt giảm 5-đến-10% lặp đi lặp lại vốn không bao giờ trở thành tiêu đề lớn. Tất cả chúng đều đã quay trở lại đường zero. Biểu đồ này là một thập kỷ của những nỗi lo sợ, mà mỗi nỗi lo đều bị xóa bỏ bởi một mức cao mới tiếp theo.
Mọi đợt drawdown cho đến nay đều đã phục hồi
Sự phục hồi được thể hiện rõ ràng hơn qua từng năm. Đối với mỗi năm dương lịch dưới đây, mức drawdown lớn nhất mà chỉ số phải chịu so với đỉnh hiện tại được đặt cạnh mức lợi nhuận giá thực tế của năm đó.
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH d AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS dt,
argMax(toFloat64(close), toTimeZone(window_start, 'America/New_York')) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2016-01-01'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY dt
),
dd AS (
SELECT dt, toYear(dt) AS yr, c,
(c / max(c) OVER (ORDER BY dt ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) - 1) * 100 AS ddpct
FROM d
)
SELECT toString(yr) AS year,
round(min(ddpct), 1) AS worst_drawdown_pct,
round((argMax(c, dt) / argMin(c, dt) - 1) * 100, 1) AS year_return_pct
FROM dd GROUP BY yr ORDER BY yr2020 là ví dụ rõ ràng nhất. Mức drawdown lớn nhất đạt -34.2%, nhưng năm đó vẫn kết thúc ở mức 15.1%. Năm 2019 đã giảm tới -16.8% tại mức đáy và đóng cửa ở mức 28.6%. Năm duy nhất thua lỗ trong giai đoạn này là 2022, với mức thấp nhất trong năm là -25.4% và lợi nhuận giá cả cả năm là -20%. Chỉ số đã giành lại mức đó vào năm tiếp theo, khi năm 2023 đạt mức lợi nhuận 24.8%. Một đợt drawdown hai chữ số trong một năm là quy luật hơn là ngoại lệ, và hầu hết những năm đó vẫn kết thúc ở mức cao hơn.
Mô hình này không phải là phép màu. Việc chia chỉ số thành một nhóm các cổ phiếu vốn hóa siêu lớn (mega-caps) và phần còn lại sẽ giải thích nhiều về các đợt drawdown hiện đại, một điểm đã được đề cập trong nghiên cứu của chúng tôi về sự tập trung chỉ số. Một đợt sụt giảm mạnh cũng tác động nặng nề nhất lên các cổ phiếu có beta cao, trong khi các cổ phiếu bình ổn sẽ giảm ít hơn. Tuy nhiên, sự phục hồi cho thấy đã xuất hiện trên toàn bộ thị trường cho đến nay.
Vị thế hiện tại của thị trường
Một bảng điểm đặt vị thế hiện tại trong bối cảnh so với toàn bộ giai đoạn.
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH d AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS dt,
argMax(toFloat64(close), toTimeZone(window_start, 'America/New_York')) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2016-01-01'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY dt
),
dd AS (
SELECT dt,
(c / max(c) OVER (ORDER BY dt ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) - 1) * 100 AS ddpct
FROM d
)
SELECT round(-min(ddpct), 1) AS deepest_fall_pct,
round(-argMax(ddpct, dt), 1) AS current_fall_pct,
round(100.0 * countIf(ddpct < -0.5) / count(), 0) AS pct_days_below_high,
round(100.0 * countIf(ddpct < -5) / count(), 0) AS pct_days_below_5,
round(100.0 * countIf(ddpct < -10) / count(), 0) AS pct_days_below_10,
count() AS trading_days
FROM ddKể từ năm 2016, mức giảm sâu nhất của S&P 500 từ một đỉnh là 34.2%, mức thấp của đợt COVID. Tính đến phiên giao dịch gần nhất, nó đang ở mức 0.6% dưới đỉnh. Trong số 2647 ngày giao dịch, có 70% ngày đóng cửa thấp hơn đỉnh trước đó, thấp hơn hơn 5% trong 32% ngày, và thấp hơn hơn 10% trong 16% ngày. Thị trường đã dành khoảng một phần ba thời gian ở một khoảng cách đáng kể so với mức cao, và cho đến nay nó đã leo lên mức kỷ lục mới từ mọi hố sụt đó.
Không có điều nào trong số này là dự báo. Các đợt phục hồi trong quá khứ mô tả những gì đã xảy ra, không phải những gì một đợt sụt giảm trong tương lai sẽ làm, và một chỉ số từng phục hồi sau khi giảm 34% vẫn có thể giảm sâu hơn vào lần tới. Giá trị của các dữ liệu lịch sử nằm ở góc nhìn: drawdown vừa là trạng thái nghỉ của thị trường, vừa là tình trạng khẩn cấp của nó, và phản ứng bán tháo khi gặp drawdown, trong giai đoạn này, thực chất là bán vào sự phục hồi.
FAQ
Các đợt sụt giảm của thị trường chứng khoán có luôn phục hồi không?
Mọi đợt drawdown của S&P 500 kể từ năm 2016 cho đến nay đều đã phục hồi lên mức cao mới, bao gồm đợt sụt giảm COVID khoảng 34.2% và thị trường gấu năm 2022. Các đợt phục hồi trong quá khứ là hồ sơ về những gì đã xảy ra, không phải là sự đảm bảo cho bất kỳ sự sụt giảm nào trong tương lai.
Thị trường mất bao lâu để phục hồi sau một đợt sụt giảm mạnh?
Thời gian này rất khác nhau. Đợt sụt giảm năm 2020 đã giành lại mức cao trong vòng vài tháng, trong khi thị trường gấu năm 2022 kéo dài đến tận năm 2024. Biểu đồ "dưới nước" ở trên cho thấy mỗi đợt drawdown quay trở lại đường zero theo tốc độ riêng của nó.
Thị trường chứng khoán nằm dưới mức cao trong bao lâu?
Kể từ năm 2016, S&P 500 đã đóng cửa thấp hơn mức cao trước đó trong khoảng 70% số ngày giao dịch. Nó chỉ đạt mức cao kỷ lục mới trong 29.7% số ngày. Nằm dưới một mức đỉnh là trạng thái bình thường của thị trường.
Đợt drawdown tồi tệ nhất của thị trường chứng khoán kể từ năm 2016 là gì?
Đợt sụt giảm COVID vào đầu năm 2020, khi chỉ số giảm khoảng 34.2% từ mức cao chỉ trong vài tuần. Thị trường gấu năm 2022 là đợt giảm sâu tiếp theo, với mức thấp nhất trong năm gần mức -25.4%.
Mua cổ phiếu sau một đợt sụt giảm mạnh có phải là ý hay không?
Bài viết này không đưa ra lời khuyên đầu tư. Hồ sơ lịch sử cho thấy thị trường đã dành phần lớn thời gian ở mức thấp hơn đỉnh và đã phục hồi từ mọi đợt sụt giảm trong giai đoạn này, mặc dù việc điều này có tiếp tục hay không thì chưa thể biết trước. Hãy xem nghiên cứu dữ liệu của chúng tôi về việc mua cổ phiếu trong lúc sợ hãi để biết hiệu suất của những ngày sợ hãi nhất trên thị trường.
Mọi con số ở đây đều đến từ một truy vấn lưu trữ mà bạn có thể mở và kiểm chứng dưới mỗi biểu đồ. Hãy chạy thử nghiệm "underwater" tương tự cho bất kỳ ticker nào trên terminal Strasmore.