【发布时间】:2015-04-25 10:45:42
【问题描述】:
我想回测 pyalgotrade 中的交易策略,但在提交止损单时遇到问题。
在documentation 中声明:仓位是用于下订单的更高级别的抽象。它们本质上是一对进出单,允许跟踪回报和盈亏比手动下单更容易。
我输入的位置与
myPosition = self.enterLong(self.__instrument, amount, True)
这基本上是在股票中打开一个新头寸并以市场价格购买,这本身就有效。
然后我希望下止损单
myPosition.exitStop(stoplossValue, True)
……但这行为真的很奇怪!
如果仓位已填充,即执行 enterLong 订单时的情况,则 exitStop 会引发断言错误,因为它似乎期望订单为“isActive”(这与 isFilled 冲突)。
当我在订单 isFilled(isActive)之前调用 exitStop 时,代码不会生成断言错误,但活动订单会立即取消。
当初始订单尚未执行时,调用 exitStop 绝对没有意义。还是我的想法完全不合时宜?
不幸的是,pyalgotrade 教程策略不使用任何止损逻辑(这很糟糕)。
【问题讨论】:
标签: python trading pyalgotrade