在chartSeries图上将未来20天延伸到一条线

时间:2013-09-28 12:26:17

标签: r quantmod

我使用quantmod在图表中添加了一行。但是,如何在接下来的20天内将其扩展到未来?

library(quantmod)
getSymbols("SPY", from="2013-01-01", to="2013-09-28")
chartSeries(SPY, TA="addLines(h=c(max(SPY[,c(1:4)])))")

另外如何将其值添加到辅助y轴上?

我也尝试过:

 chart_Series(SPY, subset="2013::", type = "candlesticks" ) 
 segments(1, 150, 800, 150)

但是我无法向前改变x轴。

1 个答案:

答案 0 :(得分:2)

将要扩展的值放入另一个对象,然后将要绘制的对象与另一个对象的索引合并。这将为未来几天创建充满NA的行。

futureLine <- xts(,end(SPY)+1:20)  # create empty object with days we want
futureLine$max <- max(Hi(SPY))     # fill in data
chart_Series(merge(SPY,index(futureLine)), TA="add_TA(futureLine, on=1)")

常规chartSeries不喜欢这种方法,因为它似乎删除了只包含NA的所有行。