add.rule() で replace を指定する
quantstrat では、replace 引数は、あるシグナルに基づいて戦略が実行されるときに、同じ日のほかのすべてのシグナルを無視するかどうかを指定します。これは堅牢なトレーディングシステムでは一般的に望ましくありません。したがって、エグジットルールでは replace を FALSE に設定してください。
さらに、新しいルールを扱います。これまで扱ってきたエグジットルールは、市場環境が取引に適さなくなったときに手仕舞うものでした。ここでは、DVO がある閾値をクロスしたときに売るルールを使います。具体的には、これからは thresholdexit ルールを使用します。
この演習はコースの一部です
Rで学ぶ金融トレーディング
演習の手順
- 引数の input 内で
replaceをFALSEに設定してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Fill in the replace argument in add.rule()
add.rule(strategy.st, name = "ruleSignal",
arguments = list(sigcol = "thresholdexit", sigval = TRUE, orderqty = "all",
ordertype = "market", orderside = "long",
replace = ___, prefer = "Open"),
type = "exit")