在一些TTR功能中使用HLC

时间:2013-09-25 12:21:04

标签: r quantmod

我注意到某些TTR公式获得的结果需要xts对象包含高 - 低 - 收盘价(例如ADX,ATR和CLV),这取决于代码中是否指定了HLC。例如:

library(quantmod)  # loads TTR
getSymbols("YHOO")
last(ADX(YHOO))

给出以下结果:

2013-09-24 DIp: 48.36026 DIn: 19.65972 DX: 42.19428 ADX: 29.69149

last(ADX(HLC(YHOO)))

结果:

2013-09-24 DIp: 36.85033 DIn: 19.57702 DX: 30.61161 ADX: 23.40803

任何人都可以解释不同结果的原因,应该使用哪种格式(即有或没有HLC)。

1 个答案:

答案 0 :(得分:4)

查看代码表明它使用列位置,而不是名称:

> ADX
function (HLC, n = 14, maType, ...) 
{
    HLC <- try.xts(HLC, error = as.matrix)
    dH <- momentum(HLC[, 1])
    dL <- -momentum(HLC[, 2])
...

因此,您应该使用:

ADX(HLC(YHOO))

如果没有HLC,则使用开放,高和低而不是高,低和关闭。