1
我可以使用一些幫助讓我的代碼正常工作。我試圖根據收盤價高於MACD,布林通道和慢速隨機指標創建一個簡單的位置信號。我在第17行以後出錯。我不確定這是否是因爲「股票」是一個xts對象。我還想在最後繪製輸出圖。謝謝!R Quant Trading
#install.packages("quantmod")
library("quantmod")
#install.packages("FinancialInstrument")
library("FinancialInstrument")
#install.packages("PerformanceAnalytics")
library("PerformanceAnalytics")
#install.packages("TTR")
library("TTR")
#######################################
Stock <- get(getSymbols('CAT'))["2014::"]
# add the indicators
Stock$BBands <- BBands(HLC(Stock))
Stock$MACD <- MACD(HLC(Stock))
Stock$stochOSC <- stoch(Stock[,c("High","Low","Close")])
Stock$position <- ifelse(Cl(Stock) > Stock$BBands > Stock$MACD > Stock $stockOSC , 1 , -1)
Gains <- lag(Stock$position) * dailyReturn(Stock)
charts.PerformanceSummary(cbind(dailyReturn(Stock),Gains))
從幫助頁面(?'MACD'),似乎'MACD()'只接受單變量時間系列作爲輸入,而不是多變量。 –
如何強制數據使其工作?你可以很容易地繪製MACD,所以應該有一些輸出,我會認爲 – SJSU2013
從'Stock $ MACD < - MACD(HLC(股票))',我得到「錯誤在colnames <-'(* * * * * ',value = c(「CAT.High.EMA.12」,「CAT.Low.EMA.12」,:'dimnames'[2]的長度不等於數組範圍「 –