開始使用免費開始

實作指標 - I

現在該進入在 quantstrat 函式庫中實作指標的機制了。這題你會學到如何把指標加入策略。請沿用你先前建立的策略 strategy.st。第一個指標要加入的是 200 日單純移動平均(simple moving average)。

若要在策略中加入指標,請使用 add.indicator()。將 strategy 設為你的策略名稱,name 設為函式名稱(以引號括起來),arguments 則以清單的形式提供該函式的引數。舉例來說,若函式名稱為 SMA,則 arguments 參數需包含 SMA 函式所需的引數:

add.indicator(strategy = strategy.st, 
              name = "SMA", 
              arguments = list(x = quote(Cl(mktdata)), n = 500), 
              label = "SMA500")

add.indicator() 中引用動態的市場資料時,請把 mktdata 放在 quote() 裡。因為 mktdata 是在 quantstrat 內部建立的,會依套件當下使用的商品而改變。quote() 可確保在策略執行過程中資料能動態更新。

在這題中,你要把 200 日 SMA 加入既有的策略 strategy.stquantstratquantmod 套件已為你載入。

本練習屬於課程

R 的金融交易

檢視課程

練習說明

  • 在既有的策略 strategy.st 上使用 add.indicator(),並緊貼範例程式碼撰寫。
  • name 參數提供 SMA 函式。
  • 指定 SMA 所需的引數,使用 mktdata 的收盤價作為輸入,回看期間 n 設為 200 天。
  • 將你的指標標記為 "SMA200"

動手互動練習

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

# Add a 200-day SMA indicator to strategy.st
add.indicator(strategy = ___, 
              
              # Add the SMA function
              name = ___, 
              
              # Create a lookback period
              arguments = list(___), 
              
              # Label your indicator SMA200
              label = ___)
編輯並執行程式碼