ccxt 4.3.59__py2.py3-none-any.whl → 4.3.60__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ccxt might be problematic. Click here for more details.
- ccxt/__init__.py +1 -1
- ccxt/abstract/bingx.py +1 -1
- ccxt/async_support/__init__.py +1 -1
- ccxt/async_support/base/exchange.py +1 -1
- ccxt/async_support/binance.py +90 -1
- ccxt/async_support/bingx.py +401 -116
- ccxt/async_support/bitfinex.py +38 -4
- ccxt/async_support/bitso.py +4 -1
- ccxt/async_support/bybit.py +1 -3
- ccxt/async_support/cryptocom.py +11 -5
- ccxt/async_support/gate.py +1 -2
- ccxt/async_support/hyperliquid.py +1 -1
- ccxt/async_support/kraken.py +1 -1
- ccxt/async_support/okx.py +10 -1
- ccxt/async_support/timex.py +16 -2
- ccxt/async_support/xt.py +1 -1
- ccxt/base/exchange.py +1 -1
- ccxt/binance.py +90 -1
- ccxt/bingx.py +401 -116
- ccxt/bitfinex.py +38 -4
- ccxt/bitso.py +4 -1
- ccxt/bybit.py +1 -3
- ccxt/cryptocom.py +11 -5
- ccxt/gate.py +1 -2
- ccxt/hyperliquid.py +1 -1
- ccxt/kraken.py +1 -1
- ccxt/okx.py +10 -1
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/cex.py +1 -1
- ccxt/pro/kucoin.py +35 -3
- ccxt/pro/phemex.py +1 -1
- ccxt/pro/xt.py +4 -1
- ccxt/timex.py +16 -2
- ccxt/xt.py +1 -1
- {ccxt-4.3.59.dist-info → ccxt-4.3.60.dist-info}/METADATA +4 -4
- {ccxt-4.3.59.dist-info → ccxt-4.3.60.dist-info}/RECORD +39 -39
- {ccxt-4.3.59.dist-info → ccxt-4.3.60.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.3.59.dist-info → ccxt-4.3.60.dist-info}/WHEEL +0 -0
- {ccxt-4.3.59.dist-info → ccxt-4.3.60.dist-info}/top_level.txt +0 -0
ccxt/__init__.py
CHANGED
ccxt/abstract/bingx.py
CHANGED
@@ -90,8 +90,8 @@ class ImplicitAPI:
|
|
90
90
|
cswap_v1_private_get_user_balance = cswapV1PrivateGetUserBalance = Entry('user/balance', ['cswap', 'v1', 'private'], 'GET', {'cost': 2})
|
91
91
|
cswap_v1_private_post_trade_order = cswapV1PrivatePostTradeOrder = Entry('trade/order', ['cswap', 'v1', 'private'], 'POST', {'cost': 2})
|
92
92
|
cswap_v1_private_post_trade_leverage = cswapV1PrivatePostTradeLeverage = Entry('trade/leverage', ['cswap', 'v1', 'private'], 'POST', {'cost': 2})
|
93
|
-
cswap_v1_private_post_trade_allopenorders = cswapV1PrivatePostTradeAllOpenOrders = Entry('trade/allOpenOrders', ['cswap', 'v1', 'private'], 'POST', {'cost': 2})
|
94
93
|
cswap_v1_private_post_trade_closeallpositions = cswapV1PrivatePostTradeCloseAllPositions = Entry('trade/closeAllPositions', ['cswap', 'v1', 'private'], 'POST', {'cost': 2})
|
94
|
+
cswap_v1_private_delete_trade_allopenorders = cswapV1PrivateDeleteTradeAllOpenOrders = Entry('trade/allOpenOrders', ['cswap', 'v1', 'private'], 'DELETE', {'cost': 2})
|
95
95
|
contract_v1_private_get_allposition = contractV1PrivateGetAllPosition = Entry('allPosition', ['contract', 'v1', 'private'], 'GET', {'cost': 2})
|
96
96
|
contract_v1_private_get_allorders = contractV1PrivateGetAllOrders = Entry('allOrders', ['contract', 'v1', 'private'], 'GET', {'cost': 2})
|
97
97
|
contract_v1_private_get_balance = contractV1PrivateGetBalance = Entry('balance', ['contract', 'v1', 'private'], 'GET', {'cost': 2})
|
ccxt/async_support/__init__.py
CHANGED
ccxt/async_support/binance.py
CHANGED
@@ -6648,22 +6648,64 @@ class binance(Exchange, ImplicitAPI):
|
|
6648
6648
|
response = None
|
6649
6649
|
if market['option']:
|
6650
6650
|
response = await self.eapiPrivateDeleteAllOpenOrders(self.extend(request, params))
|
6651
|
+
#
|
6652
|
+
# {
|
6653
|
+
# "code": 0,
|
6654
|
+
# "msg": "success"
|
6655
|
+
# }
|
6656
|
+
#
|
6651
6657
|
elif market['linear']:
|
6652
6658
|
if isPortfolioMargin:
|
6653
6659
|
if isConditional:
|
6654
6660
|
response = await self.papiDeleteUmConditionalAllOpenOrders(self.extend(request, params))
|
6661
|
+
#
|
6662
|
+
# {
|
6663
|
+
# "code": "200",
|
6664
|
+
# "msg": "The operation of cancel all conditional open order is done."
|
6665
|
+
# }
|
6666
|
+
#
|
6655
6667
|
else:
|
6656
6668
|
response = await self.papiDeleteUmAllOpenOrders(self.extend(request, params))
|
6669
|
+
#
|
6670
|
+
# {
|
6671
|
+
# "code": 200,
|
6672
|
+
# "msg": "The operation of cancel all open order is done."
|
6673
|
+
# }
|
6674
|
+
#
|
6657
6675
|
else:
|
6658
6676
|
response = await self.fapiPrivateDeleteAllOpenOrders(self.extend(request, params))
|
6677
|
+
#
|
6678
|
+
# {
|
6679
|
+
# "code": 200,
|
6680
|
+
# "msg": "The operation of cancel all open order is done."
|
6681
|
+
# }
|
6682
|
+
#
|
6659
6683
|
elif market['inverse']:
|
6660
6684
|
if isPortfolioMargin:
|
6661
6685
|
if isConditional:
|
6662
6686
|
response = await self.papiDeleteCmConditionalAllOpenOrders(self.extend(request, params))
|
6687
|
+
#
|
6688
|
+
# {
|
6689
|
+
# "code": "200",
|
6690
|
+
# "msg": "The operation of cancel all conditional open order is done."
|
6691
|
+
# }
|
6692
|
+
#
|
6663
6693
|
else:
|
6664
6694
|
response = await self.papiDeleteCmAllOpenOrders(self.extend(request, params))
|
6695
|
+
#
|
6696
|
+
# {
|
6697
|
+
# "code": 200,
|
6698
|
+
# "msg": "The operation of cancel all open order is done."
|
6699
|
+
# }
|
6700
|
+
#
|
6665
6701
|
else:
|
6666
6702
|
response = await self.dapiPrivateDeleteAllOpenOrders(self.extend(request, params))
|
6703
|
+
#
|
6704
|
+
# {
|
6705
|
+
# "code": 200,
|
6706
|
+
# "msg": "The operation of cancel all open order is done."
|
6707
|
+
# }
|
6708
|
+
#
|
6667
6709
|
elif (type == 'margin') or (marginMode is not None) or isPortfolioMargin:
|
6668
6710
|
if isPortfolioMargin:
|
6669
6711
|
response = await self.papiDeleteMarginAllOpenOrders(self.extend(request, params))
|
@@ -6671,12 +6713,59 @@ class binance(Exchange, ImplicitAPI):
|
|
6671
6713
|
if marginMode == 'isolated':
|
6672
6714
|
request['isIsolated'] = True
|
6673
6715
|
response = await self.sapiDeleteMarginOpenOrders(self.extend(request, params))
|
6716
|
+
#
|
6717
|
+
# [
|
6718
|
+
# {
|
6719
|
+
# "symbol": "BTCUSDT",
|
6720
|
+
# "isIsolated": True, # if isolated margin
|
6721
|
+
# "origClientOrderId": "E6APeyTJvkMvLMYMqu1KQ4",
|
6722
|
+
# "orderId": 11,
|
6723
|
+
# "orderListId": -1,
|
6724
|
+
# "clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
|
6725
|
+
# "price": "0.089853",
|
6726
|
+
# "origQty": "0.178622",
|
6727
|
+
# "executedQty": "0.000000",
|
6728
|
+
# "cummulativeQuoteQty": "0.000000",
|
6729
|
+
# "status": "CANCELED",
|
6730
|
+
# "timeInForce": "GTC",
|
6731
|
+
# "type": "LIMIT",
|
6732
|
+
# "side": "BUY",
|
6733
|
+
# "selfTradePreventionMode": "NONE"
|
6734
|
+
# },
|
6735
|
+
# ...
|
6736
|
+
# ]
|
6737
|
+
#
|
6674
6738
|
else:
|
6675
6739
|
response = await self.privateDeleteOpenOrders(self.extend(request, params))
|
6740
|
+
#
|
6741
|
+
# [
|
6742
|
+
# {
|
6743
|
+
# "symbol": "ADAUSDT",
|
6744
|
+
# "origClientOrderId": "x-R4BD3S82662cde7a90114475b86e21",
|
6745
|
+
# "orderId": 3935107,
|
6746
|
+
# "orderListId": -1,
|
6747
|
+
# "clientOrderId": "bqM2w1oTlugfRAjnTIFBE8",
|
6748
|
+
# "transactTime": 1720589016657,
|
6749
|
+
# "price": "0.35000000",
|
6750
|
+
# "origQty": "30.00000000",
|
6751
|
+
# "executedQty": "0.00000000",
|
6752
|
+
# "cummulativeQuoteQty": "0.00000000",
|
6753
|
+
# "status": "CANCELED",
|
6754
|
+
# "timeInForce": "GTC",
|
6755
|
+
# "type": "LIMIT",
|
6756
|
+
# "side": "BUY",
|
6757
|
+
# "selfTradePreventionMode": "EXPIRE_MAKER"
|
6758
|
+
# }
|
6759
|
+
# ]
|
6760
|
+
#
|
6676
6761
|
if isinstance(response, list):
|
6677
6762
|
return self.parse_orders(response, market)
|
6678
6763
|
else:
|
6679
|
-
return
|
6764
|
+
return [
|
6765
|
+
self.safe_order({
|
6766
|
+
'info': response,
|
6767
|
+
}),
|
6768
|
+
]
|
6680
6769
|
|
6681
6770
|
async def cancel_orders(self, ids: List[str], symbol: Str = None, params={}):
|
6682
6771
|
"""
|