图表问题。在性能分析中下拉,需要有限的'ylim'值错误

时间:2017-08-18 15:30:06

标签: r performanceanalytics

所以我目前正在尝试为每日盈利/亏损创建一个Drawdown图表。使用:

cols = rainbow(ncol(pdrawdown),s=0.7, v=0.8, alpha= 0.7)
chart.Drawdown(pdrawdown, legend.loc = "bottomleft",colorset = cols,
               main = "Drawdown Chart", xlab ="Date", ylab = "Drawdown")

我能够轻松地将其绘制为返回(其值大部分小于10)。但是,在尝试使用这种完全相同的盈利/亏损方法时,其值达到10e + 09的范围,我得到错误:

Error in plot.window(xlim, ylim, xaxs = "r", log = logaxis) : 
  need finite 'ylim' values

关于这一点最奇怪的部分是,当我简单地将数据表pdrawdown中的每个值与pdrawdown = pdrawdown/10000000除以10,000,000时,问题就解决了,它可以绘制它。那么如何正确绘制图形而不必使用这种奇怪的黑客呢?

2 个答案:

答案 0 :(得分:2)

您的时间序列pdrawdown是一系列值(例如[100、101、99.5、102,...])还是一系列百分比变化(例如[0.01,-0.02、0.025, ...])?

chart.Drawdown需要一系列百分比更改。当您具有一系列绝对值时,chart.Drawdown将假定它们是百分比变化,因此结果将变得如此之大,以至于出现need finite 'ylim' values错误。

答案 1 :(得分:0)

你能设置一个ylim值吗?

chart.Drawdown(pdrawdown, legend.loc = "bottomleft",colorset = cols,
           main = "Drawdown Chart", xlab ="Date", ylab = "Drawdown", 
                   ylim=c(0,1000000000))