ccxt 4.1.54__py2.py3-none-any.whl → 4.1.56__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.

Files changed (251) hide show
  1. ccxt/__init__.py +2 -2
  2. ccxt/abstract/binance.py +1 -0
  3. ccxt/abstract/binancecoinm.py +1 -0
  4. ccxt/abstract/binanceus.py +1 -0
  5. ccxt/abstract/binanceusdm.py +1 -0
  6. ccxt/abstract/bitbank.py +1 -0
  7. ccxt/abstract/coinbase.py +2 -0
  8. ccxt/abstract/htx.py +3 -0
  9. ccxt/abstract/huobi.py +3 -0
  10. ccxt/abstract/huobipro.py +3 -0
  11. ccxt/abstract/okex.py +3 -1
  12. ccxt/abstract/okex5.py +3 -1
  13. ccxt/abstract/okx.py +3 -1
  14. ccxt/ace.py +23 -23
  15. ccxt/alpaca.py +8 -8
  16. ccxt/ascendex.py +26 -26
  17. ccxt/async_support/__init__.py +2 -2
  18. ccxt/async_support/ace.py +23 -23
  19. ccxt/async_support/alpaca.py +8 -8
  20. ccxt/async_support/ascendex.py +26 -26
  21. ccxt/async_support/base/exchange.py +4 -2216
  22. ccxt/async_support/bigone.py +21 -24
  23. ccxt/async_support/binance.py +61 -54
  24. ccxt/async_support/bingx.py +28 -28
  25. ccxt/async_support/bit2c.py +9 -9
  26. ccxt/async_support/bitbank.py +11 -10
  27. ccxt/async_support/bitbns.py +11 -11
  28. ccxt/async_support/bitfinex.py +15 -15
  29. ccxt/async_support/bitfinex2.py +22 -22
  30. ccxt/async_support/bitflyer.py +13 -13
  31. ccxt/async_support/bitforex.py +10 -10
  32. ccxt/async_support/bitget.py +44 -44
  33. ccxt/async_support/bithumb.py +9 -9
  34. ccxt/async_support/bitmart.py +85 -104
  35. ccxt/async_support/bitmex.py +27 -27
  36. ccxt/async_support/bitopro.py +18 -18
  37. ccxt/async_support/bitpanda.py +18 -18
  38. ccxt/async_support/bitrue.py +14 -14
  39. ccxt/async_support/bitso.py +17 -17
  40. ccxt/async_support/bitstamp.py +17 -17
  41. ccxt/async_support/bittrex.py +22 -24
  42. ccxt/async_support/bitvavo.py +15 -15
  43. ccxt/async_support/bl3p.py +4 -4
  44. ccxt/async_support/blockchaincom.py +17 -17
  45. ccxt/async_support/btcalpha.py +14 -14
  46. ccxt/async_support/btcbox.py +9 -9
  47. ccxt/async_support/btcmarkets.py +17 -17
  48. ccxt/async_support/btcturk.py +9 -9
  49. ccxt/async_support/bybit.py +46 -46
  50. ccxt/async_support/cex.py +10 -10
  51. ccxt/async_support/coinbase.py +69 -25
  52. ccxt/async_support/coinbasepro.py +19 -19
  53. ccxt/async_support/coincheck.py +10 -10
  54. ccxt/async_support/coinex.py +57 -66
  55. ccxt/async_support/coinlist.py +22 -22
  56. ccxt/async_support/coinmate.py +10 -10
  57. ccxt/async_support/coinone.py +10 -10
  58. ccxt/async_support/coinsph.py +17 -17
  59. ccxt/async_support/coinspot.py +5 -5
  60. ccxt/async_support/cryptocom.py +27 -27
  61. ccxt/async_support/currencycom.py +18 -18
  62. ccxt/async_support/delta.py +21 -21
  63. ccxt/async_support/deribit.py +24 -24
  64. ccxt/async_support/digifinex.py +35 -35
  65. ccxt/async_support/exmo.py +19 -19
  66. ccxt/async_support/gate.py +38 -38
  67. ccxt/async_support/gemini.py +11 -11
  68. ccxt/async_support/hitbtc.py +27 -27
  69. ccxt/async_support/hollaex.py +19 -19
  70. ccxt/async_support/htx.py +47 -44
  71. ccxt/async_support/huobijp.py +22 -22
  72. ccxt/async_support/idex.py +20 -20
  73. ccxt/async_support/independentreserve.py +9 -9
  74. ccxt/async_support/indodax.py +10 -10
  75. ccxt/async_support/kraken.py +25 -25
  76. ccxt/async_support/krakenfutures.py +17 -17
  77. ccxt/async_support/kucoin.py +27 -27
  78. ccxt/async_support/kucoinfutures.py +20 -20
  79. ccxt/async_support/kuna.py +19 -19
  80. ccxt/async_support/latoken.py +14 -14
  81. ccxt/async_support/lbank.py +18 -18
  82. ccxt/async_support/luno.py +14 -14
  83. ccxt/async_support/lykke.py +12 -12
  84. ccxt/async_support/mercado.py +11 -11
  85. ccxt/async_support/mexc.py +36 -36
  86. ccxt/async_support/ndax.py +18 -18
  87. ccxt/async_support/novadax.py +17 -17
  88. ccxt/async_support/oceanex.py +12 -12
  89. ccxt/async_support/okcoin.py +19 -19
  90. ccxt/async_support/okx.py +48 -45
  91. ccxt/async_support/p2b.py +6 -6
  92. ccxt/async_support/paymium.py +6 -6
  93. ccxt/async_support/phemex.py +57 -57
  94. ccxt/async_support/poloniex.py +31 -30
  95. ccxt/async_support/poloniexfutures.py +16 -16
  96. ccxt/async_support/probit.py +22 -22
  97. ccxt/async_support/tidex.py +15 -15
  98. ccxt/async_support/timex.py +20 -20
  99. ccxt/async_support/tokocrypto.py +16 -16
  100. ccxt/async_support/upbit.py +15 -15
  101. ccxt/async_support/wavesexchange.py +12 -12
  102. ccxt/async_support/wazirx.py +13 -13
  103. ccxt/async_support/whitebit.py +26 -26
  104. ccxt/async_support/woo.py +47 -47
  105. ccxt/async_support/yobit.py +8 -8
  106. ccxt/async_support/zaif.py +10 -10
  107. ccxt/async_support/zonda.py +16 -16
  108. ccxt/base/errors.py +17 -16
  109. ccxt/base/exchange.py +57 -97
  110. ccxt/base/types.py +138 -139
  111. ccxt/bigone.py +21 -24
  112. ccxt/binance.py +61 -54
  113. ccxt/bingx.py +28 -28
  114. ccxt/bit2c.py +9 -9
  115. ccxt/bitbank.py +11 -10
  116. ccxt/bitbns.py +11 -11
  117. ccxt/bitfinex.py +15 -15
  118. ccxt/bitfinex2.py +22 -22
  119. ccxt/bitflyer.py +13 -13
  120. ccxt/bitforex.py +10 -10
  121. ccxt/bitget.py +44 -44
  122. ccxt/bithumb.py +9 -9
  123. ccxt/bitmart.py +85 -104
  124. ccxt/bitmex.py +27 -27
  125. ccxt/bitopro.py +18 -18
  126. ccxt/bitpanda.py +18 -18
  127. ccxt/bitrue.py +14 -14
  128. ccxt/bitso.py +17 -17
  129. ccxt/bitstamp.py +17 -17
  130. ccxt/bittrex.py +22 -24
  131. ccxt/bitvavo.py +15 -15
  132. ccxt/bl3p.py +4 -4
  133. ccxt/blockchaincom.py +17 -17
  134. ccxt/btcalpha.py +14 -14
  135. ccxt/btcbox.py +9 -9
  136. ccxt/btcmarkets.py +17 -17
  137. ccxt/btcturk.py +9 -9
  138. ccxt/bybit.py +46 -46
  139. ccxt/cex.py +10 -10
  140. ccxt/coinbase.py +69 -25
  141. ccxt/coinbasepro.py +19 -19
  142. ccxt/coincheck.py +10 -10
  143. ccxt/coinex.py +57 -66
  144. ccxt/coinlist.py +22 -22
  145. ccxt/coinmate.py +10 -10
  146. ccxt/coinone.py +10 -10
  147. ccxt/coinsph.py +17 -17
  148. ccxt/coinspot.py +5 -5
  149. ccxt/cryptocom.py +27 -27
  150. ccxt/currencycom.py +18 -18
  151. ccxt/delta.py +21 -21
  152. ccxt/deribit.py +24 -24
  153. ccxt/digifinex.py +35 -35
  154. ccxt/exmo.py +19 -19
  155. ccxt/gate.py +38 -38
  156. ccxt/gemini.py +11 -11
  157. ccxt/hitbtc.py +27 -27
  158. ccxt/hollaex.py +19 -19
  159. ccxt/htx.py +47 -44
  160. ccxt/huobijp.py +22 -22
  161. ccxt/idex.py +20 -20
  162. ccxt/independentreserve.py +9 -9
  163. ccxt/indodax.py +10 -10
  164. ccxt/kraken.py +25 -25
  165. ccxt/krakenfutures.py +17 -17
  166. ccxt/kucoin.py +27 -27
  167. ccxt/kucoinfutures.py +20 -20
  168. ccxt/kuna.py +19 -19
  169. ccxt/latoken.py +14 -14
  170. ccxt/lbank.py +18 -18
  171. ccxt/luno.py +14 -14
  172. ccxt/lykke.py +12 -12
  173. ccxt/mercado.py +11 -11
  174. ccxt/mexc.py +36 -36
  175. ccxt/ndax.py +18 -18
  176. ccxt/novadax.py +17 -17
  177. ccxt/oceanex.py +12 -12
  178. ccxt/okcoin.py +19 -19
  179. ccxt/okx.py +48 -45
  180. ccxt/p2b.py +6 -6
  181. ccxt/paymium.py +6 -6
  182. ccxt/phemex.py +57 -57
  183. ccxt/poloniex.py +31 -30
  184. ccxt/poloniexfutures.py +16 -16
  185. ccxt/pro/__init__.py +1 -1
  186. ccxt/pro/alpaca.py +3 -3
  187. ccxt/pro/ascendex.py +2 -2
  188. ccxt/pro/binance.py +9 -9
  189. ccxt/pro/bingx.py +3 -3
  190. ccxt/pro/bitfinex.py +3 -3
  191. ccxt/pro/bitfinex2.py +3 -3
  192. ccxt/pro/bitget.py +3 -3
  193. ccxt/pro/bitmart.py +2 -2
  194. ccxt/pro/bitmex.py +3 -3
  195. ccxt/pro/bitpanda.py +3 -3
  196. ccxt/pro/bitrue.py +2 -2
  197. ccxt/pro/bitstamp.py +2 -2
  198. ccxt/pro/bittrex.py +3 -3
  199. ccxt/pro/bitvavo.py +3 -3
  200. ccxt/pro/blockchaincom.py +2 -2
  201. ccxt/pro/bybit.py +4 -4
  202. ccxt/pro/cex.py +3 -3
  203. ccxt/pro/coinbasepro.py +3 -3
  204. ccxt/pro/coinex.py +2 -2
  205. ccxt/pro/cryptocom.py +5 -5
  206. ccxt/pro/deribit.py +3 -3
  207. ccxt/pro/exmo.py +2 -2
  208. ccxt/pro/gate.py +3 -3
  209. ccxt/pro/gemini.py +2 -2
  210. ccxt/pro/hitbtc.py +4 -4
  211. ccxt/pro/hollaex.py +3 -3
  212. ccxt/pro/htx.py +3 -3
  213. ccxt/pro/idex.py +3 -3
  214. ccxt/pro/kraken.py +7 -7
  215. ccxt/pro/krakenfutures.py +4 -4
  216. ccxt/pro/kucoin.py +3 -3
  217. ccxt/pro/kucoinfutures.py +3 -3
  218. ccxt/pro/mexc.py +3 -3
  219. ccxt/pro/okcoin.py +2 -2
  220. ccxt/pro/okx.py +6 -6
  221. ccxt/pro/phemex.py +3 -3
  222. ccxt/pro/poloniex.py +3 -3
  223. ccxt/pro/poloniexfutures.py +3 -3
  224. ccxt/pro/probit.py +3 -3
  225. ccxt/pro/wazirx.py +3 -3
  226. ccxt/pro/whitebit.py +3 -3
  227. ccxt/pro/woo.py +2 -2
  228. ccxt/probit.py +22 -22
  229. ccxt/test/base/test_shared_methods.py +3 -3
  230. ccxt/test/test_async.py +543 -535
  231. ccxt/test/test_sync.py +542 -534
  232. ccxt/tidex.py +15 -15
  233. ccxt/timex.py +20 -20
  234. ccxt/tokocrypto.py +16 -16
  235. ccxt/upbit.py +15 -15
  236. ccxt/wavesexchange.py +12 -12
  237. ccxt/wazirx.py +13 -13
  238. ccxt/whitebit.py +26 -26
  239. ccxt/woo.py +47 -47
  240. ccxt/yobit.py +8 -8
  241. ccxt/zaif.py +10 -10
  242. ccxt/zonda.py +16 -16
  243. {ccxt-4.1.54.dist-info → ccxt-4.1.56.dist-info}/METADATA +10 -8
  244. ccxt-4.1.56.dist-info/RECORD +449 -0
  245. ccxt/async_support/bitstamp1.py +0 -402
  246. ccxt/async_support/lbank2.py +0 -2620
  247. ccxt/bitstamp1.py +0 -402
  248. ccxt/lbank2.py +0 -2619
  249. ccxt-4.1.54.dist-info/RECORD +0 -453
  250. {ccxt-4.1.54.dist-info → ccxt-4.1.56.dist-info}/WHEEL +0 -0
  251. {ccxt-4.1.54.dist-info → ccxt-4.1.56.dist-info}/top_level.txt +0 -0
ccxt/pro/probit.py CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  import ccxt.async_support
7
7
  from ccxt.async_support.base.ws.cache import ArrayCache, ArrayCacheBySymbolById
8
- from ccxt.base.types import Int, String
8
+ from ccxt.base.types import Int, Str
9
9
  from ccxt.async_support.base.ws.client import Client
10
10
  from ccxt.base.errors import ExchangeError
11
11
  from ccxt.base.errors import NotSupported
@@ -215,7 +215,7 @@ class probit(ccxt.async_support.probit):
215
215
  self.trades[symbol] = stored
216
216
  client.resolve(self.trades[symbol], messageHash)
217
217
 
218
- async def watch_my_trades(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
218
+ async def watch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
219
219
  """
220
220
  get the list of trades associated with the user
221
221
  :param str symbol: unified symbol of the market to fetch trades for
@@ -287,7 +287,7 @@ class probit(ccxt.async_support.probit):
287
287
  client.resolve(stored, symbolSpecificMessageHash)
288
288
  client.resolve(stored, messageHash)
289
289
 
290
- async def watch_orders(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
290
+ async def watch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
291
291
  """
292
292
  watches information on an order made by the user
293
293
  :see: https://docs-en.probit.com/reference/open_order
ccxt/pro/wazirx.py CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  import ccxt.async_support
7
7
  from ccxt.async_support.base.ws.cache import ArrayCache, ArrayCacheBySymbolById, ArrayCacheByTimestamp
8
- from ccxt.base.types import Int, String, Strings
8
+ from ccxt.base.types import Int, Str, Strings
9
9
  from ccxt.async_support.base.ws.client import Client
10
10
  from ccxt.base.errors import ExchangeError
11
11
  from ccxt.base.errors import NotSupported
@@ -339,7 +339,7 @@ class wazirx(ccxt.async_support.wazirx):
339
339
  trades.append(parsedTrade)
340
340
  client.resolve(trades, messageHash)
341
341
 
342
- async def watch_my_trades(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
342
+ async def watch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
343
343
  """
344
344
  watch trades by user
345
345
  :see: https://docs.wazirx.com/#trade-update
@@ -520,7 +520,7 @@ class wazirx(ccxt.async_support.wazirx):
520
520
  self.orderbooks[symbol] = currentOrderBook
521
521
  client.resolve(self.orderbooks[symbol], messageHash)
522
522
 
523
- async def watch_orders(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
523
+ async def watch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
524
524
  await self.load_markets()
525
525
  if symbol is not None:
526
526
  market = self.market(symbol)
ccxt/pro/whitebit.py CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  import ccxt.async_support
7
7
  from ccxt.async_support.base.ws.cache import ArrayCache, ArrayCacheBySymbolById, ArrayCacheByTimestamp
8
- from ccxt.base.types import Int, String
8
+ from ccxt.base.types import Int, Str
9
9
  from ccxt.async_support.base.ws.client import Client
10
10
  from ccxt.base.errors import BadRequest
11
11
  from ccxt.base.errors import AuthenticationError
@@ -346,7 +346,7 @@ class whitebit(ccxt.async_support.whitebit):
346
346
  messageHash = 'trades:' + market['symbol']
347
347
  client.resolve(stored, messageHash)
348
348
 
349
- async def watch_my_trades(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
349
+ async def watch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
350
350
  """
351
351
  watches trades made by the user
352
352
  :param str symbol: unified market symbol
@@ -438,7 +438,7 @@ class whitebit(ccxt.async_support.whitebit):
438
438
  'fee': fee,
439
439
  }, market)
440
440
 
441
- async def watch_orders(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
441
+ async def watch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
442
442
  """
443
443
  watches information on multiple orders made by the user
444
444
  :param str symbol: unified market symbol of the market orders were made in
ccxt/pro/woo.py CHANGED
@@ -6,7 +6,7 @@
6
6
  import ccxt.async_support
7
7
  from ccxt.async_support.base.ws.cache import ArrayCache, ArrayCacheBySymbolById, ArrayCacheByTimestamp
8
8
  import hashlib
9
- from ccxt.base.types import Int, String, Strings
9
+ from ccxt.base.types import Int, Str, Strings
10
10
  from ccxt.async_support.base.ws.client import Client
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -436,7 +436,7 @@ class woo(ccxt.async_support.woo):
436
436
  request = self.extend(subscribe, message)
437
437
  return await self.watch(url, messageHash, request, messageHash, subscribe)
438
438
 
439
- async def watch_orders(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
439
+ async def watch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
440
440
  await self.load_markets()
441
441
  topic = 'executionreport'
442
442
  messageHash = topic
ccxt/probit.py CHANGED
@@ -6,7 +6,7 @@
6
6
  from ccxt.base.exchange import Exchange
7
7
  from ccxt.abstract.probit import ImplicitAPI
8
8
  import math
9
- from ccxt.base.types import Balances, Int, Market, Order, OrderBook, OrderSide, OrderType, String, Strings, Ticker, Tickers, Trade, Transaction
9
+ from ccxt.base.types import Balances, Currency, Int, Market, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import BadRequest
@@ -643,7 +643,7 @@ class probit(Exchange, ImplicitAPI):
643
643
  raise BadResponse(self.id + ' fetchTicker() returned an empty response')
644
644
  return self.parse_ticker(ticker, market)
645
645
 
646
- def parse_ticker(self, ticker, market=None) -> Ticker:
646
+ def parse_ticker(self, ticker, market: Market = None) -> Ticker:
647
647
  #
648
648
  # {
649
649
  # "last":"0.022902",
@@ -686,7 +686,7 @@ class probit(Exchange, ImplicitAPI):
686
686
  'info': ticker,
687
687
  }, market)
688
688
 
689
- def fetch_my_trades(self, symbol: String = None, since: Int = None, limit: Int = None, params={}):
689
+ def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
690
690
  """
691
691
  :see: https://docs-en.probit.com/reference/trade
692
692
  fetch all trades made by the user
@@ -697,7 +697,7 @@ class probit(Exchange, ImplicitAPI):
697
697
  :returns Trade[]: a list of `trade structures <https://github.com/ccxt/ccxt/wiki/Manual#trade-structure>`
698
698
  """
699
699
  self.load_markets()
700
- market = None
700
+ market: Market = None
701
701
  now = self.milliseconds()
702
702
  request = {
703
703
  'limit': 100,
@@ -783,7 +783,7 @@ class probit(Exchange, ImplicitAPI):
783
783
  data = self.safe_value(response, 'data', [])
784
784
  return self.parse_trades(data, market, since, limit)
785
785
 
786
- def parse_trade(self, trade, market=None) -> Trade:
786
+ def parse_trade(self, trade, market: Market = None) -> Trade:
787
787
  #
788
788
  # fetchTrades(public)
789
789
  #
@@ -814,7 +814,7 @@ class probit(Exchange, ImplicitAPI):
814
814
  #
815
815
  timestamp = self.parse8601(self.safe_string(trade, 'time'))
816
816
  id = self.safe_string(trade, 'id')
817
- marketId = None
817
+ marketId: Str = None
818
818
  if id is not None:
819
819
  parts = id.split(':')
820
820
  marketId = self.safe_string(parts, 0)
@@ -870,7 +870,7 @@ class probit(Exchange, ImplicitAPI):
870
870
  parts = iso8601.split('-')
871
871
  year = self.safe_string(parts, 0)
872
872
  month = self.safe_integer(parts, 1)
873
- monthString = None
873
+ monthString: Str = None
874
874
  if after:
875
875
  monthString = self.sum(month, str(1))
876
876
  if month < 10:
@@ -953,7 +953,7 @@ class probit(Exchange, ImplicitAPI):
953
953
  data = self.safe_value(response, 'data', [])
954
954
  return self.parse_ohlcvs(data, market, timeframe, since, limit)
955
955
 
956
- def parse_ohlcv(self, ohlcv, market=None) -> list:
956
+ def parse_ohlcv(self, ohlcv, market: Market = None) -> list:
957
957
  #
958
958
  # {
959
959
  # "market_id":"ETH-BTC",
@@ -976,7 +976,7 @@ class probit(Exchange, ImplicitAPI):
976
976
  self.safe_number(ohlcv, 'base_volume'),
977
977
  ]
978
978
 
979
- def fetch_open_orders(self, symbol: String = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
979
+ def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
980
980
  """
981
981
  :see: https://docs-en.probit.com/reference/open_order-1
982
982
  fetch all unfilled currently open orders
@@ -989,7 +989,7 @@ class probit(Exchange, ImplicitAPI):
989
989
  self.load_markets()
990
990
  since = self.parse8601(since)
991
991
  request = {}
992
- market = None
992
+ market: Market = None
993
993
  if symbol is not None:
994
994
  market = self.market(symbol)
995
995
  request['market_id'] = market['id']
@@ -997,7 +997,7 @@ class probit(Exchange, ImplicitAPI):
997
997
  data = self.safe_value(response, 'data')
998
998
  return self.parse_orders(data, market, since, limit)
999
999
 
1000
- def fetch_closed_orders(self, symbol: String = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
1000
+ def fetch_closed_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
1001
1001
  """
1002
1002
  :see: https://docs-en.probit.com/reference/order
1003
1003
  fetches information on multiple closed orders made by the user
@@ -1013,7 +1013,7 @@ class probit(Exchange, ImplicitAPI):
1013
1013
  'end_time': self.iso8601(self.milliseconds()),
1014
1014
  'limit': 100,
1015
1015
  }
1016
- market = None
1016
+ market: Market = None
1017
1017
  if symbol is not None:
1018
1018
  market = self.market(symbol)
1019
1019
  request['market_id'] = market['id']
@@ -1025,7 +1025,7 @@ class probit(Exchange, ImplicitAPI):
1025
1025
  data = self.safe_value(response, 'data')
1026
1026
  return self.parse_orders(data, market, since, limit)
1027
1027
 
1028
- def fetch_order(self, id: str, symbol: String = None, params={}):
1028
+ def fetch_order(self, id: str, symbol: Str = None, params={}):
1029
1029
  """
1030
1030
  :see: https://docs-en.probit.com/reference/order-3
1031
1031
  fetches information on an order made by the user
@@ -1058,7 +1058,7 @@ class probit(Exchange, ImplicitAPI):
1058
1058
  }
1059
1059
  return self.safe_string(statuses, status, status)
1060
1060
 
1061
- def parse_order(self, order, market=None) -> Order:
1061
+ def parse_order(self, order, market: Market = None) -> Order:
1062
1062
  #
1063
1063
  # {
1064
1064
  # id,
@@ -1206,7 +1206,7 @@ class probit(Exchange, ImplicitAPI):
1206
1206
  order['remaining'] = None
1207
1207
  return order
1208
1208
 
1209
- def cancel_order(self, id: str, symbol: String = None, params={}):
1209
+ def cancel_order(self, id: str, symbol: Str = None, params={}):
1210
1210
  """
1211
1211
  :see: https://docs-en.probit.com/reference/order-2
1212
1212
  cancels an open order
@@ -1226,7 +1226,7 @@ class probit(Exchange, ImplicitAPI):
1226
1226
  data = self.safe_value(response, 'data')
1227
1227
  return self.parse_order(data)
1228
1228
 
1229
- def parse_deposit_address(self, depositAddress, currency=None):
1229
+ def parse_deposit_address(self, depositAddress, currency: Currency = None):
1230
1230
  address = self.safe_string(depositAddress, 'address')
1231
1231
  tag = self.safe_string(depositAddress, 'destination_tag')
1232
1232
  currencyId = self.safe_string(depositAddress, 'currency_id')
@@ -1355,7 +1355,7 @@ class probit(Exchange, ImplicitAPI):
1355
1355
  data = self.safe_value(response, 'data')
1356
1356
  return self.parse_transaction(data, currency)
1357
1357
 
1358
- def fetch_deposits(self, code: String = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
1358
+ def fetch_deposits(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
1359
1359
  """
1360
1360
  fetch all deposits made to an account
1361
1361
  :param str code: unified currency code
@@ -1370,7 +1370,7 @@ class probit(Exchange, ImplicitAPI):
1370
1370
  result = self.fetch_transactions(code, since, limit, self.extend(request, params))
1371
1371
  return result
1372
1372
 
1373
- def fetch_withdrawals(self, code: String = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
1373
+ def fetch_withdrawals(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
1374
1374
  """
1375
1375
  fetch all withdrawals made to an account
1376
1376
  :param str code: unified currency code
@@ -1385,7 +1385,7 @@ class probit(Exchange, ImplicitAPI):
1385
1385
  result = self.fetch_transactions(code, since, limit, self.extend(request, params))
1386
1386
  return result
1387
1387
 
1388
- def fetch_transactions(self, code: String = None, since: Int = None, limit: Int = None, params={}):
1388
+ def fetch_transactions(self, code: Str = None, since: Int = None, limit: Int = None, params={}):
1389
1389
  """
1390
1390
  * @deprecated
1391
1391
  use fetchDepositsWithdrawals instead
@@ -1398,7 +1398,7 @@ class probit(Exchange, ImplicitAPI):
1398
1398
  :returns dict[]: a list of `transaction structures <https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure>`
1399
1399
  """
1400
1400
  self.load_markets()
1401
- currency = None
1401
+ currency: Currency = None
1402
1402
  request = {}
1403
1403
  if code is not None:
1404
1404
  currency = self.currency(code)
@@ -1445,7 +1445,7 @@ class probit(Exchange, ImplicitAPI):
1445
1445
  data = self.safe_value(response, 'data', {})
1446
1446
  return self.parse_transactions(data, currency, since, limit)
1447
1447
 
1448
- def parse_transaction(self, transaction, currency=None) -> Transaction:
1448
+ def parse_transaction(self, transaction, currency: Currency = None) -> Transaction:
1449
1449
  #
1450
1450
  # {
1451
1451
  # "id": "01211d4b-0e68-41d6-97cb-298bfe2cab67",
@@ -1589,7 +1589,7 @@ class probit(Exchange, ImplicitAPI):
1589
1589
  data = self.safe_value(response, 'data')
1590
1590
  return self.parse_deposit_withdraw_fees(data, codes, 'id')
1591
1591
 
1592
- def parse_deposit_withdraw_fee(self, fee, currency=None):
1592
+ def parse_deposit_withdraw_fee(self, fee, currency: Currency = None):
1593
1593
  #
1594
1594
  # {
1595
1595
  # "id": "USDT",
@@ -104,7 +104,7 @@ def assert_timestamp(exchange, skipped_properties, method, entry, now_to_check=N
104
104
  ts = entry[key_name_or_index]
105
105
  if ts is not None:
106
106
  assert isinstance(ts, numbers.Real), 'timestamp is not numeric' + log_text
107
- assert isinstance(ts, numbers.Integral), 'timestamp should be an integer' + log_text
107
+ assert isinstance(ts, int), 'timestamp should be an integer' + log_text
108
108
  min_ts = 1230940800000 # 03 Jan 2009 - first block
109
109
  max_ts = 2147483648000 # 03 Jan 2009 - first block
110
110
  assert ts > min_ts, 'timestamp is impossible to be before ' + str(min_ts) + ' (03.01.2009)' + log_text # 03 Jan 2009 - first block
@@ -243,7 +243,7 @@ def assert_in_array(exchange, skipped_properties, method, entry, key, expected_a
243
243
  def assert_fee_structure(exchange, skipped_properties, method, entry, key):
244
244
  log_text = log_template(exchange, method, entry)
245
245
  key_string = string_value(key)
246
- if isinstance(key, numbers.Integral):
246
+ if isinstance(key, int):
247
247
  assert isinstance(entry, list), 'fee container is expected to be an array' + log_text
248
248
  assert key < len(entry), 'fee key ' + key_string + ' was expected to be present in entry' + log_text
249
249
  else:
@@ -277,7 +277,7 @@ def assert_integer(exchange, skipped_properties, method, entry, key):
277
277
  if entry is not None:
278
278
  value = exchange.safe_value(entry, key)
279
279
  if value is not None:
280
- is_integer = isinstance(value, numbers.Integral)
280
+ is_integer = isinstance(value, int)
281
281
  assert is_integer, '\"' + string_value(key) + '\" key (value \"' + string_value(value) + '\") is not an integer' + log_text
282
282
 
283
283