Tỷ lệ put-call là gì? Hướng dẫn dữ liệu
Tìm hiểu cách tính put-call ratio bằng cách chia khối lượng giao dịch put cho call. Xem dữ liệu thực tế theo kỳ hạn, chỉ số hoặc cổ phiếu trong một thập kỷ.
Put-call ratio là tỷ lệ giữa khối lượng giao dịch put option chia cho khối lượng giao dịch call option trong ngày: cho biết có bao nhiêu hợp đồng phe bán (bearish) được giao dịch trên mỗi hợp đồng phe mua (bullish). Chỉ số trên 1.0 nghĩa là lượng put option giao dịch nhiều hơn call option; chỉ số dưới 1.0 nhiều nghĩa là call option chiếm ưu thế. Hầu hết các bài giải thích chỉ dừng lại ở định nghĩa và các quy tắc kinh nghiệm thông thường. Trang này tính toán dữ liệu thực tế — dựa trên mọi hợp đồng option niêm yết tại Mỹ — theo từng ngày — sau đó phân tách theo cách của các chuyên gia: chỉ số so với cổ phiếu, theo từng kỳ hạn, và so với dữ liệu lịch sử của một thập kỷ.
Tỷ lệ put-call được tính toán như thế nào?
Lấy tổng khối lượng hợp đồng put trong một phiên, chia cho tổng khối lượng hợp đồng call. Giá trị của put tăng khi tài sản cơ sở giảm; giá trị của call tăng khi tài sản cơ sở tăng — do đó, tỷ lệ này được dùng để đo lường sơ bộ vị thế bán (downside) so với vị thế mua (upside).
Phép tính này được thiết kế đơn giản. Giả sử một cổ phiếu có 40,000 hợp đồng put và 60,000 hợp đồng call giao dịch trong một phiên: 40,000 ÷ 60,000 = 0.67, tức là cứ ba hợp đồng call thì có hai hợp đồng put. Nếu giữ nguyên 60,000 hợp đồng call và tăng số lượng put lên 90,000, tỷ lệ sẽ là 1.5. Đó là toàn bộ công thức; phần khó nhất ở đây là cách diễn giải, không phải phép chia.
Có hai chi tiết cần lưu ý trong thuật ngữ "volume":
- Volume, không phải open interest. Tỷ lệ tiêu chuẩn tính dựa trên số lượng hợp đồng được giao dịch trong ngày. Một biến thể khác sử dụng open interest — số lượng hợp đồng đang mở — vốn có biến động chậm hơn nhiều. Bạn cần biết biểu đồ đang hiển thị loại nào.
- Mỗi giao dịch đều có hai phía. Một lệnh mua put để mở vị thế, một lệnh bán put để đóng vị thế phòng vệ, và một lệnh bán khống put để thu phí đều được tính vào cùng một mức volume. Tỷ lệ này đo lường mức độ hoạt động, không phải ý định của nhà đầu tư.
Chỉ số put-call ratio toàn thị trường như thế nào?
Chỉ số này được tính toán hàng ngày cho tất cả các quyền chọn cổ phiếu Mỹ, ETF và chỉ số niêm yết, tính từ ngày 1 tháng 6 đến phiên giao dịch hoàn chỉnh gần nhất:
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS day,
concat(monthName(day), ' ', toString(toDayOfMonth(day))) AS day_label,
round(sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'P')
/ sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'C'), 3) AS put_call_ratio,
round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm
FROM global_markets.options_minute_aggs
WHERE window_start >= '2026-06-01 04:00:00'
AND window_start < '2026-07-11 04:00:00'
GROUP BY day
ORDER BY dayChuỗi dữ liệu bắt đầu ở mức 0.589 vào ngày June 1, kết thúc ở mức 0.686 vào ngày July 10, và không bao giờ vượt quá 1.0 trong khoảng thời gian này — khối lượng giao dịch call options lớn hơn put options trong tất cả 28 phiên. Đây là bài học thực tế đầu tiên: 1.0 không phải là điểm trung lập như người mới bắt đầu thường lầm tưởng. Thông tin quan trọng nằm ở sự biến động của tỷ lệ trong phạm vi của chính nó. Dưới đây là phạm vi của tháng 6 đã hoàn tất:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH daily AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS day,
sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'P')
/ sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'C') AS ratio
FROM global_markets.options_minute_aggs
WHERE window_start >= '2026-06-01 04:00:00'
AND window_start < '2026-07-01 04:00:00'
GROUP BY day
)
SELECT round(quantileDeterministic(0.5)(ratio, cityHash64(toString(day))), 3) AS june_median,
round(max(ratio), 3) AS june_high,
concat(monthName(argMax(day, ratio)), ' ', toString(toDayOfMonth(argMax(day, ratio)))) AS june_high_day,
round(min(ratio), 3) AS june_low,
concat(monthName(argMin(day, ratio)), ' ', toString(toDayOfMonth(argMin(day, ratio)))) AS june_low_day
FROM dailyMức trung vị của tháng 6 là 0.793, nằm trong dải từ 0.589 (vào ngày June 1) đến 0.923 (vào ngày June 25). Bây giờ, hãy xem xét phiên giao dịch đáng chú ý nhất trong tháng — đợt bán tháo ngày 5 tháng 6, được ghi lại trong bản tóm tắt tháng 6 năm 2026. Khối lượng giao dịch quyền chọn đạt 103.1 triệu hợp đồng, phiên giao dịch bận rộn nhất trong giai đoạn này, và tỷ lệ đã tăng lên 0.866 từ mức 0.679 của ngày hôm trước. Đợt bán tháo và phiên giao dịch có khối lượng kỷ lục với lượng put options lớn là cùng một phiên: tỷ lệ này đã ghi nhận sự gia tăng của các vị thế phòng vệ giảm giá ngay khi nó diễn ra.
Hai lưu ý thực tế. Mức độ của chỉ số sẽ thay đổi tùy theo cơ cấu các sản phẩm giao dịch trong tuần đó, vì vậy những biến động nhỏ hàng ngày trong dải dữ liệu thường không mang nhiều ý nghĩa nếu đứng riêng lẻ. Ngoài ra, tổng khối lượng giao dịch là bối cảnh thiết yếu — cùng một tỷ lệ nhưng với số lượng hợp đồng gấp đôi sẽ là một tín hiệu mạnh mẽ hơn nhiều, đó là lý do tại sao biểu đồ hiển thị số lượng hợp đồng đi kèm với tỷ lệ.
CBOE, ISEE và các chỉ số tham chiếu put-call khác
Nếu nhà môi giới hoặc biểu đồ tin tức tài chính của bạn trích dẫn "tỷ lệ" put-call, gần như chắc chắn họ đang trích dẫn một trong số ít các chuỗi dữ liệu đã được công bố — và chúng đo lường các nhóm đối tượng khác nhau:
- $CPC — tỷ lệ put/call tổng hợp của CBOE: tất cả các quyền chọn được giao dịch trên các sàn CBOE, tính số lượng puts trên calls.
- $CPCE — tỷ lệ chỉ dành cho cổ phiếu: các quyền chọn trên từng mã cổ phiếu riêng lẻ. Các quyền chọn ETF thanh toán bằng tiền mặt như SPY nằm ở phía cổ phiếu của chỉ số này, mặc dù các nhà giao dịch sử dụng chúng như các sản phẩm chỉ số.
- $CPCI — tỷ lệ chỉ dành cho chỉ số: các quyền chọn chỉ số thanh toán bằng tiền mặt (SPX, NDX, RUT, VIX và các mã tương tự).
- ISEE — Chỉ số tâm lý ISE, được xây dựng theo cách ngược lại: calls chia cho puts, nhân với 100, chỉ tính từ các lệnh mua long của khách hàng khi mở vị thế. Chỉ số ISEE cao cho thấy tỷ trọng calls lớn; chỉ số $CPC cao cho thấy tỷ trọng puts lớn. Nếu đọc nhầm chỉ số này thành chỉ số kia, ý nghĩa sẽ bị đảo ngược.
Dòng chỉ số cổ phiếu/chỉ số của CBOE xếp các quyền chọn ETF như SPY vào nhóm cổ phiếu. Bảng dưới đây phân chia ranh giới khác đi, tách các ETF thị trường rộng ra khỏi các cổ phiếu đơn lẻ: hai nhóm này có đặc điểm giao dịch hoàn toàn khác nhau. Dưới đây là dữ liệu cho mọi hợp đồng tháng 6 năm 2026, được phân thành ba nhóm:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH substring(ticker, 3, length(ticker) - 17) AS root
SELECT multiIf(root IN ('SPX', 'SPXW', 'XSP', 'NDX', 'NDXP', 'RUT', 'RUTW', 'VIX', 'VIXW', 'DJX', 'OEX', 'XEO'), 'Index options (SPX, VIX, NDX)',
root IN ('SPY', 'QQQ', 'IWM', 'DIA'), 'Broad-market ETFs (SPY, QQQ, IWM, DIA)',
'Single stocks and other ETFs') AS population,
round(sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'P')
/ sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'C'), 3) AS put_call_ratio,
round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100 * sum(toFloat64(volume)) / sum(sum(toFloat64(volume))) OVER (), 1) AS pct_of_volume
FROM global_markets.options_minute_aggs
WHERE window_start >= '2026-06-01 04:00:00'
AND window_start < '2026-07-01 04:00:00'
GROUP BY population
ORDER BY put_call_ratio DESCCả hai nhóm liên kết với chỉ số đều có tỷ lệ thiên về puts — các ETF thị trường rộng ở mức 1.175 và các quyền chọn chỉ số thanh toán bằng tiền mặt ở mức 1.096, cả hai đều trên 1.0 — trong khi các cổ phiếu đơn lẻ và các nhóm khác ở mức 0.588, chỉ cao hơn một chút so với tỷ lệ một put trên hai calls. Cơ chế này mang tính cấu trúc: các sản phẩm chỉ số là công cụ tiêu chuẩn để phòng hộ danh mục đầu tư, và việc phòng hộ được thực hiện bằng puts; trong khi các cổ phiếu đơn lẻ thu hút việc mua calls mang tính đầu cơ. Tỷ trọng khối lượng cũng rất quan trọng — các cổ phiếu đơn lẻ và các ETF khác chiếm 59.9% số lượng hợp đồng của tháng 6, vì vậy một tỷ lệ "tổng hợp" thực chất phần lớn là tỷ lệ cổ phiếu được gắn mác chỉ số.
Tỷ lệ phụ thuộc vào mã chứng khoán được lựa chọn
Hãy xem xét chi tiết hơn. Cùng một phép đo cho thời điểm tháng 6 năm 2026, khi áp dụng cho năm mã chứng khoán có hoạt động giao dịch mạnh nhất:
Câu lệnh SQL chính xác đằng sau mỗi con số
SELECT multiIf(ticker LIKE 'O:SPY2%', 'SPY',
ticker LIKE 'O:QQQ2%', 'QQQ',
ticker LIKE 'O:NVDA2%', 'NVDA',
ticker LIKE 'O:TSLA2%', 'TSLA',
'AAPL') AS underlying,
round(sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'P')
/ sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'C'), 2) AS put_call_ratio,
round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm
FROM global_markets.options_minute_aggs
WHERE window_start >= '2026-06-01 04:00:00'
AND window_start < '2026-07-01 04:00:00'
AND (ticker LIKE 'O:SPY2%' OR ticker LIKE 'O:QQQ2%' OR ticker LIKE 'O:NVDA2%'
OR ticker LIKE 'O:TSLA2%' OR ticker LIKE 'O:AAPL2%')
GROUP BY underlying
ORDER BY put_call_ratio DESCSPY có tỷ lệ quyền chọn bán (put-heavy) cao nhất trong năm mã với 1.16; trong khi NVDA chỉ ở mức 0.56. Việc so sánh tỷ lệ của ticker này với ticker khác gần như không có ý nghĩa — sự so sánh hữu ích nhất là so sánh một ticker với lịch sử của chính nó.
Put-call ratio có thay đổi theo ngày đáo hạn không?
Khối lượng giao dịch trong một ngày không phải là một khối đồng nhất: một số hợp đồng đáo hạn trong vài giờ, số khác kéo dài nhiều năm. Phân loại khối lượng của tháng Sáu theo số ngày đến khi đáo hạn (DTE) — xem ý nghĩa của DTE — sẽ giúp tách biệt các hợp đồng phòng vệ rủi ro khỏi các hợp đồng đầu cơ:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH toDate(toTimeZone(window_start, 'America/New_York')) AS trade_day,
toDate(concat('20', substring(ticker, length(ticker) - 14, 2), '-',
substring(ticker, length(ticker) - 12, 2), '-',
substring(ticker, length(ticker) - 10, 2))) AS expiry,
dateDiff('day', trade_day, expiry) AS dte
SELECT multiIf(dte <= 0, '0DTE (expires today)', dte <= 7, '1-7 days', dte <= 30, '8-30 days',
dte <= 90, '31-90 days', '91+ days') AS expiry_bucket,
round(sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'P')
/ sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'C'), 3) AS put_call_ratio,
round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100 * sum(toFloat64(volume)) / sum(sum(toFloat64(volume))) OVER (), 1) AS pct_of_volume
FROM global_markets.options_minute_aggs
WHERE window_start >= '2026-06-01 04:00:00'
AND window_start < '2026-07-01 04:00:00'
GROUP BY expiry_bucket
ORDER BY min(dte)Tỷ lệ này giảm dần khi thời gian đáo hạn càng xa. Các hợp đồng đáo hạn trong cùng một ngày — options 0DTE — ghi nhận 0.957, nhóm có tỷ lệ put cao nhất trong năm nhóm, và riêng nhóm này chiếm 34.3% tổng khối lượng của tháng Sáu. Trong khoảng từ một đến bảy ngày, tỷ lệ giảm xuống 0.756; từ 8–30 ngày là 0.717; từ 31–90 ngày là 0.634; và ở nhóm trên 91 ngày, phần cuối của đường cong LEAPS, tỷ lệ chạm đáy ở mức 0.564 — đây là phân khúc có tỷ lệ call cao nhất thị trường.
Bảng số liệu đó đã thay đổi cách hiểu thông thường một cách âm thầm. Tỷ lệ trên toàn thị trường là sự pha trộn giữa các kỳ hạn mà tỷ trọng của chúng thay đổi theo từng tuần: một kỳ đáo hạn vào thứ Sáu lớn sẽ làm tăng trọng số về phía các hợp đồng ngắn hạn và khiến con số tiêu đề biến động, dù mức độ lo ngại của nhà đầu tư không hề thay đổi. Hãy so sánh các dữ liệu tương đồng với nhau.
Chỉ số này cực đoan thế nào so với lịch sử?
Sáu tuần không đủ để xác định một chỉ số có hiếm gặp hay không. Bạn cần dữ liệu nhiều năm — dưới đây là SPY, dòng option có thời gian hoạt động và khối lượng giao dịch lớn nhất thị trường, cùng với giá trị trung vị (median), thấp nhất và cao nhất của put-call ratio hàng ngày cho mỗi năm đầy đủ trong dữ liệu option của chúng tôi:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH daily AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS day,
sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'P')
/ sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'C') AS ratio
FROM global_markets.options_minute_aggs
WHERE ticker LIKE 'O:SPY%'
GROUP BY day
HAVING sumIf(toFloat64(volume), substring(ticker, length(ticker) - 8, 1) = 'C') > 0
)
SELECT toYear(day) AS year,
count() AS sessions,
round(quantileDeterministic(0.5)(ratio, cityHash64(toString(day))), 3) AS median_ratio,
round(min(ratio), 3) AS low,
round(max(ratio), 3) AS high
FROM daily
WHERE toYear(day) >= 2015
GROUP BY year
ORDER BY yearCó ba điểm rút ra từ dữ liệu này. Thứ nhất, giá trị trung vị của tỷ lệ hàng ngày của SPY luôn kết thúc ở mức trên 1.0 trong mọi năm trong bảng — xu hướng ưu tiên put để hedging chỉ số không phải là tâm lý nhất thời của năm 2026, mà là trạng thái mặc định của sản phẩm này. Thứ hai, mức độ này đã giảm dần trong thập kỷ qua: giá trị trung vị là 1.754 vào 2015 và 1.168 vào 2025, cùng với sự gia tăng giao dịch call ngắn hạn. Thứ ba, biên độ hàng năm rất rộng — 2026 cho đến nay trải dài từ 0.848 đến 1.751 trong suốt 130 phiên giao dịch. Đó là câu trả lời xác đáng cho câu hỏi "chỉ số hôm nay có cực đoan không?": hãy so sánh nó với phân phối của chính sản phẩm đó, đừng bao giờ so sánh với mức 1.0.
Cách theo dõi put-call ratio cho một mã cổ phiếu
Các bảng trên là các công thức, không phải báo cáo cố định. Để xây dựng tỷ lệ cho một mã bạn đang nắm giữ:
- Chọn nhóm đối tượng. Chỉ chọn options của một ticker, không chọn "thị trường" — sự pha trộn này sẽ khiến các con số tổng hợp trở nên khó hiểu.
- Tính tổng volume put và volume call trong ngày của tất cả các mức strike và ngày đáo hạn của ticker đó, sau đó chia hai. Trong ký hiệu option, chữ cái thứ chín tính từ cuối lên là
PhoặcC— ký tự đó quyết định toàn bộ phân loại. - Xây dựng dữ liệu lịch sử trước khi đánh giá mức độ. Chỉ số 0.9 của một ngày duy nhất không có ý nghĩa cho đến khi bạn biết được giá trị trung vị và phạm vi riêng của ticker đó — giống như cách bảng SPY thực hiện theo từng năm.
- Đọc volume song song với tỷ lệ. Một sự gia tăng đột biến với volume bình thường chỉ là nhiễu; sự gia tăng tương tự trên bảng điện bận rướu nhất trong sáu tuần qua là phiên ngày 5 tháng 6 ở trên.
- Xác định phạm vi ngày đáo hạn. Tất cả các ngày đáo hạn, hay chỉ các ngày đáo hạn ngắn hạn? Cả hai cách đều hợp lý; việc trộn lẫn chúng qua các ngày là không nên.
Cách các nhà giao dịch phân tích — và những giới hạn thực tế
Đây là các cách diễn giải, không phải quy luật: tỷ lệ tăng được hiểu là nhu cầu phòng vệ (hedging) đang tăng, và một sự tăng vọt cực hạn được các nhà giao dịch ngược dòng (contrarians) hiểu là sự đầu hàng — đám đông cuối cùng đã phải mua bảo hiểm. Phiên giao dịch ngày 5 tháng 6 cho thấy cơ chế này một cách trung thực: tỷ lệ này tăng vọt trong khi đợt bán tháo diễn ra, chứ không phải trước đó. Trong giai đoạn này, nó hoạt động như một thước đo đồng thời, không phải là một dự báo. Hãy kiểm chứng bất kỳ quy tắc kinh nghiệm nào với chuỗi dữ liệu thực tế — và hãy nhớ rằng khối lượng 0DTE đang liên tục làm thay đổi khái niệm về mức "bình thường".
FAQ
Tỷ lệ put-call ratio bình thường là bao nhiêu?
Con số này phụ thuộc hoàn toàn vào nhóm đối tượng được xem xét. Trong suốt tháng 6 năm 2026, giá trị trung vị hàng ngày của tất cả các quyền chọn niêm yết tại Mỹ là 0.793, dao động từ 0.589 đến 0.923 — không bao giờ vượt quá 1.0. Các quyền chọn ETF thị trường rộng đạt 1.175 trong cùng tháng, trong khi các cổ phiếu riêng lẻ và các ETF khác đạt 0.588. Mức "bình thường" của SPY không giống với mức bình thường của một cổ phiếu riêng lẻ.
Tỷ lệ put-call ratio cao là tín hiệu bullish hay bearish?
Cả hai cách hiểu đều tồn tại và không có quy luật cố định nào. Nếu xét theo giá trị bề nổi, khối lượng put lớn cho thấy vị thế đang đặt cược vào chiều giảm giá; ngược lại, các nhà giao dịch contrarian coi các đợt tăng vọt cực độ là dấu hiệu cho thấy đám đông bán khống đã vào hết vị thế. Trong dữ liệu tháng 6 năm 2026, đợt tăng vọt xảy ra ngay trong ngày bán tháo — đây là sự trùng hợp, không phải là tín hiệu dự báo.
Tỷ lệ put-call ratio có giống với VIX hay implied volatility không?
Không, và đây là sự nhầm lẫn phổ biến nhất. Tỷ lệ put-call ratio được xây dựng từ volume — tức là số lượng hợp đồng được chuyển nhượng. VIX và implied volatility được tính từ giá quyền chọn: mức độ đắt đỏ của các hợp đồng đó, được thể hiện dưới dạng biến động hàng năm. Implied-volatility skew so sánh giá của các quyền chọn put chiều giảm với các quyền chọn call chiều tăng. Khối lượng put lớn có thể giao dịch ở mức giá bình ổn, và khối lượng thấp có thể giao dịch ở mức giá hoảng loạn — hai chỉ số này có thể không đồng nhất, và cả hai đều có thể đúng.
$CPC, $CPCE và $CPCI là gì?
Đây là các tỷ lệ put-call được CBOE công bố: $CPC cho tổng volume, $CPCE cho quyền chọn cổ phiếu (SPY và các ETF khác được tính vào nhóm này) và $CPCI cho quyền chọn chỉ số thanh toán bằng tiền mặt. Việc phân loại này rất quan trọng. Phiên bản ba thành phần của chúng tôi — vốn tách biệt các ETF thị trường rộng ra khỏi cả quyền chọn chỉ số và cổ phiếu riêng lẻ thay vì theo cách phân loại hai nhóm của CBOE — đã đo lường mức 1.175 cho các ETF thị trường rộng và 1.096 cho các quyền chọn chỉ số trong tháng 6 năm 2026, cả hai đều trên 1.0, so với mức 0.588 của các cổ phiếu riêng lẻ và các ETF khác. ISEE của ISE là một chỉ số nghịch đảo riêng biệt: tính tỷ lệ call trên put, chỉ tính các lệnh mua của khách hàng khi mở vị thế.
Tỷ lệ put-call ratio sử dụng volume hay open interest?
Tỷ lệ tiêu chuẩn sử dụng volume giao dịch trong ngày. Có một biến thể dựa trên open interest và nó biến động chậm hơn nhiều; hai chỉ số này có thể chỉ ra các hướng khác nhau trong cùng một ngày — volume vs open interest giải thích sự khác biệt này.
Mọi giá trị ở đây đều là kết quả truy vấn từ toàn bộ dữ liệu quyền chọn — bạn có thể mở rộng mã SQL của bất kỳ bảng nào, hoặc tự tính toán tỷ lệ cho danh mục theo dõi của mình trên terminal Strasmore.