2013-09-25 24 views
1

我注意到由某些需要包含高低收盤價格的xts對象(如ADX,ATR和CLV)的TTR公式得到的結果在很大程度上取決於HLC是否在代碼。例如:HLC在一些TTR函數中的使用

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)應該被使用。

回答

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,您使用的是開放的,高低而不是高,低和接近。

+0

太棒了。感謝您的建議。 – user2500880

相關問題