一篮子订单并非一个单一订单,而是三个订单组合起来的,其中一个是主订单,另外两个一是针对主订单的止损保护单,二是针对主订单的获利了结单。
我们考虑一个做多的场景:这种场景下,我们想买入股票(创建买单),但是又希望在股价下跌时通过止损卖单限制损失,并且希望股价上升到目标价后卖出股票获利了结。因此,当下达一个主买单后,同时下达一个止损卖单保护自己,再同时下达一个获利了结卖单保护利润,说明如下:
- 一个主买单buy,默认是限价单Limit,要设置主限制价price(相当于进入市场价格)。此单称为main单。
- 一个子卖单sell,默认为停损单Stop,限制损失,要设置子停损价stopprice。此单称为stop单。
- 再一个子卖单sell,默认为限价单Limit,以获利离场,要设置子限制价(即获利了结价)limitprice。此单称为limit单。
以上三个价格的关系是:stopprice(止损价)<price(进入价)<limitprice(获利了结价)。
这3个订单一起提交,主订单执行后,两个子订单才激活(激活前不执行)。若主单取消,则子单自动取消。激活的子单中任意一个执行或取消将导致另一个自动取消。
以下是代码例子:
brackets = self.buy_bracket(limitprice=14.00, price=13.50, stopprice=13.00)
返回值brackets 是一个列表[main, stop, limit],记录了三个订单的引用。
该方法的签名如下:
buy_bracket(self, data=None, size=None, price=None, plimit=None,# 主买单设置
exectype=bt.Order.Limit, valid=

最低0.47元/天 解锁文章
1925

被折叠的 条评论
为什么被折叠?



