ccxt 4.3.74__tar.gz → 4.3.76__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 (664) hide show
  1. {ccxt-4.3.74/ccxt.egg-info → ccxt-4.3.76}/PKG-INFO +4 -4
  2. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/__init__.py +1 -1
  3. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitmart.py +2 -0
  4. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bybit.py +1 -0
  5. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/gemini.py +1 -0
  6. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/__init__.py +1 -1
  7. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/exchange.py +2 -2
  8. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/binance.py +1 -1
  9. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitmart.py +143 -82
  10. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bybit.py +30 -5
  11. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinbase.py +8 -4
  12. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/gemini.py +1 -0
  13. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/htx.py +4 -0
  14. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/mexc.py +1 -1
  15. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/whitebit.py +17 -2
  16. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/base/exchange.py +2 -1
  17. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/binance.py +1 -1
  18. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitmart.py +143 -82
  19. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bybit.py +30 -5
  20. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinbase.py +8 -4
  21. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/gemini.py +1 -0
  22. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/htx.py +4 -0
  23. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/mexc.py +1 -1
  24. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/__init__.py +1 -1
  25. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/binance.py +24 -0
  26. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitmart.py +9 -8
  27. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bybit.py +2 -2
  28. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/whitebit.py +17 -2
  29. {ccxt-4.3.74 → ccxt-4.3.76/ccxt.egg-info}/PKG-INFO +4 -4
  30. {ccxt-4.3.74 → ccxt-4.3.76}/package.json +1 -1
  31. {ccxt-4.3.74 → ccxt-4.3.76}/LICENSE.txt +0 -0
  32. {ccxt-4.3.74 → ccxt-4.3.76}/MANIFEST.in +0 -0
  33. {ccxt-4.3.74 → ccxt-4.3.76}/README.rst +0 -0
  34. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/__init__.py +0 -0
  35. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/ace.py +0 -0
  36. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/alpaca.py +0 -0
  37. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/ascendex.py +0 -0
  38. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bequant.py +0 -0
  39. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bigone.py +0 -0
  40. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/binance.py +0 -0
  41. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/binancecoinm.py +0 -0
  42. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/binanceus.py +0 -0
  43. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/binanceusdm.py +0 -0
  44. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bingx.py +0 -0
  45. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bit2c.py +0 -0
  46. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitbank.py +0 -0
  47. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitbay.py +0 -0
  48. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitbns.py +0 -0
  49. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitcoincom.py +0 -0
  50. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitfinex.py +0 -0
  51. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitfinex2.py +0 -0
  52. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitflyer.py +0 -0
  53. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitget.py +0 -0
  54. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bithumb.py +0 -0
  55. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitmex.py +0 -0
  56. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitopro.py +0 -0
  57. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitpanda.py +0 -0
  58. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitrue.py +0 -0
  59. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitso.py +0 -0
  60. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitstamp.py +0 -0
  61. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitteam.py +0 -0
  62. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bitvavo.py +0 -0
  63. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/bl3p.py +0 -0
  64. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/blockchaincom.py +0 -0
  65. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/blofin.py +0 -0
  66. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/btcalpha.py +0 -0
  67. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/btcbox.py +0 -0
  68. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/btcmarkets.py +0 -0
  69. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/btcturk.py +0 -0
  70. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/cex.py +0 -0
  71. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinbase.py +0 -0
  72. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinbaseadvanced.py +0 -0
  73. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinbaseexchange.py +0 -0
  74. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinbaseinternational.py +0 -0
  75. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coincheck.py +0 -0
  76. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinex.py +0 -0
  77. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinlist.py +0 -0
  78. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinmate.py +0 -0
  79. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinmetro.py +0 -0
  80. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinone.py +0 -0
  81. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinsph.py +0 -0
  82. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/coinspot.py +0 -0
  83. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/cryptocom.py +0 -0
  84. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/currencycom.py +0 -0
  85. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/delta.py +0 -0
  86. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/deribit.py +0 -0
  87. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/digifinex.py +0 -0
  88. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/exmo.py +0 -0
  89. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/fmfwio.py +0 -0
  90. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/gate.py +0 -0
  91. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/gateio.py +0 -0
  92. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/hitbtc.py +0 -0
  93. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/hitbtc3.py +0 -0
  94. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/hollaex.py +0 -0
  95. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/htx.py +0 -0
  96. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/huobi.py +0 -0
  97. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/huobijp.py +0 -0
  98. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/hyperliquid.py +0 -0
  99. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/idex.py +0 -0
  100. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/independentreserve.py +0 -0
  101. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/indodax.py +0 -0
  102. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/kraken.py +0 -0
  103. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/krakenfutures.py +0 -0
  104. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/kucoin.py +0 -0
  105. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/kucoinfutures.py +0 -0
  106. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/kuna.py +0 -0
  107. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/latoken.py +0 -0
  108. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/lbank.py +0 -0
  109. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/luno.py +0 -0
  110. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/lykke.py +0 -0
  111. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/mercado.py +0 -0
  112. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/mexc.py +0 -0
  113. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/ndax.py +0 -0
  114. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/novadax.py +0 -0
  115. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/oceanex.py +0 -0
  116. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/okcoin.py +0 -0
  117. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/okx.py +0 -0
  118. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/onetrading.py +0 -0
  119. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/oxfun.py +0 -0
  120. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/p2b.py +0 -0
  121. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/paradex.py +0 -0
  122. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/paymium.py +0 -0
  123. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/phemex.py +0 -0
  124. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/poloniex.py +0 -0
  125. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/poloniexfutures.py +0 -0
  126. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/probit.py +0 -0
  127. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/timex.py +0 -0
  128. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/tokocrypto.py +0 -0
  129. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/tradeogre.py +0 -0
  130. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/upbit.py +0 -0
  131. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/vertex.py +0 -0
  132. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/wavesexchange.py +0 -0
  133. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/wazirx.py +0 -0
  134. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/whitebit.py +0 -0
  135. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/woo.py +0 -0
  136. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/woofipro.py +0 -0
  137. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/xt.py +0 -0
  138. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/yobit.py +0 -0
  139. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/zaif.py +0 -0
  140. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/abstract/zonda.py +0 -0
  141. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/ace.py +0 -0
  142. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/alpaca.py +0 -0
  143. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/ascendex.py +0 -0
  144. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/ace.py +0 -0
  145. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/alpaca.py +0 -0
  146. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/ascendex.py +0 -0
  147. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/__init__.py +0 -0
  148. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/throttler.py +0 -0
  149. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/__init__.py +0 -0
  150. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  151. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/cache.py +0 -0
  152. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/client.py +0 -0
  153. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/fast_client.py +0 -0
  154. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/functions.py +0 -0
  155. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/future.py +0 -0
  156. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/order_book.py +0 -0
  157. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/base/ws/order_book_side.py +0 -0
  158. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bequant.py +0 -0
  159. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bigone.py +0 -0
  160. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/binancecoinm.py +0 -0
  161. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/binanceus.py +0 -0
  162. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/binanceusdm.py +0 -0
  163. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bingx.py +0 -0
  164. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bit2c.py +0 -0
  165. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitbank.py +0 -0
  166. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitbay.py +0 -0
  167. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitbns.py +0 -0
  168. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitcoincom.py +0 -0
  169. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitfinex.py +0 -0
  170. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitfinex2.py +0 -0
  171. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitflyer.py +0 -0
  172. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitget.py +0 -0
  173. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bithumb.py +0 -0
  174. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitmex.py +0 -0
  175. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitopro.py +0 -0
  176. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitpanda.py +0 -0
  177. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitrue.py +0 -0
  178. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitso.py +0 -0
  179. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitstamp.py +0 -0
  180. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitteam.py +0 -0
  181. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bitvavo.py +0 -0
  182. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/bl3p.py +0 -0
  183. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/blockchaincom.py +0 -0
  184. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/blofin.py +0 -0
  185. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/btcalpha.py +0 -0
  186. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/btcbox.py +0 -0
  187. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/btcmarkets.py +0 -0
  188. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/btcturk.py +0 -0
  189. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/cex.py +0 -0
  190. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinbaseadvanced.py +0 -0
  191. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinbaseexchange.py +0 -0
  192. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinbaseinternational.py +0 -0
  193. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coincheck.py +0 -0
  194. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinex.py +0 -0
  195. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinlist.py +0 -0
  196. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinmate.py +0 -0
  197. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinmetro.py +0 -0
  198. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinone.py +0 -0
  199. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinsph.py +0 -0
  200. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/coinspot.py +0 -0
  201. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/cryptocom.py +0 -0
  202. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/currencycom.py +0 -0
  203. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/delta.py +0 -0
  204. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/deribit.py +0 -0
  205. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/digifinex.py +0 -0
  206. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/exmo.py +0 -0
  207. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/fmfwio.py +0 -0
  208. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/gate.py +0 -0
  209. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/gateio.py +0 -0
  210. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/hitbtc.py +0 -0
  211. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/hitbtc3.py +0 -0
  212. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/hollaex.py +0 -0
  213. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/huobi.py +0 -0
  214. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/huobijp.py +0 -0
  215. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/hyperliquid.py +0 -0
  216. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/idex.py +0 -0
  217. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/independentreserve.py +0 -0
  218. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/indodax.py +0 -0
  219. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/kraken.py +0 -0
  220. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/krakenfutures.py +0 -0
  221. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/kucoin.py +0 -0
  222. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/kucoinfutures.py +0 -0
  223. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/kuna.py +0 -0
  224. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/latoken.py +0 -0
  225. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/lbank.py +0 -0
  226. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/luno.py +0 -0
  227. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/lykke.py +0 -0
  228. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/mercado.py +0 -0
  229. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/ndax.py +0 -0
  230. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/novadax.py +0 -0
  231. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/oceanex.py +0 -0
  232. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/okcoin.py +0 -0
  233. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/okx.py +0 -0
  234. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/onetrading.py +0 -0
  235. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/oxfun.py +0 -0
  236. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/p2b.py +0 -0
  237. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/paradex.py +0 -0
  238. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/paymium.py +0 -0
  239. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/phemex.py +0 -0
  240. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/poloniex.py +0 -0
  241. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/poloniexfutures.py +0 -0
  242. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/probit.py +0 -0
  243. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/timex.py +0 -0
  244. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/tokocrypto.py +0 -0
  245. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/tradeogre.py +0 -0
  246. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/upbit.py +0 -0
  247. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/vertex.py +0 -0
  248. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/wavesexchange.py +0 -0
  249. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/wazirx.py +0 -0
  250. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/woo.py +0 -0
  251. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/woofipro.py +0 -0
  252. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/xt.py +0 -0
  253. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/yobit.py +0 -0
  254. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/zaif.py +0 -0
  255. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/async_support/zonda.py +0 -0
  256. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/base/__init__.py +0 -0
  257. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/base/decimal_to_precision.py +0 -0
  258. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/base/errors.py +0 -0
  259. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/base/precise.py +0 -0
  260. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/base/types.py +0 -0
  261. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bequant.py +0 -0
  262. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bigone.py +0 -0
  263. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/binancecoinm.py +0 -0
  264. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/binanceus.py +0 -0
  265. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/binanceusdm.py +0 -0
  266. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bingx.py +0 -0
  267. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bit2c.py +0 -0
  268. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitbank.py +0 -0
  269. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitbay.py +0 -0
  270. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitbns.py +0 -0
  271. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitcoincom.py +0 -0
  272. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitfinex.py +0 -0
  273. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitfinex2.py +0 -0
  274. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitflyer.py +0 -0
  275. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitget.py +0 -0
  276. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bithumb.py +0 -0
  277. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitmex.py +0 -0
  278. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitopro.py +0 -0
  279. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitpanda.py +0 -0
  280. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitrue.py +0 -0
  281. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitso.py +0 -0
  282. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitstamp.py +0 -0
  283. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitteam.py +0 -0
  284. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bitvavo.py +0 -0
  285. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/bl3p.py +0 -0
  286. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/blockchaincom.py +0 -0
  287. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/blofin.py +0 -0
  288. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/btcalpha.py +0 -0
  289. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/btcbox.py +0 -0
  290. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/btcmarkets.py +0 -0
  291. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/btcturk.py +0 -0
  292. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/cex.py +0 -0
  293. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinbaseadvanced.py +0 -0
  294. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinbaseexchange.py +0 -0
  295. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinbaseinternational.py +0 -0
  296. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coincheck.py +0 -0
  297. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinex.py +0 -0
  298. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinlist.py +0 -0
  299. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinmate.py +0 -0
  300. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinmetro.py +0 -0
  301. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinone.py +0 -0
  302. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinsph.py +0 -0
  303. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/coinspot.py +0 -0
  304. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/cryptocom.py +0 -0
  305. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/currencycom.py +0 -0
  306. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/delta.py +0 -0
  307. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/deribit.py +0 -0
  308. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/digifinex.py +0 -0
  309. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/exmo.py +0 -0
  310. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/fmfwio.py +0 -0
  311. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/gate.py +0 -0
  312. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/gateio.py +0 -0
  313. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/hitbtc.py +0 -0
  314. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/hitbtc3.py +0 -0
  315. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/hollaex.py +0 -0
  316. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/huobi.py +0 -0
  317. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/huobijp.py +0 -0
  318. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/hyperliquid.py +0 -0
  319. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/idex.py +0 -0
  320. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/independentreserve.py +0 -0
  321. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/indodax.py +0 -0
  322. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/kraken.py +0 -0
  323. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/krakenfutures.py +0 -0
  324. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/kucoin.py +0 -0
  325. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/kucoinfutures.py +0 -0
  326. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/kuna.py +0 -0
  327. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/latoken.py +0 -0
  328. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/lbank.py +0 -0
  329. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/luno.py +0 -0
  330. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/lykke.py +0 -0
  331. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/mercado.py +0 -0
  332. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/ndax.py +0 -0
  333. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/novadax.py +0 -0
  334. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/oceanex.py +0 -0
  335. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/okcoin.py +0 -0
  336. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/okx.py +0 -0
  337. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/onetrading.py +0 -0
  338. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/oxfun.py +0 -0
  339. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/p2b.py +0 -0
  340. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/paradex.py +0 -0
  341. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/paymium.py +0 -0
  342. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/phemex.py +0 -0
  343. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/poloniex.py +0 -0
  344. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/poloniexfutures.py +0 -0
  345. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/alpaca.py +0 -0
  346. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/ascendex.py +0 -0
  347. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bequant.py +0 -0
  348. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/binancecoinm.py +0 -0
  349. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/binanceus.py +0 -0
  350. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/binanceusdm.py +0 -0
  351. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bingx.py +0 -0
  352. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitcoincom.py +0 -0
  353. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitfinex.py +0 -0
  354. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitfinex2.py +0 -0
  355. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitget.py +0 -0
  356. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bithumb.py +0 -0
  357. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitmex.py +0 -0
  358. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitopro.py +0 -0
  359. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitpanda.py +0 -0
  360. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitrue.py +0 -0
  361. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitstamp.py +0 -0
  362. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/bitvavo.py +0 -0
  363. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/blockchaincom.py +0 -0
  364. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/blofin.py +0 -0
  365. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/cex.py +0 -0
  366. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/coinbase.py +0 -0
  367. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/coinbaseexchange.py +0 -0
  368. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/coinbaseinternational.py +0 -0
  369. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/coincheck.py +0 -0
  370. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/coinex.py +0 -0
  371. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/coinone.py +0 -0
  372. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/cryptocom.py +0 -0
  373. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/currencycom.py +0 -0
  374. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/deribit.py +0 -0
  375. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/exmo.py +0 -0
  376. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/gate.py +0 -0
  377. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/gateio.py +0 -0
  378. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/gemini.py +0 -0
  379. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/hitbtc.py +0 -0
  380. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/hollaex.py +0 -0
  381. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/htx.py +0 -0
  382. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/huobi.py +0 -0
  383. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/huobijp.py +0 -0
  384. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/hyperliquid.py +0 -0
  385. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/idex.py +0 -0
  386. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/independentreserve.py +0 -0
  387. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/kraken.py +0 -0
  388. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/krakenfutures.py +0 -0
  389. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/kucoin.py +0 -0
  390. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/kucoinfutures.py +0 -0
  391. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/lbank.py +0 -0
  392. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/luno.py +0 -0
  393. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/mexc.py +0 -0
  394. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/ndax.py +0 -0
  395. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/okcoin.py +0 -0
  396. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/okx.py +0 -0
  397. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/onetrading.py +0 -0
  398. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/oxfun.py +0 -0
  399. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/p2b.py +0 -0
  400. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/paradex.py +0 -0
  401. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/phemex.py +0 -0
  402. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/poloniex.py +0 -0
  403. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/poloniexfutures.py +0 -0
  404. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/probit.py +0 -0
  405. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/upbit.py +0 -0
  406. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/vertex.py +0 -0
  407. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/wazirx.py +0 -0
  408. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/whitebit.py +0 -0
  409. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/woo.py +0 -0
  410. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/woofipro.py +0 -0
  411. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/pro/xt.py +0 -0
  412. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/probit.py +0 -0
  413. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/__init__.py +0 -0
  414. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  415. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  416. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  417. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/der.py +0 -0
  418. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  419. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  420. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  421. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  422. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  423. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ecdsa/util.py +0 -0
  424. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
  425. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
  426. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
  427. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
  428. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
  429. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
  430. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
  431. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
  432. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
  433. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
  434. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
  435. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  436. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
  437. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
  438. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
  439. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
  440. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
  441. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
  442. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
  443. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
  444. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
  445. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
  446. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
  447. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
  448. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  449. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
  450. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
  451. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
  452. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  453. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
  454. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
  455. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
  456. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
  457. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
  458. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
  459. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
  460. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
  461. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
  462. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  463. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
  464. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
  465. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
  466. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
  467. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
  468. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
  469. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
  470. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
  471. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
  472. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
  473. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
  474. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
  475. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
  476. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
  477. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
  478. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
  479. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
  480. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  481. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
  482. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
  483. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
  484. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
  485. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
  486. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/keccak/__init__.py +0 -0
  487. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/keccak/keccak.py +0 -0
  488. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/__init__.py +0 -0
  489. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/__pyinstaller/__init__.py +0 -0
  490. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +0 -0
  491. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/ast_utils.py +0 -0
  492. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/common.py +0 -0
  493. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/exceptions.py +0 -0
  494. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/grammar.py +0 -0
  495. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/grammars/__init__.py +0 -0
  496. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/indenter.py +0 -0
  497. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/lark.py +0 -0
  498. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/lexer.py +0 -0
  499. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/load_grammar.py +0 -0
  500. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parse_tree_builder.py +0 -0
  501. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parser_frontends.py +0 -0
  502. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/__init__.py +0 -0
  503. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/cyk.py +0 -0
  504. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/earley.py +0 -0
  505. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/earley_common.py +0 -0
  506. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/earley_forest.py +0 -0
  507. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/grammar_analysis.py +0 -0
  508. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/lalr_analysis.py +0 -0
  509. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +0 -0
  510. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/lalr_parser.py +0 -0
  511. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +0 -0
  512. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/parsers/xearley.py +0 -0
  513. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/py.typed +0 -0
  514. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/reconstruct.py +0 -0
  515. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/tools/__init__.py +0 -0
  516. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/tools/nearley.py +0 -0
  517. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/tools/serialize.py +0 -0
  518. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/tools/standalone.py +0 -0
  519. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/tree.py +0 -0
  520. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/tree_matcher.py +0 -0
  521. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/tree_templates.py +0 -0
  522. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/utils.py +0 -0
  523. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/lark/visitors.py +0 -0
  524. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/__init__.py +0 -0
  525. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/base.py +0 -0
  526. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/class_registry.py +0 -0
  527. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/decorators.py +0 -0
  528. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/error_store.py +0 -0
  529. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/exceptions.py +0 -0
  530. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/fields.py +0 -0
  531. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/orderedset.py +0 -0
  532. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/py.typed +0 -0
  533. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/schema.py +0 -0
  534. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/types.py +0 -0
  535. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/utils.py +0 -0
  536. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/validate.py +0 -0
  537. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow/warnings.py +0 -0
  538. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_dataclass/__init__.py +0 -0
  539. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +0 -0
  540. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +0 -0
  541. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_dataclass/mypy.py +0 -0
  542. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
  543. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_dataclass/typing.py +0 -0
  544. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_dataclass/union_field.py +0 -0
  545. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +0 -0
  546. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +0 -0
  547. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
  548. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
  549. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
  550. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/msgpack/ext.py +0 -0
  551. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
  552. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
  553. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
  554. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
  555. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
  556. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
  557. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
  558. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/__init__.py +0 -0
  559. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/__init__.py +0 -0
  560. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/data_types.py +0 -0
  561. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py +0 -0
  562. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +0 -0
  563. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +0 -0
  564. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +0 -0
  565. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/felt.py +0 -0
  566. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/type_parser.py +0 -0
  567. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/v1/__init__.py +0 -0
  568. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +0 -0
  569. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/v2/__init__.py +0 -0
  570. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +0 -0
  571. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/ccxt_utils.py +0 -0
  572. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/common.py +0 -0
  573. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/constants.py +0 -0
  574. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
  575. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/hash/address.py +0 -0
  576. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +0 -0
  577. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/hash/selector.py +0 -0
  578. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/hash/storage.py +0 -0
  579. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/hash/utils.py +0 -0
  580. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/models/__init__.py +0 -0
  581. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/models/typed_data.py +0 -0
  582. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/__init__.py +0 -0
  583. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +0 -0
  584. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/_context.py +0 -0
  585. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +0 -0
  586. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +0 -0
  587. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +0 -0
  588. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +0 -0
  589. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +0 -0
  590. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +0 -0
  591. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +0 -0
  592. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +0 -0
  593. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +0 -0
  594. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +0 -0
  595. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +0 -0
  596. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +0 -0
  597. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +0 -0
  598. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +0 -0
  599. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +0 -0
  600. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +0 -0
  601. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +0 -0
  602. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/errors.py +0 -0
  603. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/factory.py +0 -0
  604. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +0 -0
  605. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +0 -0
  606. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
  607. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +0 -0
  608. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/utils/iterable.py +0 -0
  609. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/utils/schema.py +0 -0
  610. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starknet/utils/typed_data.py +0 -0
  611. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starkware/__init__.py +0 -0
  612. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
  613. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +0 -0
  614. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starkware/crypto/math_utils.py +0 -0
  615. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starkware/crypto/signature.py +0 -0
  616. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/starkware/crypto/utils.py +0 -0
  617. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/__init__.py +0 -0
  618. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/core/__init__.py +0 -0
  619. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/core/intfunc.py +0 -0
  620. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/external/__init__.py +0 -0
  621. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/external/gmpy.py +0 -0
  622. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/external/importtools.py +0 -0
  623. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/external/ntheory.py +0 -0
  624. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/sympy/external/pythonmpq.py +0 -0
  625. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/__init__.py +0 -0
  626. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
  627. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/_version.py +0 -0
  628. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
  629. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
  630. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
  631. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
  632. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
  633. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
  634. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
  635. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/recipes.py +0 -0
  636. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/toolz/utils.py +0 -0
  637. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/typing_extensions/__init__.py +0 -0
  638. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/typing_extensions/typing_extensions.py +0 -0
  639. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
  640. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/static_dependencies/typing_inspect/typing_inspect.py +0 -0
  641. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/test/__init__.py +0 -0
  642. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/test/tests_async.py +0 -0
  643. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/test/tests_helpers.py +0 -0
  644. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/test/tests_init.py +0 -0
  645. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/test/tests_sync.py +0 -0
  646. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/timex.py +0 -0
  647. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/tokocrypto.py +0 -0
  648. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/tradeogre.py +0 -0
  649. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/upbit.py +0 -0
  650. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/vertex.py +0 -0
  651. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/wavesexchange.py +0 -0
  652. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/wazirx.py +0 -0
  653. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/woo.py +0 -0
  654. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/woofipro.py +0 -0
  655. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/xt.py +0 -0
  656. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/yobit.py +0 -0
  657. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/zaif.py +0 -0
  658. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt/zonda.py +0 -0
  659. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt.egg-info/SOURCES.txt +0 -0
  660. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt.egg-info/dependency_links.txt +0 -0
  661. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt.egg-info/requires.txt +0 -0
  662. {ccxt-4.3.74 → ccxt-4.3.76}/ccxt.egg-info/top_level.txt +0 -0
  663. {ccxt-4.3.74 → ccxt-4.3.76}/setup.cfg +0 -0
  664. {ccxt-4.3.74 → ccxt-4.3.76}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.3.74
3
+ Version: 4.3.76
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
@@ -259,13 +259,13 @@ console.log(version, Object.keys(exchanges));
259
259
 
260
260
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
261
261
 
262
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.74/dist/ccxt.browser.min.js
263
- * unpkg: https://unpkg.com/ccxt@4.3.74/dist/ccxt.browser.min.js
262
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.76/dist/ccxt.browser.min.js
263
+ * unpkg: https://unpkg.com/ccxt@4.3.76/dist/ccxt.browser.min.js
264
264
 
265
265
  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.
266
266
 
267
267
  ```HTML
268
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.74/dist/ccxt.browser.min.js"></script>
268
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.76/dist/ccxt.browser.min.js"></script>
269
269
  ```
270
270
 
271
271
  Creates a global `ccxt` object:
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '4.3.74'
25
+ __version__ = '4.3.76'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -62,6 +62,8 @@ class ImplicitAPI:
62
62
  private_get_contract_private_current_plan_order = privateGetContractPrivateCurrentPlanOrder = Entry('contract/private/current-plan-order', 'private', 'GET', {'cost': 1.2})
63
63
  private_get_contract_private_trades = privateGetContractPrivateTrades = Entry('contract/private/trades', 'private', 'GET', {'cost': 10})
64
64
  private_get_contract_private_position_risk = privateGetContractPrivatePositionRisk = Entry('contract/private/position-risk', 'private', 'GET', {'cost': 10})
65
+ private_get_contract_private_affilate_rebate_list = privateGetContractPrivateAffilateRebateList = Entry('contract/private/affilate/rebate-list', 'private', 'GET', {'cost': 10})
66
+ private_get_contract_private_affilate_trade_list = privateGetContractPrivateAffilateTradeList = Entry('contract/private/affilate/trade-list', 'private', 'GET', {'cost': 10})
65
67
  private_post_account_sub_account_main_v1_sub_to_main = privatePostAccountSubAccountMainV1SubToMain = Entry('account/sub-account/main/v1/sub-to-main', 'private', 'POST', {'cost': 30})
66
68
  private_post_account_sub_account_sub_v1_sub_to_main = privatePostAccountSubAccountSubV1SubToMain = Entry('account/sub-account/sub/v1/sub-to-main', 'private', 'POST', {'cost': 30})
67
69
  private_post_account_sub_account_main_v1_main_to_sub = privatePostAccountSubAccountMainV1MainToSub = Entry('account/sub-account/main/v1/main-to-sub', 'private', 'POST', {'cost': 30})
@@ -53,6 +53,7 @@ class ImplicitAPI:
53
53
  public_get_v5_spot_cross_margin_trade_borrow_token = publicGetV5SpotCrossMarginTradeBorrowToken = Entry('v5/spot-cross-margin-trade/borrow-token', 'public', 'GET', {'cost': 5})
54
54
  public_get_v5_ins_loan_product_infos = publicGetV5InsLoanProductInfos = Entry('v5/ins-loan/product-infos', 'public', 'GET', {'cost': 5})
55
55
  public_get_v5_ins_loan_ensure_tokens_convert = publicGetV5InsLoanEnsureTokensConvert = Entry('v5/ins-loan/ensure-tokens-convert', 'public', 'GET', {'cost': 5})
56
+ private_get_v5_market_instruments_info = privateGetV5MarketInstrumentsInfo = Entry('v5/market/instruments-info', 'private', 'GET', {'cost': 5})
56
57
  private_get_v2_private_wallet_fund_records = privateGetV2PrivateWalletFundRecords = Entry('v2/private/wallet/fund/records', 'private', 'GET', {'cost': 25})
57
58
  private_get_spot_v3_private_order = privateGetSpotV3PrivateOrder = Entry('spot/v3/private/order', 'private', 'GET', {'cost': 2.5})
58
59
  private_get_spot_v3_private_open_orders = privateGetSpotV3PrivateOpenOrders = Entry('spot/v3/private/open-orders', 'private', 'GET', {'cost': 2.5})
@@ -56,3 +56,4 @@ class ImplicitAPI:
56
56
  private_post_v1_account_create = privatePostV1AccountCreate = Entry('v1/account/create', 'private', 'POST', {'cost': 1})
57
57
  private_post_v1_account_list = privatePostV1AccountList = Entry('v1/account/list', 'private', 'POST', {'cost': 1})
58
58
  private_post_v1_heartbeat = privatePostV1Heartbeat = Entry('v1/heartbeat', 'private', 'POST', {'cost': 1})
59
+ private_post_v1_roles = privatePostV1Roles = Entry('v1/roles', 'private', 'POST', {'cost': 1})
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.74'
7
+ __version__ = '4.3.76'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '4.3.74'
5
+ __version__ = '4.3.76'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -570,7 +570,7 @@ class Exchange(BaseExchange):
570
570
 
571
571
  async def watch_liquidations(self, symbol: str, since: Int = None, limit: Int = None, params={}):
572
572
  if self.has['watchLiquidationsForSymbols']:
573
- return self.watch_liquidations_for_symbols([symbol], since, limit, params)
573
+ return await self.watch_liquidations_for_symbols([symbol], since, limit, params)
574
574
  raise NotSupported(self.id + ' watchLiquidations() is not supported yet')
575
575
 
576
576
  async def watch_liquidations_for_symbols(self, symbols: List[str], since: Int = None, limit: Int = None, params={}):
@@ -9123,7 +9123,7 @@ class binance(Exchange, ImplicitAPI):
9123
9123
  liquidationPrice = self.parse_number(liquidationPriceString)
9124
9124
  collateralString = None
9125
9125
  marginMode = self.safe_string(position, 'marginType')
9126
- if marginMode is None and isolatedMarginString:
9126
+ if marginMode is None and isolatedMarginString is not None:
9127
9127
  marginMode = 'cross' if Precise.string_eq(isolatedMarginString, '0') else 'isolated'
9128
9128
  side = None
9129
9129
  if Precise.string_gt(notionalString, '0'):
@@ -129,7 +129,8 @@ class bitmart(Exchange, ImplicitAPI):
129
129
  'urls': {
130
130
  'logo': 'https://user-images.githubusercontent.com/1294454/129991357-8f47464b-d0f4-41d6-8a82-34122f0d1398.jpg',
131
131
  'api': {
132
- 'rest': 'https://api-cloud.{hostname}', # bitmart.info for Hong Kong users
132
+ 'spot': 'https://api-cloud.{hostname}',
133
+ 'swap': 'https://api-cloud-v2.{hostname}', # bitmart.info for Hong Kong users
133
134
  },
134
135
  'www': 'https://www.bitmart.com/',
135
136
  'doc': 'https://developer-pro.bitmart.com/',
@@ -220,6 +221,8 @@ class bitmart(Exchange, ImplicitAPI):
220
221
  'contract/private/current-plan-order': 1.2,
221
222
  'contract/private/trades': 10,
222
223
  'contract/private/position-risk': 10,
224
+ 'contract/private/affilate/rebate-list': 10,
225
+ 'contract/private/affilate/trade-list': 10,
223
226
  },
224
227
  'post': {
225
228
  # sub-account endpoints
@@ -513,8 +516,8 @@ class bitmart(Exchange, ImplicitAPI):
513
516
  '40045': InvalidOrder, # 400, The order open type is invalid
514
517
  '40046': PermissionDenied, # 403, The account is not opened futures
515
518
  '40047': PermissionDenied, # 403, Services is not available in you countries and areas
516
- '40048': BadRequest, # 403, ClientOrderId only allows a combination of numbers and letters
517
- '40049': BadRequest, # 403, The maximum length of clientOrderId cannot exceed 32
519
+ '40048': InvalidOrder, # 403, ClientOrderId only allows a combination of numbers and letters
520
+ '40049': InvalidOrder, # 403, The maximum length of clientOrderId cannot exceed 32
518
521
  '40050': InvalidOrder, # 403, Client OrderId duplicated with existing orders
519
522
  },
520
523
  'broad': {},
@@ -877,36 +880,43 @@ class bitmart(Exchange, ImplicitAPI):
877
880
  async def fetch_contract_markets(self, params={}):
878
881
  response = await self.publicGetContractPublicDetails(params)
879
882
  #
880
- # {
881
- # "code": 1000,
882
- # "message": "Ok",
883
- # "trace": "9b92a999-9463-4c96-91a4-93ad1cad0d72",
884
- # "data": {
885
- # "symbols": [{
886
- # "symbol": "BTCUSDT",
887
- # "product_type": 1,
888
- # "open_timestamp": 1594080000,
889
- # "expire_timestamp": 0,
890
- # "settle_timestamp": 0,
891
- # "base_currency": "BTC",
892
- # "quote_currency": "USDT",
893
- # "last_price": "23920",
894
- # "volume_24h": "18969368",
895
- # "turnover_24h": "458933659.7858",
896
- # "index_price": "23945.25191635",
897
- # "index_name": "BTCUSDT",
898
- # "contract_size": "0.001",
899
- # "min_leverage": "1",
900
- # "max_leverage": "100",
901
- # "price_precision": "0.1",
902
- # "vol_precision": "1",
903
- # "max_volume": "500000",
904
- # "min_volume": "1"
905
- # },
906
- # ...
907
- # ]
908
- # }
883
+ # {
884
+ # "code": 1000,
885
+ # "message": "Ok",
886
+ # "trace": "9b92a999-9463-4c96-91a4-93ad1cad0d72",
887
+ # "data": {
888
+ # "symbols": [
889
+ # {
890
+ # "symbol": "BTCUSDT",
891
+ # "product_type": 1,
892
+ # "open_timestamp": 1594080000,
893
+ # "expire_timestamp": 0,
894
+ # "settle_timestamp": 0,
895
+ # "base_currency": "BTC",
896
+ # "quote_currency": "USDT",
897
+ # "last_price": "23920",
898
+ # "volume_24h": "18969368",
899
+ # "turnover_24h": "458933659.7858",
900
+ # "index_price": "23945.25191635",
901
+ # "index_name": "BTCUSDT",
902
+ # "contract_size": "0.001",
903
+ # "min_leverage": "1",
904
+ # "max_leverage": "100",
905
+ # "price_precision": "0.1",
906
+ # "vol_precision": "1",
907
+ # "max_volume": "500000",
908
+ # "min_volume": "1",
909
+ # "funding_rate": "0.0001",
910
+ # "expected_funding_rate": "0.00011",
911
+ # "open_interest": "4134180870",
912
+ # "open_interest_value": "94100888927.0433258",
913
+ # "high_24h": "23900",
914
+ # "low_24h": "23100",
915
+ # "change_24h": "0.004"
916
+ # },
917
+ # ]
909
918
  # }
919
+ # }
910
920
  #
911
921
  data = self.safe_value(response, 'data', {})
912
922
  symbols = self.safe_value(data, 'symbols', [])
@@ -981,6 +991,7 @@ class bitmart(Exchange, ImplicitAPI):
981
991
 
982
992
  async def fetch_markets(self, params={}) -> List[Market]:
983
993
  """
994
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-contract-details
984
995
  retrieves data on all markets for bitmart
985
996
  :param dict [params]: extra parameters specific to the exchange API endpoint
986
997
  :returns dict[]: an array of objects representing market data
@@ -1179,25 +1190,41 @@ class bitmart(Exchange, ImplicitAPI):
1179
1190
  #
1180
1191
  # swap
1181
1192
  #
1182
- # {
1183
- # "contract_symbol":"DOGEUSDT",
1184
- # "last_price":"0.130340",
1185
- # "index_price":"0.13048245",
1186
- # "last_funding_rate":"0.00002287",
1187
- # "price_change_percent_24h":"-2.074",
1188
- # "volume_24h":"113705028.59482228",
1189
- # "url":"https://futures.bitmart.com/en?symbol=DOGEUSDT",
1190
- # "high_price":"0.134520",
1191
- # "low_price":"0.128570",
1192
- # "legal_coin_price":"0.1302699"
1193
- # }
1193
+ # {
1194
+ # "symbol": "BTCUSDT",
1195
+ # "product_type": 1,
1196
+ # "open_timestamp": 1594080000,
1197
+ # "expire_timestamp": 0,
1198
+ # "settle_timestamp": 0,
1199
+ # "base_currency": "BTC",
1200
+ # "quote_currency": "USDT",
1201
+ # "last_price": "23920",
1202
+ # "volume_24h": "18969368",
1203
+ # "turnover_24h": "458933659.7858",
1204
+ # "index_price": "23945.25191635",
1205
+ # "index_name": "BTCUSDT",
1206
+ # "contract_size": "0.001",
1207
+ # "min_leverage": "1",
1208
+ # "max_leverage": "100",
1209
+ # "price_precision": "0.1",
1210
+ # "vol_precision": "1",
1211
+ # "max_volume": "500000",
1212
+ # "min_volume": "1",
1213
+ # "funding_rate": "0.0001",
1214
+ # "expected_funding_rate": "0.00011",
1215
+ # "open_interest": "4134180870",
1216
+ # "open_interest_value": "94100888927.0433258",
1217
+ # "high_24h": "23900",
1218
+ # "low_24h": "23100",
1219
+ # "change_24h": "0.004"
1220
+ # }
1194
1221
  #
1195
1222
  result = self.safe_list(ticker, 'result', [])
1196
1223
  average = self.safe_string_2(ticker, 'avg_price', 'index_price')
1197
1224
  marketId = self.safe_string_2(ticker, 'symbol', 'contract_symbol')
1198
1225
  timestamp = self.safe_integer_2(ticker, 'timestamp', 'ts')
1199
1226
  last = self.safe_string_2(ticker, 'last_price', 'last')
1200
- percentage = self.safe_string(ticker, 'price_change_percent_24h')
1227
+ percentage = self.safe_string_2(ticker, 'price_change_percent_24h', 'change_24h')
1201
1228
  change = self.safe_string(ticker, 'fluctuation')
1202
1229
  high = self.safe_string_2(ticker, 'high_24h', 'high_price')
1203
1230
  low = self.safe_string_2(ticker, 'low_24h', 'low_price')
@@ -1206,8 +1233,8 @@ class bitmart(Exchange, ImplicitAPI):
1206
1233
  ask = self.safe_string_2(ticker, 'best_ask', 'ask_px')
1207
1234
  askVolume = self.safe_string_2(ticker, 'best_ask_size', 'ask_sz')
1208
1235
  open = self.safe_string(ticker, 'open_24h')
1209
- baseVolume = self.safe_string_2(ticker, 'base_volume_24h', 'v_24h')
1210
- quoteVolume = self.safe_string_lower_2(ticker, 'quote_volume_24h', 'qv_24h')
1236
+ baseVolume = self.safe_string_n(ticker, ['base_volume_24h', 'v_24h', 'volume_24h'])
1237
+ quoteVolume = self.safe_string_lower_n(ticker, ['quote_volume_24h', 'qv_24h', 'turnover_24h'])
1211
1238
  listMarketId = self.safe_string(result, 0)
1212
1239
  if listMarketId is not None:
1213
1240
  marketId = listMarketId
@@ -1266,6 +1293,7 @@ class bitmart(Exchange, ImplicitAPI):
1266
1293
  """
1267
1294
  fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
1268
1295
  :see: https://developer-pro.bitmart.com/en/spot/#get-ticker-of-a-trading-pair-v3
1296
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-contract-details
1269
1297
  :param str symbol: unified symbol of the market to fetch the ticker for
1270
1298
  :param dict [params]: extra parameters specific to the exchange API endpoint
1271
1299
  :returns dict: a `ticker structure <https://docs.ccxt.com/#/?id=ticker-structure>`
@@ -1275,8 +1303,8 @@ class bitmart(Exchange, ImplicitAPI):
1275
1303
  request: dict = {}
1276
1304
  response = None
1277
1305
  if market['swap']:
1278
- request['contract_symbol'] = market['id']
1279
- response = await self.publicGetContractV1Tickers(self.extend(request, params))
1306
+ request['symbol'] = market['id']
1307
+ response = await self.publicGetContractPublicDetails(self.extend(request, params))
1280
1308
  #
1281
1309
  # {
1282
1310
  # "message":"OK",
@@ -1328,22 +1356,21 @@ class bitmart(Exchange, ImplicitAPI):
1328
1356
  else:
1329
1357
  raise NotSupported(self.id + ' fetchTicker() does not support ' + market['type'] + ' markets, only spot and swap markets are accepted')
1330
1358
  # fails in naming for contract tickers 'contract_symbol'
1331
- tickersById = None
1332
1359
  tickers = []
1333
1360
  ticker: dict = {}
1334
1361
  if market['spot']:
1335
1362
  ticker = self.safe_dict(response, 'data', {})
1336
1363
  else:
1337
1364
  data = self.safe_dict(response, 'data', {})
1338
- tickers = self.safe_list(data, 'tickers', [])
1339
- tickersById = self.index_by(tickers, 'contract_symbol')
1340
- ticker = self.safe_dict(tickersById, market['id'])
1365
+ tickers = self.safe_list(data, 'symbols', [])
1366
+ ticker = self.safe_value(tickers, 0, {})
1341
1367
  return self.parse_ticker(ticker, market)
1342
1368
 
1343
1369
  async def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
1344
1370
  """
1345
1371
  fetches price tickers for multiple markets, statistical information calculated over the past 24 hours for each market
1346
1372
  :see: https://developer-pro.bitmart.com/en/spot/#get-ticker-of-all-pairs-v3
1373
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-contract-details
1347
1374
  :param str[]|None symbols: unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
1348
1375
  :param dict [params]: extra parameters specific to the exchange API endpoint
1349
1376
  :returns dict: a dictionary of `ticker structures <https://docs.ccxt.com/#/?id=ticker-structure>`
@@ -1384,29 +1411,45 @@ class bitmart(Exchange, ImplicitAPI):
1384
1411
  # }
1385
1412
  #
1386
1413
  elif type == 'swap':
1387
- response = await self.publicGetContractV1Tickers(params)
1414
+ response = await self.publicGetContractPublicDetails(params)
1388
1415
  #
1389
- # {
1390
- # "message": "OK",
1391
- # "code": 1000,
1392
- # "trace": "c1dec681c24ea5d.105.171712565",
1393
- # "data": {
1394
- # "tickers": [
1395
- # {
1396
- # "contract_symbol": "SNTUSDT",
1397
- # "last_price": "0.0366600",
1398
- # "index_price": "0.03587373",
1399
- # "last_funding_rate": "0.00005000",
1400
- # "price_change_percent_24h": "-2.629",
1401
- # "volume_24h": "10102540.19909109848",
1402
- # "url": "https://futures.bitmart.com/en?symbol=SNTUSDT",
1403
- # "high_price": "0.0405600",
1404
- # "low_price": "0.0355000",
1405
- # "legal_coin_price": "0.03666697"
1406
- # },
1407
- # ]
1408
- # }
1409
- # }
1416
+ # {
1417
+ # "code": 1000,
1418
+ # "message": "Ok",
1419
+ # "trace": "9b92a999-9463-4c96-91a4-93ad1cad0d72",
1420
+ # "data": {
1421
+ # "symbols": [
1422
+ # {
1423
+ # "symbol": "BTCUSDT",
1424
+ # "product_type": 1,
1425
+ # "open_timestamp": 1594080000,
1426
+ # "expire_timestamp": 0,
1427
+ # "settle_timestamp": 0,
1428
+ # "base_currency": "BTC",
1429
+ # "quote_currency": "USDT",
1430
+ # "last_price": "23920",
1431
+ # "volume_24h": "18969368",
1432
+ # "turnover_24h": "458933659.7858",
1433
+ # "index_price": "23945.25191635",
1434
+ # "index_name": "BTCUSDT",
1435
+ # "contract_size": "0.001",
1436
+ # "min_leverage": "1",
1437
+ # "max_leverage": "100",
1438
+ # "price_precision": "0.1",
1439
+ # "vol_precision": "1",
1440
+ # "max_volume": "500000",
1441
+ # "min_volume": "1",
1442
+ # "funding_rate": "0.0001",
1443
+ # "expected_funding_rate": "0.00011",
1444
+ # "open_interest": "4134180870",
1445
+ # "open_interest_value": "94100888927.0433258",
1446
+ # "high_24h": "23900",
1447
+ # "low_24h": "23100",
1448
+ # "change_24h": "0.004"
1449
+ # },
1450
+ # ]
1451
+ # }
1452
+ # }
1410
1453
  #
1411
1454
  else:
1412
1455
  raise NotSupported(self.id + ' fetchTickers() does not support ' + type + ' markets, only spot and swap markets are accepted')
@@ -1415,7 +1458,7 @@ class bitmart(Exchange, ImplicitAPI):
1415
1458
  tickers = self.safe_list(response, 'data', [])
1416
1459
  else:
1417
1460
  data = self.safe_dict(response, 'data', {})
1418
- tickers = self.safe_list(data, 'tickers', [])
1461
+ tickers = self.safe_list(data, 'symbols', [])
1419
1462
  result: dict = {}
1420
1463
  for i in range(0, len(tickers)):
1421
1464
  ticker: dict = {}
@@ -1432,6 +1475,7 @@ class bitmart(Exchange, ImplicitAPI):
1432
1475
  fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
1433
1476
  :see: https://developer-pro.bitmart.com/en/spot/#get-depth-v3
1434
1477
  :see: https://developer-pro.bitmart.com/en/futures/#get-market-depth
1478
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-market-depth
1435
1479
  :param str symbol: unified symbol of the market to fetch the order book for
1436
1480
  :param int [limit]: the maximum amount of order book entries to return
1437
1481
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -1707,7 +1751,7 @@ class bitmart(Exchange, ImplicitAPI):
1707
1751
  """
1708
1752
  fetches historical candlestick data containing the open, high, low, and close price, and the volume of a market
1709
1753
  :see: https://developer-pro.bitmart.com/en/spot/#get-history-k-line-v3
1710
- :see: https://developer-pro.bitmart.com/en/futures/#get-k-line
1754
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-k-line
1711
1755
  :param str symbol: unified symbol of the market to fetch OHLCV data for
1712
1756
  :param str timeframe: the length of time each candle represents
1713
1757
  :param int [since]: timestamp in ms of the earliest candle to fetch
@@ -1968,6 +2012,7 @@ class bitmart(Exchange, ImplicitAPI):
1968
2012
  query for balance and get the amount of funds available for trading or funds locked in orders
1969
2013
  :see: https://developer-pro.bitmart.com/en/spot/#get-spot-wallet-balance
1970
2014
  :see: https://developer-pro.bitmart.com/en/futures/#get-contract-assets-detail
2015
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-contract-assets-keyed
1971
2016
  :see: https://developer-pro.bitmart.com/en/spot/#get-account-balance
1972
2017
  :see: https://developer-pro.bitmart.com/en/spot/#get-margin-account-details-isolated
1973
2018
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -2319,6 +2364,8 @@ class bitmart(Exchange, ImplicitAPI):
2319
2364
  :see: https://developer-pro.bitmart.com/en/spot/#place-margin-order
2320
2365
  :see: https://developer-pro.bitmart.com/en/futures/#submit-order-signed
2321
2366
  :see: https://developer-pro.bitmart.com/en/futures/#submit-plan-order-signed
2367
+ :see: https://developer-pro.bitmart.com/en/futures/#submit-order-signed
2368
+ :see: https://developer-pro.bitmart.com/en/futures/#submit-plan-order-signed
2322
2369
  :param str symbol: unified symbol of the market to create an order in
2323
2370
  :param str type: 'market', 'limit' or 'trailing' for swap markets only
2324
2371
  :param str side: 'buy' or 'sell'
@@ -2531,9 +2578,10 @@ class bitmart(Exchange, ImplicitAPI):
2531
2578
  if clientOrderId is not None:
2532
2579
  params = self.omit(params, 'clientOrderId')
2533
2580
  request['client_order_id'] = clientOrderId
2534
- leverage = self.safe_integer(params, 'leverage', 1)
2581
+ leverage = self.safe_integer(params, 'leverage')
2535
2582
  params = self.omit(params, ['timeInForce', 'postOnly', 'reduceOnly', 'leverage', 'trailingTriggerPrice', 'trailingPercent', 'triggerPrice', 'stopPrice'])
2536
- request['leverage'] = self.number_to_string(leverage)
2583
+ if leverage is not None:
2584
+ request['leverage'] = self.number_to_string(leverage)
2537
2585
  return self.extend(request, params)
2538
2586
 
2539
2587
  def create_spot_order_request(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
@@ -2608,6 +2656,8 @@ class bitmart(Exchange, ImplicitAPI):
2608
2656
  :see: https://developer-pro.bitmart.com/en/spot/#cancel-order-v3-signed
2609
2657
  :see: https://developer-pro.bitmart.com/en/futures/#cancel-plan-order-signed
2610
2658
  :see: https://developer-pro.bitmart.com/en/futures/#cancel-plan-order-signed
2659
+ :see: https://developer-pro.bitmart.com/en/futures/#cancel-order-signed
2660
+ :see: https://developer-pro.bitmart.com/en/futures/#cancel-plan-order-signed
2611
2661
  :param str id: order id
2612
2662
  :param str symbol: unified symbol of the market the order was made in
2613
2663
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -2737,6 +2787,7 @@ class bitmart(Exchange, ImplicitAPI):
2737
2787
  cancel all open orders in a market
2738
2788
  :see: https://developer-pro.bitmart.com/en/spot/#cancel-all-orders
2739
2789
  :see: https://developer-pro.bitmart.com/en/futures/#cancel-all-orders-signed
2790
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#cancel-all-orders-signed
2740
2791
  :param str symbol: unified market symbol of the market to cancel orders in
2741
2792
  :param dict [params]: extra parameters specific to the exchange API endpoint
2742
2793
  :param str [params.side]: *spot only* 'buy' or 'sell'
@@ -2949,6 +3000,7 @@ class bitmart(Exchange, ImplicitAPI):
2949
3000
  """
2950
3001
  :see: https://developer-pro.bitmart.com/en/spot/#account-orders-v4-signed
2951
3002
  :see: https://developer-pro.bitmart.com/en/futures/#get-order-history-keyed
3003
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-order-history-keyed
2952
3004
  fetches information on multiple closed orders made by the user
2953
3005
  :param str symbol: unified market symbol of the market orders were made in
2954
3006
  :param int [since]: the earliest time in ms to fetch orders for
@@ -3006,6 +3058,7 @@ class bitmart(Exchange, ImplicitAPI):
3006
3058
  :see: https://developer-pro.bitmart.com/en/spot/#query-order-by-id-v4-signed
3007
3059
  :see: https://developer-pro.bitmart.com/en/spot/#query-order-by-clientorderid-v4-signed
3008
3060
  :see: https://developer-pro.bitmart.com/en/futures/#get-order-detail-keyed
3061
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-order-detail-keyed
3009
3062
  :param str id: the id of the order
3010
3063
  :param str symbol: unified symbol of the market the order was made in
3011
3064
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -3694,6 +3747,7 @@ class bitmart(Exchange, ImplicitAPI):
3694
3747
  transfer currency internally between wallets on the same account, currently only supports transfer between spot and margin
3695
3748
  :see: https://developer-pro.bitmart.com/en/spot/#margin-asset-transfer-signed
3696
3749
  :see: https://developer-pro.bitmart.com/en/futures/#transfer-signed
3750
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#transfer-signed
3697
3751
  :param str code: unified currency code
3698
3752
  :param float amount: amount to transfer
3699
3753
  :param str fromAccount: account to transfer from
@@ -3955,7 +4009,7 @@ class bitmart(Exchange, ImplicitAPI):
3955
4009
  async def fetch_open_interest(self, symbol: str, params={}):
3956
4010
  """
3957
4011
  Retrieves the open interest of a currency
3958
- :see: https://developer-pro.bitmart.com/en/futures/#get-futures-openinterest
4012
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-futures-openinterest
3959
4013
  :param str symbol: Unified CCXT market symbol
3960
4014
  :param dict [params]: exchange specific parameters
3961
4015
  :returns dict} an open interest structure{@link https://docs.ccxt.com/#/?id=open-interest-structure:
@@ -4008,6 +4062,7 @@ class bitmart(Exchange, ImplicitAPI):
4008
4062
  """
4009
4063
  set the level of leverage for a market
4010
4064
  :see: https://developer-pro.bitmart.com/en/futures/#submit-leverage-signed
4065
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#submit-leverage-signed
4011
4066
  :param float leverage: the rate of leverage
4012
4067
  :param str symbol: unified market symbol
4013
4068
  :param dict [params]: extra parameters specific to the exchange API endpoint
@@ -4033,7 +4088,7 @@ class bitmart(Exchange, ImplicitAPI):
4033
4088
  async def fetch_funding_rate(self, symbol: str, params={}):
4034
4089
  """
4035
4090
  fetch the current funding rate
4036
- :see: https://developer-pro.bitmart.com/en/futures/#get-current-funding-rate
4091
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-current-funding-rate
4037
4092
  :param str symbol: unified market symbol
4038
4093
  :param dict [params]: extra parameters specific to the exchange API endpoint
4039
4094
  :returns dict: a `funding rate structure <https://docs.ccxt.com/#/?id=funding-rate-structure>`
@@ -4097,6 +4152,7 @@ class bitmart(Exchange, ImplicitAPI):
4097
4152
  """
4098
4153
  fetch data on a single open contract trade position
4099
4154
  :see: https://developer-pro.bitmart.com/en/futures/#get-current-position-keyed
4155
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-current-position-risk-details-keyed
4100
4156
  :param str symbol: unified market symbol of the market the position is held in
4101
4157
  :param dict [params]: extra parameters specific to the exchange API endpoint
4102
4158
  :returns dict: a `position structure <https://docs.ccxt.com/#/?id=position-structure>`
@@ -4144,6 +4200,7 @@ class bitmart(Exchange, ImplicitAPI):
4144
4200
  """
4145
4201
  fetch all open contract positions
4146
4202
  :see: https://developer-pro.bitmart.com/en/futures/#get-current-position-keyed
4203
+ :see: https://developer-pro.bitmart.com/en/futuresv2/#get-current-position-risk-details-keyed
4147
4204
  :param str[]|None symbols: list of unified market symbols
4148
4205
  :param dict [params]: extra parameters specific to the exchange API endpoint
4149
4206
  :returns dict[]: a list of `position structures <https://docs.ccxt.com/#/?id=position-structure>`
@@ -4360,7 +4417,11 @@ class bitmart(Exchange, ImplicitAPI):
4360
4417
  return self.milliseconds()
4361
4418
 
4362
4419
  def sign(self, path, api='public', method='GET', params={}, headers=None, body=None):
4363
- baseUrl = self.implode_hostname(self.urls['api']['rest'])
4420
+ parts = path.split('/')
4421
+ # to do: refactor api endpoints with spot/swap sections
4422
+ category = self.safe_string(parts, 0, 'spot')
4423
+ market = 'spot' if (category == 'spot' or category == 'account') else 'swap'
4424
+ baseUrl = self.implode_hostname(self.urls['api'][market])
4364
4425
  url = baseUrl + '/' + self.implode_params(path, params)
4365
4426
  query = self.omit(params, self.extract_params(path))
4366
4427
  queryString = ''
@@ -255,6 +255,7 @@ class bybit(Exchange, ImplicitAPI):
255
255
  },
256
256
  'private': {
257
257
  'get': {
258
+ 'v5/market/instruments-info': 5,
258
259
  # Legacy inverse swap
259
260
  'v2/private/wallet/fund/records': 25, # 120 per minute = 2 per second => cost = 50 / 2 = 25
260
261
  # spot
@@ -1000,6 +1001,7 @@ class bybit(Exchange, ImplicitAPI):
1000
1001
  },
1001
1002
  'precisionMode': TICK_SIZE,
1002
1003
  'options': {
1004
+ 'usePrivateInstrumentsInfo': False,
1003
1005
  'sandboxMode': False,
1004
1006
  'enableDemoTrading': False,
1005
1007
  'fetchMarkets': ['spot', 'linear', 'inverse', 'option'],
@@ -1458,7 +1460,12 @@ class bybit(Exchange, ImplicitAPI):
1458
1460
  request: dict = {
1459
1461
  'category': 'spot',
1460
1462
  }
1461
- response = await self.publicGetV5MarketInstrumentsInfo(self.extend(request, params))
1463
+ usePrivateInstrumentsInfo = self.safe_bool(self.options, 'usePrivateInstrumentsInfo', False)
1464
+ response: dict = None
1465
+ if usePrivateInstrumentsInfo:
1466
+ response = await self.privateGetV5MarketInstrumentsInfo(self.extend(request, params))
1467
+ else:
1468
+ response = await self.publicGetV5MarketInstrumentsInfo(self.extend(request, params))
1462
1469
  #
1463
1470
  # {
1464
1471
  # "retCode": 0,
@@ -1567,14 +1574,23 @@ class bybit(Exchange, ImplicitAPI):
1567
1574
  async def fetch_future_markets(self, params):
1568
1575
  params = self.extend(params)
1569
1576
  params['limit'] = 1000 # minimize number of requests
1570
- response = await self.publicGetV5MarketInstrumentsInfo(params)
1577
+ usePrivateInstrumentsInfo = self.safe_bool(self.options, 'usePrivateInstrumentsInfo', False)
1578
+ response: dict = None
1579
+ if usePrivateInstrumentsInfo:
1580
+ response = await self.privateGetV5MarketInstrumentsInfo(params)
1581
+ else:
1582
+ response = await self.publicGetV5MarketInstrumentsInfo(params)
1571
1583
  data = self.safe_dict(response, 'result', {})
1572
1584
  markets = self.safe_list(data, 'list', [])
1573
1585
  paginationCursor = self.safe_string(data, 'nextPageCursor')
1574
1586
  if paginationCursor is not None:
1575
1587
  while(paginationCursor is not None):
1576
1588
  params['cursor'] = paginationCursor
1577
- responseInner = await self.publicGetV5MarketInstrumentsInfo(params)
1589
+ responseInner: dict = None
1590
+ if usePrivateInstrumentsInfo:
1591
+ responseInner = await self.privateGetV5MarketInstrumentsInfo(params)
1592
+ else:
1593
+ responseInner = await self.publicGetV5MarketInstrumentsInfo(params)
1578
1594
  dataNew = self.safe_dict(responseInner, 'result', {})
1579
1595
  rawMarkets = self.safe_list(dataNew, 'list', [])
1580
1596
  rawMarketsLength = len(rawMarkets)
@@ -1731,7 +1747,12 @@ class bybit(Exchange, ImplicitAPI):
1731
1747
  request: dict = {
1732
1748
  'category': 'option',
1733
1749
  }
1734
- response = await self.publicGetV5MarketInstrumentsInfo(self.extend(request, params))
1750
+ usePrivateInstrumentsInfo = self.safe_bool(self.options, 'usePrivateInstrumentsInfo', False)
1751
+ response: dict = None
1752
+ if usePrivateInstrumentsInfo:
1753
+ response = await self.privateGetV5MarketInstrumentsInfo(self.extend(request, params))
1754
+ else:
1755
+ response = await self.publicGetV5MarketInstrumentsInfo(self.extend(request, params))
1735
1756
  data = self.safe_dict(response, 'result', {})
1736
1757
  markets = self.safe_list(data, 'list', [])
1737
1758
  if self.options['loadAllOptions']:
@@ -1740,7 +1761,11 @@ class bybit(Exchange, ImplicitAPI):
1740
1761
  if paginationCursor is not None:
1741
1762
  while(paginationCursor is not None):
1742
1763
  request['cursor'] = paginationCursor
1743
- responseInner = await self.publicGetV5MarketInstrumentsInfo(self.extend(request, params))
1764
+ responseInner: dict = None
1765
+ if usePrivateInstrumentsInfo:
1766
+ responseInner = await self.privateGetV5MarketInstrumentsInfo(self.extend(request, params))
1767
+ else:
1768
+ responseInner = await self.publicGetV5MarketInstrumentsInfo(self.extend(request, params))
1744
1769
  dataNew = self.safe_dict(responseInner, 'result', {})
1745
1770
  rawMarkets = self.safe_list(dataNew, 'list', [])
1746
1771
  rawMarketsLength = len(rawMarkets)