Kiến trúc hệ thống
Hệ thống giao dịch tự động được thiết kế theo kiến trúc phân tầng (layered architecture), mỗi tầng đảm nhận một vai trò cụ thể trong pipeline từ ý tưởng đến vận hành thực tế.
Sơ đồ tổng quan
┌───────────────────────────────────────────────────────────────┐
│ CHIẾN LƯỢC (Strategy) │
│ Ý tưởng → Nghiên cứu → Backtest → Validation → Paper → Live │
└───────────────────────────────────────────────────────────────┘
│
▼
┌───────────────────────────────────────────────────────────────┐
│ TÍN HIỆU (Signal Engine) │
│ OFI | BADR | VWAP | Cross-Asset | ML Models │
└───────────────────────────────────────────────────────────────┘
│
▼
┌───────────────────────────────────────────────────────────────┐
│ QUẢN LÝ RỦI RO (Risk Management) │
│ Position Sizing | Stop Loss | Regime Detection | Drawdown │
└───────────────────────────────────────────────────────────────┘
│
▼
┌───────────────────────────────────────────────────────────────┐
│ THỰC THI (Execution Layer) │
│ Broker API | Order Routing | Slippage Control │
└───────────────────────────────────────────────────────────────┘5 tầng kiến trúc chi tiết
1. Tầng Chiến lược (Strategy Layer)
Tầng cao nhất, nơi định nghĩa logic giao dịch và quy trình ra quyết định. Mỗi chiến lược là một hệ thống hoàn chỉnh bao gồm:
- Hypothesis: Giả thuyết có thể kiểm định được (falsifiable), ví dụ: "Khi OFI vượt ngưỡng 2 độ lệch chuẩn, giá VN30F có xu hướng đảo chiều trong 5-10 bar tiếp theo."
- Signal generation: Các tín hiệu đầu vào (OFI, BADR, VWAP, cross-asset ratio)
- Entry/Exit rules: Luật vào/thoát lệnh rõ ràng, không cảm tính
- Regime filter: Bộ lọc chế độ thị trường (bullish, bearish, sideways, high vol)
Tầng này được xây dựng thông qua quy trình 5 giai đoạn:
| Giai đoạn | Đầu vào | Đầu ra | Công cụ |
|---|---|---|---|
| Ideas | Academic papers, quan sát | Hypothesis falsifiable | OpenAlex, web research |
| Research | Hypothesis | Edge thống kê | Python, MCP TradingView data |
| Backtest | Chiến lược | Metrics (Sharpe, MaxDD) | QuantConnect, Walk-forward |
| Paper | Strategy code | Performance real-time | Simulated broker |
| Live | Code + Risk params | PnL thực tế | Broker API |
2. Tầng Tín hiệu (Signal Engine)
Bao gồm các module tính toán tín hiệu độc lập. Mỗi signal có riêng:
- Data pipeline: Nguồn dữ liệu đầu vào (OHLCV, order book, funding rate)
- Calculation logic: Công thức tính toán chính xác (ví dụ: OFI = Σ(V_buy × I_buy) − Σ(V_sell × I_sell))
- Normalization: Chuẩn hóa tín hiệu về cùng thang đo (z-score, percentile)
- Validation check: Kiểm tra tín hiệu còn sống (alive) hay đã chết
Các signal hiện tại:
- OFI (Order Flow Imbalance): Đo lường mất cân bằng dòng lệnh — phát hiện áp lực mua/bán ngắn hạn
- BADR (Bid-Ask Depth Ratio): Tỷ lệ độ sâu sổ lệnh bên mua/bán — đo lường thanh khoản tương đối
- VWAP (Volume-Weighted Average Price): Giá trung bình gia quyền khối lượng — phát hiện lệch giá
- Cross-Asset Ratio (BTC/ETH): Tín hiệu cross-market dựa trên tương quan giữa các tài sản
3. Tầng Quản lý Rủi ro (Risk Management Layer)
Tầng này hoạt động như một bộ lọc (gatekeeper) giữa tín hiệu và lệnh thực tế. Nó kiểm tra:
- Position Sizing: Khối lượng vào lệnh dựa trên Kelly Criterion hoặc Fixed Fractional
- Daily Loss Limit: Giới hạn thua lỗ trong ngày (ví dụ: 2% tài khoản)
- Regime Detection: Phát hiện chuyển đổi chế độ thị trường (Markov Switching, Volatility Clustering)
- Max Drawdown: Giới hạn sụt giảm tài khoản tối đa
- Correlation Check: Kiểm tra tương quan giữa các vị thế đang mở
Nếu một trong các kiểm tra thất bại, lệnh bị chặn hoặc giảm khối lượng, bất kể tín hiệu có mạnh đến đâu.
4. Tầng Thực thi (Execution Layer)
Tầng thấp nhất, chịu trách nhiệm đưa lệnh ra thị trường:
- Broker API: Kết nối đến sàn/giao dịch (thông qua AI4Trade hoặc broker trực tiếp)
- Order Routing: Quyết định loại lệnh (market, limit, stop)
- Slippage Control: Tính toán trượt giá dựa trên thanh khoản hiện tại
- Latency Monitoring: Đo độ trễ từ tín hiệu đến lệnh thực tế
5. Tầng Dữ liệu & Giám sát (Data & Monitoring)
Tầng nền tảng, cung cấp dữ liệu cho mọi tầng khác:
- Market Data: OHLCV, order book (level 2), trade history
- Backtest Data: Dữ liệu lịch sử có adjust cho corporate actions
- Real-time Feed: WebSocket connection cho dữ liệu real-time
- Monitoring Dashboard: Dashboard giám sát vị thế, PnL, tín hiệu
- Alert System: Cảnh báo khi phát hiện bất thường (regime shift, signal degradation)
Luồng dữ liệu giữa các tầng
Market Data → Data Layer
│
▼
Signal Engine → Raw Signals
│
▼
[Regime Filter] → Regime State
│
▼
Strategy Logic → Trade Signal
│
▼
Risk → Sizing
│
▼
Execution → OrderMỗi mũi tên đại diện cho một quyết định có điều kiện (conditional gate). Dữ liệu chỉ đi tiếp nếu vượt qua kiểm tra của tầng hiện tại.
Nguyên tắc thiết kế
- Isolation: Mỗi tầng hoạt động độc lập — thay đổi signal engine không ảnh hưởng execution layer
- Fail-safe: Nếu bất kỳ tầng nào lỗi → không có lệnh được đặt (fail-safe, không fail-deadly)
- Observability: Mọi quyết định đều được log — có thể trace từ tín hiệu đến lệnh
- Backward compatibility: Chiến lược mới không phá vỡ chiến lược cũ