🤖 KHÓA HỌC QUANT TRADING & THUẬT TOÁN (ELITEQUANT FRAMEWORK) BÀI 3 / 5
ĐỊNH LƯỢNG & THUẬT TOÁN ĐỈNH CAO

Khóa Học Quant Trading (Phần 3): Các Chiến Lược Định Lượng Kinh Điển (Mean Reversion, Pairs Trading & Momentum)

MỤC LỤC BÀI HỌC (PHẦN 3)

1. Hai Tượng Đài Quant: Triết Lý Dr. Ernie Chan & Robert Carver

Trong mục tác giả và blog chuyên sâu của EliteQuant, hai cái tên luôn được cộng đồng định lượng quốc tế tôn sùng như kim chỉ nam là Dr. Ernest P. Chan và Robert Carver.

DR. ERNEST P. CHAN
Statistical Arbitrage Master
Cựu chuyên gia nghiên cứu trí tuệ nhân tạo của IBM, quản lý quỹ đầu cơ QTS Capital. Tác giả 3 cuốn sách gối đầu giường về Pairs Trading, Mean Reversion và Machine Trading.
ROBERT CARVER
Systematic Trend Following
Cựu Trưởng bộ phận Chiến lược Thu nhập Cố định tại Man AHL. Tác giả Systematic Trading, bậc thầy về định cỡ vị thế, nhắm mục tiêu biến động và đa dạng hóa đa tài sản.

Điểm chung lớn nhất của cả hai huyền thoại này: Không tìm kiếm chén thánh dự đoán tương lai, mà tập trung khai thác các dị thường thống kê (Statistical Anomalies) có cơ sở kinh tế bền vững và kiểm soát rủi ro ở cấp độ phân bổ vốn danh mục.

2. Chiến Lược Đảo Chiều Về Trung Bình (Mean Reversion) & Quá Trình Ornstein-Uhlenbeck

Chiến lược Đảo chiều về trung bình dựa trên giả thuyết: Giá cả có thể lệch xa giá trị cân bằng do tâm lý hoảng loạn hoặc hưng phấn ngắn hạn, nhưng cuối cùng lực hấp dẫn kinh tế sẽ kéo nó quay trở lại mức trung bình dài hạn.

Trong toán học tài chính, hành vi này được mô hình hóa bằng Quá trình ngẫu nhiên Ornstein-Uhlenbeck (OU Process):

$dx_t = \theta (\mu - x_t) dt + \sigma dW_t$

Trong đó $\theta$ là tốc độ kéo về trung bình (Speed of Reversion), $\mu$ là mức giá trị cân bằng dài hạn, $\sigma$ là độ biến động và $dW_t$ là chuyển động Brown chuẩn.

💡
VŨ KHÍ THỜI GIAN: CHU KỲ BÁN RÃ (HALF-LIFE):
Từ quá trình OU, ta có thể tính chính xác Thời gian bán rã — khoảng thời gian trung bình cần thiết để một độ lệch giá thu hẹp lại 50%:

$\text{Half-life} = -\frac{\ln(2)}{\lambda}$ (với $\lambda$ thu được từ hồi quy $\Delta y_t = \lambda y_{t-1} + \mu + \epsilon_t$).

• Nếu Half-Life quá ngắn (< 1 ngày): Phí giao dịch và slippage sẽ nuốt chửng lợi nhuận.
• Nếu Half-Life quá dài (> 60 ngày): Vốn bị giam quá lâu, chi phí cơ hội lớn.
• Vùng ngọt ngào (Sweet Spot) cho Mean Reversion: Từ 5 đến 20 ngày giao dịch!

3. Tuyệt Kỹ Giao Dịch Cặp (Pairs Trading): Phân Biệt Correlation vs. Cointegration

Giao dịch cặp (Pairs Trading) hay kinh doanh chênh lệch giá thống kê (Statistical Arbitrage) là chiến lược trung lập với thị trường (Market-Neutral) nổi tiếng nhất Phố Wall, được phát minh bởi Morgan Stanley vào những năm 1980.

⚠️
BẪY CHẾT NGƯỜI GIỮA TƯƠNG QUAN VÀ ĐỒNG LIÊN KẾT:
• Tương quan (Correlation): Chỉ đo lường sự đồng hướng biến động trong ngắn hạn. Hai cổ phiếu có hệ số tương quan $r = 0.9$ vẫn hoàn toàn có thể phân kỳ xa dần nhau mãi mãi (ví dụ: Kodak và Canon trước đây)!
• Đồng liên kết (Cointegration): Là sợi dây cao su ràng buộc dài hạn. Dù trong ngắn hạn hai tài sản có thể trôi dạt ngẫu nhiên, nhưng khoảng cách giữa chúng (Spread) là một chuỗi dừng và bắt buộc phải hội tụ về mức cân bằng!
MÔ HÌNH KHỚP LỆNH SPREAD Z-SCORE TRONG GIAO DỊCH CẶP (PAIRS TRADING) MARKET NEUTRAL SELL A / BUY B (+2.0σ) EXIT ALL (Mean 0.0) BUY A / SELL B (-2.0σ) ENTRY: SHORT SPREAD Z > +2.0 (Spread Quá Cao) TP: ĐÓNG CẢ 2 VỊ THẾ Spread Hồi Quy Về 0 ENTRY: LONG SPREAD Z < -2.0 (Spread Quá Thấp)

4. Quy Trình Kiểm Định Đồng Liên Kết 2 Bước (Engle-Granger Two-Step)

Để xây dựng một cặp giao dịch chuẩn xác (ví dụ: cặp cổ phiếu thép HPG vs. NKG, hoặc cặp phái sinh E1VFVN30 vs. VN30F), ta thực thi quy trình toán học 4 bước:

  1. Hồi quy OLS tìm tỷ lệ phòng hộ (Hedge Ratio $\beta$):
    $P_t^A = \alpha + \beta P_t^B + \epsilon_t$
  2. Tạo chuỗi Spread phần dư:
    $\text{Spread}_t = P_t^A - \beta P_t^B$
  3. Kiểm định tính dừng ADF Test trên chuỗi Spread: Nếu $p\text{-value} < 0.05$, hai tài sản chính thức đồng liên kết!
  4. Tính Z-score chuẩn hóa:
    $Z_t = \frac{\text{Spread}_t - \text{Mean}(\text{Spread})}{\text{Std}(\text{Spread})}$

5. Chiến Lược Theo Xu Hướng (Trend Following) & Volatility Targeting

Trái ngược với Mean Reversion, chiến lược Theo xu hướng định lượng (Trend Following) không bao giờ bắt đỉnh đáy. Nó chấp nhận mua giá cao để bán giá cao hơn nữa, hoặc bán khống giá thấp để mua lại giá thấp hơn nữa.

Trong cuốn Systematic Trading của Robert Carver, yếu tố sống còn làm nên thành công của các quỹ CTA hàng chục tỷ USD là Volatility Targeting (Nhắm mục tiêu biến động cố định):

6. Đầu Tư Theo Nhân Tố (Factor Investing) Fama-French Tại Việt Nam

Được phát triển bởi các nhà kinh tế học đoạt giải Nobel Eugene Fama và Kenneth French, Factor Investing phân tích lợi nhuận của cổ phiếu không phải do may mắn mà đến từ các phần bù rủi ro nhân tố (Factor Risk Premia):

Nhân Tố (Factor) Định Nghĩa Thống Kê Chỉ Số Đo Lường Tại TTCK Việt Nam
Value (Giá trị) Cổ phiếu rẻ so với giá trị cơ bản P/E thấp, P/B thấp, Tỷ suất cổ tức (Dividend Yield) cao
Size (Quy mô) Cổ phiếu vốn hóa vừa và nhỏ tăng trưởng Vốn hóa thị trường (Market Cap) nhóm MidCap
Quality (Chất lượng) Doanh nghiệp có lợi thế hào kinh tế lớn ROE > 15%, Biên lợi nhuận ổn định, Nợ vay ròng/Vốn CSH thấp
Momentum (Đà tăng) Cổ phiếu có sức mạnh giá tốt nhất 6-12 tháng RS Rating (Minervini), Tỷ suất sinh lời vượt trội so với VN-Index
Low Volatility (Biến động thấp) Cổ phiếu ít biến động hơn thị trường chung Hệ số Beta < 0.8, Độ lệch chuẩn lợi nhuận ngày thấp
import numpy as np import pandas as pd import statsmodels.api as sm from statsmodels.tsa.stattools import coint, adfuller # Kiểm định Đồng liên kết Engle-Granger & Tính Z-Score def analyze_pairs_trading(stock_a, stock_b): # 1. Hồi quy OLS tìm Hedge Ratio (Beta) X = sm.add_constant(stock_b) model = sm.OLS(stock_a, X).fit() beta = model.params.iloc[1] # 2. Tính Spread spread = stock_a - beta * stock_b # 3. Kiểm định tính dừng trên Spread (ADF Test) score, p_value, _ = coint(stock_a, stock_b) print(f"Hedge Ratio (Beta): {beta:.4f} | Cointegration p-value: {p_value:.4e}") if p_value < 0.05: print("=> CẶP ĐỒNG LIÊN KẾT CAO! HỢP LỆ ĐỂ PAIRS TRADING.") # 4. Tính Z-Score z_score = (spread - spread.mean()) / spread.std() latest_z = z_score.iloc[-1] print(f"Z-Score hiện tại: {latest_z:.2f}") if latest_z >= 2.0: print("TÍN HIỆU: BÁN CỔ PHIẾU A, MUA CỔ PHIẾU B (Z > +2)") elif latest_z <= -2.0: print("TÍN HIỆU: MUA CỔ PHIẾU A, BÁN CỔ PHIẾU B (Z < -2)") else: print("TRẠNG THÁI: CHỜ ĐỢI SPREAD PHÂN KỲ") else: print("=> Cặp KHÔNG đồng liên kết. Nguy cơ tương quan giả mạo!")
💡
TỔNG KẾT BÀI HỌC: Sự kết hợp giữa Mean Reversion (kiếm tiền khi thị trường đi ngang) và Trend Following (kiếm tiền khi thị trường bùng nổ xu hướng lớn) là nền tảng tạo nên các quỹ Multi-Strategy bất khả chiến bại. Trong Phần 4, chúng ta sẽ bước lên nấc thang tiếp theo: Ứng dụng Machine Learning & AI trong việc lọc nhiễu tín hiệu bằng phương pháp Meta-Labeling của Marcos López de Prado và Học tăng cường Reinforcement Learning.
🤖

Biên Soạn: Học Viện Giao Dịch — Hàng Hóa Plus

Chuỗi bài giảng chuyên sâu về Quantitative & Algorithmic Trading được nghiên cứu và chuẩn hóa dựa trên các chuẩn mực kiến trúc tài chính định lượng quốc tế.