使用<{p>}的PerformanceAnalytics.pdf
中的示例
SharpeRatio(edhec, Rf = 0, FUN="VaR" , method="modified")
基于(我假设)一个等权重投资组合假设,我得到每单位(VaR)
风险的回报,
但是当我尝试添加权重时:
weights <- rep(1/13,13)
SharpeRatio(edhec, Rf = 0, FUN="VaR" , method="modified", portfolio_method="component",weights = weights)
我收到错误:
"Error in match.fun(FUNCT)(R, Rf = Rf, p = p, weights = weights, portfolio_method = "single", :
formal argument "portfolio_method" matched by multiple actual arguments"
是否有人知道如何(形式)扩展SharpeRatio
功能以合并投资组合权重?
答案 0 :(得分:0)
看来SharpeRatio在给定组件和权重的情况下难以创建投资组合。解决方案是为SharpeRatio提供加权投资组合。如果投资组合是每个时间点的组件的加权组合(看起来是SharpeRatio将计算的),您可以使用
Rf <- 0
SharpeRatio((zoo(edhec) -Rf) %*% weights, FUN="VaR", method="modified")
其中edhec首先转换为动物园时间序列以允许权重计算。 对于可能具有更逼真的时间依赖性的投资组合,您可以首先计算投资组合,例如,每季度重新平衡,然后使用SharpeRatio
port <- Return.portfolio(edhec, weights, rebalance_on = "quarters")
SharpeRatio(port, Rf=Rf, FUN = "VaR", method="modified")