如何修改PerformanceAnalytics包中的drawdown函数以获取值

时间:2015-06-25 20:28:42

标签: r performanceanalytics

我正在计算PnL数据系列中的平均缩减,平均长度,恢复长度等,而不是返回数据。这是像这样的数据框

            PNL
2008-11-03  3941434
2008-11-04  4494446
2008-11-05  2829608
2008-11-06  2272070
2008-11-07 -2734941
2008-11-10 -2513580

我使用了fTrading包中的maxDrawDown函数并且它工作正常。我怎么能得到其他的缩编功能?如果我直接运行AverageDrawdown(quantbook)函数,它将发出如下错误消息

Error in if (thisSign == priorSign) { : missing value where TRUE/FALSE needed  

我查看了AverageDrawdown的文档,如下所示:

findDrawdowns(R, geometric = TRUE, ...)

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

我的quantbook是一个数据框,但不适用于此功能。 或者你有其他任何包装来获得相同的功能,请告知。

1 个答案:

答案 0 :(得分:1)

我修改了包的功能。这是PnL案例中的一个解决方案(或任何其他情况下你想得到的价值而不是回报)并希望你发现它很有用。参数xdataframe,而row.names的{​​{1}}为x,因此您无需在不同的数据类型(我实际遭受的数据类型)之间进行转换很多)。使用函数dates,您可以执行许多其他函数来计算findPnLDrawdownaverageDrawDownaverageLength等。

recovery