實作指標 - 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.st。quantstrat 與 quantmod 套件已為你載入。
本練習屬於課程
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 = ___)