ccxt 4.2.84__tar.gz → 4.2.86__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 (544) hide show
  1. {ccxt-4.2.84/ccxt.egg-info → ccxt-4.2.86}/PKG-INFO +6 -6
  2. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/__init__.py +1 -1
  3. ccxt-4.2.86/ccxt/abstract/coinex.py +236 -0
  4. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/ace.py +5 -5
  5. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/ascendex.py +8 -8
  6. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/__init__.py +1 -1
  7. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/ace.py +5 -5
  8. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/ascendex.py +8 -8
  9. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/exchange.py +3 -27
  10. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bigone.py +12 -12
  11. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/binance.py +20 -32
  12. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bingx.py +45 -28
  13. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bit2c.py +1 -1
  14. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitbank.py +27 -29
  15. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitbns.py +5 -5
  16. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitfinex.py +1 -1
  17. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitfinex2.py +1 -1
  18. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitget.py +29 -24
  19. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bithumb.py +5 -5
  20. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitmart.py +16 -16
  21. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitopro.py +1 -1
  22. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitrue.py +4 -4
  23. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitso.py +5 -5
  24. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitstamp.py +1 -1
  25. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitteam.py +8 -8
  26. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bl3p.py +1 -1
  27. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/btcturk.py +6 -6
  28. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bybit.py +30 -83
  29. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coincheck.py +4 -4
  30. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinex.py +404 -262
  31. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinlist.py +7 -7
  32. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinmate.py +4 -4
  33. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinmetro.py +3 -3
  34. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinone.py +5 -5
  35. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinspot.py +2 -2
  36. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/cryptocom.py +17 -17
  37. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/currencycom.py +1 -1
  38. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/delta.py +0 -8
  39. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/deribit.py +16 -80
  40. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/digifinex.py +8 -8
  41. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/exmo.py +8 -8
  42. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/gate.py +0 -8
  43. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/hitbtc.py +5 -4
  44. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/hollaex.py +7 -7
  45. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/htx.py +7 -7
  46. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/huobijp.py +3 -3
  47. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/idex.py +12 -12
  48. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/independentreserve.py +2 -2
  49. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/indodax.py +2 -2
  50. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/kraken.py +8 -8
  51. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/krakenfutures.py +6 -6
  52. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/kucoin.py +4 -1
  53. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/kucoinfutures.py +8 -8
  54. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/kuna.py +16 -16
  55. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/latoken.py +2 -2
  56. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/lbank.py +10 -10
  57. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/luno.py +4 -4
  58. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/mercado.py +5 -5
  59. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/mexc.py +6 -6
  60. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/ndax.py +1 -1
  61. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/novadax.py +9 -9
  62. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/oceanex.py +7 -7
  63. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/okcoin.py +15 -14
  64. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/okx.py +23 -31
  65. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/onetrading.py +4 -4
  66. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/p2b.py +7 -7
  67. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/phemex.py +12 -12
  68. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/poloniexfutures.py +5 -5
  69. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/probit.py +11 -11
  70. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/timex.py +7 -7
  71. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/tokocrypto.py +9 -9
  72. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/wavesexchange.py +3 -3
  73. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/whitebit.py +5 -5
  74. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/woo.py +1 -1
  75. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/zaif.py +1 -1
  76. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/zonda.py +7 -7
  77. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/base/exchange.py +66 -23
  78. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bigone.py +12 -12
  79. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/binance.py +20 -32
  80. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bingx.py +45 -28
  81. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bit2c.py +1 -1
  82. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitbank.py +27 -29
  83. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitbns.py +5 -5
  84. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitfinex.py +1 -1
  85. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitfinex2.py +1 -1
  86. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitget.py +29 -24
  87. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bithumb.py +5 -5
  88. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitmart.py +16 -16
  89. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitopro.py +1 -1
  90. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitrue.py +4 -4
  91. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitso.py +5 -5
  92. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitstamp.py +1 -1
  93. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitteam.py +8 -8
  94. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bl3p.py +1 -1
  95. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/btcturk.py +6 -6
  96. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bybit.py +30 -83
  97. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coincheck.py +4 -4
  98. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinex.py +404 -262
  99. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinlist.py +7 -7
  100. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinmate.py +4 -4
  101. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinmetro.py +3 -3
  102. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinone.py +5 -5
  103. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinspot.py +2 -2
  104. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/cryptocom.py +17 -17
  105. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/currencycom.py +1 -1
  106. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/delta.py +0 -8
  107. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/deribit.py +16 -80
  108. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/digifinex.py +8 -8
  109. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/exmo.py +8 -8
  110. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/gate.py +0 -8
  111. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/hitbtc.py +5 -4
  112. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/hollaex.py +7 -7
  113. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/htx.py +7 -7
  114. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/huobijp.py +3 -3
  115. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/idex.py +12 -12
  116. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/independentreserve.py +2 -2
  117. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/indodax.py +2 -2
  118. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/kraken.py +8 -8
  119. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/krakenfutures.py +6 -6
  120. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/kucoin.py +4 -1
  121. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/kucoinfutures.py +8 -8
  122. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/kuna.py +16 -16
  123. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/latoken.py +2 -2
  124. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/lbank.py +10 -10
  125. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/luno.py +4 -4
  126. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/mercado.py +5 -5
  127. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/mexc.py +6 -6
  128. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/ndax.py +1 -1
  129. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/novadax.py +9 -9
  130. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/oceanex.py +7 -7
  131. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/okcoin.py +15 -14
  132. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/okx.py +23 -31
  133. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/onetrading.py +4 -4
  134. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/p2b.py +7 -7
  135. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/phemex.py +12 -12
  136. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/poloniexfutures.py +5 -5
  137. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/__init__.py +1 -1
  138. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/binance.py +150 -112
  139. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitget.py +1 -0
  140. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/kucoin.py +6 -7
  141. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/okx.py +12 -1
  142. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/probit.py +11 -11
  143. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/timex.py +7 -7
  144. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/tokocrypto.py +9 -9
  145. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/wavesexchange.py +3 -3
  146. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/whitebit.py +5 -5
  147. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/woo.py +1 -1
  148. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/zaif.py +1 -1
  149. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/zonda.py +7 -7
  150. {ccxt-4.2.84 → ccxt-4.2.86/ccxt.egg-info}/PKG-INFO +6 -6
  151. {ccxt-4.2.84 → ccxt-4.2.86}/package.json +1 -1
  152. ccxt-4.2.84/ccxt/abstract/coinex.py +0 -127
  153. {ccxt-4.2.84 → ccxt-4.2.86}/LICENSE.txt +0 -0
  154. {ccxt-4.2.84 → ccxt-4.2.86}/MANIFEST.in +0 -0
  155. {ccxt-4.2.84 → ccxt-4.2.86}/README.rst +0 -0
  156. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/__init__.py +0 -0
  157. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/ace.py +0 -0
  158. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/alpaca.py +0 -0
  159. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/ascendex.py +0 -0
  160. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bequant.py +0 -0
  161. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bigone.py +0 -0
  162. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/binance.py +0 -0
  163. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/binancecoinm.py +0 -0
  164. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/binanceus.py +0 -0
  165. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/binanceusdm.py +0 -0
  166. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bingx.py +0 -0
  167. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bit2c.py +0 -0
  168. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitbank.py +0 -0
  169. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitbay.py +0 -0
  170. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitbns.py +0 -0
  171. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitcoincom.py +0 -0
  172. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitfinex.py +0 -0
  173. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitfinex2.py +0 -0
  174. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitflyer.py +0 -0
  175. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitget.py +0 -0
  176. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bithumb.py +0 -0
  177. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitmart.py +0 -0
  178. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitmex.py +0 -0
  179. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitopro.py +0 -0
  180. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitpanda.py +0 -0
  181. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitrue.py +0 -0
  182. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitso.py +0 -0
  183. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitstamp.py +0 -0
  184. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitteam.py +0 -0
  185. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bitvavo.py +0 -0
  186. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bl3p.py +0 -0
  187. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/blockchaincom.py +0 -0
  188. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/blofin.py +0 -0
  189. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/btcalpha.py +0 -0
  190. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/btcbox.py +0 -0
  191. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/btcmarkets.py +0 -0
  192. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/btcturk.py +0 -0
  193. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/bybit.py +0 -0
  194. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/cex.py +0 -0
  195. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinbase.py +0 -0
  196. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinbaseinternational.py +0 -0
  197. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinbasepro.py +0 -0
  198. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coincheck.py +0 -0
  199. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinlist.py +0 -0
  200. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinmate.py +0 -0
  201. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinmetro.py +0 -0
  202. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinone.py +0 -0
  203. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinsph.py +0 -0
  204. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/coinspot.py +0 -0
  205. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/cryptocom.py +0 -0
  206. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/currencycom.py +0 -0
  207. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/delta.py +0 -0
  208. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/deribit.py +0 -0
  209. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/digifinex.py +0 -0
  210. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/exmo.py +0 -0
  211. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/fmfwio.py +0 -0
  212. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/gate.py +0 -0
  213. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/gateio.py +0 -0
  214. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/gemini.py +0 -0
  215. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/hitbtc.py +0 -0
  216. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/hitbtc3.py +0 -0
  217. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/hollaex.py +0 -0
  218. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/htx.py +0 -0
  219. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/huobi.py +0 -0
  220. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/huobijp.py +0 -0
  221. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/hyperliquid.py +0 -0
  222. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/idex.py +0 -0
  223. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/independentreserve.py +0 -0
  224. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/indodax.py +0 -0
  225. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/kraken.py +0 -0
  226. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/krakenfutures.py +0 -0
  227. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/kucoin.py +0 -0
  228. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/kucoinfutures.py +0 -0
  229. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/kuna.py +0 -0
  230. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/latoken.py +0 -0
  231. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/lbank.py +0 -0
  232. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/luno.py +0 -0
  233. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/lykke.py +0 -0
  234. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/mercado.py +0 -0
  235. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/mexc.py +0 -0
  236. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/ndax.py +0 -0
  237. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/novadax.py +0 -0
  238. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/oceanex.py +0 -0
  239. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/okcoin.py +0 -0
  240. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/okx.py +0 -0
  241. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/onetrading.py +0 -0
  242. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/p2b.py +0 -0
  243. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/paymium.py +0 -0
  244. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/phemex.py +0 -0
  245. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/poloniex.py +0 -0
  246. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/poloniexfutures.py +0 -0
  247. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/probit.py +0 -0
  248. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/timex.py +0 -0
  249. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/tokocrypto.py +0 -0
  250. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/tradeogre.py +0 -0
  251. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/upbit.py +0 -0
  252. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/wavesexchange.py +0 -0
  253. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/wazirx.py +0 -0
  254. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/whitebit.py +0 -0
  255. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/woo.py +0 -0
  256. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/yobit.py +0 -0
  257. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/zaif.py +0 -0
  258. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/abstract/zonda.py +0 -0
  259. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/alpaca.py +0 -0
  260. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/alpaca.py +0 -0
  261. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/__init__.py +0 -0
  262. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/throttler.py +0 -0
  263. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/__init__.py +0 -0
  264. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  265. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/cache.py +0 -0
  266. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/client.py +0 -0
  267. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/fast_client.py +0 -0
  268. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/functions.py +0 -0
  269. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/future.py +0 -0
  270. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/order_book.py +0 -0
  271. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/base/ws/order_book_side.py +0 -0
  272. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bequant.py +0 -0
  273. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/binancecoinm.py +0 -0
  274. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/binanceus.py +0 -0
  275. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/binanceusdm.py +0 -0
  276. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitbay.py +0 -0
  277. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitcoincom.py +0 -0
  278. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitflyer.py +0 -0
  279. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitmex.py +0 -0
  280. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitpanda.py +0 -0
  281. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/bitvavo.py +0 -0
  282. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/blockchaincom.py +0 -0
  283. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/blofin.py +0 -0
  284. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/btcalpha.py +0 -0
  285. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/btcbox.py +0 -0
  286. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/btcmarkets.py +0 -0
  287. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/cex.py +0 -0
  288. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinbase.py +0 -0
  289. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinbaseinternational.py +0 -0
  290. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinbasepro.py +0 -0
  291. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/coinsph.py +0 -0
  292. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/flowbtc.py +0 -0
  293. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/fmfwio.py +0 -0
  294. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/gateio.py +0 -0
  295. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/gemini.py +0 -0
  296. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/hitbtc3.py +0 -0
  297. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/huobi.py +0 -0
  298. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/hyperliquid.py +0 -0
  299. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/lykke.py +0 -0
  300. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/paymium.py +0 -0
  301. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/poloniex.py +0 -0
  302. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/tradeogre.py +0 -0
  303. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/upbit.py +0 -0
  304. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/wazirx.py +0 -0
  305. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/async_support/yobit.py +0 -0
  306. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/base/__init__.py +0 -0
  307. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/base/decimal_to_precision.py +0 -0
  308. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/base/errors.py +0 -0
  309. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/base/precise.py +0 -0
  310. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/base/types.py +0 -0
  311. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bequant.py +0 -0
  312. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/binancecoinm.py +0 -0
  313. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/binanceus.py +0 -0
  314. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/binanceusdm.py +0 -0
  315. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitbay.py +0 -0
  316. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitcoincom.py +0 -0
  317. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitflyer.py +0 -0
  318. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitmex.py +0 -0
  319. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitpanda.py +0 -0
  320. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/bitvavo.py +0 -0
  321. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/blockchaincom.py +0 -0
  322. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/blofin.py +0 -0
  323. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/btcalpha.py +0 -0
  324. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/btcbox.py +0 -0
  325. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/btcmarkets.py +0 -0
  326. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/cex.py +0 -0
  327. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinbase.py +0 -0
  328. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinbaseinternational.py +0 -0
  329. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinbasepro.py +0 -0
  330. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/coinsph.py +0 -0
  331. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/flowbtc.py +0 -0
  332. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/fmfwio.py +0 -0
  333. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/gateio.py +0 -0
  334. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/gemini.py +0 -0
  335. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/hitbtc3.py +0 -0
  336. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/huobi.py +0 -0
  337. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/hyperliquid.py +0 -0
  338. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/lykke.py +0 -0
  339. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/paymium.py +0 -0
  340. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/poloniex.py +0 -0
  341. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/alpaca.py +0 -0
  342. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/ascendex.py +0 -0
  343. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bequant.py +0 -0
  344. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/binancecoinm.py +0 -0
  345. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/binanceus.py +0 -0
  346. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/binanceusdm.py +0 -0
  347. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bingx.py +0 -0
  348. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitcoincom.py +0 -0
  349. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitfinex.py +0 -0
  350. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitfinex2.py +0 -0
  351. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bithumb.py +0 -0
  352. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitmart.py +0 -0
  353. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitmex.py +0 -0
  354. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitopro.py +0 -0
  355. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitpanda.py +0 -0
  356. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitrue.py +0 -0
  357. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitstamp.py +0 -0
  358. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bitvavo.py +0 -0
  359. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/blockchaincom.py +0 -0
  360. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/bybit.py +0 -0
  361. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/cex.py +0 -0
  362. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/coinbase.py +0 -0
  363. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/coinbaseinternational.py +0 -0
  364. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/coinbasepro.py +0 -0
  365. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/coincheck.py +0 -0
  366. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/coinex.py +0 -0
  367. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/coinone.py +0 -0
  368. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/cryptocom.py +0 -0
  369. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/currencycom.py +0 -0
  370. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/deribit.py +0 -0
  371. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/exmo.py +0 -0
  372. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/gate.py +0 -0
  373. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/gateio.py +0 -0
  374. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/gemini.py +0 -0
  375. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/hitbtc.py +0 -0
  376. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/hollaex.py +0 -0
  377. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/htx.py +0 -0
  378. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/huobi.py +0 -0
  379. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/huobijp.py +0 -0
  380. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/hyperliquid.py +0 -0
  381. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/idex.py +0 -0
  382. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/independentreserve.py +0 -0
  383. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/kraken.py +0 -0
  384. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/krakenfutures.py +0 -0
  385. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/kucoinfutures.py +0 -0
  386. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/lbank.py +0 -0
  387. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/luno.py +0 -0
  388. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/mexc.py +0 -0
  389. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/ndax.py +0 -0
  390. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/okcoin.py +0 -0
  391. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/onetrading.py +0 -0
  392. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/p2b.py +0 -0
  393. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/phemex.py +0 -0
  394. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/poloniex.py +0 -0
  395. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/poloniexfutures.py +0 -0
  396. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/probit.py +0 -0
  397. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/upbit.py +0 -0
  398. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/wazirx.py +0 -0
  399. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/whitebit.py +0 -0
  400. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/pro/woo.py +0 -0
  401. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/__init__.py +0 -0
  402. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  403. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  404. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  405. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/der.py +0 -0
  406. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  407. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  408. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  409. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  410. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  411. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ecdsa/util.py +0 -0
  412. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
  413. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
  414. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
  415. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
  416. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
  417. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
  418. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
  419. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
  420. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
  421. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
  422. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
  423. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  424. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
  425. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
  426. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
  427. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
  428. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
  429. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
  430. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
  431. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
  432. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
  433. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
  434. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
  435. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
  436. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  437. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
  438. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
  439. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
  440. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  441. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
  442. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
  443. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
  444. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
  445. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
  446. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
  447. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
  448. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
  449. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
  450. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  451. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
  452. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
  453. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
  454. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
  455. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
  456. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
  457. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
  458. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
  459. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
  460. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
  461. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
  462. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
  463. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
  464. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
  465. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
  466. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
  467. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
  468. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  469. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
  470. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
  471. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
  472. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
  473. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
  474. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/keccak/__init__.py +0 -0
  475. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/keccak/keccak.py +0 -0
  476. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
  477. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
  478. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/msgpack/ext.py +0 -0
  479. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
  480. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
  481. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
  482. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
  483. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
  484. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
  485. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
  486. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/__init__.py +0 -0
  487. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
  488. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/_version.py +0 -0
  489. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
  490. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
  491. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
  492. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
  493. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
  494. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
  495. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
  496. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/recipes.py +0 -0
  497. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/static_dependencies/toolz/utils.py +0 -0
  498. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/__init__.py +0 -0
  499. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/__init__.py +0 -0
  500. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_account.py +0 -0
  501. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_balance.py +0 -0
  502. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_borrow_interest.py +0 -0
  503. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_borrow_rate.py +0 -0
  504. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_calculate_fee.py +0 -0
  505. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_crypto.py +0 -0
  506. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_currency.py +0 -0
  507. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_datetime.py +0 -0
  508. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_decimal_to_precision.py +0 -0
  509. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_deep_extend.py +0 -0
  510. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_deposit_withdrawal.py +0 -0
  511. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_exchange_datetime_functions.py +0 -0
  512. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_funding_rate_history.py +0 -0
  513. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_last_price.py +0 -0
  514. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_ledger_entry.py +0 -0
  515. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_ledger_item.py +0 -0
  516. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_leverage_tier.py +0 -0
  517. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_margin_mode.py +0 -0
  518. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_margin_modification.py +0 -0
  519. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_market.py +0 -0
  520. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_number.py +0 -0
  521. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_ohlcv.py +0 -0
  522. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_open_interest.py +0 -0
  523. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_order.py +0 -0
  524. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_order_book.py +0 -0
  525. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_position.py +0 -0
  526. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_shared_methods.py +0 -0
  527. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_status.py +0 -0
  528. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_throttle.py +0 -0
  529. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_ticker.py +0 -0
  530. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_trade.py +0 -0
  531. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_trading_fee.py +0 -0
  532. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/base/test_transaction.py +0 -0
  533. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/test_async.py +0 -0
  534. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/test/test_sync.py +0 -0
  535. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/tradeogre.py +0 -0
  536. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/upbit.py +0 -0
  537. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/wazirx.py +0 -0
  538. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt/yobit.py +0 -0
  539. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt.egg-info/SOURCES.txt +0 -0
  540. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt.egg-info/dependency_links.txt +0 -0
  541. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt.egg-info/requires.txt +0 -0
  542. {ccxt-4.2.84 → ccxt-4.2.86}/ccxt.egg-info/top_level.txt +0 -0
  543. {ccxt-4.2.84 → ccxt-4.2.86}/setup.cfg +0 -0
  544. {ccxt-4.2.84 → ccxt-4.2.86}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.2.84
3
+ Version: 4.2.86
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
@@ -56,7 +56,7 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
56
56
  | [![bitmex](https://github.com/ccxt/ccxt/assets/43336371/cea9cfe5-c57e-4b84-b2ac-77b960b04445)](https://www.bitmex.com/app/register/NZTR1q) | bitmex | [BitMEX](https://www.bitmex.com/app/register/NZTR1q) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://www.bitmex.com/app/apiOverview) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | [![Sign up with BitMEX using CCXT's referral link for a 10% discount!](https://img.shields.io/static/v1?label=Fee&message=%2d10%25&color=orange)](https://www.bitmex.com/app/register/NZTR1q) |
57
57
  | [![bybit](https://user-images.githubusercontent.com/51840849/76547799-daff5b80-649e-11ea-87fb-3be9bac08954.jpg)](https://www.bybit.com/register?affiliate_id=35953) | bybit | [Bybit](https://www.bybit.com/register?affiliate_id=35953) | [![API Version 5](https://img.shields.io/badge/5-lightgray)](https://bybit-exchange.github.io/docs/inverse/) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | |
58
58
  | [![coinbaseinternational](https://github.com/ccxt/ccxt/assets/43336371/866ae638-6ab5-4ebf-ab2c-cdcce9545625)](https://international.coinbase.com) | coinbaseinternational | [Coinbase International](https://international.coinbase.com) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://docs.cloud.coinbase.com/intx/docs) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | |
59
- | [![coinex](https://user-images.githubusercontent.com/51840849/87182089-1e05fa00-c2ec-11ea-8da9-cc73b45abbbc.jpg)](https://www.coinex.com/register?refer_code=yw5fz) | coinex | [CoinEx](https://www.coinex.com/register?refer_code=yw5fz) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://viabtc.github.io/coinex_api_en_doc) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | |
59
+ | [![coinex](https://user-images.githubusercontent.com/51840849/87182089-1e05fa00-c2ec-11ea-8da9-cc73b45abbbc.jpg)](https://www.coinex.com/register?refer_code=yw5fz) | coinex | [CoinEx](https://www.coinex.com/register?refer_code=yw5fz) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://docs.coinex.com/api/v2) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | |
60
60
  | [![cryptocom](https://user-images.githubusercontent.com/1294454/147792121-38ed5e36-c229-48d6-b49a-48d05fc19ed4.jpeg)](https://crypto.com/exch/kdacthrnxt) | cryptocom | [Crypto.com](https://crypto.com/exch/kdacthrnxt) | [![API Version 2](https://img.shields.io/badge/2-lightgray)](https://exchange-docs.crypto.com/exchange/v1/rest-ws/index.html) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | [![Sign up with Crypto.com using CCXT's referral link for a 15% discount!](https://img.shields.io/static/v1?label=Fee&message=%2d15%25&color=orange)](https://crypto.com/exch/kdacthrnxt) |
61
61
  | [![gate](https://user-images.githubusercontent.com/1294454/31784029-0313c702-b509-11e7-9ccc-bc0da6a0e435.jpg)](https://www.gate.io/signup/2436035) | gate | [Gate.io](https://www.gate.io/signup/2436035) | [![API Version 4](https://img.shields.io/badge/4-lightgray)](https://www.gate.io/docs/developers/apiv4/en/) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | [![Sign up with Gate.io using CCXT's referral link for a 20% discount!](https://img.shields.io/static/v1?label=Fee&message=%2d20%25&color=orange)](https://www.gate.io/signup/2436035) |
62
62
  | [![htx](https://user-images.githubusercontent.com/1294454/76137448-22748a80-604e-11ea-8069-6e389271911d.jpg)](https://www.huobi.com/en-us/v/register/double-invite/?inviter_id=11343840&invite_code=6rmm2223) | htx | [HTX](https://www.huobi.com/en-us/v/register/double-invite/?inviter_id=11343840&invite_code=6rmm2223) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://huobiapi.github.io/docs/spot/v1/en/) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) | [![Sign up with HTX using CCXT's referral link for a 15% discount!](https://img.shields.io/static/v1?label=Fee&message=%2d15%25&color=orange)](https://www.huobi.com/en-us/v/register/double-invite/?inviter_id=11343840&invite_code=6rmm2223) |
@@ -111,7 +111,7 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
111
111
  | [![coinbaseinternational](https://github.com/ccxt/ccxt/assets/43336371/866ae638-6ab5-4ebf-ab2c-cdcce9545625)](https://international.coinbase.com) | coinbaseinternational | [Coinbase International](https://international.coinbase.com) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://docs.cloud.coinbase.com/intx/docs) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
112
112
  | [![coinbasepro](https://user-images.githubusercontent.com/1294454/41764625-63b7ffde-760a-11e8-996d-a6328fa9347a.jpg)](https://pro.coinbase.com/) | coinbasepro | [Coinbase Pro](https://pro.coinbase.com/) | [![API Version *](https://img.shields.io/badge/*-lightgray)](https://docs.pro.coinbase.com) | | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
113
113
  | [![coincheck](https://user-images.githubusercontent.com/51840849/87182088-1d6d6380-c2ec-11ea-9c64-8ab9f9b289f5.jpg)](https://coincheck.com) | coincheck | [coincheck](https://coincheck.com) | [![API Version *](https://img.shields.io/badge/*-lightgray)](https://coincheck.com/documents/exchange/api) | | |
114
- | [![coinex](https://user-images.githubusercontent.com/51840849/87182089-1e05fa00-c2ec-11ea-8da9-cc73b45abbbc.jpg)](https://www.coinex.com/register?refer_code=yw5fz) | coinex | [CoinEx](https://www.coinex.com/register?refer_code=yw5fz) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://viabtc.github.io/coinex_api_en_doc) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
114
+ | [![coinex](https://user-images.githubusercontent.com/51840849/87182089-1e05fa00-c2ec-11ea-8da9-cc73b45abbbc.jpg)](https://www.coinex.com/register?refer_code=yw5fz) | coinex | [CoinEx](https://www.coinex.com/register?refer_code=yw5fz) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://docs.coinex.com/api/v2) | [![CCXT Certified](https://img.shields.io/badge/CCXT-Certified-green.svg)](https://github.com/ccxt/ccxt/wiki/Certification) | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
115
115
  | [![coinlist](https://github-production-user-asset-6210df.s3.amazonaws.com/1294454/281108917-eff2ae1d-ce8a-4b2a-950d-8678b12da965.jpg)](https://coinlist.co) | coinlist | [Coinlist](https://coinlist.co) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://trade-docs.coinlist.co) | | |
116
116
  | [![coinmate](https://user-images.githubusercontent.com/51840849/87460806-1c9f3f00-c616-11ea-8c46-a77018a8f3f4.jpg)](https://coinmate.io?referral=YTFkM1RsOWFObVpmY1ZjMGREQmpTRnBsWjJJNVp3PT0) | coinmate | [CoinMate](https://coinmate.io?referral=YTFkM1RsOWFObVpmY1ZjMGREQmpTRnBsWjJJNVp3PT0) | [![API Version *](https://img.shields.io/badge/*-lightgray)](https://coinmate.docs.apiary.io) | | |
117
117
  | [![coinmetro](https://github.com/ccxt/ccxt/assets/43336371/e86f87ec-6ba3-4410-962b-f7988c5db539)](https://go.coinmetro.com/?ref=crypto24) | coinmetro | [Coinmetro](https://go.coinmetro.com/?ref=crypto24) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://documenter.getpostman.com/view/3653795/SVfWN6KS) | | |
@@ -226,13 +226,13 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
226
226
 
227
227
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
228
228
 
229
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.2.84/dist/ccxt.browser.js
230
- * unpkg: https://unpkg.com/ccxt@4.2.84/dist/ccxt.browser.js
229
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.2.86/dist/ccxt.browser.js
230
+ * unpkg: https://unpkg.com/ccxt@4.2.86/dist/ccxt.browser.js
231
231
 
232
232
  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.
233
233
 
234
234
  ```HTML
235
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.2.84/dist/ccxt.browser.js"></script>
235
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.2.86/dist/ccxt.browser.js"></script>
236
236
  ```
237
237
 
238
238
  Creates a global `ccxt` object:
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '4.2.84'
25
+ __version__ = '4.2.86'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -0,0 +1,236 @@
1
+ from ccxt.base.types import Entry
2
+
3
+
4
+ class ImplicitAPI:
5
+ v1_public_get_amm_market = v1PublicGetAmmMarket = Entry('amm/market', ['v1', 'public'], 'GET', {'cost': 1})
6
+ v1_public_get_common_currency_rate = v1PublicGetCommonCurrencyRate = Entry('common/currency/rate', ['v1', 'public'], 'GET', {'cost': 1})
7
+ v1_public_get_common_asset_config = v1PublicGetCommonAssetConfig = Entry('common/asset/config', ['v1', 'public'], 'GET', {'cost': 1})
8
+ v1_public_get_common_maintain_info = v1PublicGetCommonMaintainInfo = Entry('common/maintain/info', ['v1', 'public'], 'GET', {'cost': 1})
9
+ v1_public_get_common_temp_maintain_info = v1PublicGetCommonTempMaintainInfo = Entry('common/temp-maintain/info', ['v1', 'public'], 'GET', {'cost': 1})
10
+ v1_public_get_margin_market = v1PublicGetMarginMarket = Entry('margin/market', ['v1', 'public'], 'GET', {'cost': 1})
11
+ v1_public_get_market_info = v1PublicGetMarketInfo = Entry('market/info', ['v1', 'public'], 'GET', {'cost': 1})
12
+ v1_public_get_market_list = v1PublicGetMarketList = Entry('market/list', ['v1', 'public'], 'GET', {'cost': 1})
13
+ v1_public_get_market_ticker = v1PublicGetMarketTicker = Entry('market/ticker', ['v1', 'public'], 'GET', {'cost': 1})
14
+ v1_public_get_market_ticker_all = v1PublicGetMarketTickerAll = Entry('market/ticker/all', ['v1', 'public'], 'GET', {'cost': 1})
15
+ v1_public_get_market_depth = v1PublicGetMarketDepth = Entry('market/depth', ['v1', 'public'], 'GET', {'cost': 1})
16
+ v1_public_get_market_deals = v1PublicGetMarketDeals = Entry('market/deals', ['v1', 'public'], 'GET', {'cost': 1})
17
+ v1_public_get_market_kline = v1PublicGetMarketKline = Entry('market/kline', ['v1', 'public'], 'GET', {'cost': 1})
18
+ v1_public_get_market_detail = v1PublicGetMarketDetail = Entry('market/detail', ['v1', 'public'], 'GET', {'cost': 1})
19
+ v1_private_get_account_amm_balance = v1PrivateGetAccountAmmBalance = Entry('account/amm/balance', ['v1', 'private'], 'GET', {'cost': 40})
20
+ v1_private_get_account_investment_balance = v1PrivateGetAccountInvestmentBalance = Entry('account/investment/balance', ['v1', 'private'], 'GET', {'cost': 40})
21
+ v1_private_get_account_balance_history = v1PrivateGetAccountBalanceHistory = Entry('account/balance/history', ['v1', 'private'], 'GET', {'cost': 40})
22
+ v1_private_get_account_market_fee = v1PrivateGetAccountMarketFee = Entry('account/market/fee', ['v1', 'private'], 'GET', {'cost': 40})
23
+ v1_private_get_balance_coin_deposit = v1PrivateGetBalanceCoinDeposit = Entry('balance/coin/deposit', ['v1', 'private'], 'GET', {'cost': 40})
24
+ v1_private_get_balance_coin_withdraw = v1PrivateGetBalanceCoinWithdraw = Entry('balance/coin/withdraw', ['v1', 'private'], 'GET', {'cost': 40})
25
+ v1_private_get_balance_info = v1PrivateGetBalanceInfo = Entry('balance/info', ['v1', 'private'], 'GET', {'cost': 40})
26
+ v1_private_get_balance_deposit_address_coin_type = v1PrivateGetBalanceDepositAddressCoinType = Entry('balance/deposit/address/{coin_type}', ['v1', 'private'], 'GET', {'cost': 40})
27
+ v1_private_get_contract_transfer_history = v1PrivateGetContractTransferHistory = Entry('contract/transfer/history', ['v1', 'private'], 'GET', {'cost': 40})
28
+ v1_private_get_credit_info = v1PrivateGetCreditInfo = Entry('credit/info', ['v1', 'private'], 'GET', {'cost': 40})
29
+ v1_private_get_credit_balance = v1PrivateGetCreditBalance = Entry('credit/balance', ['v1', 'private'], 'GET', {'cost': 40})
30
+ v1_private_get_investment_transfer_history = v1PrivateGetInvestmentTransferHistory = Entry('investment/transfer/history', ['v1', 'private'], 'GET', {'cost': 40})
31
+ v1_private_get_margin_account = v1PrivateGetMarginAccount = Entry('margin/account', ['v1', 'private'], 'GET', {'cost': 1})
32
+ v1_private_get_margin_config = v1PrivateGetMarginConfig = Entry('margin/config', ['v1', 'private'], 'GET', {'cost': 1})
33
+ v1_private_get_margin_loan_history = v1PrivateGetMarginLoanHistory = Entry('margin/loan/history', ['v1', 'private'], 'GET', {'cost': 40})
34
+ v1_private_get_margin_transfer_history = v1PrivateGetMarginTransferHistory = Entry('margin/transfer/history', ['v1', 'private'], 'GET', {'cost': 40})
35
+ v1_private_get_order_deals = v1PrivateGetOrderDeals = Entry('order/deals', ['v1', 'private'], 'GET', {'cost': 40})
36
+ v1_private_get_order_finished = v1PrivateGetOrderFinished = Entry('order/finished', ['v1', 'private'], 'GET', {'cost': 40})
37
+ v1_private_get_order_pending = v1PrivateGetOrderPending = Entry('order/pending', ['v1', 'private'], 'GET', {'cost': 8})
38
+ v1_private_get_order_status = v1PrivateGetOrderStatus = Entry('order/status', ['v1', 'private'], 'GET', {'cost': 8})
39
+ v1_private_get_order_status_batch = v1PrivateGetOrderStatusBatch = Entry('order/status/batch', ['v1', 'private'], 'GET', {'cost': 8})
40
+ v1_private_get_order_user_deals = v1PrivateGetOrderUserDeals = Entry('order/user/deals', ['v1', 'private'], 'GET', {'cost': 40})
41
+ v1_private_get_order_stop_finished = v1PrivateGetOrderStopFinished = Entry('order/stop/finished', ['v1', 'private'], 'GET', {'cost': 40})
42
+ v1_private_get_order_stop_pending = v1PrivateGetOrderStopPending = Entry('order/stop/pending', ['v1', 'private'], 'GET', {'cost': 8})
43
+ v1_private_get_order_user_trade_fee = v1PrivateGetOrderUserTradeFee = Entry('order/user/trade/fee', ['v1', 'private'], 'GET', {'cost': 1})
44
+ v1_private_get_order_market_trade_info = v1PrivateGetOrderMarketTradeInfo = Entry('order/market/trade/info', ['v1', 'private'], 'GET', {'cost': 1})
45
+ v1_private_get_sub_account_balance = v1PrivateGetSubAccountBalance = Entry('sub_account/balance', ['v1', 'private'], 'GET', {'cost': 1})
46
+ v1_private_get_sub_account_transfer_history = v1PrivateGetSubAccountTransferHistory = Entry('sub_account/transfer/history', ['v1', 'private'], 'GET', {'cost': 40})
47
+ v1_private_get_sub_account_auth_api = v1PrivateGetSubAccountAuthApi = Entry('sub_account/auth/api', ['v1', 'private'], 'GET', {'cost': 40})
48
+ v1_private_get_sub_account_auth_api_user_auth_id = v1PrivateGetSubAccountAuthApiUserAuthId = Entry('sub_account/auth/api/{user_auth_id}', ['v1', 'private'], 'GET', {'cost': 40})
49
+ v1_private_post_balance_coin_withdraw = v1PrivatePostBalanceCoinWithdraw = Entry('balance/coin/withdraw', ['v1', 'private'], 'POST', {'cost': 40})
50
+ v1_private_post_contract_balance_transfer = v1PrivatePostContractBalanceTransfer = Entry('contract/balance/transfer', ['v1', 'private'], 'POST', {'cost': 40})
51
+ v1_private_post_margin_flat = v1PrivatePostMarginFlat = Entry('margin/flat', ['v1', 'private'], 'POST', {'cost': 40})
52
+ v1_private_post_margin_loan = v1PrivatePostMarginLoan = Entry('margin/loan', ['v1', 'private'], 'POST', {'cost': 40})
53
+ v1_private_post_margin_transfer = v1PrivatePostMarginTransfer = Entry('margin/transfer', ['v1', 'private'], 'POST', {'cost': 40})
54
+ v1_private_post_order_limit_batch = v1PrivatePostOrderLimitBatch = Entry('order/limit/batch', ['v1', 'private'], 'POST', {'cost': 40})
55
+ v1_private_post_order_ioc = v1PrivatePostOrderIoc = Entry('order/ioc', ['v1', 'private'], 'POST', {'cost': 13.334})
56
+ v1_private_post_order_limit = v1PrivatePostOrderLimit = Entry('order/limit', ['v1', 'private'], 'POST', {'cost': 13.334})
57
+ v1_private_post_order_market = v1PrivatePostOrderMarket = Entry('order/market', ['v1', 'private'], 'POST', {'cost': 13.334})
58
+ v1_private_post_order_modify = v1PrivatePostOrderModify = Entry('order/modify', ['v1', 'private'], 'POST', {'cost': 13.334})
59
+ v1_private_post_order_stop_limit = v1PrivatePostOrderStopLimit = Entry('order/stop/limit', ['v1', 'private'], 'POST', {'cost': 13.334})
60
+ v1_private_post_order_stop_market = v1PrivatePostOrderStopMarket = Entry('order/stop/market', ['v1', 'private'], 'POST', {'cost': 13.334})
61
+ v1_private_post_order_stop_modify = v1PrivatePostOrderStopModify = Entry('order/stop/modify', ['v1', 'private'], 'POST', {'cost': 13.334})
62
+ v1_private_post_sub_account_transfer = v1PrivatePostSubAccountTransfer = Entry('sub_account/transfer', ['v1', 'private'], 'POST', {'cost': 40})
63
+ v1_private_post_sub_account_register = v1PrivatePostSubAccountRegister = Entry('sub_account/register', ['v1', 'private'], 'POST', {'cost': 1})
64
+ v1_private_post_sub_account_unfrozen = v1PrivatePostSubAccountUnfrozen = Entry('sub_account/unfrozen', ['v1', 'private'], 'POST', {'cost': 40})
65
+ v1_private_post_sub_account_frozen = v1PrivatePostSubAccountFrozen = Entry('sub_account/frozen', ['v1', 'private'], 'POST', {'cost': 40})
66
+ v1_private_post_sub_account_auth_api = v1PrivatePostSubAccountAuthApi = Entry('sub_account/auth/api', ['v1', 'private'], 'POST', {'cost': 40})
67
+ v1_private_put_balance_deposit_address_coin_type = v1PrivatePutBalanceDepositAddressCoinType = Entry('balance/deposit/address/{coin_type}', ['v1', 'private'], 'PUT', {'cost': 40})
68
+ v1_private_put_sub_account_unfrozen = v1PrivatePutSubAccountUnfrozen = Entry('sub_account/unfrozen', ['v1', 'private'], 'PUT', {'cost': 40})
69
+ v1_private_put_sub_account_frozen = v1PrivatePutSubAccountFrozen = Entry('sub_account/frozen', ['v1', 'private'], 'PUT', {'cost': 40})
70
+ v1_private_put_sub_account_auth_api_user_auth_id = v1PrivatePutSubAccountAuthApiUserAuthId = Entry('sub_account/auth/api/{user_auth_id}', ['v1', 'private'], 'PUT', {'cost': 40})
71
+ v1_private_put_v1_account_settings = v1PrivatePutV1AccountSettings = Entry('v1/account/settings', ['v1', 'private'], 'PUT', {'cost': 40})
72
+ v1_private_delete_balance_coin_withdraw = v1PrivateDeleteBalanceCoinWithdraw = Entry('balance/coin/withdraw', ['v1', 'private'], 'DELETE', {'cost': 40})
73
+ v1_private_delete_order_pending_batch = v1PrivateDeleteOrderPendingBatch = Entry('order/pending/batch', ['v1', 'private'], 'DELETE', {'cost': 40})
74
+ v1_private_delete_order_pending = v1PrivateDeleteOrderPending = Entry('order/pending', ['v1', 'private'], 'DELETE', {'cost': 13.334})
75
+ v1_private_delete_order_stop_pending = v1PrivateDeleteOrderStopPending = Entry('order/stop/pending', ['v1', 'private'], 'DELETE', {'cost': 40})
76
+ v1_private_delete_order_stop_pending_id = v1PrivateDeleteOrderStopPendingId = Entry('order/stop/pending/{id}', ['v1', 'private'], 'DELETE', {'cost': 13.334})
77
+ v1_private_delete_order_pending_by_client_id = v1PrivateDeleteOrderPendingByClientId = Entry('order/pending/by_client_id', ['v1', 'private'], 'DELETE', {'cost': 40})
78
+ v1_private_delete_order_stop_pending_by_client_id = v1PrivateDeleteOrderStopPendingByClientId = Entry('order/stop/pending/by_client_id', ['v1', 'private'], 'DELETE', {'cost': 40})
79
+ v1_private_delete_sub_account_auth_api_user_auth_id = v1PrivateDeleteSubAccountAuthApiUserAuthId = Entry('sub_account/auth/api/{user_auth_id}', ['v1', 'private'], 'DELETE', {'cost': 40})
80
+ v1_private_delete_sub_account_authorize_id = v1PrivateDeleteSubAccountAuthorizeId = Entry('sub_account/authorize/{id}', ['v1', 'private'], 'DELETE', {'cost': 40})
81
+ v1_perpetualpublic_get_ping = v1PerpetualPublicGetPing = Entry('ping', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
82
+ v1_perpetualpublic_get_time = v1PerpetualPublicGetTime = Entry('time', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
83
+ v1_perpetualpublic_get_market_list = v1PerpetualPublicGetMarketList = Entry('market/list', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
84
+ v1_perpetualpublic_get_market_limit_config = v1PerpetualPublicGetMarketLimitConfig = Entry('market/limit_config', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
85
+ v1_perpetualpublic_get_market_ticker = v1PerpetualPublicGetMarketTicker = Entry('market/ticker', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
86
+ v1_perpetualpublic_get_market_ticker_all = v1PerpetualPublicGetMarketTickerAll = Entry('market/ticker/all', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
87
+ v1_perpetualpublic_get_market_depth = v1PerpetualPublicGetMarketDepth = Entry('market/depth', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
88
+ v1_perpetualpublic_get_market_deals = v1PerpetualPublicGetMarketDeals = Entry('market/deals', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
89
+ v1_perpetualpublic_get_market_funding_history = v1PerpetualPublicGetMarketFundingHistory = Entry('market/funding_history', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
90
+ v1_perpetualpublic_get_market_kline = v1PerpetualPublicGetMarketKline = Entry('market/kline', ['v1', 'perpetualPublic'], 'GET', {'cost': 1})
91
+ v1_perpetualprivate_get_market_user_deals = v1PerpetualPrivateGetMarketUserDeals = Entry('market/user_deals', ['v1', 'perpetualPrivate'], 'GET', {'cost': 1})
92
+ v1_perpetualprivate_get_asset_query = v1PerpetualPrivateGetAssetQuery = Entry('asset/query', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
93
+ v1_perpetualprivate_get_order_pending = v1PerpetualPrivateGetOrderPending = Entry('order/pending', ['v1', 'perpetualPrivate'], 'GET', {'cost': 8})
94
+ v1_perpetualprivate_get_order_finished = v1PerpetualPrivateGetOrderFinished = Entry('order/finished', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
95
+ v1_perpetualprivate_get_order_stop_finished = v1PerpetualPrivateGetOrderStopFinished = Entry('order/stop_finished', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
96
+ v1_perpetualprivate_get_order_stop_pending = v1PerpetualPrivateGetOrderStopPending = Entry('order/stop_pending', ['v1', 'perpetualPrivate'], 'GET', {'cost': 8})
97
+ v1_perpetualprivate_get_order_status = v1PerpetualPrivateGetOrderStatus = Entry('order/status', ['v1', 'perpetualPrivate'], 'GET', {'cost': 8})
98
+ v1_perpetualprivate_get_order_stop_status = v1PerpetualPrivateGetOrderStopStatus = Entry('order/stop_status', ['v1', 'perpetualPrivate'], 'GET', {'cost': 8})
99
+ v1_perpetualprivate_get_position_finished = v1PerpetualPrivateGetPositionFinished = Entry('position/finished', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
100
+ v1_perpetualprivate_get_position_pending = v1PerpetualPrivateGetPositionPending = Entry('position/pending', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
101
+ v1_perpetualprivate_get_position_funding = v1PerpetualPrivateGetPositionFunding = Entry('position/funding', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
102
+ v1_perpetualprivate_get_position_adl_history = v1PerpetualPrivateGetPositionAdlHistory = Entry('position/adl_history', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
103
+ v1_perpetualprivate_get_market_preference = v1PerpetualPrivateGetMarketPreference = Entry('market/preference', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
104
+ v1_perpetualprivate_get_position_margin_history = v1PerpetualPrivateGetPositionMarginHistory = Entry('position/margin_history', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
105
+ v1_perpetualprivate_get_position_settle_history = v1PerpetualPrivateGetPositionSettleHistory = Entry('position/settle_history', ['v1', 'perpetualPrivate'], 'GET', {'cost': 40})
106
+ v1_perpetualprivate_post_market_adjust_leverage = v1PerpetualPrivatePostMarketAdjustLeverage = Entry('market/adjust_leverage', ['v1', 'perpetualPrivate'], 'POST', {'cost': 1})
107
+ v1_perpetualprivate_post_market_position_expect = v1PerpetualPrivatePostMarketPositionExpect = Entry('market/position_expect', ['v1', 'perpetualPrivate'], 'POST', {'cost': 1})
108
+ v1_perpetualprivate_post_order_put_limit = v1PerpetualPrivatePostOrderPutLimit = Entry('order/put_limit', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
109
+ v1_perpetualprivate_post_order_put_market = v1PerpetualPrivatePostOrderPutMarket = Entry('order/put_market', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
110
+ v1_perpetualprivate_post_order_put_stop_limit = v1PerpetualPrivatePostOrderPutStopLimit = Entry('order/put_stop_limit', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
111
+ v1_perpetualprivate_post_order_put_stop_market = v1PerpetualPrivatePostOrderPutStopMarket = Entry('order/put_stop_market', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
112
+ v1_perpetualprivate_post_order_modify = v1PerpetualPrivatePostOrderModify = Entry('order/modify', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
113
+ v1_perpetualprivate_post_order_modify_stop = v1PerpetualPrivatePostOrderModifyStop = Entry('order/modify_stop', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
114
+ v1_perpetualprivate_post_order_cancel = v1PerpetualPrivatePostOrderCancel = Entry('order/cancel', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
115
+ v1_perpetualprivate_post_order_cancel_all = v1PerpetualPrivatePostOrderCancelAll = Entry('order/cancel_all', ['v1', 'perpetualPrivate'], 'POST', {'cost': 40})
116
+ v1_perpetualprivate_post_order_cancel_batch = v1PerpetualPrivatePostOrderCancelBatch = Entry('order/cancel_batch', ['v1', 'perpetualPrivate'], 'POST', {'cost': 40})
117
+ v1_perpetualprivate_post_order_cancel_stop = v1PerpetualPrivatePostOrderCancelStop = Entry('order/cancel_stop', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
118
+ v1_perpetualprivate_post_order_cancel_stop_all = v1PerpetualPrivatePostOrderCancelStopAll = Entry('order/cancel_stop_all', ['v1', 'perpetualPrivate'], 'POST', {'cost': 40})
119
+ v1_perpetualprivate_post_order_close_limit = v1PerpetualPrivatePostOrderCloseLimit = Entry('order/close_limit', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
120
+ v1_perpetualprivate_post_order_close_market = v1PerpetualPrivatePostOrderCloseMarket = Entry('order/close_market', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
121
+ v1_perpetualprivate_post_position_adjust_margin = v1PerpetualPrivatePostPositionAdjustMargin = Entry('position/adjust_margin', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
122
+ v1_perpetualprivate_post_position_stop_loss = v1PerpetualPrivatePostPositionStopLoss = Entry('position/stop_loss', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
123
+ v1_perpetualprivate_post_position_take_profit = v1PerpetualPrivatePostPositionTakeProfit = Entry('position/take_profit', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
124
+ v1_perpetualprivate_post_position_market_close = v1PerpetualPrivatePostPositionMarketClose = Entry('position/market_close', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
125
+ v1_perpetualprivate_post_order_cancel_by_client_id = v1PerpetualPrivatePostOrderCancelByClientId = Entry('order/cancel/by_client_id', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
126
+ v1_perpetualprivate_post_order_cancel_stop_by_client_id = v1PerpetualPrivatePostOrderCancelStopByClientId = Entry('order/cancel_stop/by_client_id', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
127
+ v1_perpetualprivate_post_market_preference = v1PerpetualPrivatePostMarketPreference = Entry('market/preference', ['v1', 'perpetualPrivate'], 'POST', {'cost': 20})
128
+ v2_public_get_maintain_info = v2PublicGetMaintainInfo = Entry('maintain-info', ['v2', 'public'], 'GET', {'cost': 1})
129
+ v2_public_get_ping = v2PublicGetPing = Entry('ping', ['v2', 'public'], 'GET', {'cost': 1})
130
+ v2_public_get_time = v2PublicGetTime = Entry('time', ['v2', 'public'], 'GET', {'cost': 1})
131
+ v2_public_get_spot_market = v2PublicGetSpotMarket = Entry('spot/market', ['v2', 'public'], 'GET', {'cost': 1})
132
+ v2_public_get_spot_ticker = v2PublicGetSpotTicker = Entry('spot/ticker', ['v2', 'public'], 'GET', {'cost': 1})
133
+ v2_public_get_spot_depth = v2PublicGetSpotDepth = Entry('spot/depth', ['v2', 'public'], 'GET', {'cost': 1})
134
+ v2_public_get_spot_deals = v2PublicGetSpotDeals = Entry('spot/deals', ['v2', 'public'], 'GET', {'cost': 1})
135
+ v2_public_get_spot_kline = v2PublicGetSpotKline = Entry('spot/kline', ['v2', 'public'], 'GET', {'cost': 1})
136
+ v2_public_get_spot_index = v2PublicGetSpotIndex = Entry('spot/index', ['v2', 'public'], 'GET', {'cost': 1})
137
+ v2_public_get_futures_market = v2PublicGetFuturesMarket = Entry('futures/market', ['v2', 'public'], 'GET', {'cost': 1})
138
+ v2_public_get_futures_ticker = v2PublicGetFuturesTicker = Entry('futures/ticker', ['v2', 'public'], 'GET', {'cost': 1})
139
+ v2_public_get_futures_depth = v2PublicGetFuturesDepth = Entry('futures/depth', ['v2', 'public'], 'GET', {'cost': 1})
140
+ v2_public_get_futures_deals = v2PublicGetFuturesDeals = Entry('futures/deals', ['v2', 'public'], 'GET', {'cost': 1})
141
+ v2_public_get_futures_kline = v2PublicGetFuturesKline = Entry('futures/kline', ['v2', 'public'], 'GET', {'cost': 1})
142
+ v2_public_get_futures_index = v2PublicGetFuturesIndex = Entry('futures/index', ['v2', 'public'], 'GET', {'cost': 1})
143
+ v2_public_get_futures_funding_rate = v2PublicGetFuturesFundingRate = Entry('futures/funding-rate', ['v2', 'public'], 'GET', {'cost': 1})
144
+ v2_public_get_futures_funding_rate_history = v2PublicGetFuturesFundingRateHistory = Entry('futures/funding-rate-history', ['v2', 'public'], 'GET', {'cost': 1})
145
+ v2_public_get_futures_position_level = v2PublicGetFuturesPositionLevel = Entry('futures/position-level', ['v2', 'public'], 'GET', {'cost': 1})
146
+ v2_public_get_futures_liquidation_history = v2PublicGetFuturesLiquidationHistory = Entry('futures/liquidation-history', ['v2', 'public'], 'GET', {'cost': 1})
147
+ v2_public_get_futures_basis_history = v2PublicGetFuturesBasisHistory = Entry('futures/basis-history', ['v2', 'public'], 'GET', {'cost': 1})
148
+ v2_private_get_account_subs = v2PrivateGetAccountSubs = Entry('account/subs', ['v2', 'private'], 'GET', {'cost': 1})
149
+ v2_private_get_account_subs_api_detail = v2PrivateGetAccountSubsApiDetail = Entry('account/subs/api-detail', ['v2', 'private'], 'GET', {'cost': 40})
150
+ v2_private_get_account_subs_info = v2PrivateGetAccountSubsInfo = Entry('account/subs/info', ['v2', 'private'], 'GET', {'cost': 1})
151
+ v2_private_get_account_subs_api = v2PrivateGetAccountSubsApi = Entry('account/subs/api', ['v2', 'private'], 'GET', {'cost': 40})
152
+ v2_private_get_account_subs_transfer_history = v2PrivateGetAccountSubsTransferHistory = Entry('account/subs/transfer-history', ['v2', 'private'], 'GET', {'cost': 40})
153
+ v2_private_get_account_subs_spot_balance = v2PrivateGetAccountSubsSpotBalance = Entry('account/subs/spot-balance', ['v2', 'private'], 'GET', {'cost': 1})
154
+ v2_private_get_account_trade_fee_rate = v2PrivateGetAccountTradeFeeRate = Entry('account/trade-fee-rate', ['v2', 'private'], 'GET', {'cost': 40})
155
+ v2_private_get_assets_spot_balance = v2PrivateGetAssetsSpotBalance = Entry('assets/spot/balance', ['v2', 'private'], 'GET', {'cost': 40})
156
+ v2_private_get_assets_futures_balance = v2PrivateGetAssetsFuturesBalance = Entry('assets/futures/balance', ['v2', 'private'], 'GET', {'cost': 40})
157
+ v2_private_get_assets_margin_balance = v2PrivateGetAssetsMarginBalance = Entry('assets/margin/balance', ['v2', 'private'], 'GET', {'cost': 1})
158
+ v2_private_get_assets_financial_balance = v2PrivateGetAssetsFinancialBalance = Entry('assets/financial/balance', ['v2', 'private'], 'GET', {'cost': 40})
159
+ v2_private_get_assets_amm_liquidity = v2PrivateGetAssetsAmmLiquidity = Entry('assets/amm/liquidity', ['v2', 'private'], 'GET', {'cost': 40})
160
+ v2_private_get_assets_credit_info = v2PrivateGetAssetsCreditInfo = Entry('assets/credit/info', ['v2', 'private'], 'GET', {'cost': 40})
161
+ v2_private_get_assets_margin_borrow_history = v2PrivateGetAssetsMarginBorrowHistory = Entry('assets/margin/borrow-history', ['v2', 'private'], 'GET', {'cost': 40})
162
+ v2_private_get_assets_margin_interest_limit = v2PrivateGetAssetsMarginInterestLimit = Entry('assets/margin/interest-limit', ['v2', 'private'], 'GET', {'cost': 1})
163
+ v2_private_get_assets_deposit_address = v2PrivateGetAssetsDepositAddress = Entry('assets/deposit-address', ['v2', 'private'], 'GET', {'cost': 40})
164
+ v2_private_get_assets_deposit_history = v2PrivateGetAssetsDepositHistory = Entry('assets/deposit-history', ['v2', 'private'], 'GET', {'cost': 40})
165
+ v2_private_get_assets_withdraw = v2PrivateGetAssetsWithdraw = Entry('assets/withdraw', ['v2', 'private'], 'GET', {'cost': 40})
166
+ v2_private_get_assets_deposit_withdraw_config = v2PrivateGetAssetsDepositWithdrawConfig = Entry('assets/deposit-withdraw-config', ['v2', 'private'], 'GET', {'cost': 1})
167
+ v2_private_get_assets_transfer_history = v2PrivateGetAssetsTransferHistory = Entry('assets/transfer-history', ['v2', 'private'], 'GET', {'cost': 40})
168
+ v2_private_get_spot_order_status = v2PrivateGetSpotOrderStatus = Entry('spot/order-status', ['v2', 'private'], 'GET', {'cost': 8})
169
+ v2_private_get_spot_batch_order_status = v2PrivateGetSpotBatchOrderStatus = Entry('spot/batch-order-status', ['v2', 'private'], 'GET', {'cost': 8})
170
+ v2_private_get_spot_pending_order = v2PrivateGetSpotPendingOrder = Entry('spot/pending-order', ['v2', 'private'], 'GET', {'cost': 8})
171
+ v2_private_get_spot_finished_order = v2PrivateGetSpotFinishedOrder = Entry('spot/finished-order', ['v2', 'private'], 'GET', {'cost': 40})
172
+ v2_private_get_spot_pending_stop_order = v2PrivateGetSpotPendingStopOrder = Entry('spot/pending-stop-order', ['v2', 'private'], 'GET', {'cost': 8})
173
+ v2_private_get_spot_finished_stop_order = v2PrivateGetSpotFinishedStopOrder = Entry('spot/finished-stop-order', ['v2', 'private'], 'GET', {'cost': 40})
174
+ v2_private_get_spot_user_deals = v2PrivateGetSpotUserDeals = Entry('spot/user-deals', ['v2', 'private'], 'GET', {'cost': 40})
175
+ v2_private_get_spot_order_deals = v2PrivateGetSpotOrderDeals = Entry('spot/order-deals', ['v2', 'private'], 'GET', {'cost': 40})
176
+ v2_private_get_futures_order_status = v2PrivateGetFuturesOrderStatus = Entry('futures/order-status', ['v2', 'private'], 'GET', {'cost': 8})
177
+ v2_private_get_futures_batch_order_status = v2PrivateGetFuturesBatchOrderStatus = Entry('futures/batch-order-status', ['v2', 'private'], 'GET', {'cost': 1})
178
+ v2_private_get_futures_pending_order = v2PrivateGetFuturesPendingOrder = Entry('futures/pending-order', ['v2', 'private'], 'GET', {'cost': 8})
179
+ v2_private_get_futures_finished_order = v2PrivateGetFuturesFinishedOrder = Entry('futures/finished-order', ['v2', 'private'], 'GET', {'cost': 40})
180
+ v2_private_get_futures_pending_stop_order = v2PrivateGetFuturesPendingStopOrder = Entry('futures/pending-stop-order', ['v2', 'private'], 'GET', {'cost': 8})
181
+ v2_private_get_futures_finished_stop_order = v2PrivateGetFuturesFinishedStopOrder = Entry('futures/finished-stop-order', ['v2', 'private'], 'GET', {'cost': 40})
182
+ v2_private_get_futures_user_deals = v2PrivateGetFuturesUserDeals = Entry('futures/user-deals', ['v2', 'private'], 'GET', {'cost': 1})
183
+ v2_private_get_futures_order_deals = v2PrivateGetFuturesOrderDeals = Entry('futures/order-deals', ['v2', 'private'], 'GET', {'cost': 1})
184
+ v2_private_get_futures_pending_position = v2PrivateGetFuturesPendingPosition = Entry('futures/pending-position', ['v2', 'private'], 'GET', {'cost': 40})
185
+ v2_private_get_futures_finished_position = v2PrivateGetFuturesFinishedPosition = Entry('futures/finished-position', ['v2', 'private'], 'GET', {'cost': 1})
186
+ v2_private_get_futures_position_margin_history = v2PrivateGetFuturesPositionMarginHistory = Entry('futures/position-margin-history', ['v2', 'private'], 'GET', {'cost': 1})
187
+ v2_private_get_futures_position_funding_history = v2PrivateGetFuturesPositionFundingHistory = Entry('futures/position-funding-history', ['v2', 'private'], 'GET', {'cost': 40})
188
+ v2_private_get_futures_position_adl_history = v2PrivateGetFuturesPositionAdlHistory = Entry('futures/position-adl-history', ['v2', 'private'], 'GET', {'cost': 1})
189
+ v2_private_get_futures_position_settle_history = v2PrivateGetFuturesPositionSettleHistory = Entry('futures/position-settle-history', ['v2', 'private'], 'GET', {'cost': 1})
190
+ v2_private_post_account_subs = v2PrivatePostAccountSubs = Entry('account/subs', ['v2', 'private'], 'POST', {'cost': 40})
191
+ v2_private_post_account_subs_frozen = v2PrivatePostAccountSubsFrozen = Entry('account/subs/frozen', ['v2', 'private'], 'POST', {'cost': 40})
192
+ v2_private_post_account_subs_unfrozen = v2PrivatePostAccountSubsUnfrozen = Entry('account/subs/unfrozen', ['v2', 'private'], 'POST', {'cost': 40})
193
+ v2_private_post_account_subs_api = v2PrivatePostAccountSubsApi = Entry('account/subs/api', ['v2', 'private'], 'POST', {'cost': 40})
194
+ v2_private_post_account_subs_edit_api = v2PrivatePostAccountSubsEditApi = Entry('account/subs/edit-api', ['v2', 'private'], 'POST', {'cost': 40})
195
+ v2_private_post_account_subs_delete_api = v2PrivatePostAccountSubsDeleteApi = Entry('account/subs/delete-api', ['v2', 'private'], 'POST', {'cost': 40})
196
+ v2_private_post_account_subs_transfer = v2PrivatePostAccountSubsTransfer = Entry('account/subs/transfer', ['v2', 'private'], 'POST', {'cost': 40})
197
+ v2_private_post_account_settings = v2PrivatePostAccountSettings = Entry('account/settings', ['v2', 'private'], 'POST', {'cost': 40})
198
+ v2_private_post_assets_margin_borrow = v2PrivatePostAssetsMarginBorrow = Entry('assets/margin/borrow', ['v2', 'private'], 'POST', {'cost': 40})
199
+ v2_private_post_assets_margin_repay = v2PrivatePostAssetsMarginRepay = Entry('assets/margin/repay', ['v2', 'private'], 'POST', {'cost': 40})
200
+ v2_private_post_assets_renewal_deposit_address = v2PrivatePostAssetsRenewalDepositAddress = Entry('assets/renewal-deposit-address', ['v2', 'private'], 'POST', {'cost': 40})
201
+ v2_private_post_assets_withdraw = v2PrivatePostAssetsWithdraw = Entry('assets/withdraw', ['v2', 'private'], 'POST', {'cost': 40})
202
+ v2_private_post_assets_cancel_withdraw = v2PrivatePostAssetsCancelWithdraw = Entry('assets/cancel-withdraw', ['v2', 'private'], 'POST', {'cost': 40})
203
+ v2_private_post_assets_transfer = v2PrivatePostAssetsTransfer = Entry('assets/transfer', ['v2', 'private'], 'POST', {'cost': 40})
204
+ v2_private_post_assets_amm_add_liquidity = v2PrivatePostAssetsAmmAddLiquidity = Entry('assets/amm/add-liquidity', ['v2', 'private'], 'POST', {'cost': 1})
205
+ v2_private_post_assets_amm_remove_liquidity = v2PrivatePostAssetsAmmRemoveLiquidity = Entry('assets/amm/remove-liquidity', ['v2', 'private'], 'POST', {'cost': 1})
206
+ v2_private_post_spot_order = v2PrivatePostSpotOrder = Entry('spot/order', ['v2', 'private'], 'POST', {'cost': 13.334})
207
+ v2_private_post_spot_stop_order = v2PrivatePostSpotStopOrder = Entry('spot/stop-order', ['v2', 'private'], 'POST', {'cost': 13.334})
208
+ v2_private_post_spot_batch_order = v2PrivatePostSpotBatchOrder = Entry('spot/batch-order', ['v2', 'private'], 'POST', {'cost': 40})
209
+ v2_private_post_spot_batch_stop_order = v2PrivatePostSpotBatchStopOrder = Entry('spot/batch-stop-order', ['v2', 'private'], 'POST', {'cost': 1})
210
+ v2_private_post_spot_modify_order = v2PrivatePostSpotModifyOrder = Entry('spot/modify-order', ['v2', 'private'], 'POST', {'cost': 13.334})
211
+ v2_private_post_spot_modify_stop_order = v2PrivatePostSpotModifyStopOrder = Entry('spot/modify-stop-order', ['v2', 'private'], 'POST', {'cost': 13.334})
212
+ v2_private_post_spot_cancel_all_order = v2PrivatePostSpotCancelAllOrder = Entry('spot/cancel-all-order', ['v2', 'private'], 'POST', {'cost': 1})
213
+ v2_private_post_spot_cancel_order = v2PrivatePostSpotCancelOrder = Entry('spot/cancel-order', ['v2', 'private'], 'POST', {'cost': 6.667})
214
+ v2_private_post_spot_cancel_stop_order = v2PrivatePostSpotCancelStopOrder = Entry('spot/cancel-stop-order', ['v2', 'private'], 'POST', {'cost': 6.667})
215
+ v2_private_post_spot_cancel_batch_order = v2PrivatePostSpotCancelBatchOrder = Entry('spot/cancel-batch-order', ['v2', 'private'], 'POST', {'cost': 10})
216
+ v2_private_post_spot_cancel_batch_stop_order = v2PrivatePostSpotCancelBatchStopOrder = Entry('spot/cancel-batch-stop-order', ['v2', 'private'], 'POST', {'cost': 10})
217
+ v2_private_post_spot_cancel_order_by_client_id = v2PrivatePostSpotCancelOrderByClientId = Entry('spot/cancel-order-by-client-id', ['v2', 'private'], 'POST', {'cost': 1})
218
+ v2_private_post_spot_cancel_stop_order_by_client_id = v2PrivatePostSpotCancelStopOrderByClientId = Entry('spot/cancel-stop-order-by-client-id', ['v2', 'private'], 'POST', {'cost': 1})
219
+ v2_private_post_futures_order = v2PrivatePostFuturesOrder = Entry('futures/order', ['v2', 'private'], 'POST', {'cost': 20})
220
+ v2_private_post_futures_stop_order = v2PrivatePostFuturesStopOrder = Entry('futures/stop-order', ['v2', 'private'], 'POST', {'cost': 20})
221
+ v2_private_post_futures_batch_order = v2PrivatePostFuturesBatchOrder = Entry('futures/batch-order', ['v2', 'private'], 'POST', {'cost': 1})
222
+ v2_private_post_futures_batch_stop_order = v2PrivatePostFuturesBatchStopOrder = Entry('futures/batch-stop-order', ['v2', 'private'], 'POST', {'cost': 1})
223
+ v2_private_post_futures_modify_order = v2PrivatePostFuturesModifyOrder = Entry('futures/modify-order', ['v2', 'private'], 'POST', {'cost': 20})
224
+ v2_private_post_futures_modify_stop_order = v2PrivatePostFuturesModifyStopOrder = Entry('futures/modify-stop-order', ['v2', 'private'], 'POST', {'cost': 20})
225
+ v2_private_post_futures_cancel_all_order = v2PrivatePostFuturesCancelAllOrder = Entry('futures/cancel-all-order', ['v2', 'private'], 'POST', {'cost': 1})
226
+ v2_private_post_futures_cancel_order = v2PrivatePostFuturesCancelOrder = Entry('futures/cancel-order', ['v2', 'private'], 'POST', {'cost': 10})
227
+ v2_private_post_futures_cancel_stop_order = v2PrivatePostFuturesCancelStopOrder = Entry('futures/cancel-stop-order', ['v2', 'private'], 'POST', {'cost': 10})
228
+ v2_private_post_futures_cancel_batch_order = v2PrivatePostFuturesCancelBatchOrder = Entry('futures/cancel-batch-order', ['v2', 'private'], 'POST', {'cost': 20})
229
+ v2_private_post_futures_cancel_batch_stop_order = v2PrivatePostFuturesCancelBatchStopOrder = Entry('futures/cancel-batch-stop-order', ['v2', 'private'], 'POST', {'cost': 20})
230
+ v2_private_post_futures_cancel_order_by_client_id = v2PrivatePostFuturesCancelOrderByClientId = Entry('futures/cancel-order-by-client-id', ['v2', 'private'], 'POST', {'cost': 1})
231
+ v2_private_post_futures_cancel_stop_order_by_client_id = v2PrivatePostFuturesCancelStopOrderByClientId = Entry('futures/cancel-stop-order-by-client-id', ['v2', 'private'], 'POST', {'cost': 1})
232
+ v2_private_post_futures_close_position = v2PrivatePostFuturesClosePosition = Entry('futures/close-position', ['v2', 'private'], 'POST', {'cost': 20})
233
+ v2_private_post_futures_adjust_position_margin = v2PrivatePostFuturesAdjustPositionMargin = Entry('futures/adjust-position-margin', ['v2', 'private'], 'POST', {'cost': 20})
234
+ v2_private_post_futures_adjust_position_leverage = v2PrivatePostFuturesAdjustPositionLeverage = Entry('futures/adjust-position-leverage', ['v2', 'private'], 'POST', {'cost': 20})
235
+ v2_private_post_futures_set_position_stop_loss = v2PrivatePostFuturesSetPositionStopLoss = Entry('futures/set-position-stop-loss', ['v2', 'private'], 'POST', {'cost': 20})
236
+ v2_private_post_futures_set_position_take_profit = v2PrivatePostFuturesSetPositionTakeProfit = Entry('futures/set-position-take-profit', ['v2', 'private'], 'POST', {'cost': 20})
@@ -395,7 +395,7 @@ class ace(Exchange, ImplicitAPI):
395
395
  # "status": 200
396
396
  # }
397
397
  #
398
- orderBook = self.safe_value(response, 'attachment')
398
+ orderBook = self.safe_dict(response, 'attachment')
399
399
  return self.parse_order_book(orderBook, market['symbol'], None, 'bids', 'asks')
400
400
 
401
401
  def parse_ohlcv(self, ohlcv, market: Market = None) -> list:
@@ -602,7 +602,7 @@ class ace(Exchange, ImplicitAPI):
602
602
  # "status": 200
603
603
  # }
604
604
  #
605
- data = self.safe_value(response, 'attachment')
605
+ data = self.safe_dict(response, 'attachment')
606
606
  return self.parse_order(data, market)
607
607
 
608
608
  def cancel_order(self, id: str, symbol: Str = None, params={}):
@@ -664,7 +664,7 @@ class ace(Exchange, ImplicitAPI):
664
664
  # "status": 200
665
665
  # }
666
666
  #
667
- data = self.safe_value(response, 'attachment')
667
+ data = self.safe_dict(response, 'attachment')
668
668
  return self.parse_order(data, None)
669
669
 
670
670
  def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
@@ -847,7 +847,7 @@ class ace(Exchange, ImplicitAPI):
847
847
  # }
848
848
  #
849
849
  data = self.safe_value(response, 'attachment')
850
- trades = self.safe_value(data, 'trades', [])
850
+ trades = self.safe_list(data, 'trades', [])
851
851
  return self.parse_trades(trades, market, since, limit)
852
852
 
853
853
  def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
@@ -902,7 +902,7 @@ class ace(Exchange, ImplicitAPI):
902
902
  # "status": 200
903
903
  # }
904
904
  #
905
- trades = self.safe_value(response, 'attachment', [])
905
+ trades = self.safe_list(response, 'attachment', [])
906
906
  return self.parse_trades(trades, market, since, limit)
907
907
 
908
908
  def parse_balance(self, response) -> Balances:
@@ -1011,7 +1011,7 @@ class ascendex(Exchange, ImplicitAPI):
1011
1011
  # }
1012
1012
  # }
1013
1013
  #
1014
- data = self.safe_value(response, 'data', {})
1014
+ data = self.safe_dict(response, 'data', {})
1015
1015
  return self.parse_ticker(data, market)
1016
1016
 
1017
1017
  def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
@@ -1138,7 +1138,7 @@ class ascendex(Exchange, ImplicitAPI):
1138
1138
  # ]
1139
1139
  # }
1140
1140
  #
1141
- data = self.safe_value(response, 'data', [])
1141
+ data = self.safe_list(response, 'data', [])
1142
1142
  return self.parse_ohlcvs(data, market, timeframe, since, limit)
1143
1143
 
1144
1144
  def parse_trade(self, trade, market: Market = None) -> Trade:
@@ -1208,7 +1208,7 @@ class ascendex(Exchange, ImplicitAPI):
1208
1208
  # }
1209
1209
  #
1210
1210
  records = self.safe_value(response, 'data', [])
1211
- trades = self.safe_value(records, 'data', [])
1211
+ trades = self.safe_list(records, 'data', [])
1212
1212
  return self.parse_trades(trades, market, since, limit)
1213
1213
 
1214
1214
  def parse_order_status(self, status):
@@ -1691,7 +1691,7 @@ class ascendex(Exchange, ImplicitAPI):
1691
1691
  # }
1692
1692
  #
1693
1693
  data = self.safe_value(response, 'data', {})
1694
- info = self.safe_value(data, 'info', [])
1694
+ info = self.safe_list(data, 'info', [])
1695
1695
  return self.parse_orders(info, market)
1696
1696
 
1697
1697
  def fetch_order(self, id: str, symbol: Str = None, params={}):
@@ -1793,7 +1793,7 @@ class ascendex(Exchange, ImplicitAPI):
1793
1793
  # }
1794
1794
  # }
1795
1795
  #
1796
- data = self.safe_value(response, 'data', {})
1796
+ data = self.safe_dict(response, 'data', {})
1797
1797
  return self.parse_order(data, market)
1798
1798
 
1799
1799
  def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
@@ -2433,7 +2433,7 @@ class ascendex(Exchange, ImplicitAPI):
2433
2433
  # }
2434
2434
  #
2435
2435
  data = self.safe_value(response, 'data', {})
2436
- transactions = self.safe_value(data, 'data', [])
2436
+ transactions = self.safe_list(data, 'data', [])
2437
2437
  return self.parse_transactions(transactions, currency, since, limit)
2438
2438
 
2439
2439
  def parse_transaction_status(self, status):
@@ -2962,7 +2962,7 @@ class ascendex(Exchange, ImplicitAPI):
2962
2962
  """
2963
2963
  self.load_markets()
2964
2964
  response = self.v2PublicGetAssets(params)
2965
- data = self.safe_value(response, 'data')
2965
+ data = self.safe_list(response, 'data')
2966
2966
  return self.parse_deposit_withdraw_fees(data, codes, 'assetCode')
2967
2967
 
2968
2968
  def transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={}) -> TransferEntry:
@@ -3078,7 +3078,7 @@ class ascendex(Exchange, ImplicitAPI):
3078
3078
  # }
3079
3079
  #
3080
3080
  data = self.safe_value(response, 'data', {})
3081
- rows = self.safe_value(data, 'data', [])
3081
+ rows = self.safe_list(data, 'data', [])
3082
3082
  return self.parse_incomes(rows, market, since, limit)
3083
3083
 
3084
3084
  def parse_income(self, income, market: Market = None):
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.2.84'
7
+ __version__ = '4.2.86'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -395,7 +395,7 @@ class ace(Exchange, ImplicitAPI):
395
395
  # "status": 200
396
396
  # }
397
397
  #
398
- orderBook = self.safe_value(response, 'attachment')
398
+ orderBook = self.safe_dict(response, 'attachment')
399
399
  return self.parse_order_book(orderBook, market['symbol'], None, 'bids', 'asks')
400
400
 
401
401
  def parse_ohlcv(self, ohlcv, market: Market = None) -> list:
@@ -602,7 +602,7 @@ class ace(Exchange, ImplicitAPI):
602
602
  # "status": 200
603
603
  # }
604
604
  #
605
- data = self.safe_value(response, 'attachment')
605
+ data = self.safe_dict(response, 'attachment')
606
606
  return self.parse_order(data, market)
607
607
 
608
608
  async def cancel_order(self, id: str, symbol: Str = None, params={}):
@@ -664,7 +664,7 @@ class ace(Exchange, ImplicitAPI):
664
664
  # "status": 200
665
665
  # }
666
666
  #
667
- data = self.safe_value(response, 'attachment')
667
+ data = self.safe_dict(response, 'attachment')
668
668
  return self.parse_order(data, None)
669
669
 
670
670
  async def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
@@ -847,7 +847,7 @@ class ace(Exchange, ImplicitAPI):
847
847
  # }
848
848
  #
849
849
  data = self.safe_value(response, 'attachment')
850
- trades = self.safe_value(data, 'trades', [])
850
+ trades = self.safe_list(data, 'trades', [])
851
851
  return self.parse_trades(trades, market, since, limit)
852
852
 
853
853
  async def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
@@ -902,7 +902,7 @@ class ace(Exchange, ImplicitAPI):
902
902
  # "status": 200
903
903
  # }
904
904
  #
905
- trades = self.safe_value(response, 'attachment', [])
905
+ trades = self.safe_list(response, 'attachment', [])
906
906
  return self.parse_trades(trades, market, since, limit)
907
907
 
908
908
  def parse_balance(self, response) -> Balances:
@@ -1011,7 +1011,7 @@ class ascendex(Exchange, ImplicitAPI):
1011
1011
  # }
1012
1012
  # }
1013
1013
  #
1014
- data = self.safe_value(response, 'data', {})
1014
+ data = self.safe_dict(response, 'data', {})
1015
1015
  return self.parse_ticker(data, market)
1016
1016
 
1017
1017
  async def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
@@ -1138,7 +1138,7 @@ class ascendex(Exchange, ImplicitAPI):
1138
1138
  # ]
1139
1139
  # }
1140
1140
  #
1141
- data = self.safe_value(response, 'data', [])
1141
+ data = self.safe_list(response, 'data', [])
1142
1142
  return self.parse_ohlcvs(data, market, timeframe, since, limit)
1143
1143
 
1144
1144
  def parse_trade(self, trade, market: Market = None) -> Trade:
@@ -1208,7 +1208,7 @@ class ascendex(Exchange, ImplicitAPI):
1208
1208
  # }
1209
1209
  #
1210
1210
  records = self.safe_value(response, 'data', [])
1211
- trades = self.safe_value(records, 'data', [])
1211
+ trades = self.safe_list(records, 'data', [])
1212
1212
  return self.parse_trades(trades, market, since, limit)
1213
1213
 
1214
1214
  def parse_order_status(self, status):
@@ -1691,7 +1691,7 @@ class ascendex(Exchange, ImplicitAPI):
1691
1691
  # }
1692
1692
  #
1693
1693
  data = self.safe_value(response, 'data', {})
1694
- info = self.safe_value(data, 'info', [])
1694
+ info = self.safe_list(data, 'info', [])
1695
1695
  return self.parse_orders(info, market)
1696
1696
 
1697
1697
  async def fetch_order(self, id: str, symbol: Str = None, params={}):
@@ -1793,7 +1793,7 @@ class ascendex(Exchange, ImplicitAPI):
1793
1793
  # }
1794
1794
  # }
1795
1795
  #
1796
- data = self.safe_value(response, 'data', {})
1796
+ data = self.safe_dict(response, 'data', {})
1797
1797
  return self.parse_order(data, market)
1798
1798
 
1799
1799
  async def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
@@ -2433,7 +2433,7 @@ class ascendex(Exchange, ImplicitAPI):
2433
2433
  # }
2434
2434
  #
2435
2435
  data = self.safe_value(response, 'data', {})
2436
- transactions = self.safe_value(data, 'data', [])
2436
+ transactions = self.safe_list(data, 'data', [])
2437
2437
  return self.parse_transactions(transactions, currency, since, limit)
2438
2438
 
2439
2439
  def parse_transaction_status(self, status):
@@ -2962,7 +2962,7 @@ class ascendex(Exchange, ImplicitAPI):
2962
2962
  """
2963
2963
  await self.load_markets()
2964
2964
  response = await self.v2PublicGetAssets(params)
2965
- data = self.safe_value(response, 'data')
2965
+ data = self.safe_list(response, 'data')
2966
2966
  return self.parse_deposit_withdraw_fees(data, codes, 'assetCode')
2967
2967
 
2968
2968
  async def transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={}) -> TransferEntry:
@@ -3078,7 +3078,7 @@ class ascendex(Exchange, ImplicitAPI):
3078
3078
  # }
3079
3079
  #
3080
3080
  data = self.safe_value(response, 'data', {})
3081
- rows = self.safe_value(data, 'data', [])
3081
+ rows = self.safe_list(data, 'data', [])
3082
3082
  return self.parse_incomes(rows, market, since, limit)
3083
3083
 
3084
3084
  def parse_income(self, income, market: Market = None):