The Sharpe Ratio is a risk-adjusted measure of return that uses standard deviation to represent risk.
SharpeRatio.annualized(R, Rf = 0, scale = NA, geometric = TRUE)
R | an xts, vector, matrix, data frame, timeSeries or zoo object of asset returns |
---|---|
Rf | risk free rate, in same period as your returns |
scale | number of periods in a year (daily scale = 252, monthly scale = 12, quarterly scale = 4) |
geometric | utilize geometric chaining (TRUE) or simple/arithmetic chaining (FALSE) to aggregate returns, default TRUE |
The Sharpe ratio is simply the return per unit of risk (represented by variance). The higher the Sharpe ratio, the better the combined performance of "risk" and return.
This function annualizes the number based on the scale parameter. $$\frac{\sqrt[n]{prod(1+R_{a})^{scale}}-1}{\sqrt{scale}\cdot\sqrt{\sigma}}$$
Using an annualized Sharpe Ratio is useful for comparison of multiple return streams. The annualized Sharpe ratio is computed by dividing the annualized mean monthly excess return by the annualized monthly standard deviation of excess return.
William Sharpe now recommends Information Ratio preferentially to the original Sharpe Ratio.
Sharpe, W.F. The Sharpe Ratio,Journal of Portfolio Management,Fall 1994, 49-58.
SharpeRatio
InformationRatio
TrackingError
ActivePremium
SortinoRatio
data(managers) SharpeRatio.annualized(managers[,1,drop=FALSE], Rf=.035/12)#> HAM1 #> Annualized Sharpe Ratio (Rf=3.5%) 1.112293SharpeRatio.annualized(managers[,1,drop=FALSE], Rf = managers[,10,drop=FALSE])#> HAM1 #> Annualized Sharpe Ratio (Rf=3.9%) 1.066795SharpeRatio.annualized(managers[,1:6], Rf=.035/12)#> HAM1 HAM2 HAM3 HAM4 #> Annualized Sharpe Ratio (Rf=3.5%) 1.112293 1.059085 0.8854393 0.4512555 #> HAM5 HAM6 #> Annualized Sharpe Ratio (Rf=3.5%) 0.01046591 1.194146SharpeRatio.annualized(managers[,1:6], Rf = managers[,10,drop=FALSE])#> HAM1 HAM2 HAM3 HAM4 #> Annualized Sharpe Ratio (Rf=3.9%) 1.066795 1.033019 0.8539722 0.4292173 #> HAM5 HAM6 #> Annualized Sharpe Ratio (Rf=3.9%) 0.04441162 1.333868SharpeRatio.annualized(managers[,1:6], Rf = managers[,10,drop=FALSE],geometric=FALSE)#> HAM1 HAM2 HAM3 HAM4 #> Annualized Sharpe Ratio (Rf=3.9%) 1.067297 1.035284 0.8747901 0.5072777 #> HAM5 HAM6 #> Annualized Sharpe Ratio (Rf=3.9%) 0.1228211 1.311291