Creates a table of estimates of downside risk measures for comparison across multiple instruments or funds.

table.DownsideRisk(R, ci = 0.95, scale = NA, Rf = 0, MAR = 0.1/12,
  p = 0.95, digits = 4)

Arguments

R

an xts, vector, matrix, data frame, timeSeries or zoo object of asset returns

ci

confidence interval, defaults to 95%

scale

number of periods in a year (daily scale = 252, monthly scale = 12, quarterly scale = 4)

Rf

risk free rate, in same period as your returns

MAR

Minimum Acceptable Return, in the same periodicity as your returns

p

confidence level for calculation, default p=.99

digits

number of digits to round results to

See also

DownsideDeviation maxDrawdown VaR ES

Examples

data(edhec) table.DownsideRisk(edhec, Rf=.04/12, MAR =.05/12, p=.95)
#> Convertible Arbitrage CTA Global #> Semi Deviation 0.0167 0.0173 #> Gain Deviation 0.0104 0.0169 #> Loss Deviation 0.0256 0.0135 #> Downside Deviation (MAR=5%) 0.0159 0.0159 #> Downside Deviation (Rf=4%) 0.0157 0.0155 #> Downside Deviation (0%) 0.0147 0.0137 #> Maximum Drawdown 0.2927 0.1168 #> Historical VaR (95%) -0.0192 -0.0354 #> Historical ES (95%) -0.0488 -0.0453 #> Modified VaR (95%) -0.0325 -0.0338 #> Modified ES (95%) -0.0995 -0.0428 #> Distressed Securities Emerging Markets #> Semi Deviation 0.0148 0.0304 #> Gain Deviation 0.0104 0.0208 #> Loss Deviation 0.0193 0.0340 #> Downside Deviation (MAR=5%) 0.0133 0.0287 #> Downside Deviation (Rf=4%) 0.0130 0.0283 #> Downside Deviation (0%) 0.0119 0.0269 #> Maximum Drawdown 0.2292 0.3598 #> Historical VaR (95%) -0.0189 -0.0446 #> Historical ES (95%) -0.0427 -0.0892 #> Modified VaR (95%) -0.0275 -0.0636 #> Modified ES (95%) -0.0609 -0.1279 #> Equity Market Neutral Event Driven #> Semi Deviation 0.0074 0.0149 #> Gain Deviation 0.0053 0.0098 #> Loss Deviation 0.0135 0.0191 #> Downside Deviation (MAR=5%) 0.0068 0.0135 #> Downside Deviation (Rf=4%) 0.0065 0.0132 #> Downside Deviation (0%) 0.0057 0.0121 #> Maximum Drawdown 0.1108 0.2008 #> Historical VaR (95%) -0.0064 -0.0225 #> Historical ES (95%) -0.0188 -0.0443 #> Modified VaR (95%) -0.0113 -0.0281 #> Modified ES (95%) -0.0429 -0.0591 #> Fixed Income Arbitrage Global Macro #> Semi Deviation 0.0127 0.0108 #> Gain Deviation 0.0056 0.0139 #> Loss Deviation 0.0231 0.0075 #> Downside Deviation (MAR=5%) 0.0126 0.0089 #> Downside Deviation (Rf=4%) 0.0124 0.0084 #> Downside Deviation (0%) 0.0116 0.0068 #> Maximum Drawdown 0.1788 0.0792 #> Historical VaR (95%) -0.0093 -0.0162 #> Historical ES (95%) -0.0423 -0.0230 #> Modified VaR (95%) -0.0247 -0.0155 #> Modified ES (95%) -0.0595 -0.0198 #> Long/Short Equity Merger Arbitrage Relative Value #> Semi Deviation 0.0164 0.0091 0.0110 #> Gain Deviation 0.0139 0.0064 0.0070 #> Loss Deviation 0.0152 0.0120 0.0159 #> Downside Deviation (MAR=5%) 0.0147 0.0080 0.0100 #> Downside Deviation (Rf=4%) 0.0143 0.0077 0.0097 #> Downside Deviation (0%) 0.0128 0.0067 0.0087 #> Maximum Drawdown 0.2182 0.0563 0.1594 #> Historical VaR (95%) -0.0254 -0.0135 -0.0132 #> Historical ES (95%) -0.0440 -0.0246 -0.0311 #> Modified VaR (95%) -0.0304 -0.0149 -0.0193 #> Modified ES (95%) -0.0471 -0.0333 -0.0489 #> Short Selling Funds of Funds #> Semi Deviation 0.0365 0.0134 #> Gain Deviation 0.0418 0.0122 #> Loss Deviation 0.0321 0.0146 #> Downside Deviation (MAR=5%) 0.0365 0.0126 #> Downside Deviation (Rf=4%) 0.0360 0.0122 #> Downside Deviation (0%) 0.0342 0.0109 #> Maximum Drawdown 0.4956 0.2059 #> Historical VaR (95%) -0.0785 -0.0213 #> Historical ES (95%) -0.1106 -0.0390 #> Modified VaR (95%) -0.0743 -0.0250 #> Modified ES (95%) -0.0902 -0.0462
result=t(table.DownsideRisk(edhec, Rf=.04/12, MAR =.05/12, p=.95)) require("Hmisc")
#> Loading required package: Hmisc
#> Warning: there is no package called ‘Hmisc’
textplot(format.df(result, na.blank=TRUE, numeric.dollar=FALSE, cdec=rep(3,dim(result)[2])), rmar = 0.8, cmar = 1.5, max.cex=.9, halign = "center", valign = "top", row.valign="center", wrap.rownames=15, wrap.colnames=10, mar = c(0,0,3,0)+0.1)
#> Error in format.df(result, na.blank = TRUE, numeric.dollar = FALSE, cdec = rep(3, dim(result)[2])): could not find function "format.df"
title(main="Downside Risk Statistics")
#> Error in title(main = "Downside Risk Statistics"): plot.new has not been called yet