Phát Hiện Bất Thường để Bảo Vệ Bot Giao Dịch: Từ Z-Score đến Transformer
Bất kỳ ai từng chạy bot giao dịch trên sàn crypto đều biết cái cảm giác đó: bot chạy hoàn hảo suốt một tuần, rồi xóa sạch lợi nhuận cả tuần chỉ trong 30 giây. Một flash crash trên một sàn. Một bức tường lệnh giả trong order book. Một chuỗi thanh lý. Hoặc đơn giản là sàn trả về dữ liệu rác.
Tất cả những tình huống này có một điểm chung — chúng đều là các bất thường. Và nếu bot của bạn không nhận ra chúng, sớm muộn nó cũng sẽ trở thành nạn nhân.
Điều Gì Được Xem Là Bất Thường Trong Giao Dịch Crypto
Trước khi truy tìm bất thường, chúng ta cần thống nhất về thứ mình đang tìm kiếm. Học máy phân biệt ba loại, và cả ba đều xuất hiện hàng ngày trên thị trường crypto.
Bất thường điểm (Point anomalies) — các sự kiện riêng lẻ lệch mạnh so với mức bình thường. Một nến có khối lượng gấp 50 lần trung bình. Spread BTC/USDT trên Binance đột ngột tăng lên 0,5%. Đối với bot market-making, mỗi sự kiện như vậy là một cái bẫy tiềm ẩn: vào lệnh ở mức giá giả hoặc chịu slippage nuốt sạch toàn bộ margin.
Bất thường tập thể (Collective anomalies) — một chuỗi sự kiện trông bình thường riêng lẻ nhưng khi kết hợp lại thì báo hiệu vấn đề. Ví dụ điển hình là spoofing: ai đó liên tục đặt và hủy các lệnh giới hạn lớn trong nhiều phút. Mỗi lệnh đơn lẻ là bình thường, nhưng mô hình "đặt-hủy-đặt-hủy" với tỷ lệ order-to-trade là 100:1 chính là thao túng — và bot dựa vào độ sâu order book sẽ giao dịch trên thanh khoản không thực sự tồn tại.
Bất thường ngữ cảnh (Contextual anomalies) — một giá trị bình thường trong ngữ cảnh sai. Khối lượng giao dịch Bitcoin điển hình cho phiên London, nhưng lại xuất hiện lúc 3 giờ sáng UTC vào Chủ nhật. Không xem xét ngữ cảnh, những bất thường như vậy không thể nhìn thấy — và chính chúng là những thứ thường xuyên lọt qua các bộ phát hiện cơ bản nhất.
Trực quan hóa ba loại bất thường chính trong dữ liệu giao dịch: đột biến điểm, mô hình tập thể, và sai lệch ngữ cảnh.
Nhiễu vs. Bất Thường: Vấn Đề Ngữ Cảnh
Bất thường không chỉ là "dữ liệu kỳ lạ." Đó là sự lệch lạc mang thông tin. Điều cốt yếu là phân biệt:
- Nhiễu (Noise): Dao động ngẫu nhiên là một phần của chế độ thị trường bình thường.
- Trôi dạt (Drift): Sự dịch chuyển dần dần trong điều kiện thị trường (ví dụ: chuyển từ đêm biến động thấp sang buổi sáng sôi động).
- Bất thường (Anomaly): Vi phạm đột ngột của mô hình kỳ vọng.
Xác định sự khác biệt giữa nhiễu vô hại, trôi dạt liên tục, và bất thường nguy hiểm là thách thức cốt lõi của mọi bộ phát hiện.
Các Phương Pháp Đơn Giản Giải Quyết 80% Vấn Đề
Không phải mọi thứ đều cần giải quyết bằng mạng nơ-ron. Ba bộ phát hiện cơ bản là đủ cho hầu hết các bot giao dịch.
Z-Score: Bộ Lọc Cực Trị Nhanh
Z-Score cho biết giá trị hiện tại lệch bao nhiêu độ lệch chuẩn so với trung bình trượt. Được tính trong vài microsecond, hoạt động trên mọi khung thời gian.
Chúng tôi dùng nó cho ba nhiệm vụ: lọc khối lượng bất thường (Z-Score > 3 — tín hiệu để mở rộng spread hoặc tạm dừng quoting), giám sát spread (bid-ask mở rộng bất thường thường đến trước các biến động mạnh), và funding rate hợp đồng tương lai (các giá trị cực đoan cảnh báo về khả năng xảy ra chuỗi thanh lý).
Z-Score xác định các sự kiện cực đoan bằng cách đo xem một điểm lệch bao nhiêu độ lệch chuẩn so với trung bình. Các giá trị vượt quá ±3σ được coi là ngoại lệ trong hầu hết các hệ thống giao dịch.
Hạn chế quan trọng: thị trường crypto có phân phối đuôi béo. Một sự kiện theo phân phối chuẩn phải xảy ra một lần trong triệu năm (6σ) lại xảy ra hàng tháng trong crypto. Vì vậy Z-Score là bộ lọc bất thường thô, không phải phán quyết cuối cùng.
Level Shift Detector: Khi Thị Trường Thay Đổi Chế Độ
Chúng ta lấy hai cửa sổ trượt liên tiếp và so sánh trung bình của chúng. Nếu sự chênh lệch vượt ngưỡng — đã xảy ra dịch chuyển mức. Các chiến lược market-making có lợi trong thị trường ổn định và thua lỗ khi có biến động mạnh. Level Shift Detector trên khối lượng và biến động cảnh báo về sự thay đổi chế độ vài phút trước khi nó trở nên rõ ràng trong giá.
Chúng tôi áp dụng nó đồng thời cho nhiều chỉ số: kích thước giao dịch trung bình, độ sâu order book tại 5 cấp đầu tiên, số lượng giao dịch trong một đơn vị thời gian. Nếu Level Shift kích hoạt ở ít nhất hai chỉ số — bot chuyển sang chế độ phòng thủ.
Volatility Shift Detector: Cảm Nhận Cơn Bão
Cách tiếp cận tương tự, nhưng so sánh độ lệch chuẩn thay vì trung bình. Biến động tăng mạnh là tín hiệu để xem xét lại các tham số. Một mô hình thú vị: biến động thấp bất thường thường đến trước một biến động bùng nổ. Volatility Shift Detector bắt cả hai trường hợp — nén và giãn.
Các bộ phát hiện Level Shift và Volatility Shift là chìa khóa để xác định "Thay Đổi Chế Độ" — những dịch chuyển cấu trúc đột ngột trong hành vi thị trường đòi hỏi các tham số giao dịch khác nhau.
HBOS: Phân Tích Đa Chiều Nhanh
Khi bạn cần giám sát 10+ chỉ số đồng thời mà không tốn kém như ML phức tạp, HBOS (Histogram-Based Outlier Selection) là lựa chọn tốt nhất. Nó giả định tính độc lập của đặc trưng và xây dựng histogram cho từng cái. Điểm bất thường là tích của nghịch đảo mật độ trên tất cả các histogram.
HBOS nhanh hơn đáng kể so với các phương pháp dựa trên khoảng cách như LOF, phù hợp để lọc tần số cao các vector trạng thái đa chiều.
Học Máy: Khi Thống Kê Không Đủ
Các phương pháp cơ bản làm việc với một chỉ số tại một thời điểm. Nhưng các bất thường thực tế thường biểu hiện dưới dạng kết hợp bất thường của các chỉ số: khối lượng bình thường, spread bình thường, nhưng khối lượng + spread + tốc độ thay đổi giá + mất cân bằng order book cùng nhau — lại bất thường. Đây là lúc cần ML.
Bức tranh có cấu trúc về các phương pháp phát hiện bất thường: từ các thuật toán unsupervised cổ điển đến kiến trúc deep learning.
Isolation Forest: Cân Bằng Tốt Nhất Cho Production
Trong tất cả các phương pháp ML phát hiện bất thường, Isolation Forest phù hợp nhất với hệ thống giao dịch. Thuật toán xây dựng một ensemble các cây quyết định phân vùng không gian đặc trưng một cách ngẫu nhiên. Các điểm bất thường, vì "hiếm gặp và khác biệt," được cô lập trong ít lần phân tách hơn.
Tại sao Isolation Forest? Nó không yêu cầu dữ liệu có nhãn — gán nhãn bất thường trên thị trường crypto gần như bất khả thi vì mỗi flash crash là duy nhất. Suy luận nhanh trong mili giây làm cho việc sử dụng gần thời gian thực là khả thi. Và điều quan trọng đối với production: các dự đoán có thể được giải thích thông qua giá trị SHAP — bạn không chỉ biết một thời điểm là bất thường, mà còn hiểu tại sao.
Trên dữ liệu Bitcoin, Isolation Forest đã phát hiện không chỉ các bất thường rõ ràng như đột biến biến động khi Tesla từ chối thanh toán bằng BTC năm 2021, mà cả những bất thường tinh tế — các giai đoạn khi biến động giá không được hỗ trợ bởi khối lượng, cho thấy sự thao túng bên ngoài. Khi phân tích spoofing, SHAP cho thấy các chỉ số chính là các lệnh order book mất cân bằng và hoạt động hủy lệnh bất thường cao.
Thuật toán Isolation Forest hoạt động bằng cách phân vùng không gian ngẫu nhiên: các ngoại lệ được cô lập trong ít lần phân tách hơn đáng kể so với các điểm trong cụm dày đặc.
LOF: Lựa Chọn Tốt Nhất Cho Giám Sát Đa Sàn
Local Outlier Factor đánh giá tính bất thường của một điểm bằng cách so sánh mật độ cục bộ của nó với mật độ của các điểm lân cận. Một nghiên cứu (Springer, 2024) so sánh LOF, Isolation Forest và One-Class SVM trên dữ liệu tiền mã hóa cho thấy LOF hiệu quả nhất — nó tìm được các bất thường thực với ít kết quả dương tính giả nhất, hoạt động ổn định trên cả Bitcoin và Dogecoin.
Tại sao LOF quan trọng với cơ sở hạ tầng đa sàn? Dữ liệu từ các sàn khác nhau có "mật độ" khác nhau — Binance thấy hàng nghìn giao dịch mỗi giây, một sàn ngách thấy hàng chục. Các phương pháp toàn cục như Z-Score sẽ tạo ra kết quả dương tính giả trên các sàn ngách hoặc bỏ lỡ bất thường trên các sàn lớn. LOF thích nghi với ngữ cảnh cục bộ.
LOF so sánh mật độ cục bộ của một điểm với các điểm lân cận. Điều này cho phép nó tìm các ngoại lệ "cục bộ" bất thường ngay cả khi chúng nhất quán với các mô hình dữ liệu toàn cục.
Hạn chế là độ phức tạp bậc hai theo số điểm. Đối với dữ liệu tick-level thời gian thực thì quá chậm, nhưng đối với tổng hợp theo phút trên 100+ sàn — lý tưởng.
Autoencoder: Phân Tích Order Book Sâu
Autoencoder là mạng nơ-ron nén dữ liệu thành biểu diễn nhỏ gọn và tái tạo lại. Được huấn luyện trên dữ liệu "bình thường," lỗi tái tạo cao sau đó báo hiệu một bất thường.
Đối với phân tích order book đây là công cụ mạnh mẽ nhất. Order book với 20 mức bid và 20 mức ask là một vector 40 chiều cập nhật hàng trăm lần mỗi giây. LSTM Autoencoder xem xét không chỉ trạng thái hiện tại mà còn cả động học — cách order book thay đổi trong N tick vừa qua. Cách tiếp cận hybrid "LSTM Autoencoder + One-Class SVM" phân tách trách nhiệm: mạng nơ-ron xử lý trích xuất đặc trưng, ML cổ điển xử lý ra quyết định. Nhược điểm chính là chi phí tính toán: suy luận thời gian thực yêu cầu GPU.
Autoencoder học một biểu diễn "latent" nén của dữ liệu bình thường. Các bất thường không thể tái tạo chính xác, dẫn đến điểm lỗi cao được dùng để phát hiện.
Kiến Trúc Tầng: Kết Hợp Tất Cả
Không có phương pháp đơn lẻ nào giải quyết được mọi vấn đề. Các phương pháp nhanh bỏ lỡ bất thường phức tạp. Các phương pháp chính xác quá chậm cho thời gian thực. Giải pháp là kiến trúc tầng nơi mỗi lớp tiếp theo bắt những gì lớp trước bỏ sót.
Kiến trúc phát hiện bất thường đa lớp: từ hard limit mili giây đến phân tích deep learning nền.
Lớp 1 — Fast Path (dưới 1 ms). Z-Score trên khối lượng, spread, và thay đổi giá. Kiểm tra tính liên tục. Hard limit. Khi kích hoạt — tạm dừng giao dịch ngay lập tức. Lớp này bảo vệ khỏi flash crash, lỗi API, và thao túng thô. Được triển khai trong vòng lặp chính của bot mà không cần phụ thuộc bên ngoài.
Lớp 2 — Near Real-Time (1–100 ms). Isolation Forest trên các đặc trưng kết hợp. Các bộ phát hiện Level Shift và Volatility Shift. Khi kích hoạt — chuyển chế độ giao dịch, điều chỉnh tham số. Chạy trong luồng song song.
Lớp 3 — Phân Tích Nền (1–60 giây). LOF trên dữ liệu đa sàn. LSTM Autoencoder trên các trạng thái order book. Phân tích phần dư phân rã theo mùa. Khi kích hoạt — cảnh báo, điều chỉnh tham số chiến lược.
Lớp 4 — Phân Tích Batch (hàng giờ/hàng ngày). DBSCAN để phát hiện wash trading. PCA để giám sát tương quan xuyên sàn. Huấn luyện lại mô hình đầy đủ. Đầu ra — báo cáo, cập nhật mô hình, hiệu chỉnh lại ngưỡng cho các lớp trước.
Mỗi lớp hoạt động độc lập. Nếu lớp 3 ngừng hoạt động — lớp 1 và 2 vẫn tiếp tục bảo vệ bot. Khả năng chịu lỗi và giảm cấp nhẹ nhàng là các thuộc tính bắt buộc của bất kỳ cơ sở hạ tầng giao dịch nào.
Khuyến Nghị Thực Tế
Một vài bài học từ môi trường production.
Bắt đầu đơn giản. Z-Score + Level Shift + Volatility Shift có thể triển khai trong một ngày. Điều này bao gồm phần lớn các kịch bản thua lỗ do điều kiện thị trường bất thường. Cụm GPU có thể đến sau.
Tham số contamination là siêu tham số quan trọng nhất. Trong Isolation Forest nó xác định tỷ lệ bất thường kỳ vọng. Đối với thị trường crypto chúng tôi dùng 0,01–0,05 tùy theo cặp và sàn. Quá thấp — bỏ lỡ bất thường thực. Quá cao — dương tính giả làm tê liệt giao dịch.
Ngưỡng thích ứng thay vì ngưỡng cố định. Thị trường crypto phi dừng. Một ngưỡng hoạt động tốt vào tháng Một sẽ tạo ra dương tính giả vào tháng Ba. Sử dụng EWMA để cập nhật ngưỡng, hoặc định kỳ huấn luyện lại mô hình trên cửa sổ trượt.
Ghi nhật ký tất cả bất thường. Ngay cả khi bạn không phản ứng tự động — hãy lưu nhãn với ngữ cảnh. Sau một tháng bạn sẽ có tập dữ liệu để huấn luyện mô hình có giám sát và phân tích xem bất thường nào đến trước tổn thất.
Kiểm tra trên các sự cố thực. Xây dựng bộ sưu tập bất thường lịch sử: flash crash tháng 5 năm 2021, chuỗi thanh lý FTX, sụp đổ LUNA. Chạy mọi bộ phát hiện mới qua các kịch bản này. Nếu nó không bắt được các sự cố đã biết — nó vô dụng.
Tiếp Theo Là Gì
Ba hướng đáng theo dõi.
Mô hình dựa trên Transformer cho order book. Nghiên cứu gần đây cho thấy Transformer autoencoder + OC-SVM trên dữ liệu Limit Order Book vượt trội đáng kể so với tất cả các phương pháp trước đó để phát hiện spoofing. Staged Sliding Window Transformer trên dữ liệu EUR/USD tần số cao (315 triệu bản ghi) đạt accuracy 0,93, F1 0,91, AUC-ROC 0,95 — tốt hơn đáng kể so với Random Forest, LSTM, và CNN.
Kiến trúc Transformer với multi-head attention đang chứng tỏ khả năng vượt trội trong việc xác định các mô hình thời gian phức tạp trong dữ liệu Limit Order Book tần số cao.
GAN để tạo bất thường tổng hợp. Một trong những thách thức chính là thiếu dữ liệu có nhãn. GAN có thể tạo ra các kịch bản thao túng thực tế để huấn luyện mô hình có giám sát. Các kiến trúc đã tồn tại đạt độ chính xác 94,7% với độ trễ dưới 3 ms và thông lượng 150.000 giao dịch mỗi giây.
Generative Adversarial Networks (GAN) có thể được sử dụng để tăng cường tập dữ liệu bằng cách tạo ra các bất thường tổng hợp thực tế, giải quyết vấn đề thiếu nhãn nghiêm trọng trong giao dịch.
Change Point Detection (CPD). Thay vì chỉ tìm kiếm các ngoại lệ, CPD tập trung vào việc xác định thời điểm chính xác khi các thuộc tính thống kê của tín hiệu thay đổi. Điều này rất quan trọng cho việc chuyển đổi giữa các chế độ market-making (ví dụ: từ mean-reversion sang trend-following).
Change Point Detection xác định các dịch chuyển cấu trúc trong dữ liệu chuỗi thời gian, làm nổi bật ranh giới giữa các chế độ thị trường khác nhau.
Bất thường không phải là tính năng tùy chọn. Đó là nền tảng mà thiếu nó thì algo trading chẳng khác gì cờ bạc. Và càng sớm xây dựng nó, thị trường càng cần ít bài học đắt giá để dạy bạn.
Tài Liệu Tham Khảo
- Anomaly detection in cryptocurrency markets using Isolation Forest
- LOF: Identifying local outliers in high dimensional space
- Isolation Forest for Anomaly Detection (Sklearn Documentation)
- PyOD: A Comprehensive Python Toolbox for Outlier Detection
- Transformer-based models for Limit Order Book anomaly detection
- Ethical Issues and Market Manipulation in Cryptocurrency
Trích Dẫn
@software{soloviov2026anomalydetectionalgotrading,
author = {Soloviov, Eugen},
title = {Anomaly Detection for Trading Bot Protection: From Z-Score to Transformer},
year = {2026},
url = {https://marketmaker.cc/vi/blog/post/anomaly-detection-algotrading},
version = {0.1.0},
description = {Which anomaly detection methods actually work in crypto algo trading, how to build a cascading protection architecture, and why this is the foundation without which algo trading becomes gambling.}
}
Tác Giả
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.