我想利用quantmod包中的chartSeries函数,来修改RSI振荡器。给定一个包含OHLC价格数据的xts对象,这是我正在使用的调用:

chartSeries(plot_report[, 1:4],
        name        = substr(ticker, 1, nchar(ticker) - 4),
        theme       = chartTheme('white.mono', grid.col = NA),
        TA          = c(addRSI(n = 14, maType = "SMA")),
        type        = "line",
        bar.type    = 'ohlc',
        major.ticks = 'months',
        show.grid   = FALSE,
        log.scale   = TRUE)

生成此图表:
r - Quantmod振荡器-LMLPHP

我有四个问题:
  • 如何将蓝色的默认颜色更改为其他颜色?我试过了:c(addRSI(n = 14,maType =“SMA”,col =“black”))。但是,我收到“未使用的参数”错误。
  • 我可以在振荡器面板中绘制水平线吗?传统的RSI在y轴值为70的水平红线和在y轴值为30的水平绿线表示超买/超卖水平。
  • 是否可以在图表下方绘制另一个计算作为震荡线?我想可视化一些专有的振荡器,而不是RSI或TTR软件包中的任何指标。
  • 如何参与改善quantmod制图功能;这个项目正在积极维护吗?
  • 最佳答案

  • 您不能。您需要将...添加到addRSI的参数中,并修改函数的主体以适本地使用...。一种解决方法是手动计算RSI,然后按照Change line colors of technical indicators made by R quantmod TTR?的答案进行操作,调用addTA
  • 使用addLines:
  • getSymbols("SPY"); chartSeries(SPY, TA="addRSI();addLines(h=c(30,70), on=2)")
  • 对包含您的专有数据的对象使用addTA
  • 请参阅quantmod's GitHub page。是的,它得到了积极维护。几个月前,最新的更新已推送到CRAN。
  • 09-30 21:45