[英]How to use R packages MACD functions?
我正在學習使用R.我有興趣提取庫存數據並計算庫存數據的各種技術指標。 我的測試基准是Google財經。 也就是說,我用GF的結果檢查我的結果。
在嘗試實施某種MACD分析時,我注意到了一些事情。 這些可能是我對文檔的誤解。 我嘗試了很多變化,在某些情況下我無法與Google財經的數字達成一致。
library(quantmod)
給我MACD()
,它返回macd
和signal
列。
library(fTrading)
給了我cdsTA()
和cdoTA()
,它們分別返回cdsTA
和cdoTA
。
我的測試庫存是IBM,希望這個鏈接能夠提供價格,交易量,慢速隨機指標和MACD的圖表。
將IBM的價格數據加載到R並為值8,17,9生成上述3個函數的值,對於MACD()
我設置percent=FALSE
給出以下輸出。
MACD(close, 8, 17, 9, maType="EMA", percent=FALSE)
cdsTA(close, lag1 = 8, lag2 = 17, lag3 = 9)
cdoTA(close, lag1 = 8, lag2 = 17, lag3 = 9)
date close macd signal cdsTA cdoTA
2011-02-07 164.17 3.187365 3.208984 3.208984 -0.7673435
2011-02-08 166.05 3.246812 3.216549 3.216549 -0.7996041
2011-02-09 164.65 3.052187 3.183677 3.183677 -1.0496306
2011-02-10 164.09 2.780047 3.102951 3.102951 -1.3332292
2011-02-11 163.85 2.496591 2.981679 2.981679 -1.5867962
2011-02-14 163.22 2.168977 2.819138 2.819138 -1.8408138
2011-02-15 162.84 1.846701 2.624651 2.624651 -2.0507546
2011-02-16 163.40 1.640518 2.427824 2.427824 -2.1262626
2011-02-17 164.24 1.550798 2.252419 2.252419 -2.0854783
2011-02-18 164.84 1.517145 2.105364 2.105364 -1.9968608
如果你參考上面的谷歌財務圖表,cdsTA和macd列是相同的,並與谷歌的EMA數據密切相關。 MACD()
對macd al的價值也非常接近GF。 所以我明白了
macd - signal = divergence。
但是,cdoTA還有很長的路要走。 我究竟做錯了什么?
你沒有做錯任何事。 cdoTA
代碼不會將lag1
或lag2
傳遞給cdsTA
,因此它只使用默認值12和26。
> cdoTA
function (x, lag1 = 12, lag2 = 26, lag3 = 9)
{
cdo = macdTA(x, lag1 = lag1, lag2 = lag2) -
cdsTA(x, lag3 = lag3) # no lag1 or lag2, so...
if (is.timeSeries(x))
colnames(cdo) <- "CDO"
cdo
}
> args(cdsTA) # default arg values are used
function (x, lag1 = 12, lag2 = 26, lag3 = 9)
NULL
您可以定義自己的功能CDOTA
:
CDOTA <- function (x, lag1 = 12, lag2 = 26, lag3 = 9) {
cdo = macdTA(x, lag1 = lag1, lag2 = lag2) -
cdsTA(x, lag1 = lag1, lag2 = lag2, lag3 = lag3)
if (is.timeSeries(x))
colnames(cdo) <- "CDO"
cdo
}
或者只使用TTR::MACD
的結果TTR::MACD
減法。
require(quantmod)
getSymbols("IBM", source="google")
ibm <- merge(Cl(IBM), MACD(Cl(IBM), 8, 17, 9, "EMA", FALSE))
ibm$macdOsc <- ibm$macd - ibm$signal
tail(ibm)
# IBM.Close macd signal macdOsc
# 2011-02-15 162.84 1.8361263 2.643950 -0.8078238
# 2011-02-16 163.40 1.6248017 2.440120 -0.8153187
# 2011-02-17 164.24 1.5319154 2.258479 -0.7265640
# 2011-02-18 164.84 1.4965394 2.106091 -0.6095520
# 2011-02-22 161.95 1.1140192 1.907677 -0.7936578
# 2011-02-23 160.18 0.6253874 1.651219 -1.0258316
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.