gpt4 book ai didi

python - 如何将 OCO 订单发送到币安

转载 作者:行者123 更新时间:2023-12-04 12:35:14 25 4
gpt4 key购买 nike

我想请你帮忙。我正在尝试将 python 代码从发送限价/市场订单更改为通过 api 到币安的 OCO 订单。我可以做限价单,市价单,止损限价单。我不知道如何下 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 被允许,也应该允许止损。谢谢

最佳答案

为了让所有感兴趣的人都对这个问题的解决方案有一个准确的答案,我在注释中包含了代码。
我将使用 OCO 卖单 以 BTCUSDT 为例。
假设我有 1 个 BTC。当前价格为 30157.85,我想在 32000.07 卖出 1 BTC
但是价格没有上涨并开始下跌,所以我将止损价格设置在 29283.03,限价卖单将以 29000.00 的价格开立
这意味着我将在 32000.07 或 29000.00 USDT 卖出。订单写成如下:

order= client.order_oco_sell(
symbol= 'BTCUSDT',
quantity= 1.00000,
price= '32000.07',
stopPrice= '29283.03',
stopLimitPrice= '29000.00',
stopLimitTimeInForce= 'FOK')
请注意,OCO 订单需要 stopLimitTimeInForce 参数。我已经使用了值“FOK”,但我在此处留下了您可以使用的不同值的描述: https://help.bybit.com/hc/en-us/articles/360039749233-What-are-time-in-force-TIF-GTC-IOC-FOK-
请注意,price、stopPrice、stopLimitPrice 和 stopLimitTimeInForce 参数是字符串,而不是浮点数或十进制数。

关于python - 如何将 OCO 订单发送到币安,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65551059/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com