Learn R Programming

PerformanceAnalytics (version 1.4.3541)

Return.annualized.excess: calculates an annualized excess return for comparing instruments with different length history

Description

An average annualized excess return is convenient for comparing excess returns.

Usage

Return.annualized.excess(Rp, Rb, scale = NA, geometric = TRUE)

Arguments

Rp
an xts, vector, matrix, data frame, timeSeries or zoo object of portfolio returns
Rb
an xts, vector, matrix, data frame, timeSeries or zoo object of benchmark returns
scale
number of periods in a year (daily scale = 252, monthly scale = 12, quarterly scale = 4)
geometric
generate geometric (TRUE) or simple (FALSE) excess 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.

Finally having annualized returns for portfolio and benchmark we can compute annualized excess return as difference in the annualized portfolio and benchmark returns in the arithmetic case: $$er = R_{pa} - R_{ba}$$

and as a geometric difference in the geometric case: $$er = \frac{(1 + R_{pa})}{(1 + R_{ba})} - 1$$

References

Bacon, Carl. Practical Portfolio Performance Measurement and Attribution. Wiley. 2004. p. 206-207

See Also

Return.annualized,

Examples

Run this code
data(managers)
Return.annualized.excess(Rp = managers[,1], Rb = managers[,8])

Run the code above in your browser using DataLab