0

假设我有多头头寸,止损位在 75,前一天的 OHLC 是 95,100, 80,85。今日市场跳空低开,以65开盘,最终OHLC为65、70、55、60。在这种情况下,如果我在 75 处设置止损单,它永远不会被执行。如果我在 75 处设置 pricemethod="limit" 的卖单,尽管在 70 和 80(缺口区)之间没有交易,但它在 75 处成交,我认为这是不现实的。实际上,如果停止卖出水平 > 开盘或止损买入水平 < 开盘,那么它应该在开盘时被填充。有谁知道如何实现这个逻辑?

哈马

4

1 回答 1

2

请检查您是否正在运行最新的 quantstrat 版本 r1466;最近对代码进行了更改,应该可以解决您的问题。

请注意,在 OHLC 中不可能进行完美的模拟,因为唯一可以确定的是开盘发生在收盘之前,但开盘和收盘之间的路径是未知的。在您的示例中,软件应以 min(limit.price, Hi(bar)) 填写您的订单,即 70。

高温下,

简·休姆。

于 2013-05-22T16:27:06.507 回答