ccxt 3.0.85__tar.gz → 3.0.87__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 (364) hide show
  1. {ccxt-3.0.85/ccxt.egg-info → ccxt-3.0.87}/PKG-INFO +4 -4
  2. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/__init__.py +1 -1
  3. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/ace.py +2 -1
  4. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/alpaca.py +2 -1
  5. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/ascendex.py +2 -1
  6. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/__init__.py +1 -1
  7. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/ace.py +2 -1
  8. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/alpaca.py +2 -1
  9. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/ascendex.py +2 -1
  10. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/exchange.py +6 -6
  11. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bequant.py +2 -1
  12. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bigone.py +2 -1
  13. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/binance.py +4 -3
  14. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/binancecoinm.py +2 -1
  15. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/binanceus.py +2 -1
  16. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/binanceusdm.py +2 -1
  17. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bit2c.py +2 -1
  18. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitbank.py +2 -1
  19. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitbay.py +2 -1
  20. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitbns.py +2 -1
  21. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitcoincom.py +2 -1
  22. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitfinex.py +2 -1
  23. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitfinex2.py +2 -1
  24. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitflyer.py +2 -1
  25. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitforex.py +2 -1
  26. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitget.py +19 -3
  27. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bithumb.py +2 -1
  28. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitmart.py +2 -1
  29. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitmex.py +3 -2
  30. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitopro.py +2 -1
  31. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitpanda.py +2 -1
  32. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitrue.py +3 -2
  33. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitso.py +2 -1
  34. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitstamp.py +2 -1
  35. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitstamp1.py +2 -1
  36. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bittrex.py +2 -1
  37. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bitvavo.py +3 -2
  38. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bkex.py +2 -1
  39. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bl3p.py +2 -1
  40. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/blockchaincom.py +2 -1
  41. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/btcalpha.py +2 -1
  42. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/btcbox.py +4 -3
  43. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/btcex.py +2 -1
  44. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/btcmarkets.py +2 -1
  45. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/btctradeua.py +2 -1
  46. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/btcturk.py +2 -1
  47. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/bybit.py +2 -1
  48. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/cex.py +2 -1
  49. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinbase.py +2 -1
  50. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinbaseprime.py +2 -1
  51. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinbasepro.py +4 -3
  52. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coincheck.py +2 -1
  53. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinex.py +3 -2
  54. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinfalcon.py +2 -1
  55. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinmate.py +2 -1
  56. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinone.py +2 -1
  57. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinsph.py +3 -2
  58. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/coinspot.py +2 -1
  59. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/cryptocom.py +2 -1
  60. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/currencycom.py +2 -1
  61. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/delta.py +2 -1
  62. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/deribit.py +2 -1
  63. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/digifinex.py +4 -3
  64. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/exmo.py +2 -1
  65. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/fmfwio.py +2 -1
  66. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/gate.py +2 -1
  67. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/gateio.py +2 -1
  68. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/gemini.py +2 -1
  69. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/hitbtc.py +2 -1
  70. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/hitbtc3.py +2 -1
  71. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/hollaex.py +2 -1
  72. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/huobi.py +2 -1
  73. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/huobijp.py +2 -1
  74. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/huobipro.py +2 -1
  75. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/idex.py +3 -2
  76. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/independentreserve.py +2 -1
  77. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/indodax.py +2 -1
  78. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/kraken.py +2 -1
  79. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/krakenfutures.py +2 -1
  80. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/kucoin.py +3 -2
  81. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/kucoinfutures.py +147 -8
  82. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/kuna.py +2 -1
  83. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/latoken.py +2 -1
  84. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/lbank.py +2 -1
  85. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/lbank2.py +2 -1
  86. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/luno.py +2 -1
  87. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/lykke.py +2 -1
  88. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/mercado.py +2 -1
  89. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/mexc.py +4 -1
  90. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/mexc3.py +2 -1
  91. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/ndax.py +2 -1
  92. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/novadax.py +2 -1
  93. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/oceanex.py +2 -1
  94. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/okcoin.py +2 -1
  95. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/okex.py +2 -1
  96. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/okex5.py +2 -1
  97. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/okx.py +5 -1
  98. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/paymium.py +2 -1
  99. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/phemex.py +3 -1
  100. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/poloniex.py +3 -1
  101. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/poloniexfutures.py +2 -1
  102. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/probit.py +2 -1
  103. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/stex.py +3 -2
  104. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/tidex.py +2 -1
  105. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/timex.py +2 -1
  106. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/tokocrypto.py +3 -2
  107. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/upbit.py +2 -1
  108. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/wavesexchange.py +2 -1
  109. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/wazirx.py +2 -1
  110. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/whitebit.py +2 -1
  111. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/woo.py +2 -1
  112. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/xt.py +7 -2
  113. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/yobit.py +2 -1
  114. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/zaif.py +2 -1
  115. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/zonda.py +2 -1
  116. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/base/exchange.py +6 -74
  117. ccxt-3.0.87/ccxt/base/types.py +45 -0
  118. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bequant.py +2 -1
  119. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bigone.py +2 -1
  120. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/binance.py +4 -3
  121. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/binancecoinm.py +2 -1
  122. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/binanceus.py +2 -1
  123. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/binanceusdm.py +2 -1
  124. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bit2c.py +2 -1
  125. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitbank.py +2 -1
  126. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitbay.py +2 -1
  127. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitbns.py +2 -1
  128. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitcoincom.py +2 -1
  129. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitfinex.py +2 -1
  130. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitfinex2.py +2 -1
  131. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitflyer.py +2 -1
  132. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitforex.py +2 -1
  133. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitget.py +19 -3
  134. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bithumb.py +2 -1
  135. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitmart.py +2 -1
  136. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitmex.py +3 -2
  137. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitopro.py +2 -1
  138. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitpanda.py +2 -1
  139. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitrue.py +3 -2
  140. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitso.py +2 -1
  141. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitstamp.py +2 -1
  142. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitstamp1.py +2 -1
  143. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bittrex.py +2 -1
  144. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bitvavo.py +3 -2
  145. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bkex.py +2 -1
  146. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bl3p.py +2 -1
  147. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/blockchaincom.py +2 -1
  148. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/btcalpha.py +2 -1
  149. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/btcbox.py +4 -3
  150. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/btcex.py +2 -1
  151. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/btcmarkets.py +2 -1
  152. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/btctradeua.py +2 -1
  153. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/btcturk.py +2 -1
  154. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/bybit.py +2 -1
  155. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/cex.py +2 -1
  156. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinbase.py +2 -1
  157. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinbaseprime.py +2 -1
  158. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinbasepro.py +4 -3
  159. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coincheck.py +2 -1
  160. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinex.py +3 -2
  161. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinfalcon.py +2 -1
  162. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinmate.py +2 -1
  163. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinone.py +2 -1
  164. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinsph.py +3 -2
  165. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/coinspot.py +2 -1
  166. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/cryptocom.py +2 -1
  167. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/currencycom.py +2 -1
  168. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/delta.py +2 -1
  169. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/deribit.py +2 -1
  170. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/digifinex.py +4 -3
  171. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/exmo.py +2 -1
  172. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/fmfwio.py +2 -1
  173. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/gate.py +2 -1
  174. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/gateio.py +2 -1
  175. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/gemini.py +2 -1
  176. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/hitbtc.py +2 -1
  177. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/hitbtc3.py +2 -1
  178. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/hollaex.py +2 -1
  179. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/huobi.py +2 -1
  180. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/huobijp.py +2 -1
  181. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/huobipro.py +2 -1
  182. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/idex.py +3 -2
  183. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/independentreserve.py +2 -1
  184. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/indodax.py +2 -1
  185. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/kraken.py +2 -1
  186. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/krakenfutures.py +2 -1
  187. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/kucoin.py +3 -2
  188. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/kucoinfutures.py +147 -8
  189. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/kuna.py +2 -1
  190. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/latoken.py +2 -1
  191. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/lbank.py +2 -1
  192. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/lbank2.py +2 -1
  193. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/luno.py +2 -1
  194. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/lykke.py +2 -1
  195. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/mercado.py +2 -1
  196. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/mexc.py +4 -1
  197. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/mexc3.py +2 -1
  198. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/ndax.py +2 -1
  199. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/novadax.py +2 -1
  200. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/oceanex.py +2 -1
  201. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/okcoin.py +2 -1
  202. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/okex.py +2 -1
  203. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/okex5.py +2 -1
  204. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/okx.py +5 -1
  205. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/paymium.py +2 -1
  206. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/phemex.py +3 -1
  207. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/poloniex.py +3 -1
  208. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/poloniexfutures.py +2 -1
  209. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/__init__.py +1 -1
  210. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/probit.py +2 -1
  211. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/stex.py +3 -2
  212. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/tidex.py +2 -1
  213. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/timex.py +2 -1
  214. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/tokocrypto.py +3 -2
  215. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/upbit.py +2 -1
  216. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/wavesexchange.py +2 -1
  217. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/wazirx.py +2 -1
  218. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/whitebit.py +2 -1
  219. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/woo.py +2 -1
  220. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/xt.py +7 -2
  221. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/yobit.py +2 -1
  222. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/zaif.py +2 -1
  223. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/zonda.py +2 -1
  224. {ccxt-3.0.85 → ccxt-3.0.87/ccxt.egg-info}/PKG-INFO +4 -4
  225. {ccxt-3.0.85 → ccxt-3.0.87}/package.json +1 -1
  226. ccxt-3.0.85/ccxt/base/types.py +0 -21
  227. {ccxt-3.0.85 → ccxt-3.0.87}/LICENSE.txt +0 -0
  228. {ccxt-3.0.85 → ccxt-3.0.87}/MANIFEST.in +0 -0
  229. {ccxt-3.0.85 → ccxt-3.0.87}/README.rst +0 -0
  230. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/__init__.py +0 -0
  231. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/throttler.py +0 -0
  232. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/__init__.py +0 -0
  233. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  234. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/cache.py +0 -0
  235. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/client.py +0 -0
  236. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/fast_client.py +0 -0
  237. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/functions.py +0 -0
  238. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/future.py +0 -0
  239. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/order_book.py +0 -0
  240. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/base/ws/order_book_side.py +0 -0
  241. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/buda.py +0 -0
  242. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/flowbtc.py +0 -0
  243. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/itbit.py +0 -0
  244. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/ripio.py +0 -0
  245. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/async_support/zb.py +0 -0
  246. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/base/__init__.py +0 -0
  247. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/base/decimal_to_precision.py +0 -0
  248. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/base/errors.py +0 -0
  249. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/base/precise.py +0 -0
  250. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/buda.py +0 -0
  251. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/flowbtc.py +0 -0
  252. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/itbit.py +0 -0
  253. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/alpaca.py +0 -0
  254. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/ascendex.py +0 -0
  255. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bequant.py +0 -0
  256. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/binance.py +0 -0
  257. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/binancecoinm.py +0 -0
  258. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/binanceus.py +0 -0
  259. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/binanceusdm.py +0 -0
  260. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitcoincom.py +0 -0
  261. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitfinex.py +0 -0
  262. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitfinex2.py +0 -0
  263. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitget.py +0 -0
  264. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitmart.py +0 -0
  265. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitmex.py +0 -0
  266. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitopro.py +0 -0
  267. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitrue.py +0 -0
  268. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitstamp.py +0 -0
  269. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bittrex.py +0 -0
  270. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bitvavo.py +0 -0
  271. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/btcex.py +0 -0
  272. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/bybit.py +0 -0
  273. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/cex.py +0 -0
  274. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/coinbaseprime.py +0 -0
  275. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/coinbasepro.py +0 -0
  276. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/coinex.py +0 -0
  277. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/cryptocom.py +0 -0
  278. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/currencycom.py +0 -0
  279. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/deribit.py +0 -0
  280. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/exmo.py +0 -0
  281. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/gate.py +0 -0
  282. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/gateio.py +0 -0
  283. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/gemini.py +0 -0
  284. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/hitbtc.py +0 -0
  285. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/hollaex.py +0 -0
  286. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/huobi.py +0 -0
  287. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/huobijp.py +0 -0
  288. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/huobipro.py +0 -0
  289. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/idex.py +0 -0
  290. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/independentreserve.py +0 -0
  291. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/kraken.py +0 -0
  292. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/kucoin.py +0 -0
  293. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/kucoinfutures.py +0 -0
  294. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/luno.py +0 -0
  295. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/mexc.py +0 -0
  296. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/mexc3.py +0 -0
  297. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/ndax.py +0 -0
  298. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/okcoin.py +0 -0
  299. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/okex.py +0 -0
  300. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/okx.py +0 -0
  301. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/phemex.py +0 -0
  302. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/probit.py +0 -0
  303. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/ripio.py +0 -0
  304. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/upbit.py +0 -0
  305. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/wazirx.py +0 -0
  306. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/whitebit.py +0 -0
  307. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/woo.py +0 -0
  308. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/pro/zb.py +0 -0
  309. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/ripio.py +0 -0
  310. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/__init__.py +0 -0
  311. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  312. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  313. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  314. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/der.py +0 -0
  315. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  316. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  317. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  318. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  319. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  320. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/ecdsa/util.py +0 -0
  321. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/keccak/__init__.py +0 -0
  322. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/static_dependencies/keccak/keccak.py +0 -0
  323. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/__init__.py +0 -0
  324. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/__init__.py +0 -0
  325. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_account.py +0 -0
  326. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_balance.py +0 -0
  327. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_borrow_interest.py +0 -0
  328. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_borrow_rate.py +0 -0
  329. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_calculate_fee.py +0 -0
  330. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_crypto.py +0 -0
  331. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_currency.py +0 -0
  332. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_datetime.py +0 -0
  333. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_decimal_to_precision.py +0 -0
  334. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_deep_extend.py +0 -0
  335. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_deposit_withdrawal.py +0 -0
  336. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_exchange_datetime_functions.py +0 -0
  337. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_funding_rate_history.py +0 -0
  338. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_ledger_entry.py +0 -0
  339. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_ledger_item.py +0 -0
  340. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_leverage_tier.py +0 -0
  341. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_margin_modification.py +0 -0
  342. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_market.py +0 -0
  343. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_number.py +0 -0
  344. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_ohlcv.py +0 -0
  345. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_open_interest.py +0 -0
  346. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_order.py +0 -0
  347. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_order_book.py +0 -0
  348. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_position.py +0 -0
  349. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_shared_methods.py +0 -0
  350. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_status.py +0 -0
  351. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_throttle.py +0 -0
  352. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_ticker.py +0 -0
  353. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_trade.py +0 -0
  354. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_trading_fee.py +0 -0
  355. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/base/test_transaction.py +0 -0
  356. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/test_async.py +0 -0
  357. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/test/test_sync.py +0 -0
  358. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt/zb.py +0 -0
  359. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt.egg-info/SOURCES.txt +0 -0
  360. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt.egg-info/dependency_links.txt +0 -0
  361. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt.egg-info/requires.txt +0 -0
  362. {ccxt-3.0.85 → ccxt-3.0.87}/ccxt.egg-info/top_level.txt +0 -0
  363. {ccxt-3.0.85 → ccxt-3.0.87}/setup.cfg +0 -0
  364. {ccxt-3.0.85 → ccxt-3.0.87}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 3.0.85
3
+ Version: 3.0.87
4
4
  Summary: A JavaScript / Python / PHP cryptocurrency trading library with support for 130+ exchanges
5
5
  Home-page: https://ccxt.com
6
6
  Author: Igor Kroitor
@@ -231,13 +231,13 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
231
231
 
232
232
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
233
233
 
234
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@3.0.85/dist/ccxt.browser.js
235
- * unpkg: https://unpkg.com/ccxt@3.0.85/dist/ccxt.browser.js
234
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@3.0.87/dist/ccxt.browser.js
235
+ * unpkg: https://unpkg.com/ccxt@3.0.87/dist/ccxt.browser.js
236
236
 
237
237
  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.
238
238
 
239
239
  ```HTML
240
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@3.0.85/dist/ccxt.browser.js"></script>
240
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@3.0.87/dist/ccxt.browser.js"></script>
241
241
  ```
242
242
 
243
243
  Creates a global `ccxt` object:
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '3.0.85'
25
+ __version__ = '3.0.87'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.base.exchange import Exchange
7
+ from ccxt.abstract.ace import ImplicitAPI
7
8
  from ccxt.base.types import OrderSide
8
9
  from typing import Optional
9
10
  from typing import List
@@ -16,7 +17,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
16
17
  from ccxt.base.precise import Precise
17
18
 
18
19
 
19
- class ace(Exchange):
20
+ class ace(Exchange, ImplicitAPI):
20
21
 
21
22
  def describe(self):
22
23
  return self.deep_extend(super(ace, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.base.exchange import Exchange
7
+ from ccxt.abstract.alpaca import ImplicitAPI
7
8
  from ccxt.base.types import OrderSide
8
9
  from typing import Optional
9
10
  from ccxt.base.errors import ExchangeError
@@ -16,7 +17,7 @@ from ccxt.base.errors import NotSupported
16
17
  from ccxt.base.decimal_to_precision import TICK_SIZE
17
18
 
18
19
 
19
- class alpaca(Exchange):
20
+ class alpaca(Exchange, ImplicitAPI):
20
21
 
21
22
  def describe(self):
22
23
  return self.deep_extend(super(alpaca, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.base.exchange import Exchange
7
+ from ccxt.abstract.ascendex import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -20,7 +21,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
20
21
  from ccxt.base.precise import Precise
21
22
 
22
23
 
23
- class ascendex(Exchange):
24
+ class ascendex(Exchange, ImplicitAPI):
24
25
 
25
26
  def describe(self):
26
27
  return self.deep_extend(super(ascendex, self).describe(), {
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '3.0.85'
7
+ __version__ = '3.0.87'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.ace import ImplicitAPI
7
8
  from ccxt.base.types import OrderSide
8
9
  from typing import Optional
9
10
  from typing import List
@@ -16,7 +17,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
16
17
  from ccxt.base.precise import Precise
17
18
 
18
19
 
19
- class ace(Exchange):
20
+ class ace(Exchange, ImplicitAPI):
20
21
 
21
22
  def describe(self):
22
23
  return self.deep_extend(super(ace, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.alpaca import ImplicitAPI
7
8
  from ccxt.base.types import OrderSide
8
9
  from typing import Optional
9
10
  from ccxt.base.errors import ExchangeError
@@ -16,7 +17,7 @@ from ccxt.base.errors import NotSupported
16
17
  from ccxt.base.decimal_to_precision import TICK_SIZE
17
18
 
18
19
 
19
- class alpaca(Exchange):
20
+ class alpaca(Exchange, ImplicitAPI):
20
21
 
21
22
  def describe(self):
22
23
  return self.deep_extend(super(alpaca, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.ascendex import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -20,7 +21,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
20
21
  from ccxt.base.precise import Precise
21
22
 
22
23
 
23
- class ascendex(Exchange):
24
+ class ascendex(Exchange, ImplicitAPI):
24
25
 
25
26
  def describe(self):
26
27
  return self.deep_extend(super(ascendex, self).describe(), {
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '3.0.85'
5
+ __version__ = '3.0.87'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -1594,16 +1594,16 @@ class Exchange(BaseExchange):
1594
1594
  results.append(objects[i])
1595
1595
  return self.index_by(results, key) if indexed else results
1596
1596
 
1597
- async def fetch2(self, path, api: Any = 'public', method='GET', params={}, headers: Optional[Any] = None, body: Optional[Any] = None, config={}, context={}):
1597
+ async def fetch2(self, path, api: Any = 'public', method='GET', params={}, headers: Optional[Any] = None, body: Optional[Any] = None, config={}):
1598
1598
  if self.enableRateLimit:
1599
- cost = self.calculate_rate_limiter_cost(api, method, path, params, config, context)
1599
+ cost = self.calculate_rate_limiter_cost(api, method, path, params, config)
1600
1600
  await self.throttle(cost)
1601
1601
  self.lastRestRequestTimestamp = self.milliseconds()
1602
1602
  request = self.sign(path, api, method, params, headers, body)
1603
1603
  return await self.fetch(request['url'], request['method'], request['headers'], request['body'])
1604
1604
 
1605
- async def request(self, path, api: Any = 'public', method='GET', params={}, headers: Optional[Any] = None, body: Optional[Any] = None, config={}, context={}):
1606
- return await self.fetch2(path, api, method, params, headers, body, config, context)
1605
+ async def request(self, path, api: Any = 'public', method='GET', params={}, headers: Optional[Any] = None, body: Optional[Any] = None, config={}):
1606
+ return await self.fetch2(path, api, method, params, headers, body, config)
1607
1607
 
1608
1608
  async def load_accounts(self, reload=False, params={}):
1609
1609
  if reload:
@@ -1931,7 +1931,7 @@ class Exchange(BaseExchange):
1931
1931
  # raise NotSupported(self.id + ' handleErrors() not implemented yet')
1932
1932
  return None
1933
1933
 
1934
- def calculate_rate_limiter_cost(self, api, method, path, params, config={}, context={}):
1934
+ def calculate_rate_limiter_cost(self, api, method, path, params, config={}):
1935
1935
  return self.safe_value(config, 'cost', 1)
1936
1936
 
1937
1937
  async def fetch_ticker(self, symbol: str, params={}):
@@ -4,9 +4,10 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.hitbtc import hitbtc
7
+ from ccxt.abstract.bequant import ImplicitAPI
7
8
 
8
9
 
9
- class bequant(hitbtc):
10
+ class bequant(hitbtc, ImplicitAPI):
10
11
 
11
12
  def describe(self):
12
13
  return self.deep_extend(super(bequant, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bigone import ImplicitAPI
7
8
  from ccxt.base.types import OrderSide
8
9
  from typing import Optional
9
10
  from typing import List
@@ -19,7 +20,7 @@ from ccxt.base.errors import AuthenticationError
19
20
  from ccxt.base.decimal_to_precision import TICK_SIZE
20
21
 
21
22
 
22
- class bigone(Exchange):
23
+ class bigone(Exchange, ImplicitAPI):
23
24
 
24
25
  def describe(self):
25
26
  return self.deep_extend(super(bigone, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.binance import ImplicitAPI
7
8
  import asyncio
8
9
  import hashlib
9
10
  import json
@@ -36,7 +37,7 @@ from ccxt.base.decimal_to_precision import DECIMAL_PLACES
36
37
  from ccxt.base.precise import Precise
37
38
 
38
39
 
39
- class binance(Exchange):
40
+ class binance(Exchange, ImplicitAPI):
40
41
 
41
42
  def describe(self):
42
43
  return self.deep_extend(super(binance, self).describe(), {
@@ -7125,7 +7126,7 @@ class binance(Exchange):
7125
7126
  raise ExchangeError(self.id + ' ' + body)
7126
7127
  return None
7127
7128
 
7128
- def calculate_rate_limiter_cost(self, api, method, path, params, config={}, context={}):
7129
+ def calculate_rate_limiter_cost(self, api, method, path, params, config={}):
7129
7130
  if ('noCoin' in config) and not ('coin' in params):
7130
7131
  return config['noCoin']
7131
7132
  elif ('noSymbol' in config) and not ('symbol' in params):
@@ -7142,7 +7143,7 @@ class binance(Exchange):
7142
7143
  return self.safe_value(config, 'cost', 1)
7143
7144
 
7144
7145
  async def request(self, path, api='public', method='GET', params={}, headers=None, body=None, config={}, context={}):
7145
- response = await self.fetch2(path, api, method, params, headers, body, config, context)
7146
+ response = await self.fetch2(path, api, method, params, headers, body, config)
7146
7147
  # a workaround for {"code":-2015,"msg":"Invalid API-key, IP, or permissions for action."}
7147
7148
  if (api == 'private') or (api == 'wapi'):
7148
7149
  self.options['hasAlreadyAuthenticatedSuccessfully'] = True
@@ -4,9 +4,10 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.binance import binance
7
+ from ccxt.abstract.binancecoinm import ImplicitAPI
7
8
 
8
9
 
9
- class binancecoinm(binance):
10
+ class binancecoinm(binance, ImplicitAPI):
10
11
 
11
12
  def describe(self):
12
13
  return self.deep_extend(super(binancecoinm, self).describe(), {
@@ -4,9 +4,10 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.binance import binance
7
+ from ccxt.abstract.binanceus import ImplicitAPI
7
8
 
8
9
 
9
- class binanceus(binance):
10
+ class binanceus(binance, ImplicitAPI):
10
11
 
11
12
  def describe(self):
12
13
  return self.deep_extend(super(binanceus, self).describe(), {
@@ -4,10 +4,11 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.binance import binance
7
+ from ccxt.abstract.binanceusdm import ImplicitAPI
7
8
  from ccxt.base.errors import InvalidOrder
8
9
 
9
10
 
10
- class binanceusdm(binance):
11
+ class binanceusdm(binance, ImplicitAPI):
11
12
 
12
13
  def describe(self):
13
14
  return self.deep_extend(super(binanceusdm, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bit2c import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -18,7 +19,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
18
19
  from ccxt.base.precise import Precise
19
20
 
20
21
 
21
- class bit2c(Exchange):
22
+ class bit2c(Exchange, ImplicitAPI):
22
23
 
23
24
  def describe(self):
24
25
  return self.deep_extend(super(bit2c, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitbank import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -17,7 +18,7 @@ from ccxt.base.errors import AuthenticationError
17
18
  from ccxt.base.decimal_to_precision import TICK_SIZE
18
19
 
19
20
 
20
- class bitbank(Exchange):
21
+ class bitbank(Exchange, ImplicitAPI):
21
22
 
22
23
  def describe(self):
23
24
  return self.deep_extend(super(bitbank, self).describe(), {
@@ -4,9 +4,10 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.zonda import zonda
7
+ from ccxt.abstract.bitbay import ImplicitAPI
7
8
 
8
9
 
9
- class bitbay(zonda):
10
+ class bitbay(zonda, ImplicitAPI):
10
11
 
11
12
  def describe(self):
12
13
  return self.deep_extend(super(bitbay, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitbns import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -18,7 +19,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
18
19
  from ccxt.base.precise import Precise
19
20
 
20
21
 
21
- class bitbns(Exchange):
22
+ class bitbns(Exchange, ImplicitAPI):
22
23
 
23
24
  def describe(self):
24
25
  return self.deep_extend(super(bitbns, self).describe(), {
@@ -4,9 +4,10 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.fmfwio import fmfwio
7
+ from ccxt.abstract.bitcoincom import ImplicitAPI
7
8
 
8
9
 
9
- class bitcoincom(fmfwio):
10
+ class bitcoincom(fmfwio, ImplicitAPI):
10
11
 
11
12
  def describe(self):
12
13
  return self.deep_extend(super(bitcoincom, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitfinex import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -27,7 +28,7 @@ from ccxt.base.decimal_to_precision import SIGNIFICANT_DIGITS
27
28
  from ccxt.base.precise import Precise
28
29
 
29
30
 
30
- class bitfinex(Exchange):
31
+ class bitfinex(Exchange, ImplicitAPI):
31
32
 
32
33
  def describe(self):
33
34
  return self.deep_extend(super(bitfinex, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitfinex2 import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -29,7 +30,7 @@ from ccxt.base.decimal_to_precision import SIGNIFICANT_DIGITS
29
30
  from ccxt.base.precise import Precise
30
31
 
31
32
 
32
- class bitfinex2(Exchange):
33
+ class bitfinex2(Exchange, ImplicitAPI):
33
34
 
34
35
  def describe(self):
35
36
  return self.deep_extend(super(bitfinex2, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitflyer import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -14,7 +15,7 @@ from ccxt.base.errors import OrderNotFound
14
15
  from ccxt.base.decimal_to_precision import TICK_SIZE
15
16
 
16
17
 
17
- class bitflyer(Exchange):
18
+ class bitflyer(Exchange, ImplicitAPI):
18
19
 
19
20
  def describe(self):
20
21
  return self.deep_extend(super(bitflyer, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitforex import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -19,7 +20,7 @@ from ccxt.base.errors import AuthenticationError
19
20
  from ccxt.base.decimal_to_precision import TICK_SIZE
20
21
 
21
22
 
22
- class bitforex(Exchange):
23
+ class bitforex(Exchange, ImplicitAPI):
23
24
 
24
25
  def describe(self):
25
26
  return self.deep_extend(super(bitforex, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitget import ImplicitAPI
7
8
  import asyncio
8
9
  import hashlib
9
10
  import json
@@ -33,7 +34,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
33
34
  from ccxt.base.precise import Precise
34
35
 
35
36
 
36
- class bitget(Exchange):
37
+ class bitget(Exchange, ImplicitAPI):
37
38
 
38
39
  def describe(self):
39
40
  return self.deep_extend(super(bitget, self).describe(), {
@@ -136,6 +137,7 @@ class bitget(Exchange):
136
137
  'api': {
137
138
  'spot': 'https://api.{hostname}',
138
139
  'mix': 'https://api.{hostname}',
140
+ 'p2p': 'https://api.{hostname}',
139
141
  },
140
142
  'www': 'https://www.bitget.com',
141
143
  'doc': [
@@ -281,6 +283,14 @@ class bitget(Exchange):
281
283
  'trace/followerSetTpsl': 2,
282
284
  },
283
285
  },
286
+ 'p2p': {
287
+ 'get': {
288
+ 'merchant/merchantList': 1,
289
+ 'merchant/merchantInfo': 1,
290
+ 'merchant/advList': 1,
291
+ 'merchant/orderList': 1,
292
+ },
293
+ },
284
294
  },
285
295
  },
286
296
  'fees': {
@@ -3543,7 +3553,7 @@ class bitget(Exchange):
3543
3553
  rates.append({
3544
3554
  'info': entry,
3545
3555
  'symbol': symbolInner,
3546
- 'fundingRate': self.safe_string(entry, 'fundingRate'),
3556
+ 'fundingRate': self.safe_number(entry, 'fundingRate'),
3547
3557
  'timestamp': timestamp,
3548
3558
  'datetime': self.iso8601(timestamp),
3549
3559
  })
@@ -4129,7 +4139,13 @@ class bitget(Exchange):
4129
4139
  def sign(self, path, api=[], method='GET', params={}, headers=None, body=None):
4130
4140
  signed = api[0] == 'private'
4131
4141
  endpoint = api[1]
4132
- pathPart = '/api/spot/v1' if (endpoint == 'spot') else '/api/mix/v1'
4142
+ pathPart = ''
4143
+ if endpoint == 'spot':
4144
+ pathPart = '/api/spot/v1'
4145
+ elif endpoint == 'mix':
4146
+ pathPart = '/api/mix/v1'
4147
+ else:
4148
+ pathPart = '/api/p2p/v1'
4133
4149
  request = '/' + self.implode_params(path, params)
4134
4150
  payload = pathPart + request
4135
4151
  url = self.implode_hostname(self.urls['api'][endpoint]) + payload
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bithumb import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -22,7 +23,7 @@ from ccxt.base.decimal_to_precision import SIGNIFICANT_DIGITS
22
23
  from ccxt.base.precise import Precise
23
24
 
24
25
 
25
- class bithumb(Exchange):
26
+ class bithumb(Exchange, ImplicitAPI):
26
27
 
27
28
  def describe(self):
28
29
  return self.deep_extend(super(bithumb, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitmart import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -28,7 +29,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
28
29
  from ccxt.base.precise import Precise
29
30
 
30
31
 
31
- class bitmart(Exchange):
32
+ class bitmart(Exchange, ImplicitAPI):
32
33
 
33
34
  def describe(self):
34
35
  return self.deep_extend(super(bitmart, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitmex import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -23,7 +24,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
23
24
  from ccxt.base.precise import Precise
24
25
 
25
26
 
26
- class bitmex(Exchange):
27
+ class bitmex(Exchange, ImplicitAPI):
27
28
 
28
29
  def describe(self):
29
30
  return self.deep_extend(super(bitmex, self).describe(), {
@@ -2587,7 +2588,7 @@ class bitmex(Exchange):
2587
2588
  'info': response,
2588
2589
  }
2589
2590
 
2590
- def calculate_rate_limiter_cost(self, api, method, path, params, config={}, context={}):
2591
+ def calculate_rate_limiter_cost(self, api, method, path, params, config={}):
2591
2592
  isAuthenticated = self.check_required_credentials(False)
2592
2593
  cost = self.safe_value(config, 'cost', 1)
2593
2594
  if cost != 1: # trading endpoints
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitopro import ImplicitAPI
7
8
  import hashlib
8
9
  import math
9
10
  from ccxt.base.types import OrderSide
@@ -19,7 +20,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
19
20
  from ccxt.base.precise import Precise
20
21
 
21
22
 
22
- class bitopro(Exchange):
23
+ class bitopro(Exchange, ImplicitAPI):
23
24
 
24
25
  def describe(self):
25
26
  return self.deep_extend(super(bitopro, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitpanda import ImplicitAPI
7
8
  from ccxt.base.types import OrderSide
8
9
  from typing import Optional
9
10
  from typing import List
@@ -22,7 +23,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
22
23
  from ccxt.base.precise import Precise
23
24
 
24
25
 
25
- class bitpanda(Exchange):
26
+ class bitpanda(Exchange, ImplicitAPI):
26
27
 
27
28
  def describe(self):
28
29
  return self.deep_extend(super(bitpanda, self).describe(), {
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitrue import ImplicitAPI
7
8
  import hashlib
8
9
  import json
9
10
  from ccxt.base.types import OrderSide
@@ -30,7 +31,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
30
31
  from ccxt.base.precise import Precise
31
32
 
32
33
 
33
- class bitrue(Exchange):
34
+ class bitrue(Exchange, ImplicitAPI):
34
35
 
35
36
  def describe(self):
36
37
  return self.deep_extend(super(bitrue, self).describe(), {
@@ -1910,7 +1911,7 @@ class bitrue(Exchange):
1910
1911
  raise ExchangeError(self.id + ' ' + body)
1911
1912
  return None
1912
1913
 
1913
- def calculate_rate_limiter_cost(self, api, method, path, params, config={}, context={}):
1914
+ def calculate_rate_limiter_cost(self, api, method, path, params, config={}):
1914
1915
  if ('noSymbol' in config) and not ('symbol' in params):
1915
1916
  return config['noSymbol']
1916
1917
  elif ('byLimit' in config) and ('limit' in params):
@@ -4,6 +4,7 @@
4
4
  # https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
5
 
6
6
  from ccxt.async_support.base.exchange import Exchange
7
+ from ccxt.abstract.bitso import ImplicitAPI
7
8
  import hashlib
8
9
  from ccxt.base.types import OrderSide
9
10
  from typing import Optional
@@ -18,7 +19,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
18
19
  from ccxt.base.precise import Precise
19
20
 
20
21
 
21
- class bitso(Exchange):
22
+ class bitso(Exchange, ImplicitAPI):
22
23
 
23
24
  def describe(self):
24
25
  return self.deep_extend(super(bitso, self).describe(), {