Analiza: Wskaźnik Sharpe’a

Definicja :

Wskaźnik Sharpe’a, opracowany przez laureata Nagrody Nobla Williama Sharpe’a w 1966 roku, mierzy efektywność inwestycji z uwzględnieniem ryzyka. Pokazuje, ile dodatkowego zysku (ponad stopę wolną od ryzyka) generuje portfel na każdą jednostkę podjętego ryzyka (zmienności). 

Interpretacja :

Porównując wartości benchmarku i portfela, należy zrozumieć, że analizujemy poziom ryzyka. Im bliżej zera, tym mniej zwrot rekompensuje poniesione ryzyko. 

Przykład :

Portfel :

  • Stopa wolna od ryzyka (RFR) = 2% 
  • 2025-01-01 wpłata 1000
  • 2025-03-03 zakup  NASDAQ:AAPL (ilość: 1, cena: 190, prowizja: 0) 
  • 2025-04-11 data obliczenia wskaźnika Sharpe’a. Ostatnia cena AAPL = 198,15 

Sharpe ratio portfela = 0,029%: 

  • Zysk ledwo przekroczył stopę wolną od ryzyka (2% w skali roku) 
  • Zwrot ledwo rekompensuje ryzyko 

Sharpe ratio benchmarku = −1,396%: 

  • Ujemny zwrot. Nieakceptowalny poziom ryzyka 

Uwaga: Należy uwzględnić krótkoterminowy charakter analizowanego okresu, wybranego w celu uproszczenia obliczeń. 

Ogólnie przyjmuje się, że wartość Sharpe'a powyżej 1 jest uznawana za optymalną — oznacza to, że ryzyko jest uzasadnione zwrotem. 
Można posłużyć się standardową interpretacją lub porównać wskaźnik Sharpe’a portfela z benchmarkiem. 

Obliczenia :

Sharpe Ratio = (Rp − RFR) / SD

  • Rp (Return of portfolio) — stopa zwrotu portfela w %, liczona miesięcznie metodą TWR

  • RFR (Risk Free Rate) — stopa wolna od ryzyka (pobrana z ustawień portfela); wartość roczną należy przeliczyć na miesięczną przed obliczeniem
  • SD (standard deviation of portfolio returns) — odchylenie standardowe stóp zwrotu portfela w danym okresie

Przykład obliczenia wskaźnika Sharpe’a: 

  1. Miesięczna RFR:  2 / 12 = 0.167%
  2. Obliczenie RpŚrednia stopa zwrotu portfela:
    1. Styczeń : 0
    2. Luty : 0
    3. Marzec: 3,2% (obliczone: ((1032,13 − 1000) / 1000) × 100) 
    4. Kwiecień: −2,3% (obliczone: ((1008,15 − 1032,13) / 1032,13) × 100 

Rp = (0 + 0 + 3.2 − 2.3) / 4 = 0.225

  1. Obliczenie SD 

Kwadraty odchyleń od średniej: 

  1. Styczeń: (0 − 0,225)² = 0,05 
  2. Luty : (0 − 0.225)² = 0.05
  3. Marzec : (3.2 − 0.225)² = 8.85
  4. Kwiecień : (−2.3 − 0.225)² = 6.37

Wariancja : (0.05 + 0.05 + 8.85 + 6.37) / 4 = 3.83

SD: √3.83 = 1.957%

Obliczenie Sharpe Ratio: SR = (Rp − RFR) / SD = (0.225 − 0.167) / 1.957 = 0.029%

Pine Script (referencja) 

//@version=6
indicator("Sharpe Ratio example")
sharpeRatio( array<float> returnsArray, series float annualBenchmark) =>
    numberOfperiods = 12
    if barstate.islast
        float fixedPeriodReturn = annualBenchmark / numberOfperiods
        float standardDev       = returnsArray.stdev()
        float avgReturn         = returnsArray.avg()
        float result            = (avgReturn - fixedPeriodReturn) / standardDev
    
array<float> arr = array.from(0,0,3.2, -2.3)
float sharpe = sharpeRatio(arr,2)
plot(sharpe, precision = 3)

Uwaga :

Jeśli wszystkie transakcje zostały dokonane w bieżącym miesiącu względem daty obliczenia wskaźnika Sharpe’a, wskaźnik nie zostanie obliczony — ponieważ nie ma jeszcze zakończonego miesiąca kalendarzowego. 

Linki :