An average annualized return is convenient for comparing returns.

Return.annualized(R, scale = NA, geometric = TRUE)

Arguments

R

an xts, vector, matrix, data frame, timeSeries or zoo object of asset 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

Details

Annualized returns are useful for comparing two assets. To do so, you must scale your observations to an annual scale by raising the compound return to the number of periods in a year, and taking the root to the number of total observations: $$prod(1+R_{a})^{\frac{scale}{n}}-1=\sqrt[n]{prod(1+R_{a})^{scale}}-1$$

where scale is the number of periods in a year, and n is the total number of periods for which you have observations.

For simple returns (geometric=FALSE), the formula is:

$$\overline{R_{a}} \cdot scale$$

References

Bacon, Carl. Practical Portfolio Performance Measurement and Attribution. Wiley. 2004. p. 6

See also

Author

Peter Carl

Examples


data(managers)
Return.annualized(managers[,1,drop=FALSE])
#>                       HAM1
#> Annualized Return 0.137532
Return.annualized(managers[,1:8])
#>                       HAM1      HAM2      HAM3      HAM4       HAM5      HAM6
#> Annualized Return 0.137532 0.1746569 0.1512147 0.1214798 0.03731645 0.1372755
#>                   EDHEC LS EQ   SP500 TR
#> Annualized Return   0.1180134 0.09674533
Return.annualized(managers[,1:8],geometric=FALSE)
#>                        HAM1      HAM2      HAM3   HAM4       HAM5      HAM6
#> Annualized Return 0.1334727 0.1697184 0.1493636 0.1322 0.04905974 0.1326563
#>                   EDHEC LS EQ  SP500 TR
#> Annualized Return     0.11454 0.1039841