TreynorRatio | R Documentation |
The Treynor ratio is similar to the Sharpe Ratio, except it uses beta as the volatility measure (to divide the investment's excess return over the beta).
TreynorRatio(Ra, Rb, Rf = 0, scale = NA, modified = FALSE)
Ra |
an xts, vector, matrix, data frame, timeSeries or zoo object of asset returns |
Rb |
return vector of the benchmark asset |
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) |
modified |
a boolean to decide whether to return the Treynor ratio or Modified Treynor ratio |
To calculate modified Treynor ratio, we divide the numerator by the systematic risk instead of the beta.
Equation:
TreynorRatio = \frac{\overline{(R_{a}-R_{f})}}{\beta_{a,b}}
ModifiedTreynorRatio = \frac{r_p - r_f}{\sigma_s}
Peter Carl, Matthieu Lestel
https://en.wikipedia.org/wiki/Treynor_ratio, Carl Bacon, Practical portfolio performance measurement and attribution, second edition 2008 p.77
SharpeRatio
SortinoRatio
CAPM.beta
data(portfolio_bacon)
data(managers)
round(TreynorRatio(managers[,1], managers[,8], Rf=.035/12),4)
round(TreynorRatio(managers[,1], managers[,8], Rf = managers[,10]),4)
round(TreynorRatio(managers[,1:6], managers[,8], Rf=.035/12),4)
round(TreynorRatio(managers[,1:6], managers[,8], Rf = managers[,10]),4)
round(TreynorRatio(managers[,1:6], managers[,8:7], Rf=.035/12),4)
round(TreynorRatio(managers[,1:6], managers[,8:7], Rf = managers[,10]),4)
print(TreynorRatio(portfolio_bacon[,1], portfolio_bacon[,2], modified = TRUE)) #expected 0.7975
print(TreynorRatio(managers['2002',1], managers['2002',8], modified = TRUE))
print(TreynorRatio(managers['2002',1:5], managers['2002',8], modified = TRUE))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.