開始使用免費開始

繪製財務資料圖

使用 quantstrat 開發的交易策略包含數個特性:由市場資料計算而來的指標(indicators)、由特定指標組合觸發的訊號(signals),以及由特定訊號驅動的規則(rules)。開發任何交易系統的第一步,都是先取得市場資料,並且先看看資料長什麼樣子。

如同影片所示,quantmod 套件提供從多種來源取得資料的函式,也就是 getSymbols()。它會回傳一個與代號同名的物件。

在本練習中,你會取得 SPY 的資料。SPY 是一檔交易所買賣基金(ETF),追蹤美國市值前 500 大公司。這些資料來自 Yahoo! Finance,對於不需要「看到收盤就在收盤價立刻下單」的策略而言,已經足夠。接著你會把它畫出來,並加上一條趨勢線。

例如,若要從 Yahoo! Finance 取得 SPY 在 2013 年的調整後資料,並繪製每日交易的最高價,你可以執行以下程式碼。請注意,只有第一次參照 SPY 資料時使用了引號。

getSymbols("SPY", 
           from = "2013-01-01",
           to = "2013-12-31",
           src = "yahoo",
           adjust = TRUE)
plot(Hi(SPY))

已為你載入 quantmod 套件。

本練習屬於課程

R 的金融交易

檢視課程

練習說明

  • 使用 getSymbols() 自 Yahoo! Finance 取得 SPY 在 2000-01-01 到 2016-06-30 的調整後資料。
  • 使用 Cl() 繪製 SPY 的收盤價。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Get SPY from yahoo
getSymbols(___, 
           from = ___, 
           to = ___, 
           src =  ___, 
           adjust =  ___)

# Plot the closing price of SPY
___(___(___))
編輯並執行程式碼