ccxt 4.4.98__py2.py3-none-any.whl → 4.4.99__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.
Files changed (70) hide show
  1. ccxt/__init__.py +3 -1
  2. ccxt/abstract/bitget.py +6 -0
  3. ccxt/abstract/hibachi.py +26 -0
  4. ccxt/async_support/__init__.py +3 -1
  5. ccxt/async_support/base/exchange.py +1 -1
  6. ccxt/async_support/binance.py +7 -6
  7. ccxt/async_support/bitget.py +2018 -557
  8. ccxt/async_support/bybit.py +5 -1
  9. ccxt/async_support/coinex.py +64 -3
  10. ccxt/async_support/cryptocom.py +1 -1
  11. ccxt/async_support/gate.py +1 -2
  12. ccxt/async_support/hibachi.py +2080 -0
  13. ccxt/async_support/novadax.py +34 -0
  14. ccxt/base/errors.py +0 -6
  15. ccxt/base/exchange.py +1 -1
  16. ccxt/binance.py +7 -6
  17. ccxt/bitget.py +2018 -557
  18. ccxt/bybit.py +5 -1
  19. ccxt/coinex.py +64 -3
  20. ccxt/cryptocom.py +1 -1
  21. ccxt/gate.py +1 -2
  22. ccxt/hibachi.py +2079 -0
  23. ccxt/novadax.py +34 -0
  24. ccxt/pro/__init__.py +1 -1
  25. ccxt/pro/alpaca.py +2 -2
  26. ccxt/pro/apex.py +2 -2
  27. ccxt/pro/ascendex.py +2 -2
  28. ccxt/pro/binance.py +2 -4
  29. ccxt/pro/bitget.py +3 -3
  30. ccxt/pro/bithumb.py +2 -2
  31. ccxt/pro/bitmart.py +2 -2
  32. ccxt/pro/bitmex.py +3 -3
  33. ccxt/pro/bitstamp.py +3 -3
  34. ccxt/pro/bittrade.py +2 -2
  35. ccxt/pro/bitvavo.py +4 -2
  36. ccxt/pro/bybit.py +4 -4
  37. ccxt/pro/cex.py +3 -2
  38. ccxt/pro/coinbaseexchange.py +4 -4
  39. ccxt/pro/coinbaseinternational.py +2 -2
  40. ccxt/pro/coincatch.py +1 -1
  41. ccxt/pro/coinone.py +2 -2
  42. ccxt/pro/cryptocom.py +2 -2
  43. ccxt/pro/derive.py +2 -2
  44. ccxt/pro/gate.py +3 -3
  45. ccxt/pro/hollaex.py +2 -2
  46. ccxt/pro/htx.py +3 -3
  47. ccxt/pro/hyperliquid.py +2 -2
  48. ccxt/pro/kraken.py +2 -2
  49. ccxt/pro/krakenfutures.py +4 -3
  50. ccxt/pro/kucoin.py +3 -2
  51. ccxt/pro/kucoinfutures.py +3 -2
  52. ccxt/pro/modetrade.py +2 -2
  53. ccxt/pro/okcoin.py +2 -2
  54. ccxt/pro/okx.py +5 -5
  55. ccxt/pro/onetrading.py +2 -2
  56. ccxt/pro/p2b.py +2 -2
  57. ccxt/pro/paradex.py +2 -2
  58. ccxt/pro/poloniex.py +2 -2
  59. ccxt/pro/probit.py +2 -2
  60. ccxt/pro/vertex.py +2 -2
  61. ccxt/pro/whitebit.py +2 -2
  62. ccxt/pro/woo.py +2 -2
  63. ccxt/pro/woofipro.py +2 -2
  64. ccxt/test/tests_async.py +1 -1
  65. ccxt/test/tests_sync.py +1 -1
  66. {ccxt-4.4.98.dist-info → ccxt-4.4.99.dist-info}/METADATA +7 -6
  67. {ccxt-4.4.98.dist-info → ccxt-4.4.99.dist-info}/RECORD +70 -67
  68. {ccxt-4.4.98.dist-info → ccxt-4.4.99.dist-info}/LICENSE.txt +0 -0
  69. {ccxt-4.4.98.dist-info → ccxt-4.4.99.dist-info}/WHEEL +0 -0
  70. {ccxt-4.4.98.dist-info → ccxt-4.4.99.dist-info}/top_level.txt +0 -0
@@ -5857,7 +5857,11 @@ classic accounts only/ spot not supported* fetches information on an order made
5857
5857
  """
5858
5858
  tag, params = self.handle_withdraw_tag_and_params(tag, params)
5859
5859
  accountType = None
5860
+ accounts = await self.is_unified_enabled()
5861
+ isUta = accounts[1]
5860
5862
  accountType, params = self.handle_option_and_params(params, 'withdraw', 'accountType', 'SPOT')
5863
+ if isUta:
5864
+ accountType = 'UTA'
5861
5865
  await self.load_markets()
5862
5866
  self.check_address(address)
5863
5867
  currency = self.currency(code)
@@ -7935,7 +7939,7 @@ classic accounts only/ spot not supported* fetches information on an order made
7935
7939
  if market['spot']:
7936
7940
  raise NotSupported(self.id + ' fetchLeverageTiers() is not supported for spot market')
7937
7941
  symbol = market['symbol']
7938
- data = await self.get_leverage_tiers_paginated(symbol, self.extend({'paginate': True, 'paginationCalls': 40}, params))
7942
+ data = await self.get_leverage_tiers_paginated(symbol, self.extend({'paginate': True, 'paginationCalls': 50}, params))
7939
7943
  symbols = self.market_symbols(symbols)
7940
7944
  return self.parse_leverage_tiers(data, symbols, 'symbol')
7941
7945
 
@@ -87,7 +87,7 @@ class coinex(Exchange, ImplicitAPI):
87
87
  'fetchDepositAddressesByNetwork': False,
88
88
  'fetchDeposits': True,
89
89
  'fetchDepositWithdrawFee': True,
90
- 'fetchDepositWithdrawFees': False,
90
+ 'fetchDepositWithdrawFees': True,
91
91
  'fetchFundingHistory': True,
92
92
  'fetchFundingInterval': True,
93
93
  'fetchFundingIntervals': False,
@@ -740,6 +740,7 @@ class coinex(Exchange, ImplicitAPI):
740
740
  for j in range(0, len(chains)):
741
741
  chain = chains[j]
742
742
  networkId = self.safe_string(chain, 'chain')
743
+ networkCode = self.network_id_to_code(networkId, code)
743
744
  if networkId is None:
744
745
  continue
745
746
  precisionString = self.parse_precision(self.safe_string(chain, 'withdrawal_precision'))
@@ -750,7 +751,7 @@ class coinex(Exchange, ImplicitAPI):
750
751
  canWithdrawChain = self.safe_bool(chain, 'withdraw_enabled')
751
752
  network: dict = {
752
753
  'id': networkId,
753
- 'network': networkId,
754
+ 'network': networkCode,
754
755
  'name': None,
755
756
  'active': canDepositChain and canWithdrawChain,
756
757
  'deposit': canDepositChain,
@@ -773,7 +774,7 @@ class coinex(Exchange, ImplicitAPI):
773
774
  },
774
775
  'info': chain,
775
776
  }
776
- networks[networkId] = network
777
+ networks[networkCode] = network
777
778
  result[code] = self.safe_currency_structure({
778
779
  'id': currencyId,
779
780
  'code': code,
@@ -5393,6 +5394,66 @@ class coinex(Exchange, ImplicitAPI):
5393
5394
  data = self.safe_dict(response, 'data', {})
5394
5395
  return self.parse_deposit_withdraw_fee(data, currency)
5395
5396
 
5397
+ async def fetch_deposit_withdraw_fees(self, codes: Strings = None, params={}):
5398
+ """
5399
+ fetch the fees for deposits and withdrawals
5400
+
5401
+ https://docs.coinex.com/api/v2/assets/deposit-withdrawal/http/list-all-deposit-withdrawal-config
5402
+
5403
+ @param codes
5404
+ :param dict [params]: extra parameters specific to the exchange API endpoint
5405
+ :returns dict: a dictionary of `fee structures <https://docs.ccxt.com/#/?id=fee-structure>`
5406
+ """
5407
+ await self.load_markets()
5408
+ response = await self.v2PublicGetAssetsAllDepositWithdrawConfig(params)
5409
+ #
5410
+ # {
5411
+ # "code": 0,
5412
+ # "data": [
5413
+ # {
5414
+ # "asset": {
5415
+ # "ccy": "CET",
5416
+ # "deposit_enabled": True,
5417
+ # "withdraw_enabled": True,
5418
+ # "inter_transfer_enabled": True,
5419
+ # "is_st": False
5420
+ # },
5421
+ # "chains": [
5422
+ # {
5423
+ # "chain": "CSC",
5424
+ # "min_deposit_amount": "0.8",
5425
+ # "min_withdraw_amount": "8",
5426
+ # "deposit_enabled": True,
5427
+ # "withdraw_enabled": True,
5428
+ # "deposit_delay_minutes": 0,
5429
+ # "safe_confirmations": 10,
5430
+ # "irreversible_confirmations": 20,
5431
+ # "deflation_rate": "0",
5432
+ # "withdrawal_fee": "0.026",
5433
+ # "withdrawal_precision": 8,
5434
+ # "memo": "",
5435
+ # "is_memo_required_for_deposit": False,
5436
+ # "explorer_asset_url": ""
5437
+ # },
5438
+ # ]
5439
+ # }
5440
+ # ],
5441
+ # "message": "OK"
5442
+ # }
5443
+ #
5444
+ data = self.safe_list(response, 'data', [])
5445
+ result: dict = {}
5446
+ for i in range(0, len(data)):
5447
+ item = data[i]
5448
+ asset = self.safe_dict(item, 'asset', {})
5449
+ currencyId = self.safe_string(asset, 'ccy')
5450
+ if currencyId is None:
5451
+ continue
5452
+ code = self.safe_currency_code(currencyId)
5453
+ if codes is None or self.in_array(code, codes):
5454
+ result[code] = self.parse_deposit_withdraw_fee(item)
5455
+ return result
5456
+
5396
5457
  def parse_deposit_withdraw_fee(self, fee, currency: Currency = None):
5397
5458
  #
5398
5459
  # {
@@ -1134,7 +1134,7 @@ class cryptocom(Exchange, ImplicitAPI):
1134
1134
  'instrument_name': market['id'],
1135
1135
  }
1136
1136
  if limit:
1137
- request['depth'] = limit
1137
+ request['depth'] = min(limit, 50) # max 50
1138
1138
  response = await self.v1PublicGetPublicGetBook(self.extend(request, params))
1139
1139
  #
1140
1140
  # {
@@ -685,8 +685,7 @@ class gate(Exchange, ImplicitAPI):
685
685
  'BSC': 'BSC',
686
686
  'BEP20': 'BSC',
687
687
  'SOL': 'SOL',
688
- 'POLYGON': 'POL',
689
- 'MATIC': 'POL',
688
+ 'MATIC': 'MATIC',
690
689
  'OPTIMISM': 'OPETH',
691
690
  'ADA': 'ADA', # CARDANO
692
691
  'AVAXC': 'AVAX_C',