Phân tích: Tỷ lệ Sortino

Định nghĩa:

Tỷ lệ Sortino là phiên bản sửa đổi của Tỷ lệ Sharpe do Frank Sortino phát triển. Không giống như Tỷ lệ Sharpe, tỷ lệ Sortino bỏ qua biến động tích cực, chỉ tập trung vào các đợt rút tiền nguy hiểm cho nhà đầu tư.

Diễn giải:

Tỷ lệ Sortino cho thấy mức lợi nhuận bù đắp cho rủi ro tốt như thế nào. Giá trị cuối cùng trực tiếp chỉ ra có bao nhiêu phần trăm lợi nhuận tương ứng với 1% độ lệch giảm.

Giá trị mục tiêu được chấp nhận chung của chỉ báo là ≥ 2, nhưng tỷ lệ với chuẩn mực và tình hình thị trường luôn phải được tính đến.

Ví dụ:

Danh mục đầu tư:

  • Tỷ lệ không rủi ro (RFR) = 2%
  • 2025-01-01 tiền gửi 1000
  • 2025-03-03 mua NASDAQ:AAPL (số lượng: 1, giá: 190, hoa hồng: 0)
  • 2025-04-11 ngày tính toán Tỷ lệ Sortino. Giá cuối cùng của AAPL = 198,15

Danh mục tỷ lệ Sortino 0,047%:

  • Rủi ro giảm giá được bù đắp kém bằng lợi nhuận
  • Mỗi phần trăm độ lệch giảm giá được chấp nhận chỉ mang lại 0,047% lợi nhuận vượt mức

Tỷ lệ chuẩn Sortino -0,817%:

  • Với mỗi phần trăm đơn vị độ lệch giảm giá, danh mục đầu tư mất 0,817% lợi nhuận so với tỷ lệ không rủi ro

Lưu ý: Cần cân nhắc bản chất ngắn hạn của giai đoạn quan sát, để đơn giản hóa phép tính toán.

Tính toán:

Tỷ lệ Sortino = (Rp − RFR) / DD

  • Rp (Lợi nhuận của danh mục đầu tư) — hiệu suất danh mục đầu tư theo phần trăm, được tính hàng tháng cho giai đoạn này bằng phương pháp TWR
  • RFR (Tỷ lệ không rủi ro) — được lấy từ cài đặt danh mục đầu tư. Vì tỷ lệ hàng năm được thiết lập trong cài đặt, nên phải chuyển đổi sang tỷ lệ cho kỳ trước khi tính toán
  • DD (Độ lệch giảm) — độ lệch chuẩn giữa các giá trị hiệu suất âm cho kỳ

Ví dụ về phép tính Tỷ lệ Sortino từ diễn giải:

  1. Tính toán RFR hàng tháng: 2 / 12 = 0,167%
  2. Tính toán Rp:

Hiệu suất theo kỳ:

  1. Tháng 1: 0
  2. Tháng 2: 0
  3. Tháng 3: 3,2% (thu được: pv vào ngày 31 tháng 3 → ((1032,13 − 1000) / 1000) * 100 )
  4. Tháng 4: −2,3% (thu được: ((1008,15 − 1032,13) / 1032,13) * 100 )Rp = (0 + 0 + 3,2 − 2,3) / 4 = 0,225

3. Tính toán DD:

  1. Tháng 1: min(0, 0 − 0,167)² = 0,0279
  2. Tháng 2: min(0, 0 − 0,167)² = 0,0279
  3. Tháng 3: min(0, 3,2 − 0,167)² = 0
  4. Tháng 4: min(0, −2,3 − 0,167)² = 6,1009

DD = ((0,0279 + 0,0279 + 0 + 6,1009) / 4)^(1/2) = 1,24%

4. Tính toán tỷ lệ Sortino:

SR = (Rp − RFR) / DD = (0,225% − 0,167%) / 1,24% ≈ 0,047%

Tham khảo trong Pine:

//@version=6
indicator("Sortino ratio example")
method downsideDeviation(array<float> returns, series float targetReturn) =>
float sum = 0.0
for r in returns
if r >= targetReturn
continue
sum += math.pow(r - targetReturn, 2)
sum /= returns.size()
float result = math.sqrt(sum)

method sortinoRatio(array<float> returnsArray, series float annualBenchmark) =>
var int numberOfperiods = 12
if barstate.islast
float fixedPeriodReturn = annualBenchmark / numberOfperiods
float downsideDev = returnsArray.downsideDeviation(fixedPeriodReturn)
float avgReturn = returnsArray.avg()
float result = (avgReturn - fixedPeriodReturn) / downsideDev

array<float> arr = array.from(0, 0, 3.2, -2.3)
float sortino = sortinoRatio(arr, 2)
plot(sortino, precision = 3)

Lưu ý:

Nếu tất cả các giao dịch được thực hiện trong tháng hiện tại so với ngày tính toán của chỉ báo, thì chỉ báo sẽ không được tính toán, vì không hoàn thiện tháng lịch nào.

Đường liên kết: