PerformanceAnalytics (version 1.1.0)

MSquared: M squared of the return distribution

Description

M squared is a risk adjusted return useful to judge the size of relative performance between differents portfolios. With it you can compare portfolios with different levels of risk.

Usage

MSquared(Ra, Rb, Rf = 0, ...)

Arguments

Ra
an xts, vector, matrix, data frame, timeSeries or zoo object of asset return
Rb
return vector of the benchmark asset
Rf
risk free rate, in same period as your returns
...
any other passthru parameters

Details

$$M^2 = r_P + SR * (\sigma_M - \sigma_P) = (r_P - r_F) * \frac{\sigma_M}{\sigma_P} + r_F$$

where $r_P$ is the portfolio return annualized, $\sigma_M$ is the market risk and $\sigma_P$ is the portfolio risk

References

Carl Bacon, Practical portfolio performance measurement and attribution, second edition 2008 p.67-68

Examples

Run this code
data(portfolio_bacon)
print(MSquared(portfolio_bacon[,1], portfolio_bacon[,2])) #expected 0.1068

data(managers)
print(MSquared(managers['1996',1], managers['1996',8]))
print(MSquared(managers['1996',1:5], managers['1996',8]))

Run the code above in your browser using DataLab