To calculate Mean absolute deviation we take the sum of the absolute value of the difference between the returns and the mean of the returns and we divide it by the number of returns.
MeanAbsoluteDeviation(R, ...)
R | an xts, vector, matrix, data frame, timeSeries or zoo object of asset returns |
---|---|
… | any other passthru parameters |
$$MeanAbsoluteDeviation = \frac{\sum^{n}_{i=1}\mid r_i - \overline{r}\mid}{n}$$
where \(n\) is the number of observations of the entire series, \(r_i\) is the return in month i and \(\overline{r}\) is the mean return
Carl Bacon, Practical portfolio performance measurement and attribution, second edition 2008 p.62
data(portfolio_bacon) print(MeanAbsoluteDeviation(portfolio_bacon[,1])) #expected 0.0310#> [1] 0.03108333data(managers) print(MeanAbsoluteDeviation(managers['1996']))#> HAM1 HAM2 HAM3 HAM4 HAM5 HAM6 #> Mean absolute deviation 0.0125375 0.031576 0.02229444 0.02540972 NaN NaN #> EDHEC LS EQ SP500 TR US 10Y TR US 3m TR #> Mean absolute deviation NaN 0.02225 0.01611653 0.00021print(MeanAbsoluteDeviation(managers['1996',1]))#> [1] 0.0125375