ccxt 4.4.58__py2.py3-none-any.whl → 4.4.60__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 (311) hide show
  1. ccxt/__init__.py +1 -3
  2. ccxt/ace.py +2 -2
  3. ccxt/alpaca.py +12 -7
  4. ccxt/ascendex.py +3 -3
  5. ccxt/async_support/__init__.py +1 -3
  6. ccxt/async_support/ace.py +2 -2
  7. ccxt/async_support/alpaca.py +12 -7
  8. ccxt/async_support/ascendex.py +3 -3
  9. ccxt/async_support/base/exchange.py +4 -1
  10. ccxt/async_support/bequant.py +2 -1
  11. ccxt/async_support/bigone.py +5 -5
  12. ccxt/async_support/binance.py +84 -4
  13. ccxt/async_support/binancecoinm.py +2 -1
  14. ccxt/async_support/binanceus.py +2 -1
  15. ccxt/async_support/binanceusdm.py +2 -1
  16. ccxt/async_support/bingx.py +3 -3
  17. ccxt/async_support/bit2c.py +9 -9
  18. ccxt/async_support/bitbank.py +2 -2
  19. ccxt/async_support/bitbns.py +2 -2
  20. ccxt/async_support/bitcoincom.py +2 -1
  21. ccxt/async_support/bitfinex.py +2 -2
  22. ccxt/async_support/bitfinex1.py +2 -2
  23. ccxt/async_support/bitflyer.py +2 -2
  24. ccxt/async_support/bitget.py +6 -5
  25. ccxt/async_support/bithumb.py +2 -2
  26. ccxt/async_support/bitmart.py +137 -86
  27. ccxt/async_support/bitmex.py +2 -2
  28. ccxt/async_support/bitopro.py +2 -2
  29. ccxt/async_support/bitpanda.py +2 -1
  30. ccxt/async_support/bitrue.py +3 -3
  31. ccxt/async_support/bitso.py +2 -2
  32. ccxt/async_support/bitstamp.py +2 -2
  33. ccxt/async_support/bitteam.py +2 -2
  34. ccxt/async_support/bitvavo.py +3 -3
  35. ccxt/async_support/bl3p.py +2 -2
  36. ccxt/async_support/blockchaincom.py +2 -2
  37. ccxt/async_support/blofin.py +2 -2
  38. ccxt/async_support/btcalpha.py +2 -2
  39. ccxt/async_support/btcbox.py +2 -2
  40. ccxt/async_support/btcmarkets.py +3 -3
  41. ccxt/async_support/btcturk.py +2 -2
  42. ccxt/async_support/bybit.py +9 -6
  43. ccxt/async_support/cex.py +3 -3
  44. ccxt/async_support/coinbase.py +4 -4
  45. ccxt/async_support/coinbaseadvanced.py +2 -1
  46. ccxt/async_support/coinbaseexchange.py +3 -3
  47. ccxt/async_support/coinbaseinternational.py +3 -4
  48. ccxt/async_support/coincatch.py +3 -3
  49. ccxt/async_support/coincheck.py +2 -2
  50. ccxt/async_support/coinex.py +3 -3
  51. ccxt/async_support/coinlist.py +3 -3
  52. ccxt/async_support/coinmate.py +2 -2
  53. ccxt/async_support/coinmetro.py +2 -2
  54. ccxt/async_support/coinone.py +2 -2
  55. ccxt/async_support/coinsph.py +3 -3
  56. ccxt/async_support/coinspot.py +2 -2
  57. ccxt/async_support/cryptocom.py +2 -2
  58. ccxt/async_support/currencycom.py +3 -3
  59. ccxt/async_support/defx.py +3 -3
  60. ccxt/async_support/delta.py +3 -3
  61. ccxt/async_support/deribit.py +3 -3
  62. ccxt/async_support/digifinex.py +3 -3
  63. ccxt/async_support/ellipx.py +1 -1
  64. ccxt/async_support/exmo.py +2 -2
  65. ccxt/async_support/fmfwio.py +2 -1
  66. ccxt/async_support/gate.py +3 -3
  67. ccxt/async_support/gateio.py +2 -1
  68. ccxt/async_support/gemini.py +2 -2
  69. ccxt/async_support/hashkey.py +2 -2
  70. ccxt/async_support/hitbtc.py +3 -3
  71. ccxt/async_support/hollaex.py +3 -3
  72. ccxt/async_support/htx.py +3 -3
  73. ccxt/async_support/huobi.py +2 -1
  74. ccxt/async_support/huobijp.py +3 -3
  75. ccxt/async_support/hyperliquid.py +83 -3
  76. ccxt/async_support/idex.py +3 -3
  77. ccxt/async_support/independentreserve.py +2 -2
  78. ccxt/async_support/indodax.py +3 -3
  79. ccxt/async_support/kraken.py +3 -3
  80. ccxt/async_support/krakenfutures.py +2 -2
  81. ccxt/async_support/kucoin.py +3 -3
  82. ccxt/async_support/kucoinfutures.py +3 -3
  83. ccxt/async_support/kuna.py +3 -3
  84. ccxt/async_support/latoken.py +3 -3
  85. ccxt/async_support/lbank.py +3 -3
  86. ccxt/async_support/luno.py +2 -2
  87. ccxt/async_support/mercado.py +2 -2
  88. ccxt/async_support/mexc.py +3 -3
  89. ccxt/async_support/myokx.py +2 -1
  90. ccxt/async_support/ndax.py +2 -2
  91. ccxt/async_support/novadax.py +3 -3
  92. ccxt/async_support/oceanex.py +3 -3
  93. ccxt/async_support/okcoin.py +3 -3
  94. ccxt/async_support/okx.py +3 -4
  95. ccxt/async_support/onetrading.py +3 -3
  96. ccxt/async_support/oxfun.py +3 -3
  97. ccxt/async_support/p2b.py +2 -2
  98. ccxt/async_support/paradex.py +3 -3
  99. ccxt/async_support/paymium.py +2 -2
  100. ccxt/async_support/phemex.py +2 -2
  101. ccxt/async_support/poloniex.py +3 -3
  102. ccxt/async_support/poloniexfutures.py +3 -3
  103. ccxt/async_support/probit.py +3 -3
  104. ccxt/async_support/timex.py +3 -3
  105. ccxt/async_support/tokocrypto.py +3 -3
  106. ccxt/async_support/tradeogre.py +2 -2
  107. ccxt/async_support/upbit.py +2 -2
  108. ccxt/async_support/vertex.py +4 -4
  109. ccxt/async_support/wavesexchange.py +2 -3
  110. ccxt/async_support/whitebit.py +3 -3
  111. ccxt/async_support/woo.py +3 -4
  112. ccxt/async_support/woofipro.py +3 -4
  113. ccxt/async_support/xt.py +15 -3
  114. ccxt/async_support/yobit.py +2 -2
  115. ccxt/async_support/zaif.py +2 -2
  116. ccxt/async_support/zonda.py +2 -2
  117. ccxt/base/errors.py +6 -0
  118. ccxt/base/exchange.py +8 -3
  119. ccxt/bequant.py +2 -1
  120. ccxt/bigone.py +5 -5
  121. ccxt/binance.py +84 -4
  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 +6 -5
  134. ccxt/bithumb.py +2 -2
  135. ccxt/bitmart.py +137 -86
  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 +2 -2
  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 +9 -6
  152. ccxt/cex.py +3 -3
  153. ccxt/coinbase.py +4 -4
  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 +3 -3
  181. ccxt/htx.py +3 -3
  182. ccxt/huobi.py +2 -1
  183. ccxt/huobijp.py +3 -3
  184. ccxt/hyperliquid.py +83 -3
  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 +3 -3
  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 +2 -3
  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 +2 -2
  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 +110 -4
  288. ccxt/probit.py +3 -3
  289. ccxt/test/tests_async.py +11 -0
  290. ccxt/test/tests_sync.py +11 -0
  291. ccxt/timex.py +3 -3
  292. ccxt/tokocrypto.py +3 -3
  293. ccxt/tradeogre.py +2 -2
  294. ccxt/upbit.py +2 -2
  295. ccxt/vertex.py +4 -4
  296. ccxt/wavesexchange.py +2 -3
  297. ccxt/whitebit.py +3 -3
  298. ccxt/woo.py +3 -4
  299. ccxt/woofipro.py +3 -4
  300. ccxt/xt.py +15 -3
  301. ccxt/yobit.py +2 -2
  302. ccxt/zaif.py +2 -2
  303. ccxt/zonda.py +2 -2
  304. {ccxt-4.4.58.dist-info → ccxt-4.4.60.dist-info}/METADATA +30 -33
  305. {ccxt-4.4.58.dist-info → ccxt-4.4.60.dist-info}/RECORD +308 -311
  306. ccxt/abstract/wazirx.py +0 -30
  307. ccxt/async_support/wazirx.py +0 -1336
  308. ccxt/wazirx.py +0 -1336
  309. {ccxt-4.4.58.dist-info → ccxt-4.4.60.dist-info}/LICENSE.txt +0 -0
  310. {ccxt-4.4.58.dist-info → ccxt-4.4.60.dist-info}/WHEEL +0 -0
  311. {ccxt-4.4.58.dist-info → ccxt-4.4.60.dist-info}/top_level.txt +0 -0
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.delta import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Greeks, Int, LedgerEntry, Leverage, MarginMode, MarginModification, Market, Num, Option, Order, OrderBook, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, MarketInterface
9
+ from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Greeks, Int, LedgerEntry, Leverage, MarginMode, MarginModification, Market, Num, Option, Order, OrderBook, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, MarketInterface
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -23,7 +23,7 @@ from ccxt.base.precise import Precise
23
23
 
24
24
  class delta(Exchange, ImplicitAPI):
25
25
 
26
- def describe(self):
26
+ def describe(self) -> Any:
27
27
  return self.deep_extend(super(delta, self).describe(), {
28
28
  'id': 'delta',
29
29
  'name': 'Delta Exchange',
@@ -413,7 +413,7 @@ class delta(Exchange, ImplicitAPI):
413
413
  return self.create_expired_option_market(marketId)
414
414
  return super(delta, self).safe_market(marketId, market, delimiter, marketType)
415
415
 
416
- async def fetch_time(self, params={}):
416
+ async def fetch_time(self, params={}) -> Int:
417
417
  """
418
418
  fetches the current integer timestamp in milliseconds from the exchange server
419
419
  :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.deribit import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Account, Balances, Currencies, Currency, DepositAddress, Greeks, Int, Market, Num, Option, OptionChain, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, Trade, TradingFees, Transaction, MarketInterface, TransferEntry
9
+ from ccxt.base.types import Account, Any, Balances, Currencies, Currency, DepositAddress, Greeks, Int, Market, Num, Option, OptionChain, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, Trade, TradingFees, Transaction, MarketInterface, TransferEntry
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -27,7 +27,7 @@ from ccxt.base.precise import Precise
27
27
 
28
28
  class deribit(Exchange, ImplicitAPI):
29
29
 
30
- def describe(self):
30
+ def describe(self) -> Any:
31
31
  return self.deep_extend(super(deribit, self).describe(), {
32
32
  'id': 'deribit',
33
33
  'name': 'Deribit',
@@ -585,7 +585,7 @@ class deribit(Exchange, ImplicitAPI):
585
585
  return self.create_expired_option_market(marketId)
586
586
  return super(deribit, self).safe_market(marketId, market, delimiter, marketType)
587
587
 
588
- async def fetch_time(self, params={}):
588
+ async def fetch_time(self, params={}) -> Int:
589
589
  """
590
590
  fetches the current integer timestamp in milliseconds from the exchange server
591
591
 
@@ -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, BorrowInterest, CrossBorrowRate, CrossBorrowRates, Currencies, Currency, DepositAddress, Int, LedgerEntry, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, Trade, TradingFeeInterface, Transaction, TransferEntry
11
+ from ccxt.base.types import Any, Balances, BorrowInterest, CrossBorrowRate, CrossBorrowRates, Currencies, Currency, DepositAddress, Int, LedgerEntry, LeverageTier, LeverageTiers, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, 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
@@ -33,7 +33,7 @@ from ccxt.base.precise import Precise
33
33
 
34
34
  class digifinex(Exchange, ImplicitAPI):
35
35
 
36
- def describe(self):
36
+ def describe(self) -> Any:
37
37
  return self.deep_extend(super(digifinex, self).describe(), {
38
38
  'id': 'digifinex',
39
39
  'name': 'DigiFinex',
@@ -1417,7 +1417,7 @@ class digifinex(Exchange, ImplicitAPI):
1417
1417
  'fee': fee,
1418
1418
  }, market)
1419
1419
 
1420
- async def fetch_time(self, params={}):
1420
+ async def fetch_time(self, params={}) -> Int:
1421
1421
  """
1422
1422
  fetches the current integer timestamp in milliseconds from the exchange server
1423
1423
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -21,7 +21,7 @@ from ccxt.base.precise import Precise
21
21
 
22
22
  class ellipx(Exchange, ImplicitAPI):
23
23
 
24
- def describe(self):
24
+ def describe(self) -> Any:
25
25
  return self.deep_extend(super(ellipx, self).describe(), {
26
26
  'id': 'ellipx',
27
27
  'name': 'Ellipx',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.exmo import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Int, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, OrderBooks, Trade, TradingFees, Transaction
9
+ from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, OrderBooks, 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
@@ -25,7 +25,7 @@ from ccxt.base.precise import Precise
25
25
 
26
26
  class exmo(Exchange, ImplicitAPI):
27
27
 
28
- def describe(self):
28
+ def describe(self) -> Any:
29
29
  return self.deep_extend(super(exmo, self).describe(), {
30
30
  'id': 'exmo',
31
31
  'name': 'EXMO',
@@ -5,11 +5,12 @@
5
5
 
6
6
  from ccxt.async_support.hitbtc import hitbtc
7
7
  from ccxt.abstract.fmfwio import ImplicitAPI
8
+ from ccxt.base.types import Any
8
9
 
9
10
 
10
11
  class fmfwio(hitbtc, ImplicitAPI):
11
12
 
12
- def describe(self):
13
+ def describe(self) -> Any:
13
14
  return self.deep_extend(super(fmfwio, self).describe(), {
14
15
  'id': 'fmfwio',
15
16
  'name': 'FMFW.io',
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.gate import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Balances, BorrowInterest, Bool, Currencies, Currency, DepositAddress, FundingHistory, Greeks, Int, LedgerEntry, Leverage, Leverages, LeverageTier, LeverageTiers, MarginModification, 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, Bool, Currencies, Currency, DepositAddress, FundingHistory, Greeks, Int, LedgerEntry, Leverage, Leverages, LeverageTier, LeverageTiers, MarginModification, 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
@@ -31,7 +31,7 @@ from ccxt.base.precise import Precise
31
31
 
32
32
  class gate(Exchange, ImplicitAPI):
33
33
 
34
- def describe(self):
34
+ def describe(self) -> Any:
35
35
  return self.deep_extend(super(gate, self).describe(), {
36
36
  'id': 'gate',
37
37
  'name': 'Gate.io',
@@ -1079,7 +1079,7 @@ class gate(Exchange, ImplicitAPI):
1079
1079
  async def upgrade_unified_trade_account(self, params={}):
1080
1080
  return await self.privateUnifiedPutUnifiedMode(params)
1081
1081
 
1082
- async def fetch_time(self, params={}):
1082
+ async def fetch_time(self, params={}) -> Int:
1083
1083
  """
1084
1084
  fetches the current integer timestamp in milliseconds from the exchange server
1085
1085
 
@@ -5,11 +5,12 @@
5
5
 
6
6
  from ccxt.async_support.gate import gate
7
7
  from ccxt.abstract.gateio import ImplicitAPI
8
+ from ccxt.base.types import Any
8
9
 
9
10
 
10
11
  class gateio(gate, ImplicitAPI):
11
12
 
12
- def describe(self):
13
+ def describe(self) -> Any:
13
14
  return self.deep_extend(super(gateio, self).describe(), {
14
15
  'id': 'gateio',
15
16
  'alias': True,
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.gemini import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
10
+ from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import AuthenticationError
@@ -28,7 +28,7 @@ from ccxt.base.precise import Precise
28
28
 
29
29
  class gemini(Exchange, ImplicitAPI):
30
30
 
31
- def describe(self):
31
+ def describe(self) -> Any:
32
32
  return self.deep_extend(super(gemini, self).describe(), {
33
33
  'id': 'gemini',
34
34
  'name': 'Gemini',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.hashkey import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Account, Balances, Bool, Currencies, Currency, DepositAddress, Int, LastPrice, LastPrices, LedgerEntry, Leverage, LeverageTier, LeverageTiers, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry
9
+ from ccxt.base.types import Account, Any, Balances, Bool, Currencies, Currency, DepositAddress, Int, LastPrice, LastPrices, LedgerEntry, Leverage, LeverageTier, LeverageTiers, Market, Num, Order, OrderBook, 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
@@ -38,7 +38,7 @@ from ccxt.base.precise import Precise
38
38
 
39
39
  class hashkey(Exchange, ImplicitAPI):
40
40
 
41
- def describe(self):
41
+ def describe(self) -> Any:
42
42
  return self.deep_extend(super(hashkey, self).describe(), {
43
43
  'id': 'hashkey',
44
44
  'name': 'HashKey Global',
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.hitbtc import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Int, Leverage, MarginMode, MarginModes, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, OrderBooks, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry
9
+ from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, Leverage, MarginMode, MarginModes, MarginModification, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, OrderBooks, 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 hitbtc(Exchange, ImplicitAPI):
30
30
 
31
- def describe(self):
31
+ def describe(self) -> Any:
32
32
  return self.deep_extend(super(hitbtc, self).describe(), {
33
33
  'id': 'hitbtc',
34
34
  'name': 'HitBTC',
@@ -1408,7 +1408,7 @@ class hitbtc(Exchange, ImplicitAPI):
1408
1408
  fee = None
1409
1409
  feeCostString = self.safe_string(trade, 'fee')
1410
1410
  taker = self.safe_value(trade, 'taker')
1411
- takerOrMaker = None
1411
+ takerOrMaker: str
1412
1412
  if taker is not None:
1413
1413
  takerOrMaker = 'taker' if taker else 'maker'
1414
1414
  else:
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.hollaex 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, OrderBooks, 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, OrderBooks, Trade, TradingFees, Transaction
10
10
  from typing import List
11
11
  from ccxt.base.errors import AuthenticationError
12
12
  from ccxt.base.errors import ArgumentsRequired
@@ -21,7 +21,7 @@ from ccxt.base.precise import Precise
21
21
 
22
22
  class hollaex(Exchange, ImplicitAPI):
23
23
 
24
- def describe(self):
24
+ def describe(self) -> Any:
25
25
  return self.deep_extend(super(hollaex, self).describe(), {
26
26
  'id': 'hollaex',
27
27
  'name': 'HollaEx',
@@ -1882,7 +1882,7 @@ class hollaex(Exchange, ImplicitAPI):
1882
1882
  # "network":"https://api.hollaex.network"
1883
1883
  # }
1884
1884
  #
1885
- coins = self.safe_list(response, 'coins')
1885
+ coins = self.safe_dict(response, 'coins', {})
1886
1886
  return self.parse_deposit_withdraw_fees(coins, codes, 'symbol')
1887
1887
 
1888
1888
  def normalize_number_if_needed(self, number):
ccxt/async_support/htx.py CHANGED
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.htx import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Account, Balances, BorrowInterest, Currencies, Currency, DepositAddress, Int, IsolatedBorrowRate, IsolatedBorrowRates, LedgerEntry, LeverageTier, LeverageTiers, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, Transaction, TransferEntry
10
+ from ccxt.base.types import Account, Any, Balances, BorrowInterest, Currencies, Currency, DepositAddress, Int, IsolatedBorrowRate, IsolatedBorrowRates, LedgerEntry, LeverageTier, LeverageTiers, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, Transaction, 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 htx(Exchange, ImplicitAPI):
34
34
 
35
- def describe(self):
35
+ def describe(self) -> Any:
36
36
  return self.deep_extend(super(htx, self).describe(), {
37
37
  'id': 'htx',
38
38
  'name': 'HTX',
@@ -1606,7 +1606,7 @@ class htx(Exchange, ImplicitAPI):
1606
1606
  'info': response,
1607
1607
  }
1608
1608
 
1609
- async def fetch_time(self, params={}):
1609
+ async def fetch_time(self, params={}) -> Int:
1610
1610
  """
1611
1611
  fetches the current integer timestamp in milliseconds from the exchange server
1612
1612
 
@@ -5,11 +5,12 @@
5
5
 
6
6
  from ccxt.async_support.htx import htx
7
7
  from ccxt.abstract.huobi import ImplicitAPI
8
+ from ccxt.base.types import Any
8
9
 
9
10
 
10
11
  class huobi(htx, ImplicitAPI):
11
12
 
12
- def describe(self):
13
+ def describe(self) -> Any:
13
14
  return self.deep_extend(super(huobi, self).describe(), {
14
15
  'id': 'huobi',
15
16
  'alias': True,
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.huobijp import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Account, Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
9
+ from ccxt.base.types import Account, Any, Balances, Currencies, Currency, 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 AuthenticationError
@@ -29,7 +29,7 @@ from ccxt.base.precise import Precise
29
29
 
30
30
  class huobijp(Exchange, ImplicitAPI):
31
31
 
32
- def describe(self):
32
+ def describe(self) -> Any:
33
33
  return self.deep_extend(super(huobijp, self).describe(), {
34
34
  'id': 'huobijp',
35
35
  'name': 'Huobi Japan',
@@ -424,7 +424,7 @@ class huobijp(Exchange, ImplicitAPI):
424
424
  },
425
425
  })
426
426
 
427
- async def fetch_time(self, params={}):
427
+ async def fetch_time(self, params={}) -> Int:
428
428
  """
429
429
  fetches the current integer timestamp in milliseconds from the exchange server
430
430
  :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.hyperliquid import ImplicitAPI
8
8
  import asyncio
9
9
  import math
10
- from ccxt.base.types import Balances, Currencies, Currency, Int, LedgerEntry, MarginModification, Market, Num, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, Transaction, TransferEntry
10
+ from ccxt.base.types import Any, Balances, Currencies, Currency, Int, LedgerEntry, MarginModification, Market, Num, Order, OrderBook, OrderRequest, CancellationRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, Transaction, TransferEntry
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import ArgumentsRequired
@@ -25,7 +25,7 @@ from ccxt.base.precise import Precise
25
25
 
26
26
  class hyperliquid(Exchange, ImplicitAPI):
27
27
 
28
- def describe(self):
28
+ def describe(self) -> Any:
29
29
  return self.deep_extend(super(hyperliquid, self).describe(), {
30
30
  'id': 'hyperliquid',
31
31
  'name': 'Hyperliquid',
@@ -77,7 +77,7 @@ class hyperliquid(Exchange, ImplicitAPI):
77
77
  'fetchDeposits': True,
78
78
  'fetchDepositWithdrawFee': 'emulated',
79
79
  'fetchDepositWithdrawFees': False,
80
- 'fetchFundingHistory': False,
80
+ 'fetchFundingHistory': True,
81
81
  'fetchFundingRate': False,
82
82
  'fetchFundingRateHistory': True,
83
83
  'fetchFundingRates': True,
@@ -3229,6 +3229,86 @@ class hyperliquid(Exchange, ImplicitAPI):
3229
3229
  'info': interest,
3230
3230
  }, market)
3231
3231
 
3232
+ async def fetch_funding_history(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
3233
+ """
3234
+ fetch the history of funding payments paid and received on self account
3235
+ :param str [symbol]: unified market symbol
3236
+ :param int [since]: the earliest time in ms to fetch funding history for
3237
+ :param int [limit]: the maximum number of funding history structures to retrieve
3238
+ :param dict [params]: extra parameters specific to the exchange API endpoint
3239
+ :returns dict: a `funding history structure <https://docs.ccxt.com/#/?id=funding-history-structure>`
3240
+ """
3241
+ await self.load_markets()
3242
+ market = None
3243
+ if symbol is not None:
3244
+ market = self.market(symbol)
3245
+ userAddress = None
3246
+ userAddress, params = self.handle_public_address('fetchFundingHistory', params)
3247
+ request: dict = {
3248
+ 'user': userAddress,
3249
+ 'type': 'userFunding',
3250
+ }
3251
+ if since is not None:
3252
+ request['startTime'] = since
3253
+ until = self.safe_integer(params, 'until')
3254
+ params = self.omit(params, 'until')
3255
+ if until is not None:
3256
+ request['endTime'] = until
3257
+ response = await self.publicPostInfo(self.extend(request, params))
3258
+ #
3259
+ # [
3260
+ # {
3261
+ # "time": 1734026400057,
3262
+ # "hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
3263
+ # "delta": {
3264
+ # "type": "funding",
3265
+ # "coin": "SOL",
3266
+ # "usdc": "75.635093",
3267
+ # "szi": "-7375.9",
3268
+ # "fundingRate": "0.00004381",
3269
+ # "nSamples": null
3270
+ # }
3271
+ # }
3272
+ # ]
3273
+ #
3274
+ return self.parse_incomes(response, market, since, limit)
3275
+
3276
+ def parse_income(self, income, market: Market = None):
3277
+ #
3278
+ # {
3279
+ # "time": 1734026400057,
3280
+ # "hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
3281
+ # "delta": {
3282
+ # "type": "funding",
3283
+ # "coin": "SOL",
3284
+ # "usdc": "75.635093",
3285
+ # "szi": "-7375.9",
3286
+ # "fundingRate": "0.00004381",
3287
+ # "nSamples": null
3288
+ # }
3289
+ # }
3290
+ #
3291
+ id = self.safe_string(income, 'hash')
3292
+ timestamp = self.safe_integer(income, 'time')
3293
+ delta = self.safe_dict(income, 'delta')
3294
+ baseId = self.safe_string(delta, 'coin')
3295
+ marketSymbol = baseId + '/USDC:USDC'
3296
+ market = self.safe_market(marketSymbol)
3297
+ symbol = market['symbol']
3298
+ amount = self.safe_string(delta, 'usdc')
3299
+ code = self.safe_currency_code('USDC')
3300
+ rate = self.safe_number(delta, 'fundingRate')
3301
+ return {
3302
+ 'info': income,
3303
+ 'symbol': symbol,
3304
+ 'code': code,
3305
+ 'timestamp': timestamp,
3306
+ 'datetime': self.iso8601(timestamp),
3307
+ 'id': id,
3308
+ 'amount': self.parse_number(amount),
3309
+ 'rate': rate,
3310
+ }
3311
+
3232
3312
  def extract_type_from_delta(self, data=[]):
3233
3313
  records = []
3234
3314
  for i in range(0, len(data)):
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.idex 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
@@ -26,7 +26,7 @@ from ccxt.base.precise import Precise
26
26
 
27
27
  class idex(Exchange, ImplicitAPI):
28
28
 
29
- def describe(self):
29
+ def describe(self) -> Any:
30
30
  return self.deep_extend(super(idex, self).describe(), {
31
31
  'id': 'idex',
32
32
  'name': 'IDEX',
@@ -1590,7 +1590,7 @@ class idex(Exchange, ImplicitAPI):
1590
1590
  'info': response,
1591
1591
  }
1592
1592
 
1593
- async def fetch_time(self, params={}):
1593
+ async def fetch_time(self, params={}) -> Int:
1594
1594
  """
1595
1595
  fetches the current integer timestamp in milliseconds from the exchange server
1596
1596
 
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.independentreserve import ImplicitAPI
8
8
  import asyncio
9
9
  import hashlib
10
- from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees, Transaction
10
+ from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees, Transaction
11
11
  from typing import List
12
12
  from ccxt.base.errors import BadRequest
13
13
  from ccxt.base.decimal_to_precision import TICK_SIZE
@@ -16,7 +16,7 @@ from ccxt.base.precise import Precise
16
16
 
17
17
  class independentreserve(Exchange, ImplicitAPI):
18
18
 
19
- def describe(self):
19
+ def describe(self) -> Any:
20
20
  return self.deep_extend(super(independentreserve, self).describe(), {
21
21
  'id': 'independentreserve',
22
22
  'name': 'Independent Reserve',
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.indodax import ImplicitAPI
8
8
  import hashlib
9
9
  import math
10
- from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
10
+ from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
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 indodax(Exchange, ImplicitAPI):
24
24
 
25
- def describe(self):
25
+ def describe(self) -> Any:
26
26
  return self.deep_extend(super(indodax, self).describe(), {
27
27
  'id': 'indodax',
28
28
  'name': 'INDODAX',
@@ -281,7 +281,7 @@ class indodax(Exchange, ImplicitAPI):
281
281
  def nonce(self):
282
282
  return self.milliseconds() - self.options['timeDifference']
283
283
 
284
- async def fetch_time(self, params={}):
284
+ async def fetch_time(self, params={}) -> Int:
285
285
  """
286
286
  fetches the current integer timestamp in milliseconds from the exchange server
287
287
 
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.kraken import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, IndexType, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry
9
+ from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, IndexType, Int, LedgerEntry, 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
@@ -33,7 +33,7 @@ from ccxt.base.precise import Precise
33
33
 
34
34
  class kraken(Exchange, ImplicitAPI):
35
35
 
36
- def describe(self):
36
+ def describe(self) -> Any:
37
37
  return self.deep_extend(super(kraken, self).describe(), {
38
38
  'id': 'kraken',
39
39
  'name': 'Kraken',
@@ -2715,7 +2715,7 @@ class kraken(Exchange, ImplicitAPI):
2715
2715
  #
2716
2716
  return self.parse_transactions_by_type('deposit', response['result'], code, since, limit)
2717
2717
 
2718
- async def fetch_time(self, params={}):
2718
+ async def fetch_time(self, params={}) -> Int:
2719
2719
  """
2720
2720
  fetches the current integer timestamp in milliseconds from the exchange server
2721
2721
 
@@ -6,7 +6,7 @@
6
6
  from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.krakenfutures import ImplicitAPI
8
8
  import hashlib
9
- from ccxt.base.types import Balances, Currency, Int, Leverage, Leverages, LeverageTier, LeverageTiers, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TransferEntry
9
+ from ccxt.base.types import Any, Balances, Currency, Int, Leverage, Leverages, LeverageTier, LeverageTiers, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TransferEntry
10
10
  from typing import List
11
11
  from ccxt.base.errors import ExchangeError
12
12
  from ccxt.base.errors import AuthenticationError
@@ -29,7 +29,7 @@ from ccxt.base.precise import Precise
29
29
 
30
30
  class krakenfutures(Exchange, ImplicitAPI):
31
31
 
32
- def describe(self):
32
+ def describe(self) -> Any:
33
33
  return self.deep_extend(super(krakenfutures, self).describe(), {
34
34
  'id': 'krakenfutures',
35
35
  'name': 'Kraken Futures',
@@ -9,7 +9,7 @@ import asyncio
9
9
  import hashlib
10
10
  import math
11
11
  import json
12
- from ccxt.base.types import Account, Balances, BorrowInterest, Bool, Currencies, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry
12
+ from ccxt.base.types import Account, Any, Balances, BorrowInterest, Bool, Currencies, Currency, DepositAddress, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, Transaction, TransferEntry
13
13
  from typing import List
14
14
  from ccxt.base.errors import ExchangeError
15
15
  from ccxt.base.errors import AuthenticationError
@@ -33,7 +33,7 @@ from ccxt.base.precise import Precise
33
33
 
34
34
  class kucoin(Exchange, ImplicitAPI):
35
35
 
36
- def describe(self):
36
+ def describe(self) -> Any:
37
37
  return self.deep_extend(super(kucoin, self).describe(), {
38
38
  'id': 'kucoin',
39
39
  'name': 'KuCoin',
@@ -1084,7 +1084,7 @@ class kucoin(Exchange, ImplicitAPI):
1084
1084
  def nonce(self):
1085
1085
  return self.milliseconds() - self.options['timeDifference']
1086
1086
 
1087
- async def fetch_time(self, params={}):
1087
+ async def fetch_time(self, params={}) -> Int:
1088
1088
  """
1089
1089
  fetches the current integer timestamp in milliseconds from the exchange server
1090
1090
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  from ccxt.async_support.kucoin import kucoin
7
7
  from ccxt.abstract.kucoinfutures import ImplicitAPI
8
- from ccxt.base.types import Balances, Currency, DepositAddress, Int, Leverage, LeverageTier, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, Trade, TradingFeeInterface, Transaction, TransferEntry
8
+ from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Leverage, LeverageTier, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, Trade, TradingFeeInterface, Transaction, TransferEntry
9
9
  from typing import List
10
10
  from ccxt.base.errors import AuthenticationError
11
11
  from ccxt.base.errors import PermissionDenied
@@ -25,7 +25,7 @@ from ccxt.base.precise import Precise
25
25
 
26
26
  class kucoinfutures(kucoin, ImplicitAPI):
27
27
 
28
- def describe(self):
28
+ def describe(self) -> Any:
29
29
  return self.deep_extend(super(kucoinfutures, self).describe(), {
30
30
  'id': 'kucoinfutures',
31
31
  'name': 'KuCoin Futures',
@@ -649,7 +649,7 @@ class kucoinfutures(kucoin, ImplicitAPI):
649
649
  })
650
650
  return result
651
651
 
652
- async def fetch_time(self, params={}):
652
+ async def fetch_time(self, params={}) -> Int:
653
653
  """
654
654
  fetches the current integer timestamp in milliseconds from the exchange server
655
655
 
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
7
7
  from ccxt.abstract.kuna import ImplicitAPI
8
8
  import hashlib
9
9
  import json
10
- from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
10
+ from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
11
11
  from typing import List
12
12
  from ccxt.base.errors import ExchangeError
13
13
  from ccxt.base.errors import ArgumentsRequired
@@ -22,7 +22,7 @@ from ccxt.base.precise import Precise
22
22
 
23
23
  class kuna(Exchange, ImplicitAPI):
24
24
 
25
- def describe(self):
25
+ def describe(self) -> Any:
26
26
  return self.deep_extend(super(kuna, self).describe(), {
27
27
  'id': 'kuna',
28
28
  'name': 'Kuna',
@@ -470,7 +470,7 @@ class kuna(Exchange, ImplicitAPI):
470
470
  },
471
471
  })
472
472
 
473
- async def fetch_time(self, params={}):
473
+ async def fetch_time(self, params={}) -> Int:
474
474
  """
475
475
  fetches the current integer timestamp in milliseconds from the exchange server
476
476