Cách dùng Chỉ báo thanh lý

Đọc đúng dấu và phân phối của chỉ báo, tránh hai lỗi đọc phổ biến và đưa nó vào chiến lược.

Cập nhật lần cuối 2026-10
Điểm chính
  • Chỉ báo thanh lý là chỉ báo do Blave tự xây dựng, đo trong một khoảng thời gian bên short hay bên long bị thanh lý nhiều hơn, và chênh lệch bất thường đến mức nào; giá trị dương là short bị thanh lý nhiều hơn, âm là long nhiều hơn, 0 không phải mức bình thường của coin.
  • 0 không phải mức bình thường của coin: giai đoạn 2024-09-15~2026-09-14, nến 1 giờ, timeframe 24h, tỷ lệ thời gian giá trị lớn hơn 0 là BTC 48.8%, ETH 43.1%, SOL 37.6%, DOGE 31.1%.
  • Đuôi dưới của phân bố sâu hơn đuôi trên (BTC 1h × 24h: p1 −3.76, p99 +3.31), đừng áp ngưỡng đối xứng, cũng đừng áp thang phân cấp chung ±2/±3.
  • Dữ liệu thanh lý gốc là dữ liệu lấy mẫu, sóng lớn sẽ bị đánh giá thấp; hiện chưa có chiến lược chính thức nào dùng dữ liệu thanh lý, mọi cách dùng trong bài đều là minh họa, chưa backtest.

Sau một cú giảm mạnh, Lịch sử thanh lý xuất hiện một cột âm rất sâu — là rất nhiều lệnh long bị thanh lý, hay giá trị của coin này vốn hay lệch âm? 0 không phải mức bình thường của coin, và điểm này quyết định cách bạn đọc cột đó. Nếu bạn đang xem bản đồ thanh lý theo mức giá, đó là một ước tính khác, xem cách đọc Bản đồ thanh lý.

Chỉ báo thanh lý là gì?

Chỉ báo thanh lý là chỉ báo do Blave tự xây dựng, đo trong một khoảng thời gian bên short hay bên long bị cưỡng chế đóng nhiều hơn, và chênh lệch bất thường đến mức nào. Thanh lý là việc sàn cưỡng chế đóng vị thế có đòn bẩy: khi long bị thanh lý, sàn gửi lệnh bán; khi short bị thanh lý, sàn gửi lệnh mua.

Giá trị dương là short bị thanh lý nhiều hơn, âm là long nhiều hơn, 0 không phải mức bình thường của coin; giá trị không có giới hạn trên hay dưới:

Giá trịÝ nghĩa
> 0Trong timeframe, short bị thanh lý nhiều hơn long
< 0Long bị thanh lý nhiều hơn short
≈ 0Hai bên triệt tiêu, khoảng đó không có thanh lý, hoặc dữ liệu bị gián đoạn; không phải mức bình thường của coin

Phân bố không đối xứng, đuôi dưới (long bị thanh lý) sâu hơn đuôi trên. Dưới đây là phân vị Blave đo thực tế, nến 1 giờ, timeframe 24h, giai đoạn 2024-09-15~2026-09-14, mỗi giờ lấy một giá trị (n = 17,520):

Coinp1p50p99Tỷ lệ thời gian trên 0
BTC−3.76−0.01+3.3148.8%
ETH−4.07−0.08+2.7943.1%
SOL−4.01−0.17+2.8737.6%
DOGE−4.07−0.23+2.9731.1%

Hai điểm quan trọng nhất

0 không phải mức bình thường của coin

Giá trị lớn hơn 0 nghĩa là short bị thanh lý nhiều hơn long, nhỏ hơn 0 là long bị thanh lý nhiều hơn short. Nhưng coin mà lâu dài long bị thanh lý nhiều hơn thì giá trị sẽ lệch âm một cách hệ thống, 0 không phải "mức bình thường" của coin đó.

Trong giai đoạn đo ở trên (nến 1h, timeframe 24h), tỷ lệ thời gian trên 0 xem ở bảng trên. Cùng là 0, với BTC gần như là trung vị, còn với DOGE thì đã nghiêng về thanh lý short hơn phần lớn thời gian.

Dữ liệu gốc là dữ liệu lấy mẫu, sóng lớn sẽ bị đánh giá thấp

Dữ liệu thanh lý công khai của sàn có giới hạn đẩy, lượng lớn thanh lý cùng một thời điểm sẽ không được gửi hết, nên đây là dữ liệu lấy mẫu, thị trường càng dữ dội thì bị đánh giá thấp càng nhiều. Trong thời gian dữ liệu gián đoạn, giá trị sẽ trông như khoảng đó không có thanh lý, và không đánh dấu thiếu dữ liệu.

Vì vậy đừng coi độ sâu của một cột đơn lẻ là quy mô thanh lý chính xác, mà hãy xem nó rơi vào đầu nào trong phân bố của chính coin đó.

Trước khi đọc số, hãy hỏi hai câu: giá trị của coin này bình thường lệch dương hay lệch âm? Lúc đó có phải thị trường biến động dữ dội, dữ liệu có thể bị đánh giá thấp không? Cả hai câu trả lời đều làm thay đổi ý nghĩa của cùng một con số.

Dựng chiến lược với dữ liệu thanh lý thế nào?

Hiện chưa có chiến lược chính thức nào dùng dữ liệu thanh lý, nên cả ba cách dưới đây đều là minh họa, chưa backtest. Ngưỡng trong code mượn các phân vị đo ở trên làm điểm xuất phát, không phải kết quả quét tham số; cách quét xem Quét ngưỡng thế nào.

1. Ngưỡng bất đối xứng: đánh dấu giai đoạn thanh lý tập trung

Cách trực tiếp nhất là đánh dấu các giai đoạn giá trị rơi vào hai đuôi phân phối. Vì đuôi dưới sâu hơn, đừng dùng cùng một giá trị tuyệt đối cho hai phía. Với BTC, p1 khoảng −3.8 và p99 khoảng +3.3.

LONG_FLUSH_TH  = -3.8   # minh họa: gần p1 của BTC ở 1h × 24h
SHORT_FLUSH_TH = 3.3    # minh họa: gần p99 của BTC ở 1h × 24h

liq = fetch_liquidation(SYMBOL, INTERVAL, START, END, hdrs, timeframe='24h')
df['LIQ'] = liq['alpha']
long_flush  = df['LIQ'] <= LONG_FLUSH_TH    # long bị thanh lý tập trung
short_flush = df['LIQ'] >= SHORT_FLUSH_TH   # short bị thanh lý tập trung

Giao dịch thế nào sau khi đánh dấu là việc bạn phải tự nghiên cứu: Blave chưa kiểm chứng giá sẽ đảo chiều hay tiếp diễn sau thanh lý tập trung. Phân vị cũng khác nhau theo coin; p1 của ETH, SOL và DOGE đều sâu hơn BTC, nên đổi coin thì phải tính lại.

2. Dùng phân vị của chính coin làm ngưỡng, không dùng 0

Vì 0 không phải điểm cân bằng, quy tắc kiểu "trên 0 là short bị thanh lý nhiều" sẽ sai lệch với những coin như DOGE thường lệch âm trong thời gian dài. Hãy dùng phân vị của chính coin trong một cửa sổ quá khứ, ít bị ảnh hưởng bởi độ lệch dài hạn đó hơn:

# minh họa: phân vị 180 ngày qua; độ dài cửa sổ chưa được quét
lo = df['LIQ'].rolling('180D').quantile(0.01)
hi = df['LIQ'].rolling('180D').quantile(0.99)
extreme = (df['LIQ'] <= lo) | (df['LIQ'] >= hi)

Cửa sổ quá ngắn thì ngưỡng sẽ trôi theo diễn biến gần đây; cửa sổ cũng đừng trùm vào giai đoạn coin vừa có dữ liệu (BTC, ETH khoảng 2023-01), giá trị giai đoạn đó chưa ổn định, sẽ tạo ra cực trị giả.

3. Quản trị rủi ro: tạm không mở vị thế mới khi thanh lý tập trung

Một cách dùng thận trọng hơn là thêm nó vào điều kiện vào lệnh của chiến lược sẵn có: không mở vị thế mới khi giá trị nằm ở một trong hai đuôi. Dùng lại hai ngưỡng của cách 1, và thay compute_entry bằng điều kiện vào lệnh của chiến lược bạn:

# minh họa: không vào lệnh khi giá trị ở một trong hai đuôi
flush = (df['LIQ'] <= LONG_FLUSH_TH) | (df['LIQ'] >= SHORT_FLUSH_TH)
entry = compute_entry(df) & ~flush

Tổ hợp này chưa backtest, và Blave chưa kiểm chứng việc tránh thanh lý tập trung có cải thiện hiệu suất hay không. Nó chỉ coi "vừa có một đợt thanh lý" là lý do để tạm dừng vào lệnh mới.

Chọn timeframe và chu kỳ nến thế nào?

Chỉ báo thanh lý có hai thiết lập: timeframe là xem thanh lý trong khoảng thời gian dài bao nhiêu, chọn 15min, 1h, 4h, 8h, 24h, 3d, mặc định 24h; chu kỳ (period) quyết định bao lâu lấy giá trị một lần, chọn 5min, 15min, 1h, 4h, 8h, 1d. Đổi timeframe thì phân bố sẽ thay đổi; cùng giai đoạn đó đổi sang timeframe 1h (nến 1 giờ) đo được như sau:

Coinp1p50p99Tỷ lệ thời gian trên 0
BTC−2.620.00+2.1252.5%
ETH−2.840.00+2.1748.8%
SOL−3.070.00+2.2145.5%
DOGE−3.500.00+2.0940.3%

So với 24h, 1h có hai đuôi hẹp hơn, trung vị của mọi coin đều là 0.00, và tỷ lệ trên 0 gần một nửa hơn. Vì vậy phải tính lại ngưỡng mỗi khi đổi timeframe, không mang bộ số này sang bộ khác. 15min, 4h, 8h và 3d chưa được đo trong bài.

Quét ngưỡng thế nào?

Phân vị chỉ là điểm xuất phát. Liệt kê một dãy ngưỡng ứng viên cho phía long và phía short (ví dụ p1, p2, p5 đối với p99, p98, p95), backtest từng cặp, rồi chọn một vùng mà kết quả đều không tệ, thay vì chọn ô cao nhất.

results = []
for q_lo in [0.01, 0.02, 0.05]:
    for q_hi in [0.95, 0.98, 0.99]:
        lo = df['LIQ'].rolling('180D').quantile(q_lo)
        hi = df['LIQ'].rolling('180D').quantile(q_hi)
        extreme = (df['LIQ'] <= lo) | (df['LIQ'] >= hi)
        entry = compute_entry(df) & ~extreme
        results.append((q_lo, q_hi, backtest(entry)))   # thay backtest bằng hàm backtest của bạn; so sánh từng cặp sau khi trừ phí

Đổi timeframe, coin hay chu kỳ nến là phải quét lại; vì sao chọn vùng phẳng thay vì điểm cao nhất, xem Tránh overfitting.

Xem trên Studio dữ liệu ở đâu?

TrangXem gìQuyền xem
Tổng quan thanh lýMenu thả xuống chuyển giữa hai bảng xếp hạng "Thanh lý short" và "Thanh lý long", mỗi bảng 30 coin đầu. Kích thước ô là giá trị tuyệt đối, không phải số tiền thanh lý; màu là biến động giá trong timeframe.Đăng nhập
Lịch sử thanh lýBiểu đồ cột chỉ báo thanh lý của một coin chồng lên giá, chọn được timeframe và chu kỳ nến, kèm các trường stat.Người dùng không Pro xem trễ 7 ngày gần nhất

Kết hợp với chỉ báo nào?

Đây là ý tưởng kết hợp, không phải kết luận đã kiểm chứng:

Kết hợpCông dụng
Thanh lý + Săn cá voiDùng Săn cá voi để phát hiện biến động OI bất thường, rồi xem chỉ báo thanh lý cùng giai đoạn nằm ở đuôi nào, để phân biệt biến động đó có đi kèm thanh lý tập trung hay không.
Thanh lý + Cường độ TakerChỉ báo thanh lý chỉ nhìn bên bị cưỡng chế đóng, dùng Cường độ Taker để xem lực mua bán chủ động của trader trong cùng khoảng thời gian, bù phần giao dịch tự nguyện.

Lấy dữ liệu qua API hoặc Blave Agent cần lưu ý gì?

Endpoint của Chỉ báo thanh lý là GET /liquidation/get_alpha, tham số gồm symbol, period, timeframe (mặc định 24h) và ngày bắt đầu/kết thúc (start_date, end_date); trong Blave Agent là hàm fetch_liquidation. Chỉ trả về nến đã đóng, các trường là timestamp, alpha và stat, khoảng dài hơn 1 năm sẽ tự bị cắt. Các coin sớm nhất (BTC, ETH) có dữ liệu từ 2023-01-01, trước đó giá trị là 0; các coin khác có thể muộn hơn; giai đoạn vừa có dữ liệu giá trị chưa ổn định, đừng dùng để đặt ngưỡng.

Đối tượng stat của get_alpha mô tả giá trị mới nhất:

TrườngÝ nghĩa
up_probXác suất giá tăng sau 24 giờ do mô hình ước tính; là giá trị ước tính, không phải tỷ lệ thắng được đảm bảo.
avg_up_return /
avg_down_return
Mức tăng trung bình khi giá tăng sau 24 giờ và mức giảm trung bình khi giá giảm, không phân biệt Chỉ báo thanh lý cao hay thấp.
exp_valueup_prob × avg_up_return + (1 − up_prob) × avg_down_return, là số thập phân, không phải phần trăm.
is_data_sufficientDữ liệu lịch sử có đủ hay không; khi là false thì các con số này chỉ để tham khảo.

Endpoint và trường dữ liệu của Bản đồ thanh lý, Thay đổi bản đồ và trang Theo sàn, xem Cách đọc Bản đồ thanh lý.

Hãy nhớ: Chỉ báo thanh lý là dữ liệu tham khảo, không phải tín hiệu mua bán. Dữ liệu gốc là dữ liệu lấy mẫu, 0 không phải mức bình thường của coin, stat là ước tính, không phải tỷ lệ thắng — mọi ngưỡng đều phải kiểm chứng bằng backtest của chính bạn.