在 add.rule() 中指定 prefer
最后,在基础规则参数中,还有 prefer 参数这一点需要说明。在 quantstrat 中,订单采用"下一根 K 线(next-bar)"的机制。也就是说,如果您在周二得到信号,最早也要到接下来的周三仓位才会真正成交。不过,您可以通过下达在下一次可能的开盘价执行的订单来解决这个问题,而不是必须等完整的 1 天之后才能买入/卖出该资产。
本练习是课程的一部分
R 中的金融交易
练习说明
- 将 prefer 参数设置为
"Open"。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Fill in the prefer argument in add.rule()
add.rule(strategy.st, name = "ruleSignal",
arguments = list(sigcol = "thresholdexit", sigval = TRUE, orderqty = "all",
ordertype = "market", orderside = "long",
replace = FALSE, prefer = "___"),
type = "exit")