ccxt 4.3.43__py2.py3-none-any.whl → 4.3.44__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/base/exchange.py CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.43'
7
+ __version__ = '4.3.44'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
ccxt/lykke.py CHANGED
@@ -858,7 +858,10 @@ class lykke(Exchange, ImplicitAPI):
858
858
  # "error":null
859
859
  # }
860
860
  #
861
- return self.privateDeleteOrdersOrderId(self.extend(request, params))
861
+ response = self.privateDeleteOrdersOrderId(self.extend(request, params))
862
+ return self.safe_order({
863
+ 'info': response,
864
+ })
862
865
 
863
866
  def cancel_all_orders(self, symbol: Str = None, params={}):
864
867
  """
@@ -882,7 +885,12 @@ class lykke(Exchange, ImplicitAPI):
882
885
  # "error":null
883
886
  # }
884
887
  #
885
- return self.privateDeleteOrders(self.extend(request, params))
888
+ response = self.privateDeleteOrders(self.extend(request, params))
889
+ return [
890
+ self.safe_order({
891
+ 'info': response,
892
+ }),
893
+ ]
886
894
 
887
895
  def fetch_order(self, id: str, symbol: Str = None, params={}):
888
896
  """
ccxt/ndax.py CHANGED
@@ -1510,7 +1510,11 @@ class ndax(Exchange, ImplicitAPI):
1510
1510
  # "detail":null
1511
1511
  # }
1512
1512
  #
1513
- return response
1513
+ return [
1514
+ self.safe_order({
1515
+ 'info': response,
1516
+ }),
1517
+ ]
1514
1518
 
1515
1519
  def cancel_order(self, id: str, symbol: Str = None, params={}):
1516
1520
  """
ccxt/poloniexfutures.py CHANGED
@@ -1180,7 +1180,7 @@ class poloniexfutures(Exchange, ImplicitAPI):
1180
1180
  cancelledOrderIdsLength = len(cancelledOrderIds)
1181
1181
  for i in range(0, cancelledOrderIdsLength):
1182
1182
  cancelledOrderId = self.safe_string(cancelledOrderIds, i)
1183
- result.append({
1183
+ result.append(self.safe_order({
1184
1184
  'id': cancelledOrderId,
1185
1185
  'clientOrderId': None,
1186
1186
  'timestamp': None,
@@ -1202,7 +1202,7 @@ class poloniexfutures(Exchange, ImplicitAPI):
1202
1202
  'postOnly': None,
1203
1203
  'stopPrice': None,
1204
1204
  'info': response,
1205
- })
1205
+ }))
1206
1206
  return result
1207
1207
 
1208
1208
  def fetch_orders_by_status(self, status, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
ccxt/pro/__init__.py CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  # ----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.43'
7
+ __version__ = '4.3.44'
8
8
 
9
9
  # ----------------------------------------------------------------------------
10
10
 
ccxt/pro/bitmex.py CHANGED
@@ -1469,11 +1469,15 @@ class bitmex(ccxt.async_support.bitmex):
1469
1469
  #
1470
1470
  action = self.safe_string(message, 'action')
1471
1471
  table = self.safe_string(message, 'table')
1472
+ if table is None:
1473
+ return # protecting from weird updates
1472
1474
  data = self.safe_value(message, 'data', [])
1473
1475
  # if it's an initial snapshot
1474
1476
  if action == 'partial':
1475
1477
  filter = self.safe_dict(message, 'filter', {})
1476
1478
  marketId = self.safe_value(filter, 'symbol')
1479
+ if marketId is None:
1480
+ return # protecting from weird update
1477
1481
  market = self.safe_market(marketId)
1478
1482
  symbol = market['symbol']
1479
1483
  if table == 'orderBookL2':
@@ -1501,6 +1505,8 @@ class bitmex(ccxt.async_support.bitmex):
1501
1505
  numUpdatesByMarketId: dict = {}
1502
1506
  for i in range(0, len(data)):
1503
1507
  marketId = self.safe_value(data[i], 'symbol')
1508
+ if marketId is None:
1509
+ return # protecting from weird update
1504
1510
  if not (marketId in numUpdatesByMarketId):
1505
1511
  numUpdatesByMarketId[marketId] = 0
1506
1512
  numUpdatesByMarketId[marketId] = self.sum(numUpdatesByMarketId, 1)
ccxt/pro/woo.py CHANGED
@@ -60,7 +60,7 @@ class woo(ccxt.async_support.woo):
60
60
  },
61
61
  'streaming': {
62
62
  'ping': self.ping,
63
- 'keepAlive': 10000,
63
+ 'keepAlive': 9000,
64
64
  },
65
65
  'exceptions': {
66
66
  'ws': {
ccxt/test/test_async.py CHANGED
@@ -1274,7 +1274,7 @@ class testMainClass(baseMainTestClass):
1274
1274
  # -----------------------------------------------------------------------------
1275
1275
  # --- Init of brokerId tests functions-----------------------------------------
1276
1276
  # -----------------------------------------------------------------------------
1277
- promises = [self.test_binance(), self.test_okx(), self.test_cryptocom(), self.test_bybit(), self.test_kucoin(), self.test_kucoinfutures(), self.test_bitget(), self.test_mexc(), self.test_htx(), self.test_woo(), self.test_bitmart(), self.test_coinex(), self.test_bingx(), self.test_phemex(), self.test_blofin(), self.test_hyperliquid(), self.test_coinbaseinternational(), self.test_coinbase_advanced(), self.test_woofi_pro()]
1277
+ promises = [self.test_binance(), self.test_okx(), self.test_cryptocom(), self.test_bybit(), self.test_kucoin(), self.test_kucoinfutures(), self.test_bitget(), self.test_mexc(), self.test_htx(), self.test_woo(), self.test_bitmart(), self.test_coinex(), self.test_bingx(), self.test_phemex(), self.test_blofin(), self.test_hyperliquid(), self.test_coinbaseinternational(), self.test_coinbase_advanced(), self.test_woofi_pro(), self.test_xt()]
1278
1278
  await asyncio.gather(*promises)
1279
1279
  success_message = '[' + self.lang + '][TEST_SUCCESS] brokerId tests passed.'
1280
1280
  dump('[INFO]' + success_message)
@@ -1602,6 +1602,26 @@ class testMainClass(baseMainTestClass):
1602
1602
  await close(exchange)
1603
1603
  return True
1604
1604
 
1605
+ async def test_xt(self):
1606
+ exchange = self.init_offline_exchange('xt')
1607
+ id = 'CCXT'
1608
+ spot_order_request = None
1609
+ try:
1610
+ await exchange.create_order('BTC/USDT', 'limit', 'buy', 1, 20000)
1611
+ except Exception as e:
1612
+ spot_order_request = json_parse(exchange.last_request_body)
1613
+ spot_media = spot_order_request['media']
1614
+ assert spot_media == id, 'xt - id: ' + id + ' different from swap tag: ' + spot_media
1615
+ swap_order_request = None
1616
+ try:
1617
+ await exchange.create_order('BTC/USDT:USDT', 'limit', 'buy', 1, 20000)
1618
+ except Exception as e:
1619
+ swap_order_request = json_parse(exchange.last_request_body)
1620
+ swap_media = swap_order_request['clientMedia']
1621
+ assert swap_media == id, 'xt - id: ' + id + ' different from swap tag: ' + swap_media
1622
+ await close(exchange)
1623
+ return True
1624
+
1605
1625
  # ***** AUTO-TRANSPILER-END *****
1606
1626
  # *******************************
1607
1627
 
ccxt/test/test_sync.py CHANGED
@@ -1273,7 +1273,7 @@ class testMainClass(baseMainTestClass):
1273
1273
  # -----------------------------------------------------------------------------
1274
1274
  # --- Init of brokerId tests functions-----------------------------------------
1275
1275
  # -----------------------------------------------------------------------------
1276
- promises = [self.test_binance(), self.test_okx(), self.test_cryptocom(), self.test_bybit(), self.test_kucoin(), self.test_kucoinfutures(), self.test_bitget(), self.test_mexc(), self.test_htx(), self.test_woo(), self.test_bitmart(), self.test_coinex(), self.test_bingx(), self.test_phemex(), self.test_blofin(), self.test_hyperliquid(), self.test_coinbaseinternational(), self.test_coinbase_advanced(), self.test_woofi_pro()]
1276
+ promises = [self.test_binance(), self.test_okx(), self.test_cryptocom(), self.test_bybit(), self.test_kucoin(), self.test_kucoinfutures(), self.test_bitget(), self.test_mexc(), self.test_htx(), self.test_woo(), self.test_bitmart(), self.test_coinex(), self.test_bingx(), self.test_phemex(), self.test_blofin(), self.test_hyperliquid(), self.test_coinbaseinternational(), self.test_coinbase_advanced(), self.test_woofi_pro(), self.test_xt()]
1277
1277
  (promises)
1278
1278
  success_message = '[' + self.lang + '][TEST_SUCCESS] brokerId tests passed.'
1279
1279
  dump('[INFO]' + success_message)
@@ -1601,6 +1601,26 @@ class testMainClass(baseMainTestClass):
1601
1601
  close(exchange)
1602
1602
  return True
1603
1603
 
1604
+ def test_xt(self):
1605
+ exchange = self.init_offline_exchange('xt')
1606
+ id = 'CCXT'
1607
+ spot_order_request = None
1608
+ try:
1609
+ exchange.create_order('BTC/USDT', 'limit', 'buy', 1, 20000)
1610
+ except Exception as e:
1611
+ spot_order_request = json_parse(exchange.last_request_body)
1612
+ spot_media = spot_order_request['media']
1613
+ assert spot_media == id, 'xt - id: ' + id + ' different from swap tag: ' + spot_media
1614
+ swap_order_request = None
1615
+ try:
1616
+ exchange.create_order('BTC/USDT:USDT', 'limit', 'buy', 1, 20000)
1617
+ except Exception as e:
1618
+ swap_order_request = json_parse(exchange.last_request_body)
1619
+ swap_media = swap_order_request['clientMedia']
1620
+ assert swap_media == id, 'xt - id: ' + id + ' different from swap tag: ' + swap_media
1621
+ close(exchange)
1622
+ return True
1623
+
1604
1624
  # ***** AUTO-TRANSPILER-END *****
1605
1625
  # *******************************
1606
1626