r - Quantmod 振荡器

标签 r charts quantmod

利用 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)

生成此图表: enter image description here

我有四个问题:

  1. 如何将默认颜色蓝色更改为其他颜色?我尝试过:c(addRSI(n = 14, maType = "SMA", col = "black"))。但是,我收到“未使用的参数”错误。

  2. 我可以在振荡器面板中绘制水平线吗?传统 RSI 在 y 轴值为 70 处有一条水平红线,在 y 轴值为 30 处有一条水平绿线,表示超买/超卖水平。

  3. 是否可以在图表下方绘制另一个计算作为振荡线?我想要可视化一些专有的振荡器,而不是 RSI 或 TTR 包中的任何指标。

  4. 我如何参与改进 quantmod 图表功能;该项目是否正在积极维护?

最佳答案

  1. 你不能。您需要将 ... 添加到 addRSI 的参数中,并修改函数体以适本地使用 ...。解决方法是手动计算 RSI,然后调用 addTA,如 Change line colors of technical indicators made by R quantmod TTR? 的答案中所做的那样。 .
  2. 使用addLines:

getSymbols("SPY"); ChartSeries(SPY, TA="addRSI();addLines(h=c(30,70), on=2)")

  • addTA 与包含您的专有数据的对象一起使用。
  • 参见quantmod's GitHub page 。是的,它正在积极维护。最后一次更新是在几个月前推送到 CRAN 的。
  • 关于r - Quantmod 振荡器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32404174/

    相关文章:

    r - 我如何计算sd? as.double(x) : cannot coerce type 'S4' to vector of type 'double' 中的错误

    javascript - D3 折线图 : Setting Y. 以特定数字为中心的域值

    r - 为什么使用 quantmod 时开盘价、高价、低价是错误的?

    r - 直方图的标签帮助

    R 字符因子到数字向量

    javascript - 带有 JSON 数据的动态图表 - CanvasJS

    R quantmod 交易信号和模拟

    从环境中删除 NULL 对象

    r - 如何在ggplot2 qplot上叠加经过修改的黄土线?

    jquery - 如何更改 amcharts 中堆积条形图的颜色