ccxt 4.4.53__tar.gz → 4.4.58__tar.gz

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 (676) hide show
  1. {ccxt-4.4.53/ccxt.egg-info → ccxt-4.4.58}/PKG-INFO +9 -12
  2. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/__init__.py +1 -3
  3. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/xt.py +1 -0
  4. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/ascendex.py +2 -0
  5. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/__init__.py +1 -3
  6. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/ascendex.py +2 -0
  7. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/exchange.py +5 -5
  8. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/binance.py +39 -9
  9. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitget.py +6 -1
  10. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitmart.py +13 -3
  11. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/blofin.py +1 -2
  12. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bybit.py +16 -3
  13. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinbase.py +9 -2
  14. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinbaseinternational.py +2 -2
  15. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinex.py +1 -1
  16. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/deribit.py +8 -25
  17. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/exmo.py +1 -1
  18. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/hyperliquid.py +11 -6
  19. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/kraken.py +1 -1
  20. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/timex.py +12 -2
  21. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/vertex.py +1 -1
  22. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/whitebit.py +2 -1
  23. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/woofipro.py +2 -2
  24. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/xt.py +54 -1
  25. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/base/errors.py +0 -6
  26. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/base/exchange.py +6 -6
  27. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/binance.py +39 -9
  28. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitget.py +6 -1
  29. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitmart.py +13 -3
  30. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/blofin.py +1 -2
  31. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bybit.py +16 -3
  32. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinbase.py +9 -2
  33. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinbaseinternational.py +2 -2
  34. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinex.py +1 -1
  35. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/deribit.py +8 -25
  36. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/exmo.py +1 -1
  37. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/hyperliquid.py +11 -6
  38. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/kraken.py +1 -1
  39. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/__init__.py +1 -1
  40. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/binance.py +2 -2
  41. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitget.py +3 -3
  42. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bybit.py +11 -3
  43. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/cex.py +1 -1
  44. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coincatch.py +3 -3
  45. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/mexc.py +6 -4
  46. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/okx.py +1 -1
  47. ccxt-4.4.58/ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
  48. ccxt-4.4.58/ccxt/static_dependencies/starknet/models/__init__.py +0 -0
  49. ccxt-4.4.58/ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
  50. ccxt-4.4.58/ccxt/static_dependencies/starkware/__init__.py +0 -0
  51. ccxt-4.4.58/ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
  52. ccxt-4.4.58/ccxt/static_dependencies/sympy/__init__.py +0 -0
  53. ccxt-4.4.58/ccxt/static_dependencies/sympy/core/__init__.py +0 -0
  54. ccxt-4.4.58/ccxt/static_dependencies/sympy/external/__init__.py +0 -0
  55. ccxt-4.4.58/ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
  56. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/test/tests_init.py +2 -2
  57. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/timex.py +12 -2
  58. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/vertex.py +1 -1
  59. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/whitebit.py +2 -1
  60. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/woofipro.py +2 -2
  61. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/xt.py +54 -1
  62. {ccxt-4.4.53 → ccxt-4.4.58/ccxt.egg-info}/PKG-INFO +9 -12
  63. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt.egg-info/SOURCES.txt +9 -3
  64. {ccxt-4.4.53 → ccxt-4.4.58}/package.json +3 -3
  65. ccxt-4.4.53/ccxt/abstract/lykke.py +0 -29
  66. ccxt-4.4.53/ccxt/async_support/lykke.py +0 -1374
  67. ccxt-4.4.53/ccxt/lykke.py +0 -1374
  68. {ccxt-4.4.53 → ccxt-4.4.58}/LICENSE.txt +0 -0
  69. {ccxt-4.4.53 → ccxt-4.4.58}/MANIFEST.in +0 -0
  70. {ccxt-4.4.53 → ccxt-4.4.58}/README.rst +0 -0
  71. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/__init__.py +0 -0
  72. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/ace.py +0 -0
  73. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/alpaca.py +0 -0
  74. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/ascendex.py +0 -0
  75. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bequant.py +0 -0
  76. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bigone.py +0 -0
  77. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/binance.py +0 -0
  78. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/binancecoinm.py +0 -0
  79. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/binanceus.py +0 -0
  80. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/binanceusdm.py +0 -0
  81. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bingx.py +0 -0
  82. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bit2c.py +0 -0
  83. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitbank.py +0 -0
  84. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitbns.py +0 -0
  85. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitcoincom.py +0 -0
  86. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitfinex.py +0 -0
  87. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitfinex1.py +0 -0
  88. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitflyer.py +0 -0
  89. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitget.py +0 -0
  90. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bithumb.py +0 -0
  91. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitmart.py +0 -0
  92. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitmex.py +0 -0
  93. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitopro.py +0 -0
  94. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitpanda.py +0 -0
  95. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitrue.py +0 -0
  96. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitso.py +0 -0
  97. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitstamp.py +0 -0
  98. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitteam.py +0 -0
  99. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bitvavo.py +0 -0
  100. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bl3p.py +0 -0
  101. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/blockchaincom.py +0 -0
  102. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/blofin.py +0 -0
  103. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/btcalpha.py +0 -0
  104. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/btcbox.py +0 -0
  105. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/btcmarkets.py +0 -0
  106. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/btcturk.py +0 -0
  107. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/bybit.py +0 -0
  108. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/cex.py +0 -0
  109. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinbase.py +0 -0
  110. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinbaseadvanced.py +0 -0
  111. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinbaseexchange.py +0 -0
  112. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinbaseinternational.py +0 -0
  113. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coincatch.py +0 -0
  114. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coincheck.py +0 -0
  115. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinex.py +0 -0
  116. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinlist.py +0 -0
  117. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinmate.py +0 -0
  118. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinmetro.py +0 -0
  119. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinone.py +0 -0
  120. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinsph.py +0 -0
  121. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/coinspot.py +0 -0
  122. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/cryptocom.py +0 -0
  123. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/currencycom.py +0 -0
  124. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/defx.py +0 -0
  125. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/delta.py +0 -0
  126. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/deribit.py +0 -0
  127. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/digifinex.py +0 -0
  128. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/ellipx.py +0 -0
  129. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/exmo.py +0 -0
  130. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/fmfwio.py +0 -0
  131. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/gate.py +0 -0
  132. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/gateio.py +0 -0
  133. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/gemini.py +0 -0
  134. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/hashkey.py +0 -0
  135. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/hitbtc.py +0 -0
  136. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/hollaex.py +0 -0
  137. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/htx.py +0 -0
  138. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/huobi.py +0 -0
  139. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/huobijp.py +0 -0
  140. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/hyperliquid.py +0 -0
  141. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/idex.py +0 -0
  142. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/independentreserve.py +0 -0
  143. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/indodax.py +0 -0
  144. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/kraken.py +0 -0
  145. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/krakenfutures.py +0 -0
  146. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/kucoin.py +0 -0
  147. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/kucoinfutures.py +0 -0
  148. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/kuna.py +0 -0
  149. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/latoken.py +0 -0
  150. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/lbank.py +0 -0
  151. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/luno.py +0 -0
  152. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/mercado.py +0 -0
  153. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/mexc.py +0 -0
  154. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/myokx.py +0 -0
  155. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/ndax.py +0 -0
  156. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/novadax.py +0 -0
  157. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/oceanex.py +0 -0
  158. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/okcoin.py +0 -0
  159. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/okx.py +0 -0
  160. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/onetrading.py +0 -0
  161. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/oxfun.py +0 -0
  162. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/p2b.py +0 -0
  163. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/paradex.py +0 -0
  164. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/paymium.py +0 -0
  165. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/phemex.py +0 -0
  166. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/poloniex.py +0 -0
  167. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/poloniexfutures.py +0 -0
  168. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/probit.py +0 -0
  169. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/timex.py +0 -0
  170. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/tokocrypto.py +0 -0
  171. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/tradeogre.py +0 -0
  172. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/upbit.py +0 -0
  173. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/vertex.py +0 -0
  174. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/wavesexchange.py +0 -0
  175. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/wazirx.py +0 -0
  176. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/whitebit.py +0 -0
  177. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/woo.py +0 -0
  178. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/woofipro.py +0 -0
  179. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/yobit.py +0 -0
  180. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/zaif.py +0 -0
  181. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/abstract/zonda.py +0 -0
  182. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/ace.py +0 -0
  183. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/alpaca.py +0 -0
  184. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/ace.py +0 -0
  185. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/alpaca.py +0 -0
  186. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/__init__.py +0 -0
  187. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/throttler.py +0 -0
  188. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/__init__.py +0 -0
  189. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  190. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/cache.py +0 -0
  191. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/client.py +0 -0
  192. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/fast_client.py +0 -0
  193. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/functions.py +0 -0
  194. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/future.py +0 -0
  195. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/order_book.py +0 -0
  196. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/base/ws/order_book_side.py +0 -0
  197. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bequant.py +0 -0
  198. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bigone.py +0 -0
  199. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/binancecoinm.py +0 -0
  200. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/binanceus.py +0 -0
  201. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/binanceusdm.py +0 -0
  202. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bingx.py +0 -0
  203. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bit2c.py +0 -0
  204. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitbank.py +0 -0
  205. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitbns.py +0 -0
  206. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitcoincom.py +0 -0
  207. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitfinex.py +0 -0
  208. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitfinex1.py +0 -0
  209. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitflyer.py +0 -0
  210. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bithumb.py +0 -0
  211. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitmex.py +0 -0
  212. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitopro.py +0 -0
  213. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitpanda.py +0 -0
  214. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitrue.py +0 -0
  215. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitso.py +0 -0
  216. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitstamp.py +0 -0
  217. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitteam.py +0 -0
  218. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bitvavo.py +0 -0
  219. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/bl3p.py +0 -0
  220. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/blockchaincom.py +0 -0
  221. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/btcalpha.py +0 -0
  222. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/btcbox.py +0 -0
  223. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/btcmarkets.py +0 -0
  224. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/btcturk.py +0 -0
  225. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/cex.py +0 -0
  226. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinbaseadvanced.py +0 -0
  227. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinbaseexchange.py +0 -0
  228. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coincatch.py +0 -0
  229. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coincheck.py +0 -0
  230. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinlist.py +0 -0
  231. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinmate.py +0 -0
  232. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinmetro.py +0 -0
  233. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinone.py +0 -0
  234. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinsph.py +0 -0
  235. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/coinspot.py +0 -0
  236. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/cryptocom.py +0 -0
  237. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/currencycom.py +0 -0
  238. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/defx.py +0 -0
  239. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/delta.py +0 -0
  240. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/digifinex.py +0 -0
  241. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/ellipx.py +0 -0
  242. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/fmfwio.py +0 -0
  243. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/gate.py +0 -0
  244. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/gateio.py +0 -0
  245. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/gemini.py +0 -0
  246. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/hashkey.py +0 -0
  247. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/hitbtc.py +0 -0
  248. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/hollaex.py +0 -0
  249. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/htx.py +0 -0
  250. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/huobi.py +0 -0
  251. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/huobijp.py +0 -0
  252. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/idex.py +0 -0
  253. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/independentreserve.py +0 -0
  254. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/indodax.py +0 -0
  255. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/krakenfutures.py +0 -0
  256. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/kucoin.py +0 -0
  257. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/kucoinfutures.py +0 -0
  258. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/kuna.py +0 -0
  259. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/latoken.py +0 -0
  260. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/lbank.py +0 -0
  261. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/luno.py +0 -0
  262. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/mercado.py +0 -0
  263. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/mexc.py +0 -0
  264. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/myokx.py +0 -0
  265. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/ndax.py +0 -0
  266. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/novadax.py +0 -0
  267. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/oceanex.py +0 -0
  268. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/okcoin.py +0 -0
  269. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/okx.py +0 -0
  270. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/onetrading.py +0 -0
  271. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/oxfun.py +0 -0
  272. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/p2b.py +0 -0
  273. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/paradex.py +0 -0
  274. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/paymium.py +0 -0
  275. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/phemex.py +0 -0
  276. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/poloniex.py +0 -0
  277. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/poloniexfutures.py +0 -0
  278. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/probit.py +0 -0
  279. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/tokocrypto.py +0 -0
  280. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/tradeogre.py +0 -0
  281. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/upbit.py +0 -0
  282. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/wavesexchange.py +0 -0
  283. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/wazirx.py +0 -0
  284. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/woo.py +0 -0
  285. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/yobit.py +0 -0
  286. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/zaif.py +0 -0
  287. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/async_support/zonda.py +0 -0
  288. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/base/__init__.py +0 -0
  289. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/base/decimal_to_precision.py +0 -0
  290. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/base/precise.py +0 -0
  291. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/base/types.py +0 -0
  292. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bequant.py +0 -0
  293. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bigone.py +0 -0
  294. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/binancecoinm.py +0 -0
  295. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/binanceus.py +0 -0
  296. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/binanceusdm.py +0 -0
  297. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bingx.py +0 -0
  298. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bit2c.py +0 -0
  299. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitbank.py +0 -0
  300. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitbns.py +0 -0
  301. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitcoincom.py +0 -0
  302. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitfinex.py +0 -0
  303. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitfinex1.py +0 -0
  304. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitflyer.py +0 -0
  305. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bithumb.py +0 -0
  306. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitmex.py +0 -0
  307. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitopro.py +0 -0
  308. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitpanda.py +0 -0
  309. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitrue.py +0 -0
  310. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitso.py +0 -0
  311. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitstamp.py +0 -0
  312. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitteam.py +0 -0
  313. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bitvavo.py +0 -0
  314. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/bl3p.py +0 -0
  315. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/blockchaincom.py +0 -0
  316. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/btcalpha.py +0 -0
  317. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/btcbox.py +0 -0
  318. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/btcmarkets.py +0 -0
  319. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/btcturk.py +0 -0
  320. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/cex.py +0 -0
  321. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinbaseadvanced.py +0 -0
  322. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinbaseexchange.py +0 -0
  323. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coincatch.py +0 -0
  324. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coincheck.py +0 -0
  325. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinlist.py +0 -0
  326. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinmate.py +0 -0
  327. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinmetro.py +0 -0
  328. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinone.py +0 -0
  329. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinsph.py +0 -0
  330. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/coinspot.py +0 -0
  331. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/cryptocom.py +0 -0
  332. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/currencycom.py +0 -0
  333. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/defx.py +0 -0
  334. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/delta.py +0 -0
  335. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/digifinex.py +0 -0
  336. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/ellipx.py +0 -0
  337. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/fmfwio.py +0 -0
  338. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/gate.py +0 -0
  339. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/gateio.py +0 -0
  340. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/gemini.py +0 -0
  341. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/hashkey.py +0 -0
  342. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/hitbtc.py +0 -0
  343. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/hollaex.py +0 -0
  344. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/htx.py +0 -0
  345. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/huobi.py +0 -0
  346. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/huobijp.py +0 -0
  347. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/idex.py +0 -0
  348. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/independentreserve.py +0 -0
  349. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/indodax.py +0 -0
  350. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/krakenfutures.py +0 -0
  351. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/kucoin.py +0 -0
  352. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/kucoinfutures.py +0 -0
  353. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/kuna.py +0 -0
  354. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/latoken.py +0 -0
  355. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/lbank.py +0 -0
  356. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/luno.py +0 -0
  357. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/mercado.py +0 -0
  358. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/mexc.py +0 -0
  359. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/myokx.py +0 -0
  360. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/ndax.py +0 -0
  361. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/novadax.py +0 -0
  362. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/oceanex.py +0 -0
  363. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/okcoin.py +0 -0
  364. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/okx.py +0 -0
  365. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/onetrading.py +0 -0
  366. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/oxfun.py +0 -0
  367. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/p2b.py +0 -0
  368. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/paradex.py +0 -0
  369. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/paymium.py +0 -0
  370. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/phemex.py +0 -0
  371. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/poloniex.py +0 -0
  372. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/poloniexfutures.py +0 -0
  373. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/alpaca.py +0 -0
  374. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/ascendex.py +0 -0
  375. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bequant.py +0 -0
  376. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/binancecoinm.py +0 -0
  377. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/binanceus.py +0 -0
  378. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/binanceusdm.py +0 -0
  379. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bingx.py +0 -0
  380. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitcoincom.py +0 -0
  381. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitfinex.py +0 -0
  382. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitfinex1.py +0 -0
  383. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bithumb.py +0 -0
  384. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitmart.py +0 -0
  385. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitmex.py +0 -0
  386. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitopro.py +0 -0
  387. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitpanda.py +0 -0
  388. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitrue.py +0 -0
  389. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitstamp.py +0 -0
  390. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/bitvavo.py +0 -0
  391. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/blockchaincom.py +0 -0
  392. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/blofin.py +0 -0
  393. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coinbase.py +0 -0
  394. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coinbaseadvanced.py +0 -0
  395. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coinbaseexchange.py +0 -0
  396. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coinbaseinternational.py +0 -0
  397. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coincheck.py +0 -0
  398. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coinex.py +0 -0
  399. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/coinone.py +0 -0
  400. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/cryptocom.py +0 -0
  401. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/currencycom.py +0 -0
  402. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/defx.py +0 -0
  403. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/deribit.py +0 -0
  404. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/exmo.py +0 -0
  405. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/gate.py +0 -0
  406. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/gateio.py +0 -0
  407. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/gemini.py +0 -0
  408. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/hashkey.py +0 -0
  409. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/hitbtc.py +0 -0
  410. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/hollaex.py +0 -0
  411. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/htx.py +0 -0
  412. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/huobi.py +0 -0
  413. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/huobijp.py +0 -0
  414. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/hyperliquid.py +0 -0
  415. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/idex.py +0 -0
  416. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/independentreserve.py +0 -0
  417. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/kraken.py +0 -0
  418. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/krakenfutures.py +0 -0
  419. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/kucoin.py +0 -0
  420. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/kucoinfutures.py +0 -0
  421. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/lbank.py +0 -0
  422. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/luno.py +0 -0
  423. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/myokx.py +0 -0
  424. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/ndax.py +0 -0
  425. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/okcoin.py +0 -0
  426. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/onetrading.py +0 -0
  427. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/oxfun.py +0 -0
  428. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/p2b.py +0 -0
  429. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/paradex.py +0 -0
  430. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/phemex.py +0 -0
  431. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/poloniex.py +0 -0
  432. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/poloniexfutures.py +0 -0
  433. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/probit.py +0 -0
  434. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/upbit.py +0 -0
  435. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/vertex.py +0 -0
  436. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/wazirx.py +0 -0
  437. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/whitebit.py +0 -0
  438. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/woo.py +0 -0
  439. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/woofipro.py +0 -0
  440. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/pro/xt.py +0 -0
  441. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/probit.py +0 -0
  442. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/__init__.py +0 -0
  443. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  444. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  445. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  446. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/der.py +0 -0
  447. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  448. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  449. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  450. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  451. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  452. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ecdsa/util.py +0 -0
  453. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
  454. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
  455. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
  456. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
  457. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
  458. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
  459. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
  460. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
  461. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
  462. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
  463. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
  464. /ccxt-4.4.53/ccxt/static_dependencies/ethereum/abi/utils/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  465. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
  466. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
  467. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
  468. {ccxt-4.4.53/ccxt/static_dependencies/lark/grammars → ccxt-4.4.58/ccxt/static_dependencies/ethereum/abi/utils}/__init__.py +0 -0
  469. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
  470. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
  471. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
  472. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
  473. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
  474. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
  475. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
  476. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
  477. /ccxt-4.4.53/ccxt/static_dependencies/lark/parsers/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  478. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
  479. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
  480. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
  481. /ccxt-4.4.53/ccxt/static_dependencies/starknet/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  482. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
  483. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
  484. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
  485. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
  486. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
  487. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
  488. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
  489. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
  490. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
  491. /ccxt-4.4.53/ccxt/static_dependencies/starknet/cairo/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  492. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
  493. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
  494. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
  495. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
  496. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
  497. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
  498. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
  499. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
  500. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
  501. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
  502. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
  503. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
  504. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
  505. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
  506. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
  507. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
  508. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
  509. /ccxt-4.4.53/ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  510. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
  511. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
  512. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
  513. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
  514. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
  515. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/keccak/__init__.py +0 -0
  516. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/keccak/keccak.py +0 -0
  517. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/__init__.py +0 -0
  518. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/__pyinstaller/__init__.py +0 -0
  519. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +0 -0
  520. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/ast_utils.py +0 -0
  521. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/common.py +0 -0
  522. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/exceptions.py +0 -0
  523. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/grammar.py +0 -0
  524. {ccxt-4.4.53/ccxt/static_dependencies/starknet/cairo/v1 → ccxt-4.4.58/ccxt/static_dependencies/lark/grammars}/__init__.py +0 -0
  525. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/indenter.py +0 -0
  526. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/lark.py +0 -0
  527. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/lexer.py +0 -0
  528. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/load_grammar.py +0 -0
  529. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parse_tree_builder.py +0 -0
  530. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parser_frontends.py +0 -0
  531. {ccxt-4.4.53/ccxt/static_dependencies/starknet/cairo/v2 → ccxt-4.4.58/ccxt/static_dependencies/lark/parsers}/__init__.py +0 -0
  532. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/cyk.py +0 -0
  533. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/earley.py +0 -0
  534. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/earley_common.py +0 -0
  535. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/earley_forest.py +0 -0
  536. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/grammar_analysis.py +0 -0
  537. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/lalr_analysis.py +0 -0
  538. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +0 -0
  539. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/lalr_parser.py +0 -0
  540. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +0 -0
  541. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/parsers/xearley.py +0 -0
  542. /ccxt-4.4.53/ccxt/static_dependencies/starknet/hash/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/lark/py.typed +0 -0
  543. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/reconstruct.py +0 -0
  544. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/tools/__init__.py +0 -0
  545. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/tools/nearley.py +0 -0
  546. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/tools/serialize.py +0 -0
  547. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/tools/standalone.py +0 -0
  548. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/tree.py +0 -0
  549. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/tree_matcher.py +0 -0
  550. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/tree_templates.py +0 -0
  551. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/utils.py +0 -0
  552. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/lark/visitors.py +0 -0
  553. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/__init__.py +0 -0
  554. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/base.py +0 -0
  555. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/class_registry.py +0 -0
  556. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/decorators.py +0 -0
  557. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/error_store.py +0 -0
  558. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/exceptions.py +0 -0
  559. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/fields.py +0 -0
  560. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/orderedset.py +0 -0
  561. /ccxt-4.4.53/ccxt/static_dependencies/starknet/models/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/marshmallow/py.typed +0 -0
  562. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/schema.py +0 -0
  563. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/types.py +0 -0
  564. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/utils.py +0 -0
  565. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/validate.py +0 -0
  566. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow/warnings.py +0 -0
  567. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_dataclass/__init__.py +0 -0
  568. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +0 -0
  569. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +0 -0
  570. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_dataclass/mypy.py +0 -0
  571. /ccxt-4.4.53/ccxt/static_dependencies/starknet/utils/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
  572. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_dataclass/typing.py +0 -0
  573. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_dataclass/union_field.py +0 -0
  574. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +0 -0
  575. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +0 -0
  576. /ccxt-4.4.53/ccxt/static_dependencies/starkware/__init__.py → /ccxt-4.4.58/ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
  577. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
  578. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
  579. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/msgpack/ext.py +0 -0
  580. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
  581. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
  582. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
  583. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
  584. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
  585. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
  586. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
  587. {ccxt-4.4.53/ccxt/static_dependencies/starkware/crypto → ccxt-4.4.58/ccxt/static_dependencies/starknet}/__init__.py +0 -0
  588. {ccxt-4.4.53/ccxt/static_dependencies/sympy → ccxt-4.4.58/ccxt/static_dependencies/starknet/cairo}/__init__.py +0 -0
  589. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/data_types.py +0 -0
  590. {ccxt-4.4.53/ccxt/static_dependencies/sympy/core → ccxt-4.4.58/ccxt/static_dependencies/starknet/cairo/deprecated_parse}/__init__.py +0 -0
  591. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +0 -0
  592. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +0 -0
  593. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +0 -0
  594. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/felt.py +0 -0
  595. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/type_parser.py +0 -0
  596. {ccxt-4.4.53/ccxt/static_dependencies/sympy/external → ccxt-4.4.58/ccxt/static_dependencies/starknet/cairo/v1}/__init__.py +0 -0
  597. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +0 -0
  598. {ccxt-4.4.53/ccxt/static_dependencies/typing_inspect → ccxt-4.4.58/ccxt/static_dependencies/starknet/cairo/v2}/__init__.py +0 -0
  599. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +0 -0
  600. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/ccxt_utils.py +0 -0
  601. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/common.py +0 -0
  602. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/constants.py +0 -0
  603. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/hash/address.py +0 -0
  604. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +0 -0
  605. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/hash/selector.py +0 -0
  606. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/hash/storage.py +0 -0
  607. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/hash/utils.py +0 -0
  608. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/models/typed_data.py +0 -0
  609. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/__init__.py +0 -0
  610. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +0 -0
  611. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/_context.py +0 -0
  612. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +0 -0
  613. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +0 -0
  614. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +0 -0
  615. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +0 -0
  616. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +0 -0
  617. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +0 -0
  618. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +0 -0
  619. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +0 -0
  620. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +0 -0
  621. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +0 -0
  622. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +0 -0
  623. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +0 -0
  624. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +0 -0
  625. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +0 -0
  626. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +0 -0
  627. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +0 -0
  628. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +0 -0
  629. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/errors.py +0 -0
  630. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/factory.py +0 -0
  631. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +0 -0
  632. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +0 -0
  633. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +0 -0
  634. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/utils/iterable.py +0 -0
  635. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/utils/schema.py +0 -0
  636. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starknet/utils/typed_data.py +0 -0
  637. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +0 -0
  638. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starkware/crypto/math_utils.py +0 -0
  639. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starkware/crypto/signature.py +0 -0
  640. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/starkware/crypto/utils.py +0 -0
  641. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/sympy/core/intfunc.py +0 -0
  642. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/sympy/external/gmpy.py +0 -0
  643. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/sympy/external/importtools.py +0 -0
  644. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/sympy/external/ntheory.py +0 -0
  645. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/sympy/external/pythonmpq.py +0 -0
  646. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/__init__.py +0 -0
  647. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
  648. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/_version.py +0 -0
  649. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
  650. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
  651. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
  652. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
  653. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
  654. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
  655. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
  656. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/recipes.py +0 -0
  657. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/toolz/utils.py +0 -0
  658. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/static_dependencies/typing_inspect/typing_inspect.py +0 -0
  659. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/test/__init__.py +0 -0
  660. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/test/tests_async.py +0 -0
  661. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/test/tests_helpers.py +0 -0
  662. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/test/tests_sync.py +0 -0
  663. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/tokocrypto.py +0 -0
  664. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/tradeogre.py +0 -0
  665. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/upbit.py +0 -0
  666. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/wavesexchange.py +0 -0
  667. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/wazirx.py +0 -0
  668. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/woo.py +0 -0
  669. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/yobit.py +0 -0
  670. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/zaif.py +0 -0
  671. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt/zonda.py +0 -0
  672. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt.egg-info/dependency_links.txt +0 -0
  673. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt.egg-info/requires.txt +0 -0
  674. {ccxt-4.4.53 → ccxt-4.4.58}/ccxt.egg-info/top_level.txt +0 -0
  675. {ccxt-4.4.53 → ccxt-4.4.58}/setup.cfg +0 -0
  676. {ccxt-4.4.53 → ccxt-4.4.58}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.4.53
3
+ Version: 4.4.58
4
4
  Summary: A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 100+ exchanges
5
5
  Home-page: https://ccxt.com
6
6
  Author: Igor Kroitor
@@ -38,7 +38,7 @@ License-File: LICENSE.txt
38
38
 
39
39
  # CCXT – CryptoCurrency eXchange Trading Library
40
40
 
41
- [![Build Status](https://img.shields.io/travis/com/ccxt/ccxt)](https://travis-ci.com/ccxt/ccxt) [![npm](https://img.shields.io/npm/v/ccxt.svg)](https://npmjs.com/package/ccxt) [![PyPI](https://img.shields.io/pypi/v/ccxt.svg)](https://pypi.python.org/pypi/ccxt) [![NPM Downloads](https://img.shields.io/npm/dy/ccxt.svg)](https://www.npmjs.com/package/ccxt) [![Discord](https://img.shields.io/discord/690203284119617602?logo=discord&logoColor=white)](https://discord.gg/ccxt) [![Supported Exchanges](https://img.shields.io/badge/exchanges-112-blue.svg)](https://github.com/ccxt/ccxt/wiki/Exchange-Markets) [![Twitter Follow](https://img.shields.io/twitter/follow/ccxt_official.svg?style=social&label=CCXT)](https://twitter.com/ccxt_official)
41
+ [![NPM Downloads](https://img.shields.io/npm/dy/ccxt.svg)](https://www.npmjs.com/package/ccxt) [![npm](https://img.shields.io/npm/v/ccxt.svg)](https://npmjs.com/package/ccxt) [![PyPI](https://img.shields.io/pypi/v/ccxt.svg)](https://pypi.python.org/pypi/ccxt) [![NuGet version](https://img.shields.io/nuget/v/ccxt)](https://www.nuget.org/packages/ccxt) [![GoDoc](https://pkg.go.dev/badge/github.com/ccxt/ccxt/go/v4?utm_source=godoc)](https://godoc.org/github.com/ccxt/ccxt/go/v4) [![Discord](https://img.shields.io/discord/690203284119617602?logo=discord&logoColor=white)](https://discord.gg/ccxt) [![Supported Exchanges](https://img.shields.io/badge/exchanges-111-blue.svg)](https://github.com/ccxt/ccxt/wiki/Exchange-Markets) [![Follow CCXT at x.com](https://img.shields.io/twitter/follow/ccxt_official.svg?style=social&label=CCXT)](https://x.com/ccxt_official)
42
42
 
43
43
  A JavaScript / Python / PHP / C# / Go library for cryptocurrency trading and e-commerce with support for many bitcoin/ether/altcoin exchange markets and merchant APIs.
44
44
 
@@ -99,7 +99,7 @@ Current feature list:
99
99
 
100
100
  ## Supported Cryptocurrency Exchanges
101
101
 
102
- The CCXT library currently supports the following 107 cryptocurrency exchange markets and trading APIs:
102
+ The CCXT library currently supports the following 106 cryptocurrency exchange markets and trading APIs:
103
103
 
104
104
  | logo | id | name | ver | type | certified | pro |
105
105
  |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------|----------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------:|--------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------|
@@ -178,7 +178,6 @@ The CCXT library currently supports the following 107 cryptocurrency exchange ma
178
178
  | [![latoken](https://user-images.githubusercontent.com/1294454/61511972-24c39f00-aa01-11e9-9f7c-471f1d6e5214.jpg)](https://latoken.com/invite?r=mvgp2djk) | latoken | [Latoken](https://latoken.com/invite?r=mvgp2djk) | [![API Version 2](https://img.shields.io/badge/2-lightgray)](https://api.latoken.com) | ![CEX – Centralized EXchange](https://img.shields.io/badge/CEX-green.svg "CEX – Centralized EXchange") | | |
179
179
  | [![lbank](https://user-images.githubusercontent.com/1294454/38063602-9605e28a-3302-11e8-81be-64b1e53c4cfb.jpg)](https://www.lbank.com/login/?icode=7QCY) | lbank | [LBank](https://www.lbank.com/login/?icode=7QCY) | [![API Version 2](https://img.shields.io/badge/2-lightgray)](https://www.lbank.com/en-US/docs/index.html) | ![CEX – Centralized EXchange](https://img.shields.io/badge/CEX-green.svg "CEX – Centralized EXchange") | | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
180
180
  | [![luno](https://user-images.githubusercontent.com/1294454/27766607-8c1a69d8-5ede-11e7-930c-540b5eb9be24.jpg)](https://www.luno.com/invite/44893A) | luno | [luno](https://www.luno.com/invite/44893A) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://www.luno.com/en/api) | ![CEX – Centralized EXchange](https://img.shields.io/badge/CEX-green.svg "CEX – Centralized EXchange") | | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
181
- | [![lykke](https://user-images.githubusercontent.com/1294454/155840500-1ea4fdf0-47c0-4daa-9597-c6c1cd51b9ec.jpg)](https://www.lykke.com) | lykke | [Lykke](https://www.lykke.com) | [![API Version 2](https://img.shields.io/badge/2-lightgray)](https://hft-apiv2.lykke.com/swagger/ui/index.html) | ![CEX – Centralized EXchange](https://img.shields.io/badge/CEX-green.svg "CEX – Centralized EXchange") | | |
182
181
  | [![mercado](https://user-images.githubusercontent.com/1294454/27837060-e7c58714-60ea-11e7-9192-f05e86adb83f.jpg)](https://www.mercadobitcoin.com.br) | mercado | [Mercado Bitcoin](https://www.mercadobitcoin.com.br) | [![API Version 3](https://img.shields.io/badge/3-lightgray)](https://www.mercadobitcoin.com.br/api-doc) | ![CEX – Centralized EXchange](https://img.shields.io/badge/CEX-green.svg "CEX – Centralized EXchange") | | |
183
182
  | [![mexc](https://user-images.githubusercontent.com/1294454/137283979-8b2a818d-8633-461b-bfca-de89e8c446b2.jpg)](https://www.mexc.com/register?inviteCode=mexc-1FQ1GNu1) | mexc | [MEXC Global](https://www.mexc.com/register?inviteCode=mexc-1FQ1GNu1) | [![API Version 3](https://img.shields.io/badge/3-lightgray)](https://mexcdevelop.github.io/apidocs/) | ![CEX – Centralized EXchange](https://img.shields.io/badge/CEX-green.svg "CEX – Centralized EXchange") | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
184
183
  | [![myokx](https://user-images.githubusercontent.com/1294454/152485636-38b19e4a-bece-4dec-979a-5982859ffc04.jpg)](https://www.my.okx.com/join/CCXT2023) | myokx | [MyOKX (EEA)](https://www.my.okx.com/join/CCXT2023) | [![API Version 5](https://img.shields.io/badge/5-lightgray)](https://my.okx.com/docs-v5/en/#overview) | ![CEX – Centralized EXchange](https://img.shields.io/badge/CEX-green.svg "CEX – Centralized EXchange") | | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
@@ -225,7 +224,7 @@ The easiest way to install the CCXT library is to use a package manager:
225
224
  - [ccxt in **PyPI**](https://pypi.python.org/pypi/ccxt) (Python 3.7.0+)
226
225
  - [ccxt in **Packagist/Composer**](https://packagist.org/packages/ccxt/ccxt) (PHP 8.1+)
227
226
  - [ccxt in **Nuget**](https://www.nuget.org/packages/ccxt) (netstandard 2.0)
228
- - [ccxt in **GO**](https://pkg.go.dev/github.com/ccxt/ccxt)
227
+ - [ccxt in **GO**](https://pkg.go.dev/github.com/ccxt/ccxt/go/v4)
229
228
 
230
229
  This library is shipped as an all-in-one module implementation with minimalistic dependencies and requirements:
231
230
 
@@ -270,13 +269,13 @@ console.log(version, Object.keys(exchanges));
270
269
 
271
270
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
272
271
 
273
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.53/dist/ccxt.browser.min.js
274
- * unpkg: https://unpkg.com/ccxt@4.4.53/dist/ccxt.browser.min.js
272
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.58/dist/ccxt.browser.min.js
273
+ * unpkg: https://unpkg.com/ccxt@4.4.58/dist/ccxt.browser.min.js
275
274
 
276
275
  CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
277
276
 
278
277
  ```HTML
279
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.53/dist/ccxt.browser.min.js"></script>
278
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.58/dist/ccxt.browser.min.js"></script>
280
279
  ```
281
280
 
282
281
  Creates a global `ccxt` object:
@@ -339,12 +338,10 @@ Console.WriteLine(ccxt.Exchanges) // check this later
339
338
 
340
339
  ### Go
341
340
 
342
- *warning* GO isn't publicly released yet, for now you need to build it from source (it will be officially released soon)
343
-
344
- [ccxt in GO with] (https://pkg.go.dev/github.com/ccxt/ccxt)
341
+ [ccxt in GO with **PKG**](https://pkg.go.dev/github.com/ccxt/ccxt/go/v4)
345
342
 
346
343
  ```shell
347
- go get github.com/ccxt/ccxt/go/v4/go
344
+ go get github.com/ccxt/ccxt/go/v4
348
345
  ```
349
346
 
350
347
  ```Go
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '4.4.53'
25
+ __version__ = '4.4.58'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -163,7 +163,6 @@ from ccxt.kuna import kuna # noqa: F4
163
163
  from ccxt.latoken import latoken # noqa: F401
164
164
  from ccxt.lbank import lbank # noqa: F401
165
165
  from ccxt.luno import luno # noqa: F401
166
- from ccxt.lykke import lykke # noqa: F401
167
166
  from ccxt.mercado import mercado # noqa: F401
168
167
  from ccxt.mexc import mexc # noqa: F401
169
168
  from ccxt.myokx import myokx # noqa: F401
@@ -277,7 +276,6 @@ exchanges = [
277
276
  'latoken',
278
277
  'lbank',
279
278
  'luno',
280
- 'lykke',
281
279
  'mercado',
282
280
  'mexc',
283
281
  'myokx',
@@ -109,6 +109,7 @@ class ImplicitAPI:
109
109
  private_linear_post_future_user_v1_position_margin = privateLinearPostFutureUserV1PositionMargin = Entry('future/user/v1/position/margin', ['private', 'linear'], 'POST', {'cost': 1})
110
110
  private_linear_post_future_user_v1_user_collection_add = privateLinearPostFutureUserV1UserCollectionAdd = Entry('future/user/v1/user/collection/add', ['private', 'linear'], 'POST', {'cost': 1})
111
111
  private_linear_post_future_user_v1_user_collection_cancel = privateLinearPostFutureUserV1UserCollectionCancel = Entry('future/user/v1/user/collection/cancel', ['private', 'linear'], 'POST', {'cost': 1})
112
+ private_linear_post_future_user_v1_position_change_type = privateLinearPostFutureUserV1PositionChangeType = Entry('future/user/v1/position/change-type', ['private', 'linear'], 'POST', {'cost': 1})
112
113
  private_inverse_get_future_trade_v1_entrust_plan_detail = privateInverseGetFutureTradeV1EntrustPlanDetail = Entry('future/trade/v1/entrust/plan-detail', ['private', 'inverse'], 'GET', {'cost': 1})
113
114
  private_inverse_get_future_trade_v1_entrust_plan_list = privateInverseGetFutureTradeV1EntrustPlanList = Entry('future/trade/v1/entrust/plan-list', ['private', 'inverse'], 'GET', {'cost': 1})
114
115
  private_inverse_get_future_trade_v1_entrust_plan_list_history = privateInverseGetFutureTradeV1EntrustPlanListHistory = Entry('future/trade/v1/entrust/plan-list-history', ['private', 'inverse'], 'GET', {'cost': 1})
@@ -365,6 +365,7 @@ class ascendex(Exchange, ImplicitAPI):
365
365
  'untilDays': 100000,
366
366
  'trigger': False,
367
367
  'trailing': False,
368
+ 'symbolRequired': False,
368
369
  },
369
370
  },
370
371
  'forDerivatives': {
@@ -388,6 +389,7 @@ class ascendex(Exchange, ImplicitAPI):
388
389
  'untilDays': None,
389
390
  'trigger': False,
390
391
  'trailing': False,
392
+ 'symbolRequired': False,
391
393
  },
392
394
  },
393
395
  'swap': {
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.4.53'
7
+ __version__ = '4.4.58'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -143,7 +143,6 @@ from ccxt.async_support.kuna import kuna
143
143
  from ccxt.async_support.latoken import latoken # noqa: F401
144
144
  from ccxt.async_support.lbank import lbank # noqa: F401
145
145
  from ccxt.async_support.luno import luno # noqa: F401
146
- from ccxt.async_support.lykke import lykke # noqa: F401
147
146
  from ccxt.async_support.mercado import mercado # noqa: F401
148
147
  from ccxt.async_support.mexc import mexc # noqa: F401
149
148
  from ccxt.async_support.myokx import myokx # noqa: F401
@@ -257,7 +256,6 @@ exchanges = [
257
256
  'latoken',
258
257
  'lbank',
259
258
  'luno',
260
- 'lykke',
261
259
  'mercado',
262
260
  'mexc',
263
261
  'myokx',
@@ -366,6 +366,7 @@ class ascendex(Exchange, ImplicitAPI):
366
366
  'untilDays': 100000,
367
367
  'trigger': False,
368
368
  'trailing': False,
369
+ 'symbolRequired': False,
369
370
  },
370
371
  },
371
372
  'forDerivatives': {
@@ -389,6 +390,7 @@ class ascendex(Exchange, ImplicitAPI):
389
390
  'untilDays': None,
390
391
  'trigger': False,
391
392
  'trailing': False,
393
+ 'symbolRequired': False,
392
394
  },
393
395
  },
394
396
  'swap': {
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '4.4.53'
5
+ __version__ = '4.4.58'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -1648,25 +1648,25 @@ class Exchange(BaseExchange):
1648
1648
 
1649
1649
  async def create_post_only_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
1650
1650
  if not self.has['createPostOnlyOrder']:
1651
- raise NotSupported(self.id + 'createPostOnlyOrder() is not supported yet')
1651
+ raise NotSupported(self.id + ' createPostOnlyOrder() is not supported yet')
1652
1652
  query = self.extend(params, {'postOnly': True})
1653
1653
  return await self.create_order(symbol, type, side, amount, price, query)
1654
1654
 
1655
1655
  async def create_post_only_order_ws(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
1656
1656
  if not self.has['createPostOnlyOrderWs']:
1657
- raise NotSupported(self.id + 'createPostOnlyOrderWs() is not supported yet')
1657
+ raise NotSupported(self.id + ' createPostOnlyOrderWs() is not supported yet')
1658
1658
  query = self.extend(params, {'postOnly': True})
1659
1659
  return await self.create_order_ws(symbol, type, side, amount, price, query)
1660
1660
 
1661
1661
  async def create_reduce_only_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
1662
1662
  if not self.has['createReduceOnlyOrder']:
1663
- raise NotSupported(self.id + 'createReduceOnlyOrder() is not supported yet')
1663
+ raise NotSupported(self.id + ' createReduceOnlyOrder() is not supported yet')
1664
1664
  query = self.extend(params, {'reduceOnly': True})
1665
1665
  return await self.create_order(symbol, type, side, amount, price, query)
1666
1666
 
1667
1667
  async def create_reduce_only_order_ws(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
1668
1668
  if not self.has['createReduceOnlyOrderWs']:
1669
- raise NotSupported(self.id + 'createReduceOnlyOrderWs() is not supported yet')
1669
+ raise NotSupported(self.id + ' createReduceOnlyOrderWs() is not supported yet')
1670
1670
  query = self.extend(params, {'reduceOnly': True})
1671
1671
  return await self.create_order_ws(symbol, type, side, amount, price, query)
1672
1672
 
@@ -1585,6 +1585,7 @@ class binance(Exchange, ImplicitAPI):
1585
1585
  'legalMoneyCurrenciesById': {
1586
1586
  'BUSD': 'USD',
1587
1587
  },
1588
+ 'defaultWithdrawPrecision': 0.00000001,
1588
1589
  },
1589
1590
  'features': {
1590
1591
  'spot': {
@@ -1635,6 +1636,7 @@ class binance(Exchange, ImplicitAPI):
1635
1636
  'limit': None,
1636
1637
  'trigger': False,
1637
1638
  'trailing': False,
1639
+ 'symbolRequired': False,
1638
1640
  },
1639
1641
  'fetchOrders': {
1640
1642
  'marginMode': True,
@@ -3097,6 +3099,7 @@ class binance(Exchange, ImplicitAPI):
3097
3099
  id = self.safe_string(entry, 'coin')
3098
3100
  name = self.safe_string(entry, 'name')
3099
3101
  code = self.safe_currency_code(id)
3102
+ isFiat = self.safe_bool(entry, 'isLegalMoney')
3100
3103
  minPrecision = None
3101
3104
  isWithdrawEnabled = True
3102
3105
  isDepositEnabled = True
@@ -3108,6 +3111,7 @@ class binance(Exchange, ImplicitAPI):
3108
3111
  networkItem = networkList[j]
3109
3112
  network = self.safe_string(networkItem, 'network')
3110
3113
  networkCode = self.network_id_to_code(network)
3114
+ isETF = (network == 'ETF') # e.g. BTCUP, ETHDOWN
3111
3115
  # name = self.safe_string(networkItem, 'name')
3112
3116
  withdrawFee = self.safe_number(networkItem, 'withdrawFee')
3113
3117
  depositEnable = self.safe_bool(networkItem, 'depositEnable')
@@ -3118,11 +3122,22 @@ class binance(Exchange, ImplicitAPI):
3118
3122
  isDefault = self.safe_bool(networkItem, 'isDefault')
3119
3123
  if isDefault or (fee is None):
3120
3124
  fee = withdrawFee
3125
+ # todo: default networks in "setMarkets" overload
3126
+ # if isDefault:
3127
+ # self.options['defaultNetworkCodesForCurrencies'][code] = networkCode
3128
+ # }
3121
3129
  precisionTick = self.safe_string(networkItem, 'withdrawIntegerMultiple')
3122
- # avoid zero values, which are mostly from fiat or leveraged tokens : https://github.com/ccxt/ccxt/pull/14902#issuecomment-1271636731
3123
- # so, when there is zero instead of i.e. 0.001, then we skip those cases, because we don't know the precision - it might be because of network is suspended or other reasons
3130
+ withdrawPrecision = precisionTick
3131
+ # avoid zero values, which are mostly from fiat or leveraged tokens or some abandoned coins : https://github.com/ccxt/ccxt/pull/14902#issuecomment-1271636731
3124
3132
  if not Precise.string_eq(precisionTick, '0'):
3125
3133
  minPrecision = precisionTick if (minPrecision is None) else Precise.string_min(minPrecision, precisionTick)
3134
+ else:
3135
+ if not isFiat and not isETF:
3136
+ # non-fiat and non-ETF currency, there are many cases when precision is set to zero(probably bug, we've reported to binance already)
3137
+ # in such cases, we can set default precision of 8(which is in UI for such coins)
3138
+ withdrawPrecision = self.omit_zero(self.safe_string(networkItem, 'withdrawInternalMin'))
3139
+ if withdrawPrecision is None:
3140
+ withdrawPrecision = self.safe_string(self.options, 'defaultWithdrawPrecision')
3126
3141
  networks[networkCode] = {
3127
3142
  'info': networkItem,
3128
3143
  'id': network,
@@ -3131,7 +3146,7 @@ class binance(Exchange, ImplicitAPI):
3131
3146
  'deposit': depositEnable,
3132
3147
  'withdraw': withdrawEnable,
3133
3148
  'fee': withdrawFee,
3134
- 'precision': self.parse_number(precisionTick),
3149
+ 'precision': self.parse_number(withdrawPrecision),
3135
3150
  'limits': {
3136
3151
  'withdraw': {
3137
3152
  'min': self.safe_number(networkItem, 'withdrawMin'),
@@ -3160,6 +3175,7 @@ class binance(Exchange, ImplicitAPI):
3160
3175
  'id': id,
3161
3176
  'name': name,
3162
3177
  'code': code,
3178
+ 'type': 'fiat' if isFiat else 'crypto',
3163
3179
  'precision': self.parse_number(minPrecision),
3164
3180
  'info': entry,
3165
3181
  'active': active,
@@ -5273,10 +5289,10 @@ class binance(Exchange, ImplicitAPI):
5273
5289
  request: dict = {
5274
5290
  'symbol': market['id'],
5275
5291
  'side': side.upper(),
5292
+ 'orderId': id,
5293
+ 'quantity': self.amount_to_precision(symbol, amount),
5276
5294
  }
5277
5295
  clientOrderId = self.safe_string_n(params, ['newClientOrderId', 'clientOrderId', 'origClientOrderId'])
5278
- request['orderId'] = id
5279
- request['quantity'] = self.amount_to_precision(symbol, amount)
5280
5296
  if price is not None:
5281
5297
  request['price'] = self.price_to_precision(symbol, price)
5282
5298
  if clientOrderId is not None:
@@ -5290,6 +5306,8 @@ class binance(Exchange, ImplicitAPI):
5290
5306
 
5291
5307
  https://developers.binance.com/docs/derivatives/usds-margined-futures/trade/rest-api/Modify-Order
5292
5308
  https://developers.binance.com/docs/derivatives/coin-margined-futures/trade/Modify-Order
5309
+ https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-UM-Order
5310
+ https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-CM-Order
5293
5311
 
5294
5312
  :param str id: cancel order id
5295
5313
  :param str symbol: unified symbol of the market to create an order in
@@ -5298,16 +5316,28 @@ class binance(Exchange, ImplicitAPI):
5298
5316
  :param float amount: how much of currency you want to trade in units of base currency
5299
5317
  :param float [price]: the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
5300
5318
  :param dict [params]: extra parameters specific to the exchange API endpoint
5319
+ :param boolean [params.portfolioMargin]: set to True if you would like to edit an order in a portfolio margin account
5301
5320
  :returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
5302
5321
  """
5303
5322
  await self.load_markets()
5304
5323
  market = self.market(symbol)
5324
+ isPortfolioMargin = None
5325
+ isPortfolioMargin, params = self.handle_option_and_params_2(params, 'editContractOrder', 'papi', 'portfolioMargin', False)
5326
+ if market['linear'] or isPortfolioMargin:
5327
+ if (price is None) and not ('priceMatch' in params):
5328
+ raise ArgumentsRequired(self.id + ' editOrder() requires a price argument for portfolio margin and linear orders')
5305
5329
  request = self.edit_contract_order_request(id, symbol, type, side, amount, price, params)
5306
5330
  response = None
5307
5331
  if market['linear']:
5308
- response = await self.fapiPrivatePutOrder(self.extend(request, params))
5332
+ if isPortfolioMargin:
5333
+ response = await self.papiPutUmOrder(self.extend(request, params))
5334
+ else:
5335
+ response = await self.fapiPrivatePutOrder(self.extend(request, params))
5309
5336
  elif market['inverse']:
5310
- response = await self.dapiPrivatePutOrder(self.extend(request, params))
5337
+ if isPortfolioMargin:
5338
+ response = await self.papiPutCmOrder(self.extend(request, params))
5339
+ else:
5340
+ response = await self.dapiPrivatePutOrder(self.extend(request, params))
5311
5341
  #
5312
5342
  # swap and future
5313
5343
  #
@@ -12060,7 +12090,7 @@ class binance(Exchange, ImplicitAPI):
12060
12090
  :returns dict: an array of `open interest structure <https://docs.ccxt.com/#/?id=open-interest-structure>`
12061
12091
  """
12062
12092
  if timeframe == '1m':
12063
- raise BadRequest(self.id + 'fetchOpenInterestHistory cannot use the 1m timeframe')
12093
+ raise BadRequest(self.id + ' fetchOpenInterestHistory cannot use the 1m timeframe')
12064
12094
  await self.load_markets()
12065
12095
  paginate = False
12066
12096
  paginate, params = self.handle_option_and_params(params, 'fetchOpenInterestHistory', 'paginate', False)
@@ -12819,7 +12849,7 @@ class binance(Exchange, ImplicitAPI):
12819
12849
  elif market['inverse']:
12820
12850
  response = await self.dapiPrivateGetPositionMarginHistory(self.extend(request, params))
12821
12851
  else:
12822
- raise BadRequest(self.id + 'fetchMarginAdjustmentHistory() is not supported for markets of type ' + market['type'])
12852
+ raise BadRequest(self.id + ' fetchMarginAdjustmentHistory() is not supported for markets of type ' + market['type'])
12823
12853
  #
12824
12854
  # [
12825
12855
  # {
@@ -4633,7 +4633,7 @@ class bitget(Exchange, ImplicitAPI):
4633
4633
  response = None
4634
4634
  if market['spot']:
4635
4635
  if triggerPrice is None:
4636
- raise NotSupported(self.id + 'editOrder() only supports plan/trigger spot orders')
4636
+ raise NotSupported(self.id + ' editOrder() only supports plan/trigger spot orders')
4637
4637
  editMarketBuyOrderRequiresPrice = self.safe_bool(self.options, 'editMarketBuyOrderRequiresPrice', True)
4638
4638
  if editMarketBuyOrderRequiresPrice and isMarketOrder and (side == 'buy'):
4639
4639
  if price is None:
@@ -8855,4 +8855,9 @@ class bitget(Exchange, ImplicitAPI):
8855
8855
  }
8856
8856
  if method == 'POST':
8857
8857
  headers['Content-Type'] = 'application/json'
8858
+ sandboxMode = self.safe_bool(self.options, 'sandboxMode', False)
8859
+ if sandboxMode:
8860
+ if headers is None:
8861
+ headers = {}
8862
+ headers['PAPTRADING'] = 1
8858
8863
  return {'url': url, 'method': method, 'body': body, 'headers': headers}
@@ -528,7 +528,10 @@ class bitmart(Exchange, ImplicitAPI):
528
528
  '40049': InvalidOrder, # 403, The maximum length of clientOrderId cannot exceed 32
529
529
  '40050': InvalidOrder, # 403, Client OrderId duplicated with existing orders
530
530
  },
531
- 'broad': {},
531
+ 'broad': {
532
+ 'You contract account available balance not enough': InsufficientFunds,
533
+ 'you contract account available balance not enough': InsufficientFunds,
534
+ },
532
535
  },
533
536
  'commonCurrencies': {
534
537
  '$GM': 'GOLDMINER',
@@ -968,6 +971,7 @@ class bitmart(Exchange, ImplicitAPI):
968
971
  data = self.safe_dict(response, 'data', {})
969
972
  symbols = self.safe_list(data, 'symbols', [])
970
973
  result = []
974
+ fees = self.fees['trading']
971
975
  for i in range(0, len(symbols)):
972
976
  market = symbols[i]
973
977
  id = self.safe_string(market, 'symbol')
@@ -1006,6 +1010,8 @@ class bitmart(Exchange, ImplicitAPI):
1006
1010
  'expiryDatetime': None,
1007
1011
  'strike': None,
1008
1012
  'optionType': None,
1013
+ 'maker': fees['maker'],
1014
+ 'taker': fees['taker'],
1009
1015
  'precision': {
1010
1016
  'amount': baseMinSize,
1011
1017
  'price': self.parse_number(self.parse_precision(self.safe_string(market, 'price_max_precision'))),
@@ -1077,6 +1083,7 @@ class bitmart(Exchange, ImplicitAPI):
1077
1083
  data = self.safe_dict(response, 'data', {})
1078
1084
  symbols = self.safe_list(data, 'symbols', [])
1079
1085
  result = []
1086
+ fees = self.fees['trading']
1080
1087
  for i in range(0, len(symbols)):
1081
1088
  market = symbols[i]
1082
1089
  id = self.safe_string(market, 'symbol')
@@ -1118,6 +1125,8 @@ class bitmart(Exchange, ImplicitAPI):
1118
1125
  'expiryDatetime': self.iso8601(expiry),
1119
1126
  'strike': None,
1120
1127
  'optionType': None,
1128
+ 'maker': fees['maker'],
1129
+ 'taker': fees['taker'],
1121
1130
  'precision': {
1122
1131
  'amount': self.safe_number(market, 'vol_precision'),
1123
1132
  'price': self.safe_number(market, 'price_precision'),
@@ -5085,6 +5094,7 @@ class bitmart(Exchange, ImplicitAPI):
5085
5094
  # {"message":"Bad Request [from is empty]","code":50000,"trace":"579986f7-c93a-4559-926b-06ba9fa79d76","data":{}}
5086
5095
  # {"message":"Kline size over 500","code":50004,"trace":"d625caa8-e8ca-4bd2-b77c-958776965819","data":{}}
5087
5096
  # {"message":"Balance not enough","code":50020,"trace":"7c709d6a-3292-462c-98c5-32362540aeef","data":{}}
5097
+ # {"code":40012,"message":"You contract account available balance not enough.","trace":"..."}
5088
5098
  #
5089
5099
  # contract
5090
5100
  #
@@ -5096,9 +5106,9 @@ class bitmart(Exchange, ImplicitAPI):
5096
5106
  isErrorCode = (errorCode is not None) and (errorCode != '1000')
5097
5107
  if isErrorCode or isErrorMessage:
5098
5108
  feedback = self.id + ' ' + body
5099
- self.throw_exactly_matched_exception(self.exceptions['exact'], errorCode, feedback)
5100
- self.throw_broadly_matched_exception(self.exceptions['broad'], errorCode, feedback)
5101
5109
  self.throw_exactly_matched_exception(self.exceptions['exact'], message, feedback)
5102
5110
  self.throw_broadly_matched_exception(self.exceptions['broad'], message, feedback)
5111
+ self.throw_exactly_matched_exception(self.exceptions['exact'], errorCode, feedback)
5112
+ self.throw_broadly_matched_exception(self.exceptions['broad'], errorCode, feedback)
5103
5113
  raise ExchangeError(feedback) # unknown message
5104
5114
  return None
@@ -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
  },
@@ -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)
@@ -6489,7 +6500,7 @@ classic accounts only/ spot not supported* fetches information on an order made
6489
6500
  :returns: An array of open interest structures
6490
6501
  """
6491
6502
  if timeframe == '1m':
6492
- raise BadRequest(self.id + 'fetchOpenInterestHistory cannot use the 1m timeframe')
6503
+ raise BadRequest(self.id + ' fetchOpenInterestHistory cannot use the 1m timeframe')
6493
6504
  await self.load_markets()
6494
6505
  paginate = self.safe_bool(params, 'paginate')
6495
6506
  if paginate:
@@ -8705,6 +8716,8 @@ classic accounts only/ spot not supported* fetches information on an order made
8705
8716
  feedback = self.id + ' private api uses /user/v3/private/query-api to check if you have a unified account. The API key of user id must own one of permissions: "Account Transfer", "Subaccount Transfer", "Withdrawal" ' + body
8706
8717
  else:
8707
8718
  feedback = self.id + ' ' + body
8719
+ if body.find('Withdraw address chain or destination tag are not equal'):
8720
+ feedback = feedback + '; You might also need to ensure the address is whitelisted'
8708
8721
  self.throw_broadly_matched_exception(self.exceptions['broad'], body, feedback)
8709
8722
  self.throw_exactly_matched_exception(self.exceptions['exact'], errorCode, feedback)
8710
8723
  raise ExchangeError(feedback) # unknown message
@@ -453,7 +453,7 @@ class coinbase(Exchange, ImplicitAPI):
453
453
  'symbolRequired': False,
454
454
  },
455
455
  'fetchOHLCV': {
456
- 'limit': 350,
456
+ 'limit': 300,
457
457
  },
458
458
  },
459
459
  'spot': {
@@ -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)
@@ -1684,7 +1684,7 @@ class coinbaseinternational(Exchange, ImplicitAPI):
1684
1684
  request['type'] = typeId
1685
1685
  if type == 'limit':
1686
1686
  if price is None:
1687
- raise InvalidOrder(self.id + 'createOrder() requires a price parameter for a limit order types')
1687
+ raise InvalidOrder(self.id + ' createOrder() requires a price parameter for a limit order types')
1688
1688
  request['price'] = price
1689
1689
  portfolio = None
1690
1690
  portfolio, params = await self.handle_portfolio_and_params('createOrder', params)
@@ -1695,7 +1695,7 @@ class coinbaseinternational(Exchange, ImplicitAPI):
1695
1695
  # market orders must be IOC
1696
1696
  if typeId == 'MARKET':
1697
1697
  if tif is not None and tif != 'IOC':
1698
- raise InvalidOrder(self.id + 'createOrder() market orders must have tif set to "IOC"')
1698
+ raise InvalidOrder(self.id + ' createOrder() market orders must have tif set to "IOC"')
1699
1699
  tif = 'IOC'
1700
1700
  else:
1701
1701
  tif = 'GTC' if (tif is None) else tif
@@ -4616,7 +4616,7 @@ class coinex(Exchange, ImplicitAPI):
4616
4616
  request: dict = {
4617
4617
  'ccy': currency['id'],
4618
4618
  'to_address': address, # must be authorized, inter-user transfer by a registered mobile phone number or an email address is supported
4619
- 'amount': self.number_to_string(amount), # the actual amount without fees, https://www.coinex.com/fees
4619
+ 'amount': self.currency_to_precision(code, amount), # the actual amount without fees, https://www.coinex.com/fees
4620
4620
  }
4621
4621
  if tag is not None:
4622
4622
  request['memo'] = tag
@@ -498,9 +498,6 @@ class deribit(Exchange, ImplicitAPI):
498
498
  'fetchBalance': {
499
499
  'code': 'BTC',
500
500
  },
501
- 'fetchPositions': {
502
- 'code': 'BTC',
503
- },
504
501
  'transfer': {
505
502
  'method': 'privateGetSubmitTransferToSubaccount', # or 'privateGetSubmitTransferToUser'
506
503
  },
@@ -2663,32 +2660,18 @@ class deribit(Exchange, ImplicitAPI):
2663
2660
 
2664
2661
  :param str[]|None symbols: list of unified market symbols
2665
2662
  :param dict [params]: extra parameters specific to the exchange API endpoint
2663
+ :param str [params.currency]: currency code filter for positions
2666
2664
  :param str [params.kind]: market type filter for positions 'future', 'option', 'spot', 'future_combo' or 'option_combo'
2665
+ :param int [params.subaccount_id]: the user id for the subaccount
2667
2666
  :returns dict[]: a list of `position structure <https://docs.ccxt.com/#/?id=position-structure>`
2668
2667
  """
2669
2668
  await self.load_markets()
2670
- kind = self.safe_string(params, 'kind')
2671
- code = None
2672
- if symbols is None:
2673
- code = self.code_from_options('fetchPositions', params)
2674
- elif isinstance(symbols, str):
2675
- code = symbols
2676
- symbols = None # fix https://github.com/ccxt/ccxt/issues/13961
2677
- else:
2678
- if isinstance(symbols, list):
2679
- length = len(symbols)
2680
- if length != 1:
2681
- raise BadRequest(self.id + ' fetchPositions() symbols argument cannot contain more than 1 symbol')
2682
- market = self.market(symbols[0])
2683
- settle = market['settle']
2684
- code = settle if (settle is not None) else market['base']
2685
- kind = market['info']['kind']
2686
- currency = self.currency(code)
2687
- request: dict = {
2688
- 'currency': currency['id'],
2689
- }
2690
- if kind is not None:
2691
- request['kind'] = kind
2669
+ code = self.safe_string(params, 'currency')
2670
+ request: dict = {}
2671
+ if code is not None:
2672
+ params = self.omit(params, 'currency')
2673
+ currency = self.currency(code)
2674
+ request['currency'] = currency['id']
2692
2675
  response = await self.privateGetGetPositions(self.extend(request, params))
2693
2676
  #
2694
2677
  # {
@@ -1351,7 +1351,7 @@ class exmo(Exchange, ImplicitAPI):
1351
1351
  marginMode = None
1352
1352
  marginMode, params = self.handle_margin_mode_and_params('fetchMyTrades', params)
1353
1353
  if marginMode == 'cross':
1354
- raise BadRequest(self.id + 'only isolated margin is supported')
1354
+ raise BadRequest(self.id + ' only isolated margin is supported')
1355
1355
  await self.load_markets()
1356
1356
  market = self.market(symbol)
1357
1357
  pair = market['id']