Learn R Programming

PerformanceAnalytics (version 0.9.5)

SharpeRatio.modified: calculate a modified Sharpe Ratio of Return/modVaR

Description

The Sharpe ratio is simply the return per unit of risk (represented by variability). The higher the Sharpe ratio, the better the combined performance of "risk" and return.

The Sharpe Ratio is a risk-adjusted measure of return that uses standard deviation to represent risk.

A number of papers now recommend using a "modified Sharpe" ratio using a Modified Cornish-Fisher VaR as the measure of Risk.

Usage

SharpeRatio.modified(Ra, rf = 0, p = 0.95, scale = 1)

Arguments

Ra
a vector, matrix, data frame, timeSeries or zoo object of asset returns
rf
risk free rate, in same period as your returns
p
confidence level for calculation, default p=.99
scale
number of periods in a year (daily scale = 252, monthly scale = 12, quarterly scale = 4)

Value

  • This function returns a modified Sharpe ratio for the same periodicity of the data being input (e.g., monthly data -> monthly SR)

Details

$$modSharpe=\frac{\overline{(R_{a}-R_{f})}}{modVaR_{R_{a},p}}$$

or for an annualized measure:

$$modSharpe=\frac{\sqrt[n]{prod(1+(R_{a}-R_{f}))^{scale}}-1}{\sqrt{scale}\cdot modVaR_{R_{a},p}}$$

References

Laurent Favre and Jose-Antonio Galeano. Mean-Modified Value-at-Risk Optimization with Hedge Funds. Journal of Alternative Investment, Fall 2002, v 5.

See Also

VaR.CornishFisher SharpeRatio

Examples

Run this code
data(edhec)
head(edhec[, 6, drop = FALSE])
edhec.length = dim(edhec)[1]
start = rownames(edhec[1,])
start
end = rownames(edhec[edhec.length,])
rf = download.RiskFree(start=start, end=end)

SharpeRatio.modified(edhec[, 6, drop = FALSE])
SharpeRatio.modified(edhec[, 6, drop = FALSE], rf = .04/12)
SharpeRatio.modified(edhec[, 6, drop = FALSE], rf = rf)

Run the code above in your browser using DataLab