ccxt 4.4.57__py2.py3-none-any.whl → 4.4.59__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 (310) hide show
  1. ccxt/__init__.py +1 -3
  2. ccxt/abstract/xt.py +1 -0
  3. ccxt/ace.py +2 -2
  4. ccxt/alpaca.py +4 -4
  5. ccxt/ascendex.py +5 -3
  6. ccxt/async_support/__init__.py +1 -3
  7. ccxt/async_support/ace.py +2 -2
  8. ccxt/async_support/alpaca.py +4 -4
  9. ccxt/async_support/ascendex.py +5 -3
  10. ccxt/async_support/base/exchange.py +1 -1
  11. ccxt/async_support/bequant.py +2 -1
  12. ccxt/async_support/bigone.py +5 -5
  13. ccxt/async_support/binance.py +22 -6
  14. ccxt/async_support/binancecoinm.py +2 -1
  15. ccxt/async_support/binanceus.py +2 -1
  16. ccxt/async_support/binanceusdm.py +2 -1
  17. ccxt/async_support/bingx.py +3 -3
  18. ccxt/async_support/bit2c.py +9 -9
  19. ccxt/async_support/bitbank.py +2 -2
  20. ccxt/async_support/bitbns.py +2 -2
  21. ccxt/async_support/bitcoincom.py +2 -1
  22. ccxt/async_support/bitfinex.py +2 -2
  23. ccxt/async_support/bitfinex1.py +2 -2
  24. ccxt/async_support/bitflyer.py +2 -2
  25. ccxt/async_support/bitget.py +8 -3
  26. ccxt/async_support/bithumb.py +2 -2
  27. ccxt/async_support/bitmart.py +150 -89
  28. ccxt/async_support/bitmex.py +2 -2
  29. ccxt/async_support/bitopro.py +2 -2
  30. ccxt/async_support/bitpanda.py +2 -1
  31. ccxt/async_support/bitrue.py +3 -3
  32. ccxt/async_support/bitso.py +2 -2
  33. ccxt/async_support/bitstamp.py +2 -2
  34. ccxt/async_support/bitteam.py +2 -2
  35. ccxt/async_support/bitvavo.py +3 -3
  36. ccxt/async_support/bl3p.py +2 -2
  37. ccxt/async_support/blockchaincom.py +2 -2
  38. ccxt/async_support/blofin.py +3 -4
  39. ccxt/async_support/btcalpha.py +2 -2
  40. ccxt/async_support/btcbox.py +2 -2
  41. ccxt/async_support/btcmarkets.py +3 -3
  42. ccxt/async_support/btcturk.py +2 -2
  43. ccxt/async_support/bybit.py +17 -6
  44. ccxt/async_support/cex.py +3 -3
  45. ccxt/async_support/coinbase.py +12 -5
  46. ccxt/async_support/coinbaseadvanced.py +2 -1
  47. ccxt/async_support/coinbaseexchange.py +3 -3
  48. ccxt/async_support/coinbaseinternational.py +3 -4
  49. ccxt/async_support/coincatch.py +3 -3
  50. ccxt/async_support/coincheck.py +2 -2
  51. ccxt/async_support/coinex.py +3 -3
  52. ccxt/async_support/coinlist.py +3 -3
  53. ccxt/async_support/coinmate.py +2 -2
  54. ccxt/async_support/coinmetro.py +2 -2
  55. ccxt/async_support/coinone.py +2 -2
  56. ccxt/async_support/coinsph.py +3 -3
  57. ccxt/async_support/coinspot.py +2 -2
  58. ccxt/async_support/cryptocom.py +2 -2
  59. ccxt/async_support/currencycom.py +3 -3
  60. ccxt/async_support/defx.py +3 -3
  61. ccxt/async_support/delta.py +3 -3
  62. ccxt/async_support/deribit.py +3 -3
  63. ccxt/async_support/digifinex.py +3 -3
  64. ccxt/async_support/ellipx.py +1 -1
  65. ccxt/async_support/exmo.py +2 -2
  66. ccxt/async_support/fmfwio.py +2 -1
  67. ccxt/async_support/gate.py +3 -3
  68. ccxt/async_support/gateio.py +2 -1
  69. ccxt/async_support/gemini.py +2 -2
  70. ccxt/async_support/hashkey.py +2 -2
  71. ccxt/async_support/hitbtc.py +3 -3
  72. ccxt/async_support/hollaex.py +2 -2
  73. ccxt/async_support/htx.py +3 -3
  74. ccxt/async_support/huobi.py +2 -1
  75. ccxt/async_support/huobijp.py +3 -3
  76. ccxt/async_support/hyperliquid.py +91 -6
  77. ccxt/async_support/idex.py +3 -3
  78. ccxt/async_support/independentreserve.py +2 -2
  79. ccxt/async_support/indodax.py +3 -3
  80. ccxt/async_support/kraken.py +3 -3
  81. ccxt/async_support/krakenfutures.py +2 -2
  82. ccxt/async_support/kucoin.py +3 -3
  83. ccxt/async_support/kucoinfutures.py +3 -3
  84. ccxt/async_support/kuna.py +3 -3
  85. ccxt/async_support/latoken.py +3 -3
  86. ccxt/async_support/lbank.py +3 -3
  87. ccxt/async_support/luno.py +2 -2
  88. ccxt/async_support/mercado.py +2 -2
  89. ccxt/async_support/mexc.py +3 -3
  90. ccxt/async_support/myokx.py +2 -1
  91. ccxt/async_support/ndax.py +2 -2
  92. ccxt/async_support/novadax.py +3 -3
  93. ccxt/async_support/oceanex.py +3 -3
  94. ccxt/async_support/okcoin.py +3 -3
  95. ccxt/async_support/okx.py +3 -4
  96. ccxt/async_support/onetrading.py +3 -3
  97. ccxt/async_support/oxfun.py +2 -2
  98. ccxt/async_support/p2b.py +2 -2
  99. ccxt/async_support/paradex.py +3 -3
  100. ccxt/async_support/paymium.py +2 -2
  101. ccxt/async_support/phemex.py +2 -2
  102. ccxt/async_support/poloniex.py +3 -3
  103. ccxt/async_support/poloniexfutures.py +3 -3
  104. ccxt/async_support/probit.py +3 -3
  105. ccxt/async_support/timex.py +15 -5
  106. ccxt/async_support/tokocrypto.py +3 -3
  107. ccxt/async_support/tradeogre.py +2 -2
  108. ccxt/async_support/upbit.py +2 -2
  109. ccxt/async_support/vertex.py +5 -5
  110. ccxt/async_support/wavesexchange.py +2 -3
  111. ccxt/async_support/whitebit.py +5 -4
  112. ccxt/async_support/woo.py +3 -4
  113. ccxt/async_support/woofipro.py +3 -4
  114. ccxt/async_support/xt.py +57 -4
  115. ccxt/async_support/yobit.py +2 -2
  116. ccxt/async_support/zaif.py +2 -2
  117. ccxt/async_support/zonda.py +2 -2
  118. ccxt/base/exchange.py +5 -4
  119. ccxt/bequant.py +2 -1
  120. ccxt/bigone.py +5 -5
  121. ccxt/binance.py +22 -6
  122. ccxt/binancecoinm.py +2 -1
  123. ccxt/binanceus.py +2 -1
  124. ccxt/binanceusdm.py +2 -1
  125. ccxt/bingx.py +3 -3
  126. ccxt/bit2c.py +9 -9
  127. ccxt/bitbank.py +2 -2
  128. ccxt/bitbns.py +2 -2
  129. ccxt/bitcoincom.py +2 -1
  130. ccxt/bitfinex.py +2 -2
  131. ccxt/bitfinex1.py +2 -2
  132. ccxt/bitflyer.py +2 -2
  133. ccxt/bitget.py +8 -3
  134. ccxt/bithumb.py +2 -2
  135. ccxt/bitmart.py +150 -89
  136. ccxt/bitmex.py +2 -2
  137. ccxt/bitopro.py +2 -2
  138. ccxt/bitpanda.py +2 -1
  139. ccxt/bitrue.py +3 -3
  140. ccxt/bitso.py +2 -2
  141. ccxt/bitstamp.py +2 -2
  142. ccxt/bitteam.py +2 -2
  143. ccxt/bitvavo.py +3 -3
  144. ccxt/bl3p.py +2 -2
  145. ccxt/blockchaincom.py +2 -2
  146. ccxt/blofin.py +3 -4
  147. ccxt/btcalpha.py +2 -2
  148. ccxt/btcbox.py +2 -2
  149. ccxt/btcmarkets.py +3 -3
  150. ccxt/btcturk.py +2 -2
  151. ccxt/bybit.py +17 -6
  152. ccxt/cex.py +3 -3
  153. ccxt/coinbase.py +12 -5
  154. ccxt/coinbaseadvanced.py +2 -1
  155. ccxt/coinbaseexchange.py +3 -3
  156. ccxt/coinbaseinternational.py +3 -4
  157. ccxt/coincatch.py +3 -3
  158. ccxt/coincheck.py +2 -2
  159. ccxt/coinex.py +3 -3
  160. ccxt/coinlist.py +3 -3
  161. ccxt/coinmate.py +2 -2
  162. ccxt/coinmetro.py +2 -2
  163. ccxt/coinone.py +2 -2
  164. ccxt/coinsph.py +3 -3
  165. ccxt/coinspot.py +2 -2
  166. ccxt/cryptocom.py +2 -2
  167. ccxt/currencycom.py +3 -3
  168. ccxt/defx.py +3 -3
  169. ccxt/delta.py +3 -3
  170. ccxt/deribit.py +3 -3
  171. ccxt/digifinex.py +3 -3
  172. ccxt/ellipx.py +1 -1
  173. ccxt/exmo.py +2 -2
  174. ccxt/fmfwio.py +2 -1
  175. ccxt/gate.py +3 -3
  176. ccxt/gateio.py +2 -1
  177. ccxt/gemini.py +2 -2
  178. ccxt/hashkey.py +2 -2
  179. ccxt/hitbtc.py +3 -3
  180. ccxt/hollaex.py +2 -2
  181. ccxt/htx.py +3 -3
  182. ccxt/huobi.py +2 -1
  183. ccxt/huobijp.py +3 -3
  184. ccxt/hyperliquid.py +91 -6
  185. ccxt/idex.py +3 -3
  186. ccxt/independentreserve.py +2 -2
  187. ccxt/indodax.py +3 -3
  188. ccxt/kraken.py +3 -3
  189. ccxt/krakenfutures.py +2 -2
  190. ccxt/kucoin.py +3 -3
  191. ccxt/kucoinfutures.py +3 -3
  192. ccxt/kuna.py +3 -3
  193. ccxt/latoken.py +3 -3
  194. ccxt/lbank.py +3 -3
  195. ccxt/luno.py +2 -2
  196. ccxt/mercado.py +2 -2
  197. ccxt/mexc.py +3 -3
  198. ccxt/myokx.py +2 -1
  199. ccxt/ndax.py +2 -2
  200. ccxt/novadax.py +3 -3
  201. ccxt/oceanex.py +3 -3
  202. ccxt/okcoin.py +3 -3
  203. ccxt/okx.py +3 -4
  204. ccxt/onetrading.py +3 -3
  205. ccxt/oxfun.py +2 -2
  206. ccxt/p2b.py +2 -2
  207. ccxt/paradex.py +3 -3
  208. ccxt/paymium.py +2 -2
  209. ccxt/phemex.py +2 -2
  210. ccxt/poloniex.py +3 -3
  211. ccxt/poloniexfutures.py +3 -3
  212. ccxt/pro/__init__.py +1 -3
  213. ccxt/pro/alpaca.py +2 -2
  214. ccxt/pro/ascendex.py +2 -2
  215. ccxt/pro/bequant.py +2 -1
  216. ccxt/pro/binance.py +2 -3
  217. ccxt/pro/binancecoinm.py +2 -1
  218. ccxt/pro/binanceus.py +3 -2
  219. ccxt/pro/binanceusdm.py +2 -1
  220. ccxt/pro/bingx.py +2 -2
  221. ccxt/pro/bitcoincom.py +2 -1
  222. ccxt/pro/bitfinex.py +2 -2
  223. ccxt/pro/bitfinex1.py +2 -2
  224. ccxt/pro/bitget.py +2 -3
  225. ccxt/pro/bithumb.py +2 -2
  226. ccxt/pro/bitmart.py +2 -2
  227. ccxt/pro/bitmex.py +2 -2
  228. ccxt/pro/bitopro.py +2 -2
  229. ccxt/pro/bitpanda.py +2 -1
  230. ccxt/pro/bitrue.py +2 -2
  231. ccxt/pro/bitstamp.py +2 -2
  232. ccxt/pro/bitvavo.py +2 -2
  233. ccxt/pro/blockchaincom.py +2 -2
  234. ccxt/pro/blofin.py +1 -1
  235. ccxt/pro/bybit.py +6 -4
  236. ccxt/pro/cex.py +2 -2
  237. ccxt/pro/coinbase.py +2 -2
  238. ccxt/pro/coinbaseadvanced.py +2 -1
  239. ccxt/pro/coinbaseexchange.py +2 -2
  240. ccxt/pro/coinbaseinternational.py +2 -2
  241. ccxt/pro/coincatch.py +2 -3
  242. ccxt/pro/coincheck.py +2 -2
  243. ccxt/pro/coinex.py +2 -2
  244. ccxt/pro/coinone.py +2 -2
  245. ccxt/pro/cryptocom.py +2 -3
  246. ccxt/pro/currencycom.py +2 -2
  247. ccxt/pro/defx.py +2 -3
  248. ccxt/pro/deribit.py +2 -2
  249. ccxt/pro/exmo.py +2 -2
  250. ccxt/pro/gate.py +2 -3
  251. ccxt/pro/gateio.py +2 -1
  252. ccxt/pro/gemini.py +2 -2
  253. ccxt/pro/hashkey.py +2 -2
  254. ccxt/pro/hitbtc.py +2 -2
  255. ccxt/pro/hollaex.py +2 -2
  256. ccxt/pro/htx.py +2 -2
  257. ccxt/pro/huobi.py +2 -1
  258. ccxt/pro/huobijp.py +2 -2
  259. ccxt/pro/hyperliquid.py +2 -3
  260. ccxt/pro/idex.py +2 -2
  261. ccxt/pro/independentreserve.py +2 -2
  262. ccxt/pro/kraken.py +2 -2
  263. ccxt/pro/krakenfutures.py +2 -2
  264. ccxt/pro/kucoin.py +2 -3
  265. ccxt/pro/kucoinfutures.py +2 -3
  266. ccxt/pro/lbank.py +2 -2
  267. ccxt/pro/luno.py +2 -2
  268. ccxt/pro/mexc.py +5 -3
  269. ccxt/pro/myokx.py +2 -1
  270. ccxt/pro/ndax.py +2 -2
  271. ccxt/pro/okcoin.py +2 -2
  272. ccxt/pro/okx.py +2 -3
  273. ccxt/pro/onetrading.py +2 -2
  274. ccxt/pro/oxfun.py +2 -2
  275. ccxt/pro/p2b.py +2 -2
  276. ccxt/pro/paradex.py +2 -2
  277. ccxt/pro/phemex.py +2 -2
  278. ccxt/pro/poloniex.py +2 -2
  279. ccxt/pro/poloniexfutures.py +2 -2
  280. ccxt/pro/probit.py +2 -2
  281. ccxt/pro/upbit.py +2 -2
  282. ccxt/pro/vertex.py +2 -2
  283. ccxt/pro/wazirx.py +2 -2
  284. ccxt/pro/whitebit.py +2 -2
  285. ccxt/pro/woo.py +2 -2
  286. ccxt/pro/woofipro.py +2 -2
  287. ccxt/pro/xt.py +2 -2
  288. ccxt/probit.py +3 -3
  289. ccxt/test/tests_init.py +2 -2
  290. ccxt/timex.py +15 -5
  291. ccxt/tokocrypto.py +3 -3
  292. ccxt/tradeogre.py +2 -2
  293. ccxt/upbit.py +2 -2
  294. ccxt/vertex.py +5 -5
  295. ccxt/wavesexchange.py +2 -3
  296. ccxt/whitebit.py +5 -4
  297. ccxt/woo.py +3 -4
  298. ccxt/woofipro.py +3 -4
  299. ccxt/xt.py +57 -4
  300. ccxt/yobit.py +2 -2
  301. ccxt/zaif.py +2 -2
  302. ccxt/zonda.py +2 -2
  303. {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/METADATA +30 -33
  304. {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/RECORD +307 -310
  305. ccxt/abstract/wazirx.py +0 -30
  306. ccxt/async_support/wazirx.py +0 -1336
  307. ccxt/wazirx.py +0 -1336
  308. {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/LICENSE.txt +0 -0
  309. {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/WHEEL +0 -0
  310. {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/top_level.txt +0 -0
@@ -5,7 +5,7 @@
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.bitteam import ImplicitAPI
8
- from ccxt.base.types import Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
8
+ from ccxt.base.types import Any, Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
9
9
  from typing import List
10
10
  from ccxt.base.errors import ExchangeError
11
11
  from ccxt.base.errors import AuthenticationError
@@ -21,7 +21,7 @@ from ccxt.base.precise import Precise
21
21
 
22
22
  class bitteam(Exchange, ImplicitAPI):
23
23
 
24
- def describe(self):
24
+ def describe(self) -> Any:
25
25
  return self.deep_extend(super(bitteam, self).describe(), {
26
26
  'id': 'bitteam',
27
27
  'name': 'BIT.TEAM',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.bitvavo import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
9
+ from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -31,7 +31,7 @@ from ccxt.base.precise import Precise
31
31
 
32
32
  class bitvavo(Exchange, ImplicitAPI):
33
33
 
34
- def describe(self):
34
+ def describe(self) -> Any:
35
35
  return self.deep_extend(super(bitvavo, self).describe(), {
36
36
  'id': 'bitvavo',
37
37
  'name': 'Bitvavo',
@@ -382,7 +382,7 @@ class bitvavo(Exchange, ImplicitAPI):
382
382
  # Prices submit with a precision larger than 5 will be cut by the API.
383
383
  return self.decimal_to_precision(price, TRUNCATE, 8, DECIMAL_PLACES)
384
384
 
385
- async def fetch_time(self, params={}):
385
+ async def fetch_time(self, params={}) -> Int:
386
386
  """
387
387
  fetches the current integer timestamp in milliseconds from the exchange server
388
388
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.bl3p import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, IndexType, Int, Market, Num, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees
9
+ from ccxt.base.types import Any, Balances, Currency, IndexType, Int, Market, Num, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees
10
10
  from typing import List
11
11
  from ccxt.base.decimal_to_precision import TICK_SIZE
12
12
  from ccxt.base.precise import Precise
@@ -14,7 +14,7 @@ from ccxt.base.precise import Precise
14
14
 
15
15
  class bl3p(Exchange, ImplicitAPI):
16
16
 
17
- def describe(self):
17
+ def describe(self) -> Any:
18
18
  return self.deep_extend(super(bl3p, self).describe(), {
19
19
  'id': 'bl3p',
20
20
  'name': 'BL3P',
@@ -5,7 +5,7 @@
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.blockchaincom import ImplicitAPI
8
- from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
8
+ from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
9
9
  from typing import List
10
10
  from ccxt.base.errors import ExchangeError
11
11
  from ccxt.base.errors import AuthenticationError
@@ -18,7 +18,7 @@ from ccxt.base.precise import Precise
18
18
 
19
19
  class blockchaincom(Exchange, ImplicitAPI):
20
20
 
21
- def describe(self):
21
+ def describe(self) -> Any:
22
22
  return self.deep_extend(super(blockchaincom, self).describe(), {
23
23
  'id': 'blockchaincom',
24
24
  'secret': None,
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.blofin import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, Int, LedgerEntry, Leverage, Leverages, MarginMode, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, Trade, TradingFeeInterface, Transaction, TransferEntry
9
+ from ccxt.base.types import Any, Balances, Currency, Int, LedgerEntry, Leverage, Leverages, MarginMode, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, 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
@@ -22,7 +22,7 @@ from ccxt.base.precise import Precise
22
22
 
23
23
  class blofin(Exchange, ImplicitAPI):
24
24
 
25
- def describe(self):
25
+ def describe(self) -> Any:
26
26
  return self.deep_extend(super(blofin, self).describe(), {
27
27
  'id': 'blofin',
28
28
  'name': 'BloFin',
@@ -328,8 +328,7 @@ class blofin(Exchange, ImplicitAPI):
328
328
  'takeProfitPrice': True,
329
329
  'attachedStopLossTakeProfit': {
330
330
  'triggerPriceType': None,
331
- 'limit': True,
332
- 'price': None,
331
+ 'price': True,
333
332
  },
334
333
  'hedged': True,
335
334
  },
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.btcalpha import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, IndexType, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
9
+ from ccxt.base.types import Any, Balances, Currency, IndexType, Int, Market, Num, 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 InsufficientFunds
@@ -17,7 +17,7 @@ from ccxt.base.precise import Precise
17
17
 
18
18
  class btcalpha(Exchange, ImplicitAPI):
19
19
 
20
- def describe(self):
20
+ def describe(self) -> Any:
21
21
  return self.deep_extend(super(btcalpha, self).describe(), {
22
22
  'id': 'btcalpha',
23
23
  'name': 'BTC-Alpha',
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.btcbox import ImplicitAPI
8
8
  import hashlib
9
9
  import json
10
- from ccxt.base.types import Balances, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
10
+ from ccxt.base.types import Any, Balances, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import AuthenticationError
@@ -23,7 +23,7 @@ from ccxt.base.precise import Precise
23
23
 
24
24
  class btcbox(Exchange, ImplicitAPI):
25
25
 
26
- def describe(self):
26
+ def describe(self) -> Any:
27
27
  return self.deep_extend(super(btcbox, self).describe(), {
28
28
  'id': 'btcbox',
29
29
  'name': 'BtcBox',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.btcmarkets import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, Transaction
9
+ from ccxt.base.types import Any, Balances, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import ArgumentsRequired
@@ -20,7 +20,7 @@ from ccxt.base.precise import Precise
20
20
 
21
21
  class btcmarkets(Exchange, ImplicitAPI):
22
22
 
23
- def describe(self):
23
+ def describe(self) -> Any:
24
24
  return self.deep_extend(super(btcmarkets, self).describe(), {
25
25
  'id': 'btcmarkets',
26
26
  'name': 'BTC Markets',
@@ -532,7 +532,7 @@ class btcmarkets(Exchange, ImplicitAPI):
532
532
  'info': market,
533
533
  }
534
534
 
535
- async def fetch_time(self, params={}):
535
+ async def fetch_time(self, params={}) -> Int:
536
536
  """
537
537
  fetches the current integer timestamp in milliseconds from the exchange server
538
538
 
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.btcturk import ImplicitAPI
8
8
  import hashlib
9
9
  import math
10
- from ccxt.base.types import Balances, Bool, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
10
+ from ccxt.base.types import Any, Balances, Bool, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import BadRequest
@@ -19,7 +19,7 @@ from ccxt.base.precise import Precise
19
19
 
20
20
  class btcturk(Exchange, ImplicitAPI):
21
21
 
22
- def describe(self):
22
+ def describe(self) -> Any:
23
23
  return self.deep_extend(super(btcturk, self).describe(), {
24
24
  'id': 'btcturk',
25
25
  'name': 'BTCTurk',
@@ -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, BorrowInterest, Conversion, CrossBorrowRate, Currencies, Currency, DepositAddress, Greeks, Int, LedgerEntry, Leverage, LeverageTier, LeverageTiers, LongShortRatio, Market, Num, Option, OptionChain, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, TradingFees, Transaction, MarketInterface, TransferEntry
10
+ from ccxt.base.types import Any, Balances, BorrowInterest, Conversion, CrossBorrowRate, Currencies, Currency, DepositAddress, Greeks, Int, LedgerEntry, Leverage, LeverageTier, LeverageTiers, LongShortRatio, Market, Num, Option, OptionChain, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, TradingFees, Transaction, MarketInterface, TransferEntry
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import AuthenticationError
@@ -32,7 +32,7 @@ from ccxt.base.precise import Precise
32
32
 
33
33
  class bybit(Exchange, ImplicitAPI):
34
34
 
35
- def describe(self):
35
+ def describe(self) -> Any:
36
36
  return self.deep_extend(super(bybit, self).describe(), {
37
37
  'id': 'bybit',
38
38
  'name': 'Bybit',
@@ -1421,8 +1421,8 @@ class bybit(Exchange, ImplicitAPI):
1421
1421
 
1422
1422
  def create_expired_option_market(self, symbol: str):
1423
1423
  # support expired option contracts
1424
- quote = 'USD'
1425
- settle = 'USDC'
1424
+ quote = None
1425
+ settle = None
1426
1426
  optionParts = symbol.split('-')
1427
1427
  symbolBase = symbol.split('/')
1428
1428
  base = None
@@ -1430,9 +1430,20 @@ class bybit(Exchange, ImplicitAPI):
1430
1430
  if symbol.find('/') > -1:
1431
1431
  base = self.safe_string(symbolBase, 0)
1432
1432
  expiry = self.safe_string(optionParts, 1)
1433
+ symbolQuoteAndSettle = self.safe_string(symbolBase, 1)
1434
+ splitQuote = symbolQuoteAndSettle.split(':')
1435
+ quoteAndSettle = self.safe_string(splitQuote, 0)
1436
+ quote = quoteAndSettle
1437
+ settle = quoteAndSettle
1433
1438
  else:
1434
1439
  base = self.safe_string(optionParts, 0)
1435
1440
  expiry = self.convert_market_id_expire_date(self.safe_string(optionParts, 1))
1441
+ if symbol.endswith('-USDT'):
1442
+ quote = 'USDT'
1443
+ settle = 'USDT'
1444
+ else:
1445
+ quote = 'USDC'
1446
+ settle = 'USDC'
1436
1447
  strike = self.safe_string(optionParts, 2)
1437
1448
  optionType = self.safe_string(optionParts, 3)
1438
1449
  datetime = self.convert_expire_date(expiry)
@@ -1536,7 +1547,7 @@ class bybit(Exchange, ImplicitAPI):
1536
1547
  return self.cost_to_precision(symbol, cost)
1537
1548
  return cost
1538
1549
 
1539
- async def fetch_time(self, params={}):
1550
+ async def fetch_time(self, params={}) -> Int:
1540
1551
  """
1541
1552
  fetches the current integer timestamp in milliseconds from the exchange server
1542
1553
 
@@ -3896,7 +3907,7 @@ class bybit(Exchange, ImplicitAPI):
3896
3907
  elif price is not None:
3897
3908
  request['qty'] = self.get_cost(symbol, Precise.string_mul(amountString, priceString))
3898
3909
  else:
3899
- request['qty'] = self.get_cost(symbol, self.number_to_string(amount))
3910
+ request['qty'] = amountString
3900
3911
  else:
3901
3912
  if not isTrailingAmountOrder and not isAlternativeEndpoint:
3902
3913
  request['qty'] = amountString
ccxt/async_support/cex.py CHANGED
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.cex import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Account, Balances, Currencies, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry
10
+ from ccxt.base.types import Account, Any, Balances, Currencies, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, 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
@@ -22,7 +22,7 @@ from ccxt.base.precise import Precise
22
22
 
23
23
  class cex(Exchange, ImplicitAPI):
24
24
 
25
- def describe(self):
25
+ def describe(self) -> Any:
26
26
  return self.deep_extend(super(cex, self).describe(), {
27
27
  'id': 'cex',
28
28
  'name': 'CEX.IO',
@@ -460,7 +460,7 @@ class cex(Exchange, ImplicitAPI):
460
460
  'info': market,
461
461
  })
462
462
 
463
- async def fetch_time(self, params={}):
463
+ async def fetch_time(self, params={}) -> Int:
464
464
  """
465
465
  fetches the current integer timestamp in milliseconds from the exchange server
466
466
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinbase import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Account, Balances, Conversion, Currencies, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, MarketInterface
10
+ from ccxt.base.types import Account, Any, Balances, Conversion, Currencies, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, MarketInterface
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import AuthenticationError
@@ -25,13 +25,13 @@ from ccxt.base.precise import Precise
25
25
 
26
26
  class coinbase(Exchange, ImplicitAPI):
27
27
 
28
- def describe(self):
28
+ def describe(self) -> Any:
29
29
  return self.deep_extend(super(coinbase, self).describe(), {
30
30
  'id': 'coinbase',
31
31
  'name': 'Coinbase Advanced',
32
32
  'countries': ['US'],
33
33
  'pro': True,
34
- 'certified': True,
34
+ 'certified': False,
35
35
  # rate-limits:
36
36
  # ADVANCED API: https://docs.cloud.coinbase.com/advanced-trade/docs/rest-api-rate-limits
37
37
  # - max 30 req/second for private data, 10 req/s for public data
@@ -474,7 +474,7 @@ class coinbase(Exchange, ImplicitAPI):
474
474
  },
475
475
  })
476
476
 
477
- async def fetch_time(self, params={}):
477
+ async def fetch_time(self, params={}) -> Int:
478
478
  """
479
479
  fetches the current integer timestamp in milliseconds from the exchange server
480
480
 
@@ -4796,10 +4796,17 @@ class coinbase(Exchange, ImplicitAPI):
4796
4796
  # }
4797
4797
  # ]
4798
4798
  # }
4799
+ # or
4800
+ # {
4801
+ # "error": "UNKNOWN_FAILURE_REASON",
4802
+ # "message": "",
4803
+ # "error_details": "",
4804
+ # "preview_failure_reason": "PREVIEW_STOP_PRICE_BELOW_LAST_TRADE_PRICE"
4805
+ # }
4799
4806
  #
4800
4807
  errorCode = self.safe_string(response, 'error')
4801
4808
  if errorCode is not None:
4802
- errorMessage = self.safe_string(response, 'error_description')
4809
+ errorMessage = self.safe_string_2(response, 'error_description', 'preview_failure_reason')
4803
4810
  self.throw_exactly_matched_exception(self.exceptions['exact'], errorCode, feedback)
4804
4811
  self.throw_broadly_matched_exception(self.exceptions['broad'], errorMessage, feedback)
4805
4812
  raise ExchangeError(feedback)
@@ -5,11 +5,12 @@
5
5
 
6
6
  from ccxt.async_support.coinbase import coinbase
7
7
  from ccxt.abstract.coinbaseadvanced import ImplicitAPI
8
+ from ccxt.base.types import Any
8
9
 
9
10
 
10
11
  class coinbaseadvanced(coinbase, ImplicitAPI):
11
12
 
12
- def describe(self):
13
+ def describe(self) -> Any:
13
14
  return self.deep_extend(super(coinbaseadvanced, self).describe(), {
14
15
  'id': 'coinbaseadvanced',
15
16
  'name': 'Coinbase Advanced',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinbaseexchange import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Account, Balances, Currencies, Currency, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
9
+ from ccxt.base.types import Account, Any, Balances, Currencies, Currency, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -24,7 +24,7 @@ from ccxt.base.precise import Precise
24
24
 
25
25
  class coinbaseexchange(Exchange, ImplicitAPI):
26
26
 
27
- def describe(self):
27
+ def describe(self) -> Any:
28
28
  return self.deep_extend(super(coinbaseexchange, self).describe(), {
29
29
  'id': 'coinbaseexchange',
30
30
  'name': 'Coinbase Exchange',
@@ -1051,7 +1051,7 @@ class coinbaseexchange(Exchange, ImplicitAPI):
1051
1051
  #
1052
1052
  return self.parse_ohlcvs(response, market, timeframe, since, limit)
1053
1053
 
1054
- async def fetch_time(self, params={}):
1054
+ async def fetch_time(self, params={}) -> Int:
1055
1055
  """
1056
1056
  fetches the current integer timestamp in milliseconds from the exchange server
1057
1057
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -6,9 +6,8 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinbaseinternational import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, Int, Market, Order, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry
9
+ from ccxt.base.types import Any, Balances, Currencies, Currency, Int, Market, Order, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry
10
10
  from typing import List
11
- from typing import Any
12
11
  from ccxt.base.errors import ExchangeError
13
12
  from ccxt.base.errors import AuthenticationError
14
13
  from ccxt.base.errors import PermissionDenied
@@ -22,12 +21,12 @@ from ccxt.base.precise import Precise
22
21
 
23
22
  class coinbaseinternational(Exchange, ImplicitAPI):
24
23
 
25
- def describe(self):
24
+ def describe(self) -> Any:
26
25
  return self.deep_extend(super(coinbaseinternational, self).describe(), {
27
26
  'id': 'coinbaseinternational',
28
27
  'name': 'Coinbase International',
29
28
  'countries': ['US'],
30
- 'certified': True,
29
+ 'certified': False,
31
30
  'pro': True,
32
31
  'rateLimit': 100, # 10 requests per second
33
32
  'version': 'v1',
@@ -8,7 +8,7 @@ from ccxt.abstract.coincatch import ImplicitAPI
8
8
  import hashlib
9
9
  import math
10
10
  import json
11
- from ccxt.base.types import Balances, Bool, Currencies, Currency, DepositAddress, Int, LedgerEntry, Leverage, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, Trade, Transaction, TransferEntry
11
+ from ccxt.base.types import Any, Balances, Bool, Currencies, Currency, DepositAddress, Int, LedgerEntry, Leverage, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, 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
@@ -30,7 +30,7 @@ from ccxt.base.precise import Precise
30
30
 
31
31
  class coincatch(Exchange, ImplicitAPI):
32
32
 
33
- def describe(self):
33
+ def describe(self) -> Any:
34
34
  return self.deep_extend(super(coincatch, self).describe(), {
35
35
  'id': 'coincatch',
36
36
  'name': 'CoinCatch',
@@ -586,7 +586,7 @@ class coincatch(Exchange, ImplicitAPI):
586
586
  else:
587
587
  return cost
588
588
 
589
- async def fetch_time(self, params={}):
589
+ async def fetch_time(self, params={}) -> Int:
590
590
  """
591
591
  fetches the current integer timestamp in milliseconds from the exchange server
592
592
 
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coincheck import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees, Transaction
9
+ from ccxt.base.types import Any, Balances, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -16,7 +16,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
16
16
 
17
17
  class coincheck(Exchange, ImplicitAPI):
18
18
 
19
- def describe(self):
19
+ def describe(self) -> Any:
20
20
  return self.deep_extend(super(coincheck, self).describe(), {
21
21
  'id': 'coincheck',
22
22
  'name': 'coincheck',
@@ -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, BorrowInterest, Currencies, Currency, DepositAddress, Int, IsolatedBorrowRate, Leverage, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry
9
+ from ccxt.base.types import Any, Balances, BorrowInterest, Currencies, Currency, DepositAddress, Int, IsolatedBorrowRate, Leverage, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, 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
@@ -28,7 +28,7 @@ from ccxt.base.precise import Precise
28
28
 
29
29
  class coinex(Exchange, ImplicitAPI):
30
30
 
31
- def describe(self):
31
+ def describe(self) -> Any:
32
32
  return self.deep_extend(super(coinex, self).describe(), {
33
33
  'id': 'coinex',
34
34
  'name': 'CoinEx',
@@ -1206,7 +1206,7 @@ class coinex(Exchange, ImplicitAPI):
1206
1206
  data = self.safe_list(response, 'data', [])
1207
1207
  return self.parse_tickers(data, symbols)
1208
1208
 
1209
- async def fetch_time(self, params={}):
1209
+ async def fetch_time(self, params={}) -> Int:
1210
1210
  """
1211
1211
  fetches the current integer timestamp in milliseconds from the exchange server
1212
1212
 
@@ -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, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry
10
+ from ccxt.base.types import Account, Any, Balances, Currencies, Currency, Int, LedgerEntry, 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
@@ -27,7 +27,7 @@ from ccxt.base.precise import Precise
27
27
 
28
28
  class coinlist(Exchange, ImplicitAPI):
29
29
 
30
- def describe(self):
30
+ def describe(self) -> Any:
31
31
  return self.deep_extend(super(coinlist, self).describe(), {
32
32
  'id': 'coinlist',
33
33
  'name': 'Coinlist',
@@ -405,7 +405,7 @@ class coinlist(Exchange, ImplicitAPI):
405
405
  return int(math.ceil(length / 2))
406
406
  return 1
407
407
 
408
- async def fetch_time(self, params={}):
408
+ async def fetch_time(self, params={}) -> Int:
409
409
  """
410
410
  fetches the current integer timestamp in milliseconds from the exchange server
411
411
 
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinmate import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction
9
+ from ccxt.base.types import Any, Balances, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -21,7 +21,7 @@ from ccxt.base.precise import Precise
21
21
 
22
22
  class coinmate(Exchange, ImplicitAPI):
23
23
 
24
- def describe(self):
24
+ def describe(self) -> Any:
25
25
  return self.deep_extend(super(coinmate, self).describe(), {
26
26
  'id': 'coinmate',
27
27
  'name': 'CoinMate',
@@ -5,7 +5,7 @@
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinmetro import ImplicitAPI
8
- from ccxt.base.types import Balances, Currencies, Currency, IndexType, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
8
+ from ccxt.base.types import Any, Balances, Currencies, Currency, IndexType, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
9
9
  from typing import List
10
10
  from ccxt.base.errors import ExchangeError
11
11
  from ccxt.base.errors import PermissionDenied
@@ -22,7 +22,7 @@ from ccxt.base.precise import Precise
22
22
 
23
23
  class coinmetro(Exchange, ImplicitAPI):
24
24
 
25
- def describe(self):
25
+ def describe(self) -> Any:
26
26
  return self.deep_extend(super(coinmetro, self).describe(), {
27
27
  'id': 'coinmetro',
28
28
  'name': 'Coinmetro',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinone import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
9
+ from ccxt.base.types import Any, Balances, Currencies, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import ArgumentsRequired
@@ -20,7 +20,7 @@ from ccxt.base.precise import Precise
20
20
 
21
21
  class coinone(Exchange, ImplicitAPI):
22
22
 
23
- def describe(self):
23
+ def describe(self) -> Any:
24
24
  return self.deep_extend(super(coinone, self).describe(), {
25
25
  'id': 'coinone',
26
26
  'name': 'CoinOne',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinsph import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction
9
+ from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -30,7 +30,7 @@ from ccxt.base.precise import Precise
30
30
 
31
31
  class coinsph(Exchange, ImplicitAPI):
32
32
 
33
- def describe(self):
33
+ def describe(self) -> Any:
34
34
  return self.deep_extend(super(coinsph, self).describe(), {
35
35
  'id': 'coinsph',
36
36
  'name': 'Coins.ph',
@@ -541,7 +541,7 @@ class coinsph(Exchange, ImplicitAPI):
541
541
  'info': response,
542
542
  }
543
543
 
544
- async def fetch_time(self, params={}):
544
+ async def fetch_time(self, params={}) -> Int:
545
545
  """
546
546
  fetches the current integer timestamp in milliseconds from the exchange server
547
547
 
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.coinspot import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Int, Market, Num, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
9
+ from ccxt.base.types import Any, Balances, Int, Market, Num, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import ArgumentsRequired
@@ -16,7 +16,7 @@ from ccxt.base.precise import Precise
16
16
 
17
17
  class coinspot(Exchange, ImplicitAPI):
18
18
 
19
- def describe(self):
19
+ def describe(self) -> Any:
20
20
  return self.deep_extend(super(coinspot, self).describe(), {
21
21
  'id': 'coinspot',
22
22
  'name': 'CoinSpot',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.cryptocom import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Account, Balances, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction
9
+ from ccxt.base.types import Account, Any, Balances, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -30,7 +30,7 @@ from ccxt.base.precise import Precise
30
30
 
31
31
  class cryptocom(Exchange, ImplicitAPI):
32
32
 
33
- def describe(self):
33
+ def describe(self) -> Any:
34
34
  return self.deep_extend(super(cryptocom, self).describe(), {
35
35
  'id': 'cryptocom',
36
36
  'name': 'Crypto.com',