TreynorRatio {PerformanceAnalytics} | R Documentation |
calculate Treynor Ratio or modified Treynor Ratio of excess return over CAPM beta
Description
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).
Usage
TreynorRatio(Ra, Rb, Rf = 0, scale = NA, modified = FALSE)
Arguments
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 |
Details
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}
Author(s)
Peter Carl, Matthieu Lestel
References
http://en.wikipedia.org/wiki/Treynor_ratio, Carl Bacon, Practical portfolio performance measurement and attribution, second edition 2008 p.77
See Also
SharpeRatio
SortinoRatio
CAPM.beta
Examples
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['1996',1], managers['1996',8], modified = TRUE))
print(TreynorRatio(managers['1996',1:5], managers['1996',8], modified = TRUE))