動機

投資已經充滿了我們的生活,而投資甚麼標的,在甚麼時間投資可以獲得好的報酬,其實都是有辦法可以判斷的,比如有的人會用財務指標或者技術指標或者籌碼等。R語言中的TTR工具包提供了許多常見的的技術指標和交易規則,因此,此主題目的主要是選擇一個TTR中的指標,並分析他與一個股票資料的圖。

程式說明

  • 這段程式是從yahoo下載長榮從2021/1/1到當天的資料的股票資料,並且將名稱定為data
library(dygraphs)

ticker = "2603.TW"
start = "2021-01-01"
end = Sys.Date()
data = quantmod::getSymbols(ticker,
                            from=start,
                            to=end, 
                            src="yahoo",
                            auto.assign=FALSE) 
  • 將程式的colnames改掉
colnames(data) = c("Open", "High", "Low", "Close", "Volume", "Adjusted")
  • 從TTR套件裡使用momentum,並使用收盤價算出動能,合併到data裡變
data$mom = TTR::momentum(data[,"Close"])
  • 取colname為Open,High,Low,Close,mom的行為OHLC_MOM
OHLC_MOM = c("Open", "High", "Low", "Close", "mom")
  • 使用dygraph套件畫成蠟燭圖,並使用雙y軸,在下面增加一個時間選擇器
fig1=dygraph(data[,OHLC_MOM]) %>%
  dyCandlestick() %>%
  dyRangeSelector() %>%
  dySeries('mom', label = "mom", axis = "y2", color = "blue") %>%
  dyOptions(useDataTimezone = TRUE, drawGrid = FALSE) %>%
  dyAxis("y2", independentTicks = TRUE)

結果

結論

  • 因股價和動能的單位相差太多,因此使用雙y軸來表示,左邊的y軸代表股價的單位,而右邊的y軸代表動能的單位。
  • 當動能大於0則出現買進訊號,而動能小於0則是賣出訊號,而數值絕對值越大代表著趨勢較強,而較低的數值絕對值則代表趨勢較弱或者處於盤整狀態。