Mục lục bài viết

Bằng chứng và phạm vi

Nguồn primary xác nhận schema sự kiện và OI, không cung cấp backtest đảo chiều. Burst thresholds và entry trong bài là đề xuất kiểm định.

Dữ liệu và thị trườngCrypto derivatives có liquidation feed của từng venue; không suy toàn thị trường từ một sàn hoặc từ heatmap ước lượng.
Khung thời gian nghiên cứuVí dụ tổng hợp sự kiện 1 phút, xác nhận 1–5 phút; latency và độ phủ dữ liệu là giới hạn chính.
Thanh lý tăng mạnh khi giá xuyên hỗ trợ 100; chỉ sau intensity giảm và reclaim 100,3 mới xét entry đảo chiều.Mở hình kích thước đầy đủ
Giá sự kiện và size long bị thanh lý đều giả lập. Cột phụ là liquidation size theo thời gian, không phải tổng traded volume. Các điểm là mốc sự kiện đã rút gọn; không đại diện các bar liên tiếp hay khoảng thời gian đều nhau.

Quy trình thực hành

Sơ đồ quy trình Liquidation washout: phân biệt thanh lý kiệt sức với cascade tiếp diễn
Các bước được mô tả đầy đủ bên dưới. Tại mỗi bước, dữ liệu thiếu hoặc điều kiện sai phải có lý do loại bỏ.
  1. Kiểm schemaPhía vị thế, size và bankruptcy price.
  2. Phát hiện burstBaseline quá khứ và absolute floor.
  3. Quan sát giáSweep rồi reclaim trong K.
  4. Kiểm kiệt sứcGiảm intensity và không có low mới.
  5. Entry hoặc continuationTách nhánh và giữ toàn bộ mẫu.

Sự kiện bị buộc đóng chưa phải đáy giá

Washout là cách gọi một cú ép vị thế mạnh rồi thị trường phục hồi; từ “kiệt sức” chỉ được kiểm tra bằng diễn biến sau đó. Nếu giá tiếp tục giảm, cách gọi cascade phù hợp hơn. Một detector nên giữ cả hai nhánh để không chỉ chọn lại những cú thanh lý kết thúc đẹp.

Bybit allLiquidation dùng S là phía vị thế: Buy nghĩa long bị thanh lý; p là bankruptcy price [1]. PublicTrade lại dùng S là phía taker [2]. Đây là hai schema khác nhau dù tên trường giống nhau. Nhân bankruptcy price với size rồi gọi là giá trị khớp thực tế sẽ gán sai ý nghĩa dữ liệu.

Heatmap “mức dễ thanh lý” thường là ước lượng của nhà cung cấp; feed sự kiện là báo cáo việc đã xảy ra trong phạm vi sản phẩm của venue. Không coi các mức màu trên heatmap là lệnh chắc chắn đang chờ, hoặc gộp volume thanh lý vào total traded volume lần nữa khi nó đã nằm trong giao dịch.

Burst, sweep, reclaim và giảm cường độ

Thiết kế đề xuất cho long reversal: mức hỗ trợ S được khóa từ trước, A=ATR14 nến trước event, buffer=max(2tick,0,1A). Cộng long-liquidated size vào từng phút theo event time. Burst nếu vượt percentile 99 từ cửa sổ quá khứ cùng chế độ giao dịch và đạt ít nhất absolute floor theo thanh khoản sản phẩm. Nếu baseline hầu hết bằng 0, percentile đơn thuần không đủ.

Yêu cầu giá đi dưới S−buffer rồi đóng lại trên S+buffer trong K=3 nến. Sau burst, tổng size thanh lý một phút gần nhất phải nhỏ hơn một nửa burst và không tạo low mới trong N=1 nến hoàn chỉnh. K, N, percentile, hệ số 1/2 và floor đều là tham số tự đặt. Điều kiện chỉ có sau khi các cửa sổ liên quan đã kết thúc.

Nếu burst xảy ra nhưng giá không reclaim, hoặc liên tục phá low cùng thanh lý cao, gắn continuation candidate; không mua chỉ vì con số thanh lý rất lớn. Bearish washout dùng short bị thanh lý, phá kháng cự rồi quay xuống và đảo dấu các điều kiện giá.

on_completed_minute(t):
  if not price_and_liquidation_window_received(t): return
  if not valid_prior_percentile_ATR_and_support(t): return
  long_liq = sum(normalized_long_liquidated_size in minute t)
  burst = long_liq>past_p99 and long_liq>=minimum_size
  if no_active_event:
    if burst and low[t]<support-buffer and cooldown_satisfied:
      start_event_once(t,support=support,buffer=buffer,low=low[t],
                       burst_size=long_liq,expiry=t+3)
    return
  if t>event.expiry:
    expire(); return
  prior_low = event.low
  no_new_low = low[t]>=prior_low
  event.low = min(prior_low,low[t])
  if close[t]>event.support+event.buffer and long_liq<0.5*event.burst_size
       and no_new_low and t>event.start:
    signal_at_received_close(t); consume_event()
  elif low[t]<prior_low and intensity_persists:
    record_continuation_observation()
# A new burst inside the event never resets its original start or expiry.

Đơn vị, thời gian và open interest

Chọn size hoặc estimated notional làm đại lượng chính, lưu rõ công thức theo contract. Nếu phải quy đổi bằng midprice tại event, đặt tên estimated notional; không trình bày như execution notional. Gói feed có thể chứa nhiều sự kiện, và nhãn snapshot của liquidation không có nghĩa xóa toàn bộ lịch sử aggregation như order book.

Lưu receive time để biết một burst có thực sự được nhận trước khi signal phát hay không. Dữ liệu có sau nhưng timestamp cũ không thể cứu một entry quá khứ. Mất feed trong lúc biến động phải được ghi là missing, không biến thành phút thanh lý bằng 0 rồi kết luận cường độ đã giảm.

OI dùng làm bối cảnh tùy chọn. Tài liệu Bybit phân biệt openInterest tổng hai phía và singleOpenInterest một phía, đơn vị linear coin và inverse USD; endpoint có thể chậm trong biến động mạnh [3]. Chọn một trường và một phiên bản schema nhất quán. OI giảm không cho biết riêng phe nào thua và không dự báo chắc chiều giá kế tiếp.

Ví dụ đảo chiều và cascade không dừng

Giả lập hỗ trợ 100, ATR2, tick 0,05 nên buffer 0,2. Phút burst có 120 đơn vị long bị thanh lý, trong khi p99=80 và floor=50; giá xuống 98,8. Phút sau thanh lý 40, low 99,0 và close 100,3: cường độ giảm hơn nửa, không có low mới và reclaim đạt.

Mua quote 100,35, stop 98,6, risk 1,75; target 103,85 tương đương 2R trước phí. Nếu quote sau xác nhận đã lên 101,4, risk 2,8 và reward tới cùng target chỉ 2,45. Một policy RR tối thiểu 1,5 đã đăng ký trước sẽ bỏ; không backtest khớp tại close 100,3 khi giá đó không còn khả dụng.

Trường hợp continuation: burst 120 nhưng phút kế tiếp thanh lý 180, giá xuống 97,6, close 98,0. Không reclaim nên bản washout không vào. Nếu đã có signal rồi mới xuất hiện làn sóng thứ hai khiến stop 98,6 khớp 98,3, kết quả từ entry 100,35 là−2,05, hơn 1R do slippage. Filter không loại bỏ mọi cascade và không được sửa tín hiệu cũ sau khi biết kết quả.

Entry sau xác nhận và rủi ro thanh khoản

Entry confirmation dùng quote có thể giao dịch sau khi receive đủ điều kiện. Stop bằng event_low trừ buffer đã khóa; target có thể là swing hoặc VWAP đã biết, nhưng target quá gần phải bị loại bằng luật trước. Size dựa trên khoảng stop và chi phí dự kiến, không dựa vào mong muốn bắt đúng đáy.

Một event có nhiều burst chồng lấn cần một event_id và quy tắc restart rõ. Đề xuất không dời điểm bắt đầu để kéo dài K vô hạn; burst mới chỉ tạo event mới sau cooldown hoặc sau event cũ kết thúc. Điều này tránh hàng chục lần mua bình quân cùng một cascade.

Trong thời điểm spread nở, depth giảm và matching chậm, stop có thể không khớp đúng mức. Kiểm market order theo book có sẵn và giới hạn vị thế từ trước. Nếu chiến lược yêu cầu nhiều lần re-entry, đo tổng rủi ro cả chuỗi, không chỉ từng lệnh danh nghĩa.

Mẫu đối chứng bắt buộc là continuation

Lập ba nhóm: price-only sweep/reclaim, burst không reclaim và burst có reclaim. So washout có thêm thông tin so với price-only hay chỉ chọn biến động lớn hơn. Nhóm không reclaim giúp đo tần suất cascade kéo dài vốn biến mất trong các ví dụ quảng bá.

Báo độ phủ feed, số phút missing, event count, trade count, không khớp, net expectancy, drawdown và lỗ đuôi. Phí, funding, latency và slippage phải theo venue; backtest bằng dữ liệu thanh lý được thu về sau dễ có availability bias.

Tách train/test theo thời gian và gom tất cả burst thuộc cùng cascade vào một fold. Kiểm các floor, percentile và K trên vùng tham số lân cận. Không gọi một ví dụ bắt đáy hay vài ảnh P&L là xác nhận cho toàn phương pháp.

Sai lầm thường gặp

Thanh lý càng lớn càng mua

Burst có thể là khởi đầu cascade, cần nhánh không reclaim.

Bankruptcy price thành fill

Sai ngữ nghĩa làm lệch notional và mô phỏng entry.

OI giảm là đáy chắc chắn

OI không tự xác định hướng giá tương lai hoặc danh tính bên thua.

Checklist trước khi dùng phương pháp

Tự đánh dấu khi đã kiểm tra trên dữ liệu của bạn. Trạng thái lưu trong trình duyệt này; đây không phải chứng nhận chiến lược có lãi.

0/7 mục

Câu hỏi thường gặp

Có thể chỉ dùng heatmap thanh lý không?

Có thể nghiên cứu feature dự báo của heatmap, nhưng đó là mô hình khác và phải biết cách nhà cung cấp ước lượng, thời điểm công bố.

Dữ liệu một sàn có đại diện toàn crypto không?

Không. Nó phản ánh phạm vi venue và hợp đồng được thu; cần kiểm khả năng chuyển giao bằng dữ liệu khác.

Nguồn nghiên cứu

Các nguồn dưới đây hỗ trợ phần định nghĩa hoặc bằng chứng được ghi bên cạnh. Mã giả, ví dụ minh họa và tham số đề xuất trong bài cần được kiểm định riêng.

  1. All LiquidationBybit. Đọc schema position side, executed size và bankruptcy price; phạm vi venue. Đối chiếu: .
  2. Public TradeBybit. Đối chiếu taker side và giá trade để tránh trộn schema. Đối chiếu: .
  3. Get Open InterestBybit. Đọc đơn vị, hai trường OI và cảnh báo latency của API. Đối chiếu: .

Đọc tiếp theo phương pháp

Lưu ý rủi ro

Nội dung phục vụ giáo dục và thiết kế nghiên cứu, không phải lời khuyên tài chính. Backtest là mô phỏng lịch sử, không bảo đảm hiệu quả tương lai và không đặt lệnh giao dịch thật. Các phương pháp trong thư viện không mặc nhiên là tính năng đã có trong ứng dụng. Xem phương pháp tính và trung tâm học.

Kiểm tra quy tắc trước khi dùng vốn thật

Đối chiếu khả năng hỗ trợ của ứng dụng, dữ liệu và từng giao dịch mô phỏng; các detector nâng cao có thể cần triển khai riêng.

Tải Backtest trên App Store