ccxt 4.3.37__tar.gz → 4.3.38__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.

Potentially problematic release.


This version of ccxt might be problematic. Click here for more details.

Files changed (549) hide show
  1. {ccxt-4.3.37/ccxt.egg-info → ccxt-4.3.38}/PKG-INFO +6 -4
  2. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/__init__.py +1 -1
  3. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/okx.py +3 -0
  4. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/__init__.py +1 -1
  5. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/exchange.py +1 -1
  6. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitmart.py +34 -35
  7. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bl3p.py +7 -1
  8. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/btcalpha.py +7 -2
  9. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/btcturk.py +11 -1
  10. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinbase.py +2 -2
  11. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coincheck.py +8 -1
  12. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinex.py +9 -6
  13. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/okx.py +3 -0
  14. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/base/exchange.py +1 -1
  15. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitmart.py +34 -35
  16. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bl3p.py +7 -1
  17. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/btcalpha.py +7 -2
  18. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/btcturk.py +11 -1
  19. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinbase.py +2 -2
  20. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coincheck.py +8 -1
  21. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinex.py +9 -6
  22. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/okx.py +3 -0
  23. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/__init__.py +1 -1
  24. {ccxt-4.3.37 → ccxt-4.3.38/ccxt.egg-info}/PKG-INFO +6 -4
  25. {ccxt-4.3.37 → ccxt-4.3.38}/package.json +1 -1
  26. {ccxt-4.3.37 → ccxt-4.3.38}/LICENSE.txt +0 -0
  27. {ccxt-4.3.37 → ccxt-4.3.38}/MANIFEST.in +0 -0
  28. {ccxt-4.3.37 → ccxt-4.3.38}/README.rst +0 -0
  29. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/__init__.py +0 -0
  30. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/ace.py +0 -0
  31. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/alpaca.py +0 -0
  32. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/ascendex.py +0 -0
  33. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bequant.py +0 -0
  34. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bigone.py +0 -0
  35. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/binance.py +0 -0
  36. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/binancecoinm.py +0 -0
  37. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/binanceus.py +0 -0
  38. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/binanceusdm.py +0 -0
  39. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bingx.py +0 -0
  40. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bit2c.py +0 -0
  41. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitbank.py +0 -0
  42. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitbay.py +0 -0
  43. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitbns.py +0 -0
  44. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitcoincom.py +0 -0
  45. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitfinex.py +0 -0
  46. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitfinex2.py +0 -0
  47. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitflyer.py +0 -0
  48. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitget.py +0 -0
  49. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bithumb.py +0 -0
  50. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitmart.py +0 -0
  51. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitmex.py +0 -0
  52. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitopro.py +0 -0
  53. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitpanda.py +0 -0
  54. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitrue.py +0 -0
  55. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitso.py +0 -0
  56. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitstamp.py +0 -0
  57. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitteam.py +0 -0
  58. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bitvavo.py +0 -0
  59. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bl3p.py +0 -0
  60. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/blockchaincom.py +0 -0
  61. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/blofin.py +0 -0
  62. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/btcalpha.py +0 -0
  63. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/btcbox.py +0 -0
  64. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/btcmarkets.py +0 -0
  65. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/btcturk.py +0 -0
  66. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/bybit.py +0 -0
  67. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/cex.py +0 -0
  68. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinbase.py +0 -0
  69. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinbaseadvanced.py +0 -0
  70. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinbaseexchange.py +0 -0
  71. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinbaseinternational.py +0 -0
  72. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coincheck.py +0 -0
  73. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinex.py +0 -0
  74. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinlist.py +0 -0
  75. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinmate.py +0 -0
  76. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinmetro.py +0 -0
  77. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinone.py +0 -0
  78. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinsph.py +0 -0
  79. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/coinspot.py +0 -0
  80. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/cryptocom.py +0 -0
  81. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/currencycom.py +0 -0
  82. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/delta.py +0 -0
  83. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/deribit.py +0 -0
  84. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/digifinex.py +0 -0
  85. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/exmo.py +0 -0
  86. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/fmfwio.py +0 -0
  87. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/gate.py +0 -0
  88. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/gateio.py +0 -0
  89. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/gemini.py +0 -0
  90. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/hitbtc.py +0 -0
  91. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/hitbtc3.py +0 -0
  92. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/hollaex.py +0 -0
  93. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/htx.py +0 -0
  94. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/huobi.py +0 -0
  95. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/huobijp.py +0 -0
  96. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/hyperliquid.py +0 -0
  97. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/idex.py +0 -0
  98. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/independentreserve.py +0 -0
  99. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/indodax.py +0 -0
  100. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/kraken.py +0 -0
  101. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/krakenfutures.py +0 -0
  102. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/kucoin.py +0 -0
  103. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/kucoinfutures.py +0 -0
  104. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/kuna.py +0 -0
  105. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/latoken.py +0 -0
  106. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/lbank.py +0 -0
  107. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/luno.py +0 -0
  108. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/lykke.py +0 -0
  109. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/mercado.py +0 -0
  110. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/mexc.py +0 -0
  111. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/ndax.py +0 -0
  112. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/novadax.py +0 -0
  113. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/oceanex.py +0 -0
  114. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/okcoin.py +0 -0
  115. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/onetrading.py +0 -0
  116. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/p2b.py +0 -0
  117. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/paymium.py +0 -0
  118. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/phemex.py +0 -0
  119. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/poloniex.py +0 -0
  120. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/poloniexfutures.py +0 -0
  121. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/probit.py +0 -0
  122. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/timex.py +0 -0
  123. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/tokocrypto.py +0 -0
  124. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/tradeogre.py +0 -0
  125. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/upbit.py +0 -0
  126. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/wavesexchange.py +0 -0
  127. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/wazirx.py +0 -0
  128. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/whitebit.py +0 -0
  129. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/woo.py +0 -0
  130. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/woofipro.py +0 -0
  131. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/yobit.py +0 -0
  132. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/zaif.py +0 -0
  133. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/abstract/zonda.py +0 -0
  134. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/ace.py +0 -0
  135. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/alpaca.py +0 -0
  136. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/ascendex.py +0 -0
  137. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/ace.py +0 -0
  138. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/alpaca.py +0 -0
  139. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/ascendex.py +0 -0
  140. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/__init__.py +0 -0
  141. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/throttler.py +0 -0
  142. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/__init__.py +0 -0
  143. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  144. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/cache.py +0 -0
  145. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/client.py +0 -0
  146. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/fast_client.py +0 -0
  147. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/functions.py +0 -0
  148. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/future.py +0 -0
  149. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/order_book.py +0 -0
  150. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/base/ws/order_book_side.py +0 -0
  151. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bequant.py +0 -0
  152. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bigone.py +0 -0
  153. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/binance.py +0 -0
  154. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/binancecoinm.py +0 -0
  155. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/binanceus.py +0 -0
  156. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/binanceusdm.py +0 -0
  157. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bingx.py +0 -0
  158. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bit2c.py +0 -0
  159. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitbank.py +0 -0
  160. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitbay.py +0 -0
  161. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitbns.py +0 -0
  162. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitcoincom.py +0 -0
  163. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitfinex.py +0 -0
  164. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitfinex2.py +0 -0
  165. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitflyer.py +0 -0
  166. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitget.py +0 -0
  167. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bithumb.py +0 -0
  168. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitmex.py +0 -0
  169. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitopro.py +0 -0
  170. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitpanda.py +0 -0
  171. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitrue.py +0 -0
  172. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitso.py +0 -0
  173. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitstamp.py +0 -0
  174. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitteam.py +0 -0
  175. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bitvavo.py +0 -0
  176. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/blockchaincom.py +0 -0
  177. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/blofin.py +0 -0
  178. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/btcbox.py +0 -0
  179. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/btcmarkets.py +0 -0
  180. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/bybit.py +0 -0
  181. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/cex.py +0 -0
  182. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinbaseadvanced.py +0 -0
  183. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinbaseexchange.py +0 -0
  184. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinbaseinternational.py +0 -0
  185. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinlist.py +0 -0
  186. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinmate.py +0 -0
  187. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinmetro.py +0 -0
  188. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinone.py +0 -0
  189. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinsph.py +0 -0
  190. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/coinspot.py +0 -0
  191. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/cryptocom.py +0 -0
  192. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/currencycom.py +0 -0
  193. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/delta.py +0 -0
  194. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/deribit.py +0 -0
  195. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/digifinex.py +0 -0
  196. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/exmo.py +0 -0
  197. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/fmfwio.py +0 -0
  198. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/gate.py +0 -0
  199. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/gateio.py +0 -0
  200. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/gemini.py +0 -0
  201. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/hitbtc.py +0 -0
  202. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/hitbtc3.py +0 -0
  203. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/hollaex.py +0 -0
  204. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/htx.py +0 -0
  205. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/huobi.py +0 -0
  206. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/huobijp.py +0 -0
  207. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/hyperliquid.py +0 -0
  208. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/idex.py +0 -0
  209. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/independentreserve.py +0 -0
  210. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/indodax.py +0 -0
  211. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/kraken.py +0 -0
  212. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/krakenfutures.py +0 -0
  213. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/kucoin.py +0 -0
  214. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/kucoinfutures.py +0 -0
  215. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/kuna.py +0 -0
  216. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/latoken.py +0 -0
  217. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/lbank.py +0 -0
  218. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/luno.py +0 -0
  219. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/lykke.py +0 -0
  220. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/mercado.py +0 -0
  221. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/mexc.py +0 -0
  222. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/ndax.py +0 -0
  223. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/novadax.py +0 -0
  224. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/oceanex.py +0 -0
  225. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/okcoin.py +0 -0
  226. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/onetrading.py +0 -0
  227. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/p2b.py +0 -0
  228. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/paymium.py +0 -0
  229. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/phemex.py +0 -0
  230. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/poloniex.py +0 -0
  231. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/poloniexfutures.py +0 -0
  232. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/probit.py +0 -0
  233. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/timex.py +0 -0
  234. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/tokocrypto.py +0 -0
  235. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/tradeogre.py +0 -0
  236. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/upbit.py +0 -0
  237. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/wavesexchange.py +0 -0
  238. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/wazirx.py +0 -0
  239. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/whitebit.py +0 -0
  240. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/woo.py +0 -0
  241. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/woofipro.py +0 -0
  242. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/yobit.py +0 -0
  243. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/zaif.py +0 -0
  244. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/async_support/zonda.py +0 -0
  245. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/base/__init__.py +0 -0
  246. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/base/decimal_to_precision.py +0 -0
  247. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/base/errors.py +0 -0
  248. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/base/precise.py +0 -0
  249. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/base/types.py +0 -0
  250. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bequant.py +0 -0
  251. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bigone.py +0 -0
  252. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/binance.py +0 -0
  253. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/binancecoinm.py +0 -0
  254. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/binanceus.py +0 -0
  255. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/binanceusdm.py +0 -0
  256. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bingx.py +0 -0
  257. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bit2c.py +0 -0
  258. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitbank.py +0 -0
  259. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitbay.py +0 -0
  260. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitbns.py +0 -0
  261. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitcoincom.py +0 -0
  262. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitfinex.py +0 -0
  263. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitfinex2.py +0 -0
  264. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitflyer.py +0 -0
  265. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitget.py +0 -0
  266. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bithumb.py +0 -0
  267. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitmex.py +0 -0
  268. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitopro.py +0 -0
  269. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitpanda.py +0 -0
  270. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitrue.py +0 -0
  271. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitso.py +0 -0
  272. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitstamp.py +0 -0
  273. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitteam.py +0 -0
  274. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bitvavo.py +0 -0
  275. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/blockchaincom.py +0 -0
  276. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/blofin.py +0 -0
  277. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/btcbox.py +0 -0
  278. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/btcmarkets.py +0 -0
  279. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/bybit.py +0 -0
  280. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/cex.py +0 -0
  281. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinbaseadvanced.py +0 -0
  282. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinbaseexchange.py +0 -0
  283. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinbaseinternational.py +0 -0
  284. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinlist.py +0 -0
  285. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinmate.py +0 -0
  286. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinmetro.py +0 -0
  287. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinone.py +0 -0
  288. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinsph.py +0 -0
  289. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/coinspot.py +0 -0
  290. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/cryptocom.py +0 -0
  291. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/currencycom.py +0 -0
  292. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/delta.py +0 -0
  293. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/deribit.py +0 -0
  294. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/digifinex.py +0 -0
  295. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/exmo.py +0 -0
  296. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/fmfwio.py +0 -0
  297. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/gate.py +0 -0
  298. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/gateio.py +0 -0
  299. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/gemini.py +0 -0
  300. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/hitbtc.py +0 -0
  301. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/hitbtc3.py +0 -0
  302. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/hollaex.py +0 -0
  303. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/htx.py +0 -0
  304. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/huobi.py +0 -0
  305. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/huobijp.py +0 -0
  306. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/hyperliquid.py +0 -0
  307. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/idex.py +0 -0
  308. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/independentreserve.py +0 -0
  309. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/indodax.py +0 -0
  310. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/kraken.py +0 -0
  311. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/krakenfutures.py +0 -0
  312. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/kucoin.py +0 -0
  313. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/kucoinfutures.py +0 -0
  314. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/kuna.py +0 -0
  315. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/latoken.py +0 -0
  316. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/lbank.py +0 -0
  317. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/luno.py +0 -0
  318. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/lykke.py +0 -0
  319. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/mercado.py +0 -0
  320. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/mexc.py +0 -0
  321. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/ndax.py +0 -0
  322. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/novadax.py +0 -0
  323. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/oceanex.py +0 -0
  324. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/okcoin.py +0 -0
  325. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/onetrading.py +0 -0
  326. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/p2b.py +0 -0
  327. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/paymium.py +0 -0
  328. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/phemex.py +0 -0
  329. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/poloniex.py +0 -0
  330. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/poloniexfutures.py +0 -0
  331. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/alpaca.py +0 -0
  332. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/ascendex.py +0 -0
  333. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bequant.py +0 -0
  334. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/binance.py +0 -0
  335. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/binancecoinm.py +0 -0
  336. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/binanceus.py +0 -0
  337. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/binanceusdm.py +0 -0
  338. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bingx.py +0 -0
  339. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitcoincom.py +0 -0
  340. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitfinex.py +0 -0
  341. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitfinex2.py +0 -0
  342. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitget.py +0 -0
  343. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bithumb.py +0 -0
  344. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitmart.py +0 -0
  345. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitmex.py +0 -0
  346. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitopro.py +0 -0
  347. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitpanda.py +0 -0
  348. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitrue.py +0 -0
  349. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitstamp.py +0 -0
  350. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bitvavo.py +0 -0
  351. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/blockchaincom.py +0 -0
  352. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/bybit.py +0 -0
  353. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/cex.py +0 -0
  354. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/coinbase.py +0 -0
  355. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/coinbaseexchange.py +0 -0
  356. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/coinbaseinternational.py +0 -0
  357. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/coincheck.py +0 -0
  358. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/coinex.py +0 -0
  359. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/coinone.py +0 -0
  360. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/cryptocom.py +0 -0
  361. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/currencycom.py +0 -0
  362. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/deribit.py +0 -0
  363. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/exmo.py +0 -0
  364. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/gate.py +0 -0
  365. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/gateio.py +0 -0
  366. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/gemini.py +0 -0
  367. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/hitbtc.py +0 -0
  368. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/hollaex.py +0 -0
  369. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/htx.py +0 -0
  370. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/huobi.py +0 -0
  371. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/huobijp.py +0 -0
  372. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/hyperliquid.py +0 -0
  373. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/idex.py +0 -0
  374. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/independentreserve.py +0 -0
  375. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/kraken.py +0 -0
  376. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/krakenfutures.py +0 -0
  377. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/kucoin.py +0 -0
  378. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/kucoinfutures.py +0 -0
  379. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/lbank.py +0 -0
  380. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/luno.py +0 -0
  381. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/mexc.py +0 -0
  382. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/ndax.py +0 -0
  383. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/okcoin.py +0 -0
  384. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/okx.py +0 -0
  385. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/onetrading.py +0 -0
  386. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/p2b.py +0 -0
  387. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/phemex.py +0 -0
  388. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/poloniex.py +0 -0
  389. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/poloniexfutures.py +0 -0
  390. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/probit.py +0 -0
  391. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/upbit.py +0 -0
  392. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/wazirx.py +0 -0
  393. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/whitebit.py +0 -0
  394. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/woo.py +0 -0
  395. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/pro/woofipro.py +0 -0
  396. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/probit.py +0 -0
  397. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/__init__.py +0 -0
  398. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  399. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  400. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  401. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/der.py +0 -0
  402. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  403. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  404. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  405. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  406. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  407. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ecdsa/util.py +0 -0
  408. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
  409. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
  410. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
  411. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
  412. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
  413. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
  414. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
  415. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
  416. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
  417. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
  418. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
  419. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  420. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
  421. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
  422. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
  423. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
  424. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
  425. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
  426. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
  427. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
  428. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
  429. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
  430. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
  431. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
  432. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  433. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
  434. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
  435. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
  436. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  437. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
  438. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
  439. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
  440. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
  441. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
  442. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
  443. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
  444. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
  445. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
  446. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  447. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
  448. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
  449. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
  450. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
  451. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
  452. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
  453. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
  454. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
  455. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
  456. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
  457. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
  458. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
  459. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
  460. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
  461. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
  462. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
  463. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
  464. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  465. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
  466. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
  467. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
  468. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
  469. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
  470. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/keccak/__init__.py +0 -0
  471. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/keccak/keccak.py +0 -0
  472. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
  473. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
  474. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/msgpack/ext.py +0 -0
  475. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
  476. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
  477. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
  478. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
  479. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
  480. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
  481. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
  482. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/__init__.py +0 -0
  483. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
  484. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/_version.py +0 -0
  485. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
  486. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
  487. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
  488. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
  489. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
  490. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
  491. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
  492. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/recipes.py +0 -0
  493. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/static_dependencies/toolz/utils.py +0 -0
  494. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/__init__.py +0 -0
  495. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/__init__.py +0 -0
  496. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_account.py +0 -0
  497. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_balance.py +0 -0
  498. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_borrow_interest.py +0 -0
  499. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_borrow_rate.py +0 -0
  500. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_calculate_fee.py +0 -0
  501. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_crypto.py +0 -0
  502. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_currency.py +0 -0
  503. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_datetime.py +0 -0
  504. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_decimal_to_precision.py +0 -0
  505. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_deep_extend.py +0 -0
  506. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_deposit_withdrawal.py +0 -0
  507. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_exchange_datetime_functions.py +0 -0
  508. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_funding_rate_history.py +0 -0
  509. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_last_price.py +0 -0
  510. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_ledger_entry.py +0 -0
  511. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_ledger_item.py +0 -0
  512. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_leverage_tier.py +0 -0
  513. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_liquidation.py +0 -0
  514. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_margin_mode.py +0 -0
  515. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_margin_modification.py +0 -0
  516. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_market.py +0 -0
  517. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_number.py +0 -0
  518. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_ohlcv.py +0 -0
  519. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_open_interest.py +0 -0
  520. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_order.py +0 -0
  521. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_order_book.py +0 -0
  522. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_position.py +0 -0
  523. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_shared_methods.py +0 -0
  524. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_status.py +0 -0
  525. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_throttle.py +0 -0
  526. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_ticker.py +0 -0
  527. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_trade.py +0 -0
  528. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_trading_fee.py +0 -0
  529. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/base/test_transaction.py +0 -0
  530. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/test_async.py +0 -0
  531. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/test/test_sync.py +0 -0
  532. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/timex.py +0 -0
  533. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/tokocrypto.py +0 -0
  534. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/tradeogre.py +0 -0
  535. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/upbit.py +0 -0
  536. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/wavesexchange.py +0 -0
  537. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/wazirx.py +0 -0
  538. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/whitebit.py +0 -0
  539. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/woo.py +0 -0
  540. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/woofipro.py +0 -0
  541. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/yobit.py +0 -0
  542. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/zaif.py +0 -0
  543. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt/zonda.py +0 -0
  544. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt.egg-info/SOURCES.txt +0 -0
  545. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt.egg-info/dependency_links.txt +0 -0
  546. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt.egg-info/requires.txt +0 -0
  547. {ccxt-4.3.37 → ccxt-4.3.38}/ccxt.egg-info/top_level.txt +0 -0
  548. {ccxt-4.3.37 → ccxt-4.3.38}/setup.cfg +0 -0
  549. {ccxt-4.3.37 → ccxt-4.3.38}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.3.37
3
+ Version: 4.3.38
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
@@ -34,6 +34,8 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
34
34
 
35
35
  ## Sponsored Promotion
36
36
 
37
+ [![Trade derivatives in June with BitMEX](https://github.com/ccxt/ccxt/assets/1294454/94c3d456-fdf5-4d62-8178-a42e3999e29e)](https://www.bitmex.com/app/register/NZTR1q)
38
+
37
39
  ## See Also
38
40
 
39
41
  - <sub>[![TabTrader](https://user-images.githubusercontent.com/1294454/66755907-9c3e8880-eea1-11e9-846e-0bff349ceb87.png)](https://tab-trader.com/?utm_source=ccxt)</sub> **[TabTrader](https://tab-trader.com/?utm_source=ccxt)** – trading on all exchanges in one app. Available on **[Android](https://play.google.com/store/apps/details?id=com.tabtrader.android&referrer=utm_source%3Dccxt)** and **[iOS](https://itunes.apple.com/app/apple-store/id1095716562?mt=8)**!
@@ -228,13 +230,13 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
228
230
 
229
231
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
230
232
 
231
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.37/dist/ccxt.browser.min.js
232
- * unpkg: https://unpkg.com/ccxt@4.3.37/dist/ccxt.browser.min.js
233
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.38/dist/ccxt.browser.min.js
234
+ * unpkg: https://unpkg.com/ccxt@4.3.38/dist/ccxt.browser.min.js
233
235
 
234
236
  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.
235
237
 
236
238
  ```HTML
237
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.37/dist/ccxt.browser.min.js"></script>
239
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.38/dist/ccxt.browser.min.js"></script>
238
240
  ```
239
241
 
240
242
  Creates a global `ccxt` object:
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '4.3.37'
25
+ __version__ = '4.3.38'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -69,6 +69,9 @@ class ImplicitAPI:
69
69
  public_get_finance_staking_defi_eth_apy_history = publicGetFinanceStakingDefiEthApyHistory = Entry('finance/staking-defi/eth/apy-history', 'public', 'GET', {'cost': 1.6666666666666667})
70
70
  public_get_finance_savings_lending_rate_summary = publicGetFinanceSavingsLendingRateSummary = Entry('finance/savings/lending-rate-summary', 'public', 'GET', {'cost': 1.6666666666666667})
71
71
  public_get_finance_savings_lending_rate_history = publicGetFinanceSavingsLendingRateHistory = Entry('finance/savings/lending-rate-history', 'public', 'GET', {'cost': 1.6666666666666667})
72
+ public_get_finance_fixed_loan_lending_offers = publicGetFinanceFixedLoanLendingOffers = Entry('finance/fixed-loan/lending-offers', 'public', 'GET', {'cost': 3.3333333333333335})
73
+ public_get_finance_fixed_loan_lending_apy_history = publicGetFinanceFixedLoanLendingApyHistory = Entry('finance/fixed-loan/lending-apy-history', 'public', 'GET', {'cost': 3.3333333333333335})
74
+ public_get_finance_fixed_loan_pending_lending_volume = publicGetFinanceFixedLoanPendingLendingVolume = Entry('finance/fixed-loan/pending-lending-volume', 'public', 'GET', {'cost': 3.3333333333333335})
72
75
  public_get_finance_sfp_dcd_products = publicGetFinanceSfpDcdProducts = Entry('finance/sfp/dcd/products', 'public', 'GET', {'cost': 0.6666666666666666})
73
76
  public_get_copytrading_public_lead_traders = publicGetCopytradingPublicLeadTraders = Entry('copytrading/public-lead-traders', 'public', 'GET', {'cost': 4})
74
77
  public_get_copytrading_public_weekly_pnl = publicGetCopytradingPublicWeeklyPnl = Entry('copytrading/public-weekly-pnl', 'public', 'GET', {'cost': 4})
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.37'
7
+ __version__ = '4.3.38'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '4.3.37'
5
+ __version__ = '4.3.38'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -1412,13 +1412,13 @@ class bitmart(Exchange, ImplicitAPI):
1412
1412
  #
1413
1413
  # public fetchTrades spot( amount = count * price )
1414
1414
  #
1415
- # {
1416
- # "amount": "818.94",
1417
- # "order_time": "1637601839035", # ETH/USDT
1418
- # "price": "4221.99",
1419
- # "count": "0.19397",
1420
- # "type": "buy"
1421
- # }
1415
+ # [
1416
+ # "BTC_USDT", # symbol
1417
+ # "1717212457302", # timestamp
1418
+ # "67643.11", # price
1419
+ # "0.00106", # size
1420
+ # "sell" # side
1421
+ # ]
1422
1422
  #
1423
1423
  # spot: fetchMyTrades
1424
1424
  #
@@ -1465,22 +1465,23 @@ class bitmart(Exchange, ImplicitAPI):
1465
1465
  # 'lastTradeID': 6802340762
1466
1466
  # }
1467
1467
  #
1468
- timestamp = self.safe_integer_n(trade, ['order_time', 'createTime', 'create_time'])
1469
- isPublicTrade = ('order_time' in trade)
1468
+ timestamp = self.safe_integer_n(trade, ['createTime', 'create_time', 1])
1469
+ isPublic = self.safe_string(trade, 0)
1470
+ isPublicTrade = (isPublic is not None)
1470
1471
  amount = None
1471
1472
  cost = None
1472
1473
  type = None
1473
1474
  side = None
1474
1475
  if isPublicTrade:
1475
- amount = self.safe_string(trade, 'count')
1476
+ amount = self.safe_string_2(trade, 'count', 3)
1476
1477
  cost = self.safe_string(trade, 'amount')
1477
- side = self.safe_string(trade, 'type')
1478
+ side = self.safe_string_2(trade, 'type', 4)
1478
1479
  else:
1479
1480
  amount = self.safe_string_n(trade, ['size', 'vol', 'fillQty'])
1480
1481
  cost = self.safe_string(trade, 'notional')
1481
1482
  type = self.safe_string(trade, 'type')
1482
1483
  side = self.parse_order_side(self.safe_string(trade, 'side'))
1483
- marketId = self.safe_string(trade, 'symbol')
1484
+ marketId = self.safe_string_2(trade, 'symbol', 0)
1484
1485
  market = self.safe_market(marketId, market)
1485
1486
  feeCostString = self.safe_string_2(trade, 'fee', 'paid_fees')
1486
1487
  fee = None
@@ -1502,7 +1503,7 @@ class bitmart(Exchange, ImplicitAPI):
1502
1503
  'symbol': market['symbol'],
1503
1504
  'type': type,
1504
1505
  'side': side,
1505
- 'price': self.safe_string_2(trade, 'price', 'fillPrice'),
1506
+ 'price': self.safe_string_n(trade, ['price', 'fillPrice', 2]),
1506
1507
  'amount': amount,
1507
1508
  'cost': cost,
1508
1509
  'takerOrMaker': self.safe_string_lower_2(trade, 'tradeRole', 'exec_type'),
@@ -1511,10 +1512,11 @@ class bitmart(Exchange, ImplicitAPI):
1511
1512
 
1512
1513
  async def fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={}) -> List[Trade]:
1513
1514
  """
1514
- get the list of most recent trades for a particular symbol
1515
+ get a list of the most recent trades for a particular symbol
1516
+ :see: https://developer-pro.bitmart.com/en/spot/#get-recent-trades-v3
1515
1517
  :param str symbol: unified symbol of the market to fetch trades for
1516
1518
  :param int [since]: timestamp in ms of the earliest trade to fetch
1517
- :param int [limit]: the maximum amount of trades to fetch
1519
+ :param int [limit]: the maximum number of trades to fetch
1518
1520
  :param dict [params]: extra parameters specific to the exchange API endpoint
1519
1521
  :returns Trade[]: a list of `trade structures <https://docs.ccxt.com/#/?id=public-trades>`
1520
1522
  """
@@ -1525,30 +1527,27 @@ class bitmart(Exchange, ImplicitAPI):
1525
1527
  request: dict = {
1526
1528
  'symbol': market['id'],
1527
1529
  }
1528
- response = await self.publicGetSpotV1SymbolsTrades(self.extend(request, params))
1529
- #
1530
- # spot
1530
+ if limit is not None:
1531
+ request['limit'] = limit
1532
+ response = await self.publicGetSpotQuotationV3Trades(self.extend(request, params))
1531
1533
  #
1532
1534
  # {
1533
- # "message":"OK",
1534
- # "code":1000,
1535
- # "trace":"222d74c0-8f6d-49d9-8e1b-98118c50eeba",
1536
- # "data":{
1537
- # "trades":[
1538
- # {
1539
- # "amount":"0.005703",
1540
- # "order_time":1599652045394,
1541
- # "price":"0.034029",
1542
- # "count":"0.1676",
1543
- # "type":"sell"
1544
- # },
1545
- # ]
1546
- # }
1535
+ # "code": 1000,
1536
+ # "trace": "58031f9a5bd.111.17117",
1537
+ # "message": "success",
1538
+ # "data": [
1539
+ # [
1540
+ # "BTC_USDT",
1541
+ # "1717212457302",
1542
+ # "67643.11",
1543
+ # "0.00106",
1544
+ # "sell"
1545
+ # ],
1546
+ # ]
1547
1547
  # }
1548
1548
  #
1549
- data = self.safe_value(response, 'data', {})
1550
- trades = self.safe_list(data, 'trades', [])
1551
- return self.parse_trades(trades, market, since, limit)
1549
+ data = self.safe_list(response, 'data', [])
1550
+ return self.parse_trades(data, market, since, limit)
1552
1551
 
1553
1552
  def parse_ohlcv(self, ohlcv, market: Market = None) -> list:
1554
1553
  #
@@ -413,7 +413,13 @@ class bl3p(Exchange, ImplicitAPI):
413
413
  request: dict = {
414
414
  'order_id': id,
415
415
  }
416
- return await self.privatePostMarketMoneyOrderCancel(self.extend(request, params))
416
+ response = await self.privatePostMarketMoneyOrderCancel(self.extend(request, params))
417
+ #
418
+ # "success"
419
+ #
420
+ return self.safe_order({
421
+ 'info': response,
422
+ })
417
423
 
418
424
  async def create_deposit_address(self, code: str, params={}):
419
425
  """
@@ -679,7 +679,7 @@ class btcalpha(Exchange, ImplicitAPI):
679
679
  filled = self.safe_string(order, 'amount_filled')
680
680
  amount = self.safe_string(order, 'amount_original')
681
681
  status = self.parse_order_status(self.safe_string(order, 'status'))
682
- id = self.safe_string_2(order, 'oid', 'id')
682
+ id = self.safe_string_n(order, ['oid', 'id', 'order'])
683
683
  trades = self.safe_value(order, 'trades')
684
684
  side = self.safe_string_2(order, 'my_side', 'type')
685
685
  return self.safe_order({
@@ -751,7 +751,12 @@ class btcalpha(Exchange, ImplicitAPI):
751
751
  'order': id,
752
752
  }
753
753
  response = await self.privatePostOrderCancel(self.extend(request, params))
754
- return response
754
+ #
755
+ # {
756
+ # "order": 63568
757
+ # }
758
+ #
759
+ return self.parse_order(response)
755
760
 
756
761
  async def fetch_order(self, id: str, symbol: Str = None, params={}):
757
762
  """
@@ -684,7 +684,17 @@ class btcturk(Exchange, ImplicitAPI):
684
684
  request: dict = {
685
685
  'id': id,
686
686
  }
687
- return await self.privateDeleteOrder(self.extend(request, params))
687
+ response = await self.privateDeleteOrder(self.extend(request, params))
688
+ #
689
+ # {
690
+ # "success": True,
691
+ # "message": "SUCCESS",
692
+ # "code": 0
693
+ # }
694
+ #
695
+ return self.safe_order({
696
+ 'info': response,
697
+ })
688
698
 
689
699
  async def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
690
700
  """
@@ -503,9 +503,9 @@ class coinbase(Exchange, ImplicitAPI):
503
503
  paginate = False
504
504
  paginate, params = self.handle_option_and_params(params, 'fetchAccounts', 'paginate')
505
505
  if paginate:
506
- return await self.fetch_paginated_call_cursor('fetchAccounts', None, None, None, params, 'cursor', 'cursor', None, 100)
506
+ return await self.fetch_paginated_call_cursor('fetchAccounts', None, None, None, params, 'cursor', 'cursor', None, 250)
507
507
  request: dict = {
508
- 'limit': 100,
508
+ 'limit': 250,
509
509
  }
510
510
  response = await self.v3PrivateGetBrokerageAccounts(self.extend(request, params))
511
511
  #
@@ -595,7 +595,14 @@ class coincheck(Exchange, ImplicitAPI):
595
595
  request: dict = {
596
596
  'id': id,
597
597
  }
598
- return await self.privateDeleteExchangeOrdersId(self.extend(request, params))
598
+ response = await self.privateDeleteExchangeOrdersId(self.extend(request, params))
599
+ #
600
+ # {
601
+ # "success": True,
602
+ # "id": 12345
603
+ # }
604
+ #
605
+ return self.parse_order(response)
599
606
 
600
607
  async def fetch_deposits(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
601
608
  """
@@ -1635,14 +1635,13 @@ class coinex(Exchange, ImplicitAPI):
1635
1635
  marketType, params = self.handle_market_type_and_params('fetchBalance', None, params)
1636
1636
  marginMode = None
1637
1637
  marginMode, params = self.handle_margin_mode_and_params('fetchBalance', params)
1638
- marketType = 'margin' if (marginMode is not None) else marketType
1639
- params = self.omit(params, 'margin')
1640
- if marketType == 'margin':
1641
- return await self.fetch_margin_balance(params)
1642
- elif marketType == 'swap':
1638
+ isMargin = (marginMode is not None) or (marketType == 'margin')
1639
+ if marketType == 'swap':
1643
1640
  return await self.fetch_swap_balance(params)
1644
1641
  elif marketType == 'financial':
1645
1642
  return await self.fetch_financial_balance(params)
1643
+ elif isMargin:
1644
+ return await self.fetch_margin_balance(params)
1646
1645
  else:
1647
1646
  return await self.fetch_spot_balance(params)
1648
1647
 
@@ -3060,7 +3059,11 @@ class coinex(Exchange, ImplicitAPI):
3060
3059
  #
3061
3060
  # {"code":0,"data":{},"message":"OK"}
3062
3061
  #
3063
- return response
3062
+ return [
3063
+ self.safe_order({
3064
+ 'info': response,
3065
+ }),
3066
+ ]
3064
3067
 
3065
3068
  async def fetch_order(self, id: str, symbol: Str = None, params={}):
3066
3069
  """
@@ -280,6 +280,9 @@ class okx(Exchange, ImplicitAPI):
280
280
  'finance/staking-defi/eth/apy-history': 5 / 3,
281
281
  'finance/savings/lending-rate-summary': 5 / 3,
282
282
  'finance/savings/lending-rate-history': 5 / 3,
283
+ 'finance/fixed-loan/lending-offers': 10 / 3,
284
+ 'finance/fixed-loan/lending-apy-history': 10 / 3,
285
+ 'finance/fixed-loan/pending-lending-volume': 10 / 3,
283
286
  # public broker
284
287
  'finance/sfp/dcd/products': 2 / 3,
285
288
  # copytrading
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.37'
7
+ __version__ = '4.3.38'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -1412,13 +1412,13 @@ class bitmart(Exchange, ImplicitAPI):
1412
1412
  #
1413
1413
  # public fetchTrades spot( amount = count * price )
1414
1414
  #
1415
- # {
1416
- # "amount": "818.94",
1417
- # "order_time": "1637601839035", # ETH/USDT
1418
- # "price": "4221.99",
1419
- # "count": "0.19397",
1420
- # "type": "buy"
1421
- # }
1415
+ # [
1416
+ # "BTC_USDT", # symbol
1417
+ # "1717212457302", # timestamp
1418
+ # "67643.11", # price
1419
+ # "0.00106", # size
1420
+ # "sell" # side
1421
+ # ]
1422
1422
  #
1423
1423
  # spot: fetchMyTrades
1424
1424
  #
@@ -1465,22 +1465,23 @@ class bitmart(Exchange, ImplicitAPI):
1465
1465
  # 'lastTradeID': 6802340762
1466
1466
  # }
1467
1467
  #
1468
- timestamp = self.safe_integer_n(trade, ['order_time', 'createTime', 'create_time'])
1469
- isPublicTrade = ('order_time' in trade)
1468
+ timestamp = self.safe_integer_n(trade, ['createTime', 'create_time', 1])
1469
+ isPublic = self.safe_string(trade, 0)
1470
+ isPublicTrade = (isPublic is not None)
1470
1471
  amount = None
1471
1472
  cost = None
1472
1473
  type = None
1473
1474
  side = None
1474
1475
  if isPublicTrade:
1475
- amount = self.safe_string(trade, 'count')
1476
+ amount = self.safe_string_2(trade, 'count', 3)
1476
1477
  cost = self.safe_string(trade, 'amount')
1477
- side = self.safe_string(trade, 'type')
1478
+ side = self.safe_string_2(trade, 'type', 4)
1478
1479
  else:
1479
1480
  amount = self.safe_string_n(trade, ['size', 'vol', 'fillQty'])
1480
1481
  cost = self.safe_string(trade, 'notional')
1481
1482
  type = self.safe_string(trade, 'type')
1482
1483
  side = self.parse_order_side(self.safe_string(trade, 'side'))
1483
- marketId = self.safe_string(trade, 'symbol')
1484
+ marketId = self.safe_string_2(trade, 'symbol', 0)
1484
1485
  market = self.safe_market(marketId, market)
1485
1486
  feeCostString = self.safe_string_2(trade, 'fee', 'paid_fees')
1486
1487
  fee = None
@@ -1502,7 +1503,7 @@ class bitmart(Exchange, ImplicitAPI):
1502
1503
  'symbol': market['symbol'],
1503
1504
  'type': type,
1504
1505
  'side': side,
1505
- 'price': self.safe_string_2(trade, 'price', 'fillPrice'),
1506
+ 'price': self.safe_string_n(trade, ['price', 'fillPrice', 2]),
1506
1507
  'amount': amount,
1507
1508
  'cost': cost,
1508
1509
  'takerOrMaker': self.safe_string_lower_2(trade, 'tradeRole', 'exec_type'),
@@ -1511,10 +1512,11 @@ class bitmart(Exchange, ImplicitAPI):
1511
1512
 
1512
1513
  def fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={}) -> List[Trade]:
1513
1514
  """
1514
- get the list of most recent trades for a particular symbol
1515
+ get a list of the most recent trades for a particular symbol
1516
+ :see: https://developer-pro.bitmart.com/en/spot/#get-recent-trades-v3
1515
1517
  :param str symbol: unified symbol of the market to fetch trades for
1516
1518
  :param int [since]: timestamp in ms of the earliest trade to fetch
1517
- :param int [limit]: the maximum amount of trades to fetch
1519
+ :param int [limit]: the maximum number of trades to fetch
1518
1520
  :param dict [params]: extra parameters specific to the exchange API endpoint
1519
1521
  :returns Trade[]: a list of `trade structures <https://docs.ccxt.com/#/?id=public-trades>`
1520
1522
  """
@@ -1525,30 +1527,27 @@ class bitmart(Exchange, ImplicitAPI):
1525
1527
  request: dict = {
1526
1528
  'symbol': market['id'],
1527
1529
  }
1528
- response = self.publicGetSpotV1SymbolsTrades(self.extend(request, params))
1529
- #
1530
- # spot
1530
+ if limit is not None:
1531
+ request['limit'] = limit
1532
+ response = self.publicGetSpotQuotationV3Trades(self.extend(request, params))
1531
1533
  #
1532
1534
  # {
1533
- # "message":"OK",
1534
- # "code":1000,
1535
- # "trace":"222d74c0-8f6d-49d9-8e1b-98118c50eeba",
1536
- # "data":{
1537
- # "trades":[
1538
- # {
1539
- # "amount":"0.005703",
1540
- # "order_time":1599652045394,
1541
- # "price":"0.034029",
1542
- # "count":"0.1676",
1543
- # "type":"sell"
1544
- # },
1545
- # ]
1546
- # }
1535
+ # "code": 1000,
1536
+ # "trace": "58031f9a5bd.111.17117",
1537
+ # "message": "success",
1538
+ # "data": [
1539
+ # [
1540
+ # "BTC_USDT",
1541
+ # "1717212457302",
1542
+ # "67643.11",
1543
+ # "0.00106",
1544
+ # "sell"
1545
+ # ],
1546
+ # ]
1547
1547
  # }
1548
1548
  #
1549
- data = self.safe_value(response, 'data', {})
1550
- trades = self.safe_list(data, 'trades', [])
1551
- return self.parse_trades(trades, market, since, limit)
1549
+ data = self.safe_list(response, 'data', [])
1550
+ return self.parse_trades(data, market, since, limit)
1552
1551
 
1553
1552
  def parse_ohlcv(self, ohlcv, market: Market = None) -> list:
1554
1553
  #
@@ -413,7 +413,13 @@ class bl3p(Exchange, ImplicitAPI):
413
413
  request: dict = {
414
414
  'order_id': id,
415
415
  }
416
- return self.privatePostMarketMoneyOrderCancel(self.extend(request, params))
416
+ response = self.privatePostMarketMoneyOrderCancel(self.extend(request, params))
417
+ #
418
+ # "success"
419
+ #
420
+ return self.safe_order({
421
+ 'info': response,
422
+ })
417
423
 
418
424
  def create_deposit_address(self, code: str, params={}):
419
425
  """
@@ -679,7 +679,7 @@ class btcalpha(Exchange, ImplicitAPI):
679
679
  filled = self.safe_string(order, 'amount_filled')
680
680
  amount = self.safe_string(order, 'amount_original')
681
681
  status = self.parse_order_status(self.safe_string(order, 'status'))
682
- id = self.safe_string_2(order, 'oid', 'id')
682
+ id = self.safe_string_n(order, ['oid', 'id', 'order'])
683
683
  trades = self.safe_value(order, 'trades')
684
684
  side = self.safe_string_2(order, 'my_side', 'type')
685
685
  return self.safe_order({
@@ -751,7 +751,12 @@ class btcalpha(Exchange, ImplicitAPI):
751
751
  'order': id,
752
752
  }
753
753
  response = self.privatePostOrderCancel(self.extend(request, params))
754
- return response
754
+ #
755
+ # {
756
+ # "order": 63568
757
+ # }
758
+ #
759
+ return self.parse_order(response)
755
760
 
756
761
  def fetch_order(self, id: str, symbol: Str = None, params={}):
757
762
  """
@@ -684,7 +684,17 @@ class btcturk(Exchange, ImplicitAPI):
684
684
  request: dict = {
685
685
  'id': id,
686
686
  }
687
- return self.privateDeleteOrder(self.extend(request, params))
687
+ response = self.privateDeleteOrder(self.extend(request, params))
688
+ #
689
+ # {
690
+ # "success": True,
691
+ # "message": "SUCCESS",
692
+ # "code": 0
693
+ # }
694
+ #
695
+ return self.safe_order({
696
+ 'info': response,
697
+ })
688
698
 
689
699
  def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
690
700
  """
@@ -502,9 +502,9 @@ class coinbase(Exchange, ImplicitAPI):
502
502
  paginate = False
503
503
  paginate, params = self.handle_option_and_params(params, 'fetchAccounts', 'paginate')
504
504
  if paginate:
505
- return self.fetch_paginated_call_cursor('fetchAccounts', None, None, None, params, 'cursor', 'cursor', None, 100)
505
+ return self.fetch_paginated_call_cursor('fetchAccounts', None, None, None, params, 'cursor', 'cursor', None, 250)
506
506
  request: dict = {
507
- 'limit': 100,
507
+ 'limit': 250,
508
508
  }
509
509
  response = self.v3PrivateGetBrokerageAccounts(self.extend(request, params))
510
510
  #
@@ -595,7 +595,14 @@ class coincheck(Exchange, ImplicitAPI):
595
595
  request: dict = {
596
596
  'id': id,
597
597
  }
598
- return self.privateDeleteExchangeOrdersId(self.extend(request, params))
598
+ response = self.privateDeleteExchangeOrdersId(self.extend(request, params))
599
+ #
600
+ # {
601
+ # "success": True,
602
+ # "id": 12345
603
+ # }
604
+ #
605
+ return self.parse_order(response)
599
606
 
600
607
  def fetch_deposits(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
601
608
  """
@@ -1634,14 +1634,13 @@ class coinex(Exchange, ImplicitAPI):
1634
1634
  marketType, params = self.handle_market_type_and_params('fetchBalance', None, params)
1635
1635
  marginMode = None
1636
1636
  marginMode, params = self.handle_margin_mode_and_params('fetchBalance', params)
1637
- marketType = 'margin' if (marginMode is not None) else marketType
1638
- params = self.omit(params, 'margin')
1639
- if marketType == 'margin':
1640
- return self.fetch_margin_balance(params)
1641
- elif marketType == 'swap':
1637
+ isMargin = (marginMode is not None) or (marketType == 'margin')
1638
+ if marketType == 'swap':
1642
1639
  return self.fetch_swap_balance(params)
1643
1640
  elif marketType == 'financial':
1644
1641
  return self.fetch_financial_balance(params)
1642
+ elif isMargin:
1643
+ return self.fetch_margin_balance(params)
1645
1644
  else:
1646
1645
  return self.fetch_spot_balance(params)
1647
1646
 
@@ -3059,7 +3058,11 @@ class coinex(Exchange, ImplicitAPI):
3059
3058
  #
3060
3059
  # {"code":0,"data":{},"message":"OK"}
3061
3060
  #
3062
- return response
3061
+ return [
3062
+ self.safe_order({
3063
+ 'info': response,
3064
+ }),
3065
+ ]
3063
3066
 
3064
3067
  def fetch_order(self, id: str, symbol: Str = None, params={}):
3065
3068
  """
@@ -279,6 +279,9 @@ class okx(Exchange, ImplicitAPI):
279
279
  'finance/staking-defi/eth/apy-history': 5 / 3,
280
280
  'finance/savings/lending-rate-summary': 5 / 3,
281
281
  'finance/savings/lending-rate-history': 5 / 3,
282
+ 'finance/fixed-loan/lending-offers': 10 / 3,
283
+ 'finance/fixed-loan/lending-apy-history': 10 / 3,
284
+ 'finance/fixed-loan/pending-lending-volume': 10 / 3,
282
285
  # public broker
283
286
  'finance/sfp/dcd/products': 2 / 3,
284
287
  # copytrading
@@ -4,7 +4,7 @@
4
4
 
5
5
  # ----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.37'
7
+ __version__ = '4.3.38'
8
8
 
9
9
  # ----------------------------------------------------------------------------
10
10