【发布时间】:2021-04-09 13:26:49
【问题描述】:
我想请你帮忙。我正在尝试将 python 代码从通过 api 发送限价/市价单到 OCO 订单更改为 binance。我可以做限价单、市价单、止损限价单。我不知道如何下 OCO 订单...
当我使用限价单时,我发送 order_type=ORDER_TYPE_LIMIT 然后我使用 order = client.create_order() 并且它正在工作。当我想发送市价单时,我使用了 order_type=ORDER_TYPE_MARKET 但是当我想发出 OCO 订单时,我发现唯一可行的选项是: order = client.create_oco_order() 没有 order_type 但在这里我收到错误 1013 此交易品种不支持止损...
我检查了https://api.binance.com/api/v1/exchangeInfo
还有这个 "orderTypes":["LIMIT","LIMIT_MAKER","MARKET","STOP_LOSS_LIMIT","TAKE_PROFIT_LIMIT"],"icebergAllowed":true,"ocoAllowed":true,
所以我不能使用 order_type。没有 ORDER_TYPE_OCO 并且 ocoAllowed 是真的,所以我应该能够发送 oco 订单。但我收到“错误 1013:此交易品种不支持止损订单。订单失败”。
我想要的是将“价格”设置为限价卖单,以便在价格到达那里时获利更高,并在价格下跌时将止损“stopPrice”设置得更低……立即。这就是 OCO 的工作方式。
有人可以给我一个建议吗?我不是 python 大师我只是更改我发现的一个代码,我的理解是如果允许 oco 也应该允许止损。谢谢
【问题讨论】:
-
我终于在github上找到了答案。要下 oco 订单,还需要其他参数。要创建 OCO 订单,需要以下参数: 交易品种数量侧价格 stopPrice stopLimitPrice stopLimitTimeInForce。我添加了 stopLimitPrice 和 stopLimitTimeInForce,它现在正在工作。 OCO 订单需要 3 个不同的价格,我只有 2 个。github.com/ccxt/ccxt/issues/5966