我注意到,一些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)。
发布于 2013-09-25 20:45:58
看一下代码就会发现它使用的是列位置,而不是名称:
> 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,您使用的是open、high和low,而不是high、low和close。
https://stackoverflow.com/questions/19004767
复制相似问题