Sharpe Ratio là gì? Công thức, ý nghĩa và cách áp dụng cho VN30
Sharpe Ratio đo hiệu suất điều chỉnh rủi ro của danh mục. Công thức, cách tính bằng Python, khoảng giá trị tốt-xấu, và 4 trường hợp Sharpe gây hiểu lầm khi đánh giá chiến lược.
Sharpe Ratio (SR) — do William F. Sharpe đề xuất năm 1966 — là thước đo lợi nhuận điều chỉnh rủi ro phổ biến nhất trong tài chính định lượng. Nó trả lời câu hỏi: “1 đơn vị rủi ro của danh mục đem lại bao nhiêu lợi nhuận vượt lãi suất phi rủi ro?”.
Công thức đơn giản nhưng cực kỳ dễ bị lạm dụng. Sharpe cao không có nghĩa chiến lược tốt — nó có thể là kết quả của survivorship bias, look-ahead bias, hoặc đơn giản là chiến lược chỉ chạy trong 1 regime favorable. Bài viết này giải thích đúng cách dùng + 4 trường hợp Sharpe gây hiểu lầm.
1. Định nghĩa & công thức
Định nghĩa cổ điển: $$ SR = \frac{E[R_p] - R_f}{\sigma_p} $$
Trong đó:
- $E[R_p]$ = kỳ vọng lợi nhuận danh mục (annualized)
- $R_f$ = lãi suất phi rủi ro (VN: thường dùng lãi suất trái phiếu chính phủ 10 năm hoặc lãi gửi tiết kiệm 12 tháng)
- $\sigma_p$ = độ lệch chuẩn lợi nhuận danh mục (annualized)
Annualization từ daily returns: $SR_{annual} = SR_{daily} \cdot \sqrt{252}$ (252 phiên giao dịch/năm tại VN).
2. Cách tính bằng Python
import numpy as np
def sharpe_ratio(returns, risk_free=0.05, periods_per_year=252):
"""
returns: array lợi nhuận hàng phiên (decimal, vd 0.01 = +1%)
risk_free: lãi suất phi rủi ro annual (vd 0.05 = 5%)
periods_per_year: 252 cho daily VN, 12 cho monthly
"""
excess = returns - risk_free / periods_per_year
mean_excess = np.mean(excess) * periods_per_year
vol = np.std(returns, ddof=1) * np.sqrt(periods_per_year)
return mean_excess / vol if vol > 0 else np.nan
Code mẫu trên là khung tham khảo cho việc tự tính Tỷ số Sharpe. Khi tích hợp vào hệ thống production, cần thêm: validate input (NaN, length), handle edge cases (zero variance, empty series), unit test cho từng nhánh, và caching khi gọi nhiều lần trên cùng dataset.
3. Khoảng giá trị & cách diễn giải
| Sharpe | Đánh giá | Ghi chú thực tế |
|---|---|---|
| < 0 | Tệ | Lỗ ngay cả so với lãi suất phi rủi ro |
| 0 – 0.5 | Yếu | Phần thưởng không xứng rủi ro |
| 0.5 – 1.0 | Trung bình | Điển hình của Buy & Hold cổ phiếu dài hạn |
| 1.0 – 2.0 | Tốt | Chiến lược active có giá trị |
| 2.0 – 3.0 | Rất tốt | Cần kiểm tra overfit |
| > 3.0 | Đáng nghi | Thường là backtest bias hoặc data leak |
4. Giá trị điển hình theo loại tài sản / chiến lược
| Tài sản / Chiến lược | Sharpe điển hình (annual) |
|---|---|
| Trái phiếu chính phủ VN 10Y | 0.3 – 0.5 |
| Buy & Hold VN-Index 2010-2024 | 0.4 – 0.7 |
| Quỹ active VN tốt | 0.7 – 1.2 |
| Chiến lược định lượng equity (live) | 1.0 – 2.0 |
| HFT / market making | 3.0 – 8.0+ |
| Backtest “quá đẹp” | thường > 3 → nghi vấn |
Lưu ý: bảng giá trị điển hình mang tính tham khảo, dựa trên quy ước cộng đồng quant và sample lịch sử công khai. Giá trị thực tế phụ thuộc dataset, period, và phương pháp tính cụ thể.
5. Bốn cạm bẫy phổ biến khi sử dụng
-
Phân phối không gaussian: Sharpe giả định returns phân phối chuẩn. Trên VN, returns có fat tail và skewness âm — Sharpe over-state hiệu năng chiến lược short-vol.
-
Survivorship bias: backtest VN30 hiện tại có Sharpe cao hơn thực tế ~0.2-0.3 vì bỏ qua các mã từng trong index rồi bị loại.
-
Lookback period quá ngắn: Sharpe tính trên 1 năm không có ý nghĩa thống kê. Tối thiểu 3 năm, lý tưởng ≥ 5 năm phủ ≥ 1 chu kỳ thị trường.
-
Auto-correlated returns: chiến lược với returns serially correlated (mean reversion daily) sẽ inflate Sharpe nếu không adjust theo Lo (2002) formula.
6. Khi nào chỉ số này gây hiểu lầm
Sharpe gây hiểu lầm khi: chiến lược có (1) skewness âm mạnh — bán insurance, short volatility, picking up nickels in front of steamroller — Sharpe đẹp cho tới khi tail event xảy ra; (2) leverage cao che giấu tail risk; (3) returns tổng hợp từ nhiều regime khác nhau, Sharpe trung bình che dấu performance trong regime xấu nhất. Nên báo cáo Sharpe theo từng năm + worst-year Sharpe để đánh giá robust hơn.
7. Đặc thù khi áp dụng cho TTCK Việt Nam
Tại Việt Nam, $R_f$ nên dùng lãi suất trái phiếu chính phủ 10 năm (dao động 2.5%-4.5%/năm 2020-2025) hoặc lãi gửi tiết kiệm 12 tháng. Không dùng lãi suất USD T-bill như tài liệu Mỹ — sẽ over-state Sharpe. Báo cáo Sharpe theo cả 2 cơ sở (tiền VND vs tiền USD) nếu chiến lược trade chéo currency.
8. Các chỉ số liên quan trong cùng hệ thống
Tỷ số Sharpe (SR) không nên đọc đơn lẻ. Trong báo cáo rủi ro chuyên nghiệp, nó luôn được trình bày cùng các chỉ số bổ sung để cross-check và tránh blindspot. Các chỉ số liên quan đã trình bày trong chuỗi bài này:
9. Tham khảo học thuật
-
Sharpe, W. F. (1966). Mutual Fund Performance. Journal of Business, 39(1).
-
Sharpe, W. F. (1994). The Sharpe Ratio. Journal of Portfolio Management, 21(1).
-
Lo, A. W. (2002). The Statistics of Sharpe Ratios. Financial Analysts Journal.
10. Câu hỏi thường gặp
Tỷ số Sharpe bao nhiêu là tốt? Tham khảo bảng diễn giải ở mục 3. Không có ngưỡng “tốt tuyệt đối” — phụ thuộc loại chiến lược, sample size, và benchmark tham chiếu.
Làm sao tự tính Tỷ số Sharpe trên danh mục cá nhân? Sử dụng code Python mẫu ở mục 2. Input cần thiết: chuỗi returns hàng phiên (daily) của danh mục, tối thiểu 252 phiên (1 năm) để có ý nghĩa thống kê.
Tỷ số Sharpe có khác giữa thị trường VN và quốc tế không? Có. Đặc thù VN (biên độ ±7% HOSE, T+2.5, cấm short cơ sở) ảnh hưởng đến cách tính và diễn giải. Chi tiết ở mục 7.
Ghi chú phương pháp: Bài viết tổng hợp định nghĩa, công thức, và quy ước cộng đồng quant cho chỉ số Tỷ số Sharpe (SR). Các giá trị điển hình mang tính tham khảo, không phải khuyến nghị đầu tư. Người đọc tự kiểm chứng trên dữ liệu của mình trước khi sử dụng cho quyết định vốn thật.
Miễn trừ trách nhiệm: Nội dung mang tính phân tích định lượng, không phải khuyến nghị đầu tư. Nhà đầu tư tự chịu trách nhiệm với quyết định của mình.
Áp dụng vào tài khoản thật?
Mở tài khoản chứng khoán qua mã giới thiệu — nhận tư vấn 1-1, DIAMOND signal VN30 miễn phí 6 tháng, ưu đãi phí giao dịch.
CTCK VPS Securities
- Mã IB: 9836 (mở online 15 phút)
- Phí 0.15% · margin 13%/năm
- + DIAMOND signal VN30 — 6 tháng
- + Tư vấn cơ cấu danh mục 1-1
Gói VIP / DIAMOND
- Tín hiệu VN30 + Midcap hằng phiên
- Backtest 5-15 năm minh bạch
- Báo cáo NAV hằng tháng
- Workshop định lượng hằng tháng
⚠️ Giao dịch chứng khoán có rủi ro mất vốn. Chỉ đầu tư số tiền bạn có thể chịu mất. P.Thai Capital không khuyến nghị mua/bán cụ thể và không bảo lãnh lợi nhuận.
Lý thuyết bài này có thể test trên dữ liệu của bạn:
P.Thai Capital