ccxt 4.3.67__py2.py3-none-any.whl → 4.3.69__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 (58) hide show
  1. ccxt/__init__.py +1 -1
  2. ccxt/async_support/__init__.py +1 -1
  3. ccxt/async_support/base/exchange.py +1 -1
  4. ccxt/async_support/binance.py +2 -2
  5. ccxt/async_support/bingx.py +446 -215
  6. ccxt/async_support/bitget.py +5 -4
  7. ccxt/async_support/bitmart.py +2 -2
  8. ccxt/async_support/bitrue.py +2 -2
  9. ccxt/async_support/btcbox.py +1 -1
  10. ccxt/async_support/bybit.py +2 -2
  11. ccxt/async_support/coinbaseinternational.py +72 -1
  12. ccxt/async_support/coinex.py +2 -2
  13. ccxt/async_support/coinlist.py +2 -2
  14. ccxt/async_support/deribit.py +2 -2
  15. ccxt/async_support/digifinex.py +2 -2
  16. ccxt/async_support/hyperliquid.py +0 -2
  17. ccxt/async_support/kucoin.py +11 -5
  18. ccxt/async_support/latoken.py +2 -2
  19. ccxt/async_support/mexc.py +2 -2
  20. ccxt/async_support/okx.py +2 -2
  21. ccxt/async_support/oxfun.py +1 -1
  22. ccxt/async_support/phemex.py +2 -2
  23. ccxt/async_support/poloniex.py +33 -33
  24. ccxt/async_support/poloniexfutures.py +26 -26
  25. ccxt/async_support/woo.py +2 -2
  26. ccxt/base/exchange.py +333 -120
  27. ccxt/base/types.py +21 -3
  28. ccxt/binance.py +2 -2
  29. ccxt/bingx.py +446 -215
  30. ccxt/bitget.py +5 -4
  31. ccxt/bitmart.py +2 -2
  32. ccxt/bitrue.py +2 -2
  33. ccxt/btcbox.py +1 -1
  34. ccxt/bybit.py +2 -2
  35. ccxt/coinbaseinternational.py +72 -1
  36. ccxt/coinex.py +2 -2
  37. ccxt/coinlist.py +2 -2
  38. ccxt/deribit.py +2 -2
  39. ccxt/digifinex.py +2 -2
  40. ccxt/hyperliquid.py +0 -2
  41. ccxt/kucoin.py +11 -5
  42. ccxt/latoken.py +2 -2
  43. ccxt/mexc.py +2 -2
  44. ccxt/okx.py +2 -2
  45. ccxt/oxfun.py +1 -1
  46. ccxt/phemex.py +2 -2
  47. ccxt/poloniex.py +33 -33
  48. ccxt/poloniexfutures.py +26 -26
  49. ccxt/pro/__init__.py +1 -1
  50. ccxt/pro/krakenfutures.py +7 -6
  51. ccxt/pro/poloniex.py +13 -13
  52. ccxt/pro/poloniexfutures.py +5 -5
  53. ccxt/woo.py +2 -2
  54. {ccxt-4.3.67.dist-info → ccxt-4.3.69.dist-info}/METADATA +6 -6
  55. {ccxt-4.3.67.dist-info → ccxt-4.3.69.dist-info}/RECORD +58 -58
  56. {ccxt-4.3.67.dist-info → ccxt-4.3.69.dist-info}/LICENSE.txt +0 -0
  57. {ccxt-4.3.67.dist-info → ccxt-4.3.69.dist-info}/WHEEL +0 -0
  58. {ccxt-4.3.67.dist-info → ccxt-4.3.69.dist-info}/top_level.txt +0 -0
@@ -8,7 +8,7 @@ from ccxt.abstract.bitget import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
10
  import json
11
- from ccxt.base.types import Balances, Conversion, CrossBorrowRate, Currencies, Currency, FundingHistory, Int, IsolatedBorrowRate, Leverage, LeverageTier, Liquidation, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry, TransferEntries
11
+ from ccxt.base.types import Balances, Conversion, CrossBorrowRate, Currencies, Currency, FundingHistory, Int, IsolatedBorrowRate, Leverage, LeverageTier, Liquidation, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry
12
12
  from typing import List
13
13
  from ccxt.base.errors import ExchangeError
14
14
  from ccxt.base.errors import AuthenticationError
@@ -4868,8 +4868,9 @@ class bitget(Exchange, ImplicitAPI):
4868
4868
  if isinstance(response, str):
4869
4869
  response = json.loads(response)
4870
4870
  data = self.safe_dict(response, 'data')
4871
- if (data is not None) and not isinstance(data, list):
4872
- return self.parse_order(data, market)
4871
+ if (data is not None):
4872
+ if not isinstance(data, list):
4873
+ return self.parse_order(data, market)
4873
4874
  dataList = self.safe_list(response, 'data', [])
4874
4875
  first = self.safe_dict(dataList, 0, {})
4875
4876
  return self.parse_order(first, market)
@@ -6819,7 +6820,7 @@ class bitget(Exchange, ImplicitAPI):
6819
6820
  'info': interest,
6820
6821
  }, market)
6821
6822
 
6822
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
6823
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
6823
6824
  """
6824
6825
  fetch a history of internal transfers made on an account
6825
6826
  :see: https://www.bitget.com/api-doc/spot/account/Get-Account-TransferRecords
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.bitmart import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, Int, IsolatedBorrowRate, IsolatedBorrowRates, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry, TransferEntries
9
+ from ccxt.base.types import Balances, Currencies, Currency, Int, IsolatedBorrowRate, IsolatedBorrowRates, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -3819,7 +3819,7 @@ class bitmart(Exchange, ImplicitAPI):
3819
3819
  'status': self.parse_transfer_status(self.safe_string(transfer, 'state')),
3820
3820
  }
3821
3821
 
3822
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
3822
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
3823
3823
  """
3824
3824
  fetch a history of internal transfers made on an account, only transfers between spot and swap are supported
3825
3825
  :see: https://developer-pro.bitmart.com/en/futures/#get-transfer-list-signed
@@ -8,7 +8,7 @@ from ccxt.abstract.bitrue import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
10
  import json
11
- from ccxt.base.types import Balances, Currencies, Currency, Int, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry, TransferEntries
11
+ from ccxt.base.types import Balances, Currencies, Currency, Int, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry
12
12
  from typing import List
13
13
  from ccxt.base.errors import ExchangeError
14
14
  from ccxt.base.errors import AuthenticationError
@@ -2728,7 +2728,7 @@ class bitrue(Exchange, ImplicitAPI):
2728
2728
  'status': 'ok',
2729
2729
  }
2730
2730
 
2731
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
2731
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
2732
2732
  """
2733
2733
  fetch a history of internal transfers made on an account
2734
2734
  :see: https://www.bitrue.com/api-docs#get-future-account-transfer-history-list-user_data-hmac-sha256
@@ -648,7 +648,7 @@ class btcbox(Exchange, ImplicitAPI):
648
648
  'nonce': nonce,
649
649
  }, params)
650
650
  request = self.urlencode(query)
651
- secret = self.hash(self.encode(self.secret), 'sha256')
651
+ secret = self.hash(self.encode(self.secret), 'md5')
652
652
  query['signature'] = self.hmac(self.encode(request), self.encode(secret), hashlib.sha256)
653
653
  body = self.urlencode(query)
654
654
  headers = {
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.bybit import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Balances, CrossBorrowRate, Currencies, Currency, Greeks, Int, Leverage, LeverageTier, LeverageTiers, Market, MarketInterface, Num, Option, OptionChain, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry, TransferEntries
10
+ from ccxt.base.types import Balances, CrossBorrowRate, Currencies, Currency, Greeks, Int, Leverage, LeverageTier, LeverageTiers, Market, MarketInterface, Num, Option, OptionChain, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import AuthenticationError
@@ -6719,7 +6719,7 @@ class bybit(Exchange, ImplicitAPI):
6719
6719
  'status': status,
6720
6720
  })
6721
6721
 
6722
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
6722
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
6723
6723
  """
6724
6724
  fetch a history of internal transfers made on an account
6725
6725
  :see: https://bybit-exchange.github.io/docs/v5/asset/inter-transfer-list
@@ -74,7 +74,7 @@ class coinbaseinternational(Exchange, ImplicitAPI):
74
74
  'fetchCrossBorrowRates': False,
75
75
  'fetchCurrencies': True,
76
76
  'fetchDeposits': True,
77
- 'fetchFundingHistory': False,
77
+ 'fetchFundingHistory': True,
78
78
  'fetchFundingRate': False,
79
79
  'fetchFundingRateHistory': True,
80
80
  'fetchFundingRates': False,
@@ -433,6 +433,77 @@ class coinbaseinternational(Exchange, ImplicitAPI):
433
433
  'previousFundingDatetime': None,
434
434
  }
435
435
 
436
+ async def fetch_funding_history(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
437
+ """
438
+ fetch the history of funding payments paid and received on self account
439
+ :see: https://docs.cdp.coinbase.com/intx/reference/gettransfers
440
+ :param str [symbol]: unified market symbol
441
+ :param int [since]: the earliest time in ms to fetch funding history for
442
+ :param int [limit]: the maximum number of funding history structures to retrieve
443
+ :param dict [params]: extra parameters specific to the exchange API endpoint
444
+ :returns dict: a `funding history structure <https://docs.ccxt.com/#/?id=funding-history-structure>`
445
+ """
446
+ await self.load_markets()
447
+ request: dict = {
448
+ 'type': 'FUNDING',
449
+ }
450
+ market: Market = None
451
+ if symbol is not None:
452
+ market = self.market(symbol)
453
+ portfolios = None
454
+ portfolios, params = self.handle_option_and_params(params, 'fetchFundingHistory', 'portfolios')
455
+ if portfolios is not None:
456
+ request['portfolios'] = portfolios
457
+ if since is not None:
458
+ request['time_from'] = self.iso8601(since)
459
+ if limit is not None:
460
+ request['result_limit'] = limit
461
+ else:
462
+ request['result_limit'] = 100
463
+ response = await self.v1PrivateGetTransfers(self.extend(request, params))
464
+ fundings = self.safe_list(response, 'results', [])
465
+ return self.parse_incomes(fundings, market, since, limit)
466
+
467
+ def parse_income(self, income, market: Market = None):
468
+ #
469
+ # {
470
+ # "amount":"0.0008",
471
+ # "asset":"USDC",
472
+ # "created_at":"2024-02-22T16:00:00Z",
473
+ # "from_portfolio":{
474
+ # "id":"13yuk1fs-1-0",
475
+ # "name":"Eng Test Portfolio - 2",
476
+ # "uuid":"018712f2-5ff9-7de3-9010-xxxxxxxxx"
477
+ # },
478
+ # "instrument_id":"149264164756389888",
479
+ # "instrument_symbol":"ETH-PERP",
480
+ # "position_id":"1xy4v51m-1-2",
481
+ # "status":"PROCESSED",
482
+ # "to_portfolio":{
483
+ # "name":"CB_FUND"
484
+ # },
485
+ # "transfer_type":"FUNDING",
486
+ # "transfer_uuid":"a6b708df-2c44-32c5-bb98-xxxxxxxxxx",
487
+ # "updated_at":"2024-02-22T16:00:00Z"
488
+ # }
489
+ #
490
+ marketId = self.safe_string(income, 'symbol')
491
+ market = self.safe_market(marketId, market, None, 'contract')
492
+ datetime = self.safe_integer(income, 'created_at')
493
+ timestamp = self.parse8601(datetime)
494
+ currencyId = self.safe_string(income, 'asset')
495
+ code = self.safe_currency_code(currencyId)
496
+ return {
497
+ 'info': income,
498
+ 'symbol': market['symbol'],
499
+ 'code': code,
500
+ 'timestamp': timestamp,
501
+ 'datetime': self.iso8601(timestamp),
502
+ 'id': self.safe_string(income, 'transfer_uuid'),
503
+ 'amount': self.safe_number(income, 'amount'),
504
+ 'rate': None,
505
+ }
506
+
436
507
  async def create_deposit_address(self, code: str, params={}):
437
508
  """
438
509
  create a currency deposit address
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinex import ImplicitAPI
8
8
  import asyncio
9
- from ccxt.base.types import Balances, Currencies, Currency, Int, IsolatedBorrowRate, Leverage, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry, TransferEntries
9
+ from ccxt.base.types import Balances, Currencies, Currency, Int, IsolatedBorrowRate, Leverage, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -4680,7 +4680,7 @@ class coinex(Exchange, ImplicitAPI):
4680
4680
  'status': self.parse_transfer_status(self.safe_string_2(transfer, 'code', 'status')),
4681
4681
  }
4682
4682
 
4683
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
4683
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
4684
4684
  """
4685
4685
  fetch a history of internal transfers made on an account
4686
4686
  :see: https://docs.coinex.com/api/v2/assets/transfer/http/list-transfer-history
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinlist import ImplicitAPI
8
8
  import hashlib
9
9
  import math
10
- from ccxt.base.types import Account, Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry, TransferEntries
10
+ from ccxt.base.types import Account, Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import AuthenticationError
@@ -1703,7 +1703,7 @@ class coinlist(Exchange, ImplicitAPI):
1703
1703
  transfer = self.parse_transfer(response, currency)
1704
1704
  return transfer
1705
1705
 
1706
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
1706
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
1707
1707
  """
1708
1708
  fetch a history of internal transfers between CoinList.co and CoinList Pro. It does not return external deposits or withdrawals
1709
1709
  :see: https://trade-docs.coinlist.co/?javascript--nodejs#list-transfers
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.deribit import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Account, Balances, Currencies, Currency, Greeks, Int, Market, MarketInterface, Num, Option, OptionChain, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry, TransferEntries
9
+ from ccxt.base.types import Account, Balances, Currencies, Currency, Greeks, Int, Market, MarketInterface, Num, Option, OptionChain, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -2618,7 +2618,7 @@ class deribit(Exchange, ImplicitAPI):
2618
2618
  })
2619
2619
  return result
2620
2620
 
2621
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
2621
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
2622
2622
  """
2623
2623
  fetch a history of internal transfers made on an account
2624
2624
  :see: https://docs.deribit.com/#private-get_transfers
@@ -8,7 +8,7 @@ from ccxt.abstract.digifinex import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
10
  import json
11
- from ccxt.base.types import Balances, CrossBorrowRate, CrossBorrowRates, Currencies, Currency, Int, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry, TransferEntries
11
+ from ccxt.base.types import Balances, CrossBorrowRate, CrossBorrowRates, Currencies, Currency, Int, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry
12
12
  from typing import List
13
13
  from ccxt.base.errors import ExchangeError
14
14
  from ccxt.base.errors import AuthenticationError
@@ -3462,7 +3462,7 @@ class digifinex(Exchange, ImplicitAPI):
3462
3462
  # }
3463
3463
  #
3464
3464
 
3465
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
3465
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
3466
3466
  """
3467
3467
  fetch the transfer history, only transfers between spot and swap accounts are supported
3468
3468
  :see: https://docs.digifinex.com/en-ww/swap/v2/rest.html#transferrecord
@@ -817,8 +817,6 @@ class hyperliquid(Exchange, ImplicitAPI):
817
817
  until = self.safe_integer(params, 'until', self.milliseconds())
818
818
  if since is None:
819
819
  since = 0
820
- if limit is None:
821
- limit = 500
822
820
  params = self.omit(params, ['until'])
823
821
  request: dict = {
824
822
  'type': 'candleSnapshot',
@@ -1514,20 +1514,26 @@ class kucoin(Exchange, ImplicitAPI):
1514
1514
  },
1515
1515
  'networks': {},
1516
1516
  }
1517
- isWithdrawEnabled = self.safe_bool(fee, 'isWithdrawEnabled')
1517
+ isWithdrawEnabled = self.safe_bool(fee, 'isWithdrawEnabled', True)
1518
+ minFee = None
1518
1519
  if isWithdrawEnabled:
1519
- result['withdraw']['fee'] = self.safe_number_2(fee, 'withdrawalMinFee', 'withdrawMinFee')
1520
1520
  result['withdraw']['percentage'] = False
1521
- networkId = self.safe_string(fee, 'chain')
1522
- if networkId:
1521
+ chains = self.safe_list(fee, 'chains', [])
1522
+ for i in range(0, len(chains)):
1523
+ chain = chains[i]
1524
+ networkId = self.safe_string(chain, 'chainId')
1523
1525
  networkCode = self.network_id_to_code(networkId, self.safe_string(currency, 'code'))
1526
+ withdrawFee = self.safe_string(chain, 'withdrawalMinFee')
1527
+ if minFee is None or (Precise.string_lt(withdrawFee, minFee)):
1528
+ minFee = withdrawFee
1524
1529
  result['networks'][networkCode] = {
1525
- 'withdraw': result['withdraw'],
1530
+ 'withdraw': self.parse_number(withdrawFee),
1526
1531
  'deposit': {
1527
1532
  'fee': None,
1528
1533
  'percentage': None,
1529
1534
  },
1530
1535
  }
1536
+ result['withdraw']['fee'] = self.parse_number(minFee)
1531
1537
  return result
1532
1538
 
1533
1539
  def is_futures_method(self, methodName, params):
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.latoken import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry, TransferEntries
9
+ from ccxt.base.types import Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -1476,7 +1476,7 @@ class latoken(Exchange, ImplicitAPI):
1476
1476
  }
1477
1477
  return self.safe_string(types, type, type)
1478
1478
 
1479
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
1479
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
1480
1480
  """
1481
1481
  fetch a history of internal transfers made on an account
1482
1482
  :see: https://api.latoken.com/doc/v2/#tag/Transfer/operation/getUsersTransfers
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.mexc import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Account, Balances, Currencies, Currency, IndexType, Int, Leverage, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry, TransferEntries
9
+ from ccxt.base.types import Account, Balances, Currencies, Currency, IndexType, Int, Leverage, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -4690,7 +4690,7 @@ class mexc(Exchange, ImplicitAPI):
4690
4690
  raise BadRequest(self.id + ' fetchTransfer() is not supported for ' + marketType)
4691
4691
  return None
4692
4692
 
4693
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
4693
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
4694
4694
  """
4695
4695
  fetch a history of internal transfers made on an account
4696
4696
  :param str code: unified currency code of the currency transferred
ccxt/async_support/okx.py CHANGED
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.okx import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Account, Balances, Conversion, CrossBorrowRate, CrossBorrowRates, Currencies, Currency, Greeks, Int, Leverage, LeverageTier, MarginModification, Market, MarketInterface, Num, Option, OptionChain, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry, TransferEntries
10
+ from ccxt.base.types import Account, Balances, Conversion, CrossBorrowRate, CrossBorrowRates, Currencies, Currency, Greeks, Int, Leverage, LeverageTier, MarginModification, Market, MarketInterface, Num, Option, OptionChain, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry
11
11
  from typing import List
12
12
  from typing import Any
13
13
  from ccxt.base.errors import ExchangeError
@@ -5524,7 +5524,7 @@ class okx(Exchange, ImplicitAPI):
5524
5524
  transfer = self.safe_dict(data, 0)
5525
5525
  return self.parse_transfer(transfer)
5526
5526
 
5527
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
5527
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
5528
5528
  """
5529
5529
  fetch a history of internal transfers made on an account
5530
5530
  :see: https://www.okx.com/docs-v5/en/#trading-account-rest-api-get-bills-details-last-3-months
@@ -1969,7 +1969,7 @@ class oxfun(Exchange, ImplicitAPI):
1969
1969
  async def withdraw(self, code: str, amount: float, address: str, tag=None, params={}):
1970
1970
  """
1971
1971
  make a withdrawal
1972
- :see: https://docs.bitflex.com/spot#withdraw
1972
+ :see: https://docs.ox.fun/?json#post-v3-withdrawal
1973
1973
  :param str code: unified currency code
1974
1974
  :param float amount: the amount to withdraw
1975
1975
  :param str address: the address to withdraw to
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.phemex import ImplicitAPI
8
8
  import hashlib
9
9
  import numbers
10
- from ccxt.base.types import Balances, Currencies, Currency, Int, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry, TransferEntries
10
+ from ccxt.base.types import Balances, Currencies, Currency, Int, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import AuthenticationError
@@ -4233,7 +4233,7 @@ class phemex(Exchange, ImplicitAPI):
4233
4233
  transfer['currency'] = code
4234
4234
  return transfer
4235
4235
 
4236
- async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> TransferEntries:
4236
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
4237
4237
  """
4238
4238
  fetch a history of internal transfers made on an account
4239
4239
  :param str code: unified currency code of the currency transferred