🧪 KHÓA HỌC KHOA HỌC ĐỊNH LƯỢNG (QUANT SCIENCE SERIES) BÀI 2 / 5
TOÁN HỌC TÀI CHÍNH THỰC CHIẾN

Khóa Học Quant Science (Phần 2): Toán Học Thị Trường Tài Chính — Hurst Exponent, Phổ Sóng FFT & Mô Hình Chế Độ Markov (HMM)

Sai lầm phổ biến nhất của các kỹ sư tài chính mới bước vào nghề là áp dụng một chiến lược giao dịch đồng nhất cho mọi thời điểm. Họ kiểm thử (backtest) một chỉ báo đường trung bình động (Moving Average) hay dao động (Oscillator) trên chuỗi dữ liệu 5 năm và vui mừng với tỷ suất Sharpe cao, nhưng khi đưa vào giao dịch thực tế (Live Execution), thuật toán nhanh chóng sụp đổ và chịu mức rút vốn (Drawdown) nặng nề.

Nguyên nhân sâu xa nằm ở chỗ: Thị trường tài chính không phải là một hệ thống tĩnh có phân phối chuẩn (Gaussian), mà là một thực thể động liên tục thay đổi trạng thái. Trong bài học thứ 2 của chuỗi Applied Quant Science, chúng ta sẽ trang bị 3 vũ khí toán học hiện đại được các quỹ đầu cơ hàng đầu khai thác: Chỉ số Hurst Exponent đo lường bộ nhớ chuỗi giá, Biến đổi Fourier Nhanh (FFT) bóc tách chu kỳ phổ sóng và Mô hình Trạng thái Ẩn Markov (Hidden Markov Models - HMM) phân định chế độ thị trường tự động.

1. Ảo Tưởng Phân Phối Chuẩn & Thực Tế Về Hiện Tượng "Đuôi Béo" (Fat Tails)

Lý thuyết tài chính truyền thống (như Mô hình Định giá Quyền chọn Black-Scholes hay Lý thuyết Danh mục Hiện đại Markowitz) dựa trên giả định rằng tỷ suất sinh lợi tuân theo Phân phối Chuẩn (Normal Distribution) hoặc Chuyển động Brown Hình học (GBM). Dưới giả định này, một biến cố lệch chuẩn 5-Sigma ($5\sigma$) chỉ xảy ra một lần trong mỗi 13.900 năm.

⚠️
CẢNH BÁO TỬ HUYỆT: Trong thực tế thị trường chứng khoán, dầu thô và tiền mã hóa, các cú sốc 5-Sigma, thậm chí 10-Sigma (như Ngày Thứ Hai Đen Tối 1987, Cú sụp LTCM 1998, Flash Crash 2010 hay Tháng 3/2020 Covid) diễn ra trung bình cứ mỗi 3 đến 5 năm một lần. Dữ liệu thực nghiệm luôn có Kurtosis > 3 (Leptokurtic - Đuôi béo nhọn) và Skewness < 0 (Độ lệch âm), đồng nghĩa xác suất sụp đổ bất ngờ cao gấp hàng nghìn lần so với lý thuyết sách vở.
THỐNG KÊ MÔ TẢ
Skewness < 0
Thị trường thường bò lên chậm rãi theo bậc thang nhưng lao dốc cực mạnh bằng thang máy khi hoảng loạn xảy ra.
HIỆN TƯỢNG ĐUÔI BÉO
Kurtosis > 3.0
Mức độ tập trung quanh đỉnh cao và hai đuôi rất dày. Rủi ro sụp đổ cực đoan (Tail Risk) luôn bị định giá thấp.
HỆ QUẢ THUẬT TOÁN
VaR Thất Bại
Mô hình Value-at-Risk (VaR) truyền thống sẽ đánh giá sai mức rủi ro tối đa, đẩy tài khoản vào tình trạng phá sản kỹ thuật.

2. Chỉ Số Hurst Exponent ($H$): Giải Mã Bản Chất Vận Động Của Giá

Chỉ số Hurst Exponent ($H \in [0, 1]$), được phát minh bởi nhà thủy văn học Harold Edwin Hurst và áp dụng vào tài chính bởi Benoit Mandelbrot, là công cụ định lượng xuất sắc để kiểm tra xem chuỗi giá của một tài sản có ký ức dài hạn (Long Memory) hay chỉ là nhiễu ngẫu nhiên.

Khoảng Giá Trị Hurst Bản Chất Vận Động Hành Vi Chuỗi Giá Chiến Lược Quant Khuyến Nghị
0.0 ≤ H < 0.45 Mean-Reverting (Phản chu kỳ) Giá đảo chiều liên tục về mức trung bình; một bước nhảy tăng thường kéo theo một bước nhảy giảm. Pairs Trading, Statistical Arbitrage, Larry Connors 3-Day Pullback, RSI / Bollinger Bands Reversal.
0.45 ≤ H ≤ 0.55 Random Walk (Ngẫu nhiên) Chuyển động Brown thuần túy; chuỗi dữ liệu không có ký ức, không thể dự báo hướng đi bằng giá quá khứ. Đứng ngoài hoặc áp dụng Market Making, delta-neutral hedging, không đuổi theo xu hướng.
0.55 < H ≤ 1.0 Trending / Persistent (Xu hướng dài) Tính bảo lưu xu hướng; một đợt tăng mạnh sẽ có xu hướng kéo dài thêm đà tăng tiếp theo. Trend Following, Dual Momentum, Donchian Channel Breakout, Volatility Squeeze Expansion.

Chỉ số Hurst được tính toán dựa trên phương pháp Phân tích Khoảng Tái Chuẩn Hóa (Rescaled Range Analysis - $R/S$ Analysis) qua phương trình:

(R/S)_n = c * n^H

Trong đó $R$ là khoảng biến thiên tích lũy, $S$ là độ lệch chuẩn của chuỗi thời gian nến và $n$ là độ dài khung thời gian quan sát. Bằng cách hồi quy $\log(R/S)$ theo $\log(n)$, hệ số góc của đường thẳng hồi quy chính là giá trị $H$.

3. Sơ Đồ Kiến Trúc: Bộ Lọc Toán Học Định Lượng Cho Algo Trading

Dưới đây là sơ đồ kiến trúc chuẩn hóa pipeline xử lý toán học: Chuỗi dữ liệu thô được đưa qua Bộ lọc Hurst để phân loại cấu trúc, song song phân tích phổ sóng FFT để trích xuất chu kỳ thống trị và đưa vào Mô hình Markov để xác nhận chế độ thị trường trước khi cấp phát vốn.

KIẾN TRÚC BỘ LỌC TOÁN HỌC QUANT SCIENCE (RULE-SAFE) Quy trình bóc tách chu kỳ phổ sóng FFT, tính toán Hurst và phân định chế độ thị trường HMM CHUỖI THỜI GIAN Dữ Liệu OHLCV Chuẩn Log Return từ Polars Engine HURST EXPONENT (H) Đo Lường Ký Ức Chuỗi Giá Mean Reversion vs Trend Bias BIẾN ĐỔI FOURIER (FFT) Bóc Tách Phổ Sóng Tần số chu kỳ thống trị (T) HIDDEN MARKOV MODELS (HMM) Phân Định 3 Chế Độ Thị Trường Thực Thời (GaussianHMM) Regime 0: Bullish μ > 0, Volatility Thấp Regime 1: Sideways μ ≈ 0, Dao động hộp Regime 2: Bear/Crisis μ < 0, Volatility Rất Cao

4. Phân Tích Phổ Sóng FFT: Tìm Kiếm Chu Kỳ Thống Trị (Dominant Frequency)

Thay vì thiết lập các đường trung bình động MA-20, MA-50, MA-200 theo thói quen trực giác, các nhà khoa học định lượng sử dụng Biến đổi Fourier Nhanh (FFT) để chuyển chuỗi dữ liệu từ miền thời gian (Time Domain) sang miền tần số (Frequency Domain).

Quá trình này bóc tách dữ liệu giá hỗn loạn thành tổng các hàm sin và cosin với các bước sóng khác nhau:

5. Mô Hình Trạng Thái Ẩn Markov (Hidden Markov Models)

Thị trường không bao giờ báo trước khi nó chuyển từ xu hướng tăng sang giằng co hay hoảng loạn. Chúng ta chỉ quan sát được lợi nhuận (returns) và biến động (volatility) của nến giá, trong khi chế độ ngầm định (Underlying State/Regime) của toàn bộ dòng tiền là biến số bị ẩn đi (Hidden Variable).

Mô hình Hidden Markov Models (HMM) dựa trên giả định rằng thị trường chuyển đổi giữa $K$ trạng thái khác nhau theo một ma trận xác suất chuyển trạng thái (Transition Matrix):

P = [ p_ij ], trong đó p_ij = P(S_t = j | S_{t-1} = i)

Bằng thuật toán Baum-Welch (một dạng của Expectation-Maximization) kết hợp giải thuật Viterbi, mô hình tự động tìm ra xác suất thị trường đang ở chế độ nào tại nến hiện tại mà không cần con người can thiệp cảm tính.

6. Triển Khai Code Python Thực Chiến

Dưới đây là mã nguồn Python hoàn chỉnh tính toán chỉ số Hurst Exponent, trích xuất sóng thống trị bằng SciPy FFT và huấn luyện mô hình GaussianHMM 3 trạng thái bằng `hmmlearn`:

import numpy as np import polars as pl from scipy.fft import rfft, rfftfreq from hmmlearn import hmm # 1. THUẬT TOÁN TÍNH HURST EXPONENT (RESCALED RANGE METHOD) def calculate_hurst_exponent(price_series: np.ndarray, max_lags: int = 100) -> float: """ Tính chỉ số Hurst Exponent (H) từ chuỗi giá đóng cửa H < 0.5: Mean Reversion | H = 0.5: Random Walk | H > 0.5: Trending Momentum """ lags = range(2, max_lags) tau = [] for lag in lags: # Tính độ lệch giữa giá hiện tại và giá trễ (lag) diff = price_series[lag:] - price_series[:-lag] tau.append(np.std(diff)) # Hồi quy log-log: log(tau) = H * log(lag) + const poly = np.polyfit(np.log(list(lags)), np.log(tau), deg=1) hurst_val = poly[0] * 2.0 # Hiệu chỉnh bậc 2 return float(np.clip(hurst_val, 0.0, 1.0)) # 2. BÓC TÁCH CHU KỲ PHỔ SÓNG THỐNG TRỊ BẰNG FFT def extract_dominant_cycle_fft(returns: np.ndarray, sampling_rate: float = 1.0) -> int: """ Chuyển đổi chuỗi log returns sang miền tần số bằng Fast Fourier Transform Xác định độ dài chu kỳ thống trị (ngày) """ n = len(returns) yf = np.abs(rfft(returns)) xf = rfftfreq(n, d=1.0 / sampling_rate) # Bỏ qua tần số DC (tần số 0) yf[0] = 0 dominant_freq_idx = np.argmax(yf) dominant_frequency = xf[dominant_freq_idx] if dominant_frequency > 0: dominant_cycle_bars = int(round(1.0 / dominant_frequency)) else: dominant_cycle_bars = 20 # Mặc định chu kỳ tháng return dominant_cycle_bars # 3. MÔ HÌNH PHÂN ĐỊNH CHẾ ĐỘ THỊ TRƯỜNG GAUSSIAN HMM def train_market_regime_hmm(returns: np.ndarray, n_states: int = 3): """ Huấn luyện Hidden Markov Model 3 trạng thái: - 0: Uptrend (Tăng trưởng ổn định) - 1: Choppy (Sideways, nhiễu cao) - 2: Bear / Crash (Lao dốc, biến động cực đoan) """ X = returns.reshape(-1, 1) model = hmm.GaussianHMM( n_components=n_states, covariance_type="full", n_iter=100, random_state=42 ) model.fit(X) hidden_states = model.predict(X) print("Ma Trận Xác Suất Chuyển Trạng Thái (Transition Matrix):") print(np.round(model.transmat_, 3)) return model, hidden_states
💡
TỔNG KẾT BÀI HỌC: Nắm vững tính chất của chuỗi giá thông qua Hurst Exponent, bóc tách chu kỳ FFT và nhận diện chế độ HMM là nền móng để bạn không bao giờ áp dụng sai chiến lược vào sai hoàn cảnh thị trường. Trong Phần 3, chúng ta sẽ bắt tay xây dựng danh mục Dollar-Neutral Long/Short Equity, loại bỏ rủi ro thị trường chung ($\beta \approx 0$) và ứng dụng Anomaly Detection khai thác bất thường dòng tiền của các định chế lớn.
🧪

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

Chuỗi bài giảng Applied Quant Science được nghiên cứu và phát triển dựa trên hệ sinh thái Sunday Quant Scientist (OpenBB, Polars, PyTimeTK, Riskfolio-Lib).