ccxt 4.3.17__tar.gz → 4.3.19__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 (545) hide show
  1. {ccxt-4.3.17/ccxt.egg-info → ccxt-4.3.19}/PKG-INFO +8 -6
  2. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/__init__.py +3 -1
  3. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bybit.py +1 -0
  4. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/okx.py +1 -0
  5. ccxt-4.3.19/ccxt/abstract/woofipro.py +119 -0
  6. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/ace.py +1 -1
  7. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/ascendex.py +7 -8
  8. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/__init__.py +3 -1
  9. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/ace.py +1 -1
  10. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/ascendex.py +7 -8
  11. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/exchange.py +23 -2
  12. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bigone.py +4 -4
  13. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/binance.py +34 -17
  14. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bingx.py +4 -4
  15. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bit2c.py +1 -1
  16. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitbank.py +1 -1
  17. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitbns.py +1 -1
  18. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitfinex.py +28 -4
  19. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitfinex2.py +62 -54
  20. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitflyer.py +1 -1
  21. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitget.py +8 -11
  22. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bithumb.py +1 -1
  23. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitmart.py +8 -8
  24. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitmex.py +2 -2
  25. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitopro.py +1 -1
  26. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitrue.py +3 -3
  27. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitso.py +1 -1
  28. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitstamp.py +3 -5
  29. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitteam.py +1 -1
  30. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitvavo.py +1 -1
  31. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bl3p.py +1 -1
  32. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/blockchaincom.py +1 -1
  33. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/blofin.py +3 -3
  34. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/btcalpha.py +1 -1
  35. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/btcbox.py +1 -1
  36. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/btcmarkets.py +1 -1
  37. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/btcturk.py +1 -1
  38. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bybit.py +9 -8
  39. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/cex.py +1 -1
  40. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinbase.py +2 -2
  41. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinbasepro.py +1 -1
  42. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coincheck.py +1 -1
  43. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinex.py +320 -520
  44. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinlist.py +6 -7
  45. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinmate.py +1 -1
  46. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinmetro.py +1 -1
  47. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinone.py +1 -1
  48. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinsph.py +1 -1
  49. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinspot.py +1 -1
  50. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/cryptocom.py +1 -1
  51. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/currencycom.py +2 -2
  52. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/delta.py +4 -4
  53. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/deribit.py +8 -8
  54. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/digifinex.py +5 -5
  55. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/exmo.py +1 -1
  56. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/gate.py +5 -5
  57. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/gemini.py +1 -1
  58. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/hitbtc.py +3 -3
  59. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/hollaex.py +4 -4
  60. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/htx.py +4 -4
  61. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/huobijp.py +1 -1
  62. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/idex.py +1 -1
  63. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/independentreserve.py +1 -1
  64. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/indodax.py +2 -2
  65. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/kraken.py +2 -2
  66. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/krakenfutures.py +3 -3
  67. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/kucoin.py +3 -3
  68. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/kucoinfutures.py +3 -3
  69. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/kuna.py +1 -1
  70. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/latoken.py +6 -6
  71. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/lbank.py +1 -1
  72. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/luno.py +1 -1
  73. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/lykke.py +1 -1
  74. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/mercado.py +1 -1
  75. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/mexc.py +7 -7
  76. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/ndax.py +1 -1
  77. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/novadax.py +3 -4
  78. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/okcoin.py +3 -3
  79. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/okx.py +27 -10
  80. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/onetrading.py +1 -1
  81. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/paymium.py +3 -3
  82. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/phemex.py +5 -5
  83. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/poloniex.py +3 -4
  84. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/poloniexfutures.py +1 -1
  85. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/probit.py +1 -1
  86. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/timex.py +1 -1
  87. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/tokocrypto.py +1 -1
  88. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/upbit.py +1 -1
  89. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/wavesexchange.py +3 -3
  90. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/wazirx.py +1 -1
  91. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/whitebit.py +2 -2
  92. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/woo.py +25 -10
  93. ccxt-4.3.19/ccxt/async_support/woofipro.py +2524 -0
  94. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/yobit.py +1 -1
  95. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/zaif.py +1 -1
  96. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/zonda.py +3 -3
  97. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/base/exchange.py +63 -17
  98. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/base/types.py +20 -0
  99. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bigone.py +4 -4
  100. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/binance.py +34 -17
  101. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bingx.py +4 -4
  102. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bit2c.py +1 -1
  103. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitbank.py +1 -1
  104. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitbns.py +1 -1
  105. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitfinex.py +28 -4
  106. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitfinex2.py +62 -54
  107. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitflyer.py +1 -1
  108. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitget.py +8 -11
  109. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bithumb.py +1 -1
  110. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitmart.py +8 -8
  111. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitmex.py +2 -2
  112. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitopro.py +1 -1
  113. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitrue.py +3 -3
  114. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitso.py +1 -1
  115. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitstamp.py +3 -5
  116. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitteam.py +1 -1
  117. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitvavo.py +1 -1
  118. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bl3p.py +1 -1
  119. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/blockchaincom.py +1 -1
  120. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/blofin.py +3 -3
  121. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/btcalpha.py +1 -1
  122. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/btcbox.py +1 -1
  123. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/btcmarkets.py +1 -1
  124. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/btcturk.py +1 -1
  125. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bybit.py +9 -8
  126. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/cex.py +1 -1
  127. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinbase.py +2 -2
  128. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinbasepro.py +1 -1
  129. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coincheck.py +1 -1
  130. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinex.py +320 -520
  131. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinlist.py +6 -7
  132. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinmate.py +1 -1
  133. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinmetro.py +1 -1
  134. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinone.py +1 -1
  135. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinsph.py +1 -1
  136. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinspot.py +1 -1
  137. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/cryptocom.py +1 -1
  138. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/currencycom.py +2 -2
  139. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/delta.py +4 -4
  140. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/deribit.py +8 -8
  141. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/digifinex.py +5 -5
  142. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/exmo.py +1 -1
  143. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/gate.py +5 -5
  144. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/gemini.py +1 -1
  145. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/hitbtc.py +3 -3
  146. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/hollaex.py +4 -4
  147. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/htx.py +4 -4
  148. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/huobijp.py +1 -1
  149. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/idex.py +1 -1
  150. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/independentreserve.py +1 -1
  151. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/indodax.py +2 -2
  152. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/kraken.py +2 -2
  153. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/krakenfutures.py +3 -3
  154. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/kucoin.py +3 -3
  155. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/kucoinfutures.py +3 -3
  156. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/kuna.py +1 -1
  157. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/latoken.py +6 -6
  158. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/lbank.py +1 -1
  159. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/luno.py +1 -1
  160. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/lykke.py +1 -1
  161. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/mercado.py +1 -1
  162. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/mexc.py +7 -7
  163. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/ndax.py +1 -1
  164. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/novadax.py +3 -4
  165. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/okcoin.py +3 -3
  166. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/okx.py +27 -10
  167. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/onetrading.py +1 -1
  168. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/paymium.py +3 -3
  169. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/phemex.py +5 -5
  170. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/poloniex.py +3 -4
  171. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/poloniexfutures.py +1 -1
  172. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/__init__.py +3 -1
  173. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitget.py +127 -190
  174. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitvavo.py +1 -1
  175. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bybit.py +4 -3
  176. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/coinbaseinternational.py +11 -4
  177. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/okx.py +79 -1
  178. ccxt-4.3.19/ccxt/pro/woofipro.py +1183 -0
  179. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/probit.py +1 -1
  180. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/test_async.py +31 -1
  181. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/test_sync.py +31 -1
  182. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/timex.py +1 -1
  183. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/tokocrypto.py +1 -1
  184. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/upbit.py +1 -1
  185. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/wavesexchange.py +3 -3
  186. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/wazirx.py +1 -1
  187. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/whitebit.py +2 -2
  188. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/woo.py +25 -10
  189. ccxt-4.3.19/ccxt/woofipro.py +2524 -0
  190. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/yobit.py +1 -1
  191. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/zaif.py +1 -1
  192. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/zonda.py +3 -3
  193. {ccxt-4.3.17 → ccxt-4.3.19/ccxt.egg-info}/PKG-INFO +8 -6
  194. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt.egg-info/SOURCES.txt +4 -0
  195. {ccxt-4.3.17 → ccxt-4.3.19}/package.json +1 -1
  196. {ccxt-4.3.17 → ccxt-4.3.19}/LICENSE.txt +0 -0
  197. {ccxt-4.3.17 → ccxt-4.3.19}/MANIFEST.in +0 -0
  198. {ccxt-4.3.17 → ccxt-4.3.19}/README.rst +0 -0
  199. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/__init__.py +0 -0
  200. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/ace.py +0 -0
  201. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/alpaca.py +0 -0
  202. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/ascendex.py +0 -0
  203. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bequant.py +0 -0
  204. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bigone.py +0 -0
  205. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/binance.py +0 -0
  206. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/binancecoinm.py +0 -0
  207. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/binanceus.py +0 -0
  208. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/binanceusdm.py +0 -0
  209. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bingx.py +0 -0
  210. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bit2c.py +0 -0
  211. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitbank.py +0 -0
  212. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitbay.py +0 -0
  213. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitbns.py +0 -0
  214. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitcoincom.py +0 -0
  215. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitfinex.py +0 -0
  216. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitfinex2.py +0 -0
  217. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitflyer.py +0 -0
  218. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitget.py +0 -0
  219. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bithumb.py +0 -0
  220. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitmart.py +0 -0
  221. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitmex.py +0 -0
  222. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitopro.py +0 -0
  223. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitpanda.py +0 -0
  224. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitrue.py +0 -0
  225. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitso.py +0 -0
  226. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitstamp.py +0 -0
  227. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitteam.py +0 -0
  228. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bitvavo.py +0 -0
  229. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/bl3p.py +0 -0
  230. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/blockchaincom.py +0 -0
  231. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/blofin.py +0 -0
  232. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/btcalpha.py +0 -0
  233. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/btcbox.py +0 -0
  234. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/btcmarkets.py +0 -0
  235. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/btcturk.py +0 -0
  236. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/cex.py +0 -0
  237. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinbase.py +0 -0
  238. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinbaseinternational.py +0 -0
  239. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinbasepro.py +0 -0
  240. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coincheck.py +0 -0
  241. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinex.py +0 -0
  242. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinlist.py +0 -0
  243. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinmate.py +0 -0
  244. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinmetro.py +0 -0
  245. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinone.py +0 -0
  246. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinsph.py +0 -0
  247. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/coinspot.py +0 -0
  248. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/cryptocom.py +0 -0
  249. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/currencycom.py +0 -0
  250. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/delta.py +0 -0
  251. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/deribit.py +0 -0
  252. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/digifinex.py +0 -0
  253. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/exmo.py +0 -0
  254. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/fmfwio.py +0 -0
  255. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/gate.py +0 -0
  256. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/gateio.py +0 -0
  257. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/gemini.py +0 -0
  258. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/hitbtc.py +0 -0
  259. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/hitbtc3.py +0 -0
  260. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/hollaex.py +0 -0
  261. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/htx.py +0 -0
  262. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/huobi.py +0 -0
  263. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/huobijp.py +0 -0
  264. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/hyperliquid.py +0 -0
  265. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/idex.py +0 -0
  266. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/independentreserve.py +0 -0
  267. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/indodax.py +0 -0
  268. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/kraken.py +0 -0
  269. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/krakenfutures.py +0 -0
  270. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/kucoin.py +0 -0
  271. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/kucoinfutures.py +0 -0
  272. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/kuna.py +0 -0
  273. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/latoken.py +0 -0
  274. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/lbank.py +0 -0
  275. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/luno.py +0 -0
  276. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/lykke.py +0 -0
  277. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/mercado.py +0 -0
  278. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/mexc.py +0 -0
  279. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/ndax.py +0 -0
  280. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/novadax.py +0 -0
  281. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/oceanex.py +0 -0
  282. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/okcoin.py +0 -0
  283. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/onetrading.py +0 -0
  284. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/p2b.py +0 -0
  285. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/paymium.py +0 -0
  286. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/phemex.py +0 -0
  287. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/poloniex.py +0 -0
  288. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/poloniexfutures.py +0 -0
  289. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/probit.py +0 -0
  290. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/timex.py +0 -0
  291. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/tokocrypto.py +0 -0
  292. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/tradeogre.py +0 -0
  293. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/upbit.py +0 -0
  294. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/wavesexchange.py +0 -0
  295. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/wazirx.py +0 -0
  296. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/whitebit.py +0 -0
  297. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/woo.py +0 -0
  298. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/yobit.py +0 -0
  299. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/zaif.py +0 -0
  300. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/abstract/zonda.py +0 -0
  301. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/alpaca.py +0 -0
  302. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/alpaca.py +0 -0
  303. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/__init__.py +0 -0
  304. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/throttler.py +0 -0
  305. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/__init__.py +0 -0
  306. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  307. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/cache.py +0 -0
  308. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/client.py +0 -0
  309. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/fast_client.py +0 -0
  310. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/functions.py +0 -0
  311. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/future.py +0 -0
  312. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/order_book.py +0 -0
  313. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/base/ws/order_book_side.py +0 -0
  314. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bequant.py +0 -0
  315. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/binancecoinm.py +0 -0
  316. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/binanceus.py +0 -0
  317. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/binanceusdm.py +0 -0
  318. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitbay.py +0 -0
  319. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitcoincom.py +0 -0
  320. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/bitpanda.py +0 -0
  321. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/coinbaseinternational.py +0 -0
  322. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/fmfwio.py +0 -0
  323. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/gateio.py +0 -0
  324. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/hitbtc3.py +0 -0
  325. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/huobi.py +0 -0
  326. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/hyperliquid.py +0 -0
  327. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/oceanex.py +0 -0
  328. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/p2b.py +0 -0
  329. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/async_support/tradeogre.py +0 -0
  330. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/base/__init__.py +0 -0
  331. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/base/decimal_to_precision.py +0 -0
  332. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/base/errors.py +0 -0
  333. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/base/precise.py +0 -0
  334. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bequant.py +0 -0
  335. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/binancecoinm.py +0 -0
  336. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/binanceus.py +0 -0
  337. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/binanceusdm.py +0 -0
  338. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitbay.py +0 -0
  339. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitcoincom.py +0 -0
  340. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/bitpanda.py +0 -0
  341. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/coinbaseinternational.py +0 -0
  342. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/fmfwio.py +0 -0
  343. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/gateio.py +0 -0
  344. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/hitbtc3.py +0 -0
  345. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/huobi.py +0 -0
  346. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/hyperliquid.py +0 -0
  347. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/oceanex.py +0 -0
  348. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/p2b.py +0 -0
  349. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/alpaca.py +0 -0
  350. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/ascendex.py +0 -0
  351. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bequant.py +0 -0
  352. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/binance.py +0 -0
  353. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/binancecoinm.py +0 -0
  354. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/binanceus.py +0 -0
  355. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/binanceusdm.py +0 -0
  356. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bingx.py +0 -0
  357. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitcoincom.py +0 -0
  358. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitfinex.py +0 -0
  359. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitfinex2.py +0 -0
  360. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bithumb.py +0 -0
  361. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitmart.py +0 -0
  362. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitmex.py +0 -0
  363. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitopro.py +0 -0
  364. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitpanda.py +0 -0
  365. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitrue.py +0 -0
  366. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/bitstamp.py +0 -0
  367. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/blockchaincom.py +0 -0
  368. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/cex.py +0 -0
  369. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/coinbase.py +0 -0
  370. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/coinbasepro.py +0 -0
  371. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/coincheck.py +0 -0
  372. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/coinex.py +0 -0
  373. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/coinone.py +0 -0
  374. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/cryptocom.py +0 -0
  375. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/currencycom.py +0 -0
  376. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/deribit.py +0 -0
  377. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/exmo.py +0 -0
  378. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/gate.py +0 -0
  379. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/gateio.py +0 -0
  380. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/gemini.py +0 -0
  381. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/hitbtc.py +0 -0
  382. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/hollaex.py +0 -0
  383. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/htx.py +0 -0
  384. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/huobi.py +0 -0
  385. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/huobijp.py +0 -0
  386. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/hyperliquid.py +0 -0
  387. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/idex.py +0 -0
  388. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/independentreserve.py +0 -0
  389. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/kraken.py +0 -0
  390. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/krakenfutures.py +0 -0
  391. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/kucoin.py +0 -0
  392. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/kucoinfutures.py +0 -0
  393. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/lbank.py +0 -0
  394. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/luno.py +0 -0
  395. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/mexc.py +0 -0
  396. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/ndax.py +0 -0
  397. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/okcoin.py +0 -0
  398. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/onetrading.py +0 -0
  399. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/p2b.py +0 -0
  400. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/phemex.py +0 -0
  401. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/poloniex.py +0 -0
  402. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/poloniexfutures.py +0 -0
  403. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/probit.py +0 -0
  404. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/upbit.py +0 -0
  405. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/wazirx.py +0 -0
  406. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/whitebit.py +0 -0
  407. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/pro/woo.py +0 -0
  408. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/__init__.py +0 -0
  409. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  410. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  411. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  412. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/der.py +0 -0
  413. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  414. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  415. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  416. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  417. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  418. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ecdsa/util.py +0 -0
  419. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
  420. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
  421. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
  422. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
  423. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
  424. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
  425. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
  426. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
  427. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
  428. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
  429. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
  430. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  431. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
  432. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
  433. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
  434. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
  435. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
  436. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
  437. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
  438. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
  439. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
  440. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
  441. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
  442. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
  443. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  444. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
  445. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
  446. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
  447. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  448. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
  449. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
  450. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
  451. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
  452. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
  453. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
  454. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
  455. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
  456. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
  457. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  458. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
  459. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
  460. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
  461. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
  462. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
  463. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
  464. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
  465. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
  466. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
  467. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
  468. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
  469. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
  470. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
  471. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
  472. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
  473. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
  474. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
  475. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  476. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
  477. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
  478. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
  479. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
  480. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
  481. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/keccak/__init__.py +0 -0
  482. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/keccak/keccak.py +0 -0
  483. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
  484. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
  485. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/msgpack/ext.py +0 -0
  486. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
  487. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
  488. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
  489. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
  490. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
  491. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
  492. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
  493. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/__init__.py +0 -0
  494. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
  495. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/_version.py +0 -0
  496. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
  497. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
  498. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
  499. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
  500. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
  501. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
  502. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
  503. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/recipes.py +0 -0
  504. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/static_dependencies/toolz/utils.py +0 -0
  505. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/__init__.py +0 -0
  506. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/__init__.py +0 -0
  507. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_account.py +0 -0
  508. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_balance.py +0 -0
  509. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_borrow_interest.py +0 -0
  510. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_borrow_rate.py +0 -0
  511. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_calculate_fee.py +0 -0
  512. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_crypto.py +0 -0
  513. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_currency.py +0 -0
  514. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_datetime.py +0 -0
  515. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_decimal_to_precision.py +0 -0
  516. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_deep_extend.py +0 -0
  517. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_deposit_withdrawal.py +0 -0
  518. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_exchange_datetime_functions.py +0 -0
  519. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_funding_rate_history.py +0 -0
  520. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_last_price.py +0 -0
  521. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_ledger_entry.py +0 -0
  522. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_ledger_item.py +0 -0
  523. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_leverage_tier.py +0 -0
  524. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_margin_mode.py +0 -0
  525. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_margin_modification.py +0 -0
  526. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_market.py +0 -0
  527. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_number.py +0 -0
  528. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_ohlcv.py +0 -0
  529. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_open_interest.py +0 -0
  530. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_order.py +0 -0
  531. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_order_book.py +0 -0
  532. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_position.py +0 -0
  533. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_shared_methods.py +0 -0
  534. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_status.py +0 -0
  535. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_throttle.py +0 -0
  536. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_ticker.py +0 -0
  537. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_trade.py +0 -0
  538. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_trading_fee.py +0 -0
  539. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/test/base/test_transaction.py +0 -0
  540. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt/tradeogre.py +0 -0
  541. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt.egg-info/dependency_links.txt +0 -0
  542. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt.egg-info/requires.txt +0 -0
  543. {ccxt-4.3.17 → ccxt-4.3.19}/ccxt.egg-info/top_level.txt +0 -0
  544. {ccxt-4.3.17 → ccxt-4.3.19}/setup.cfg +0 -0
  545. {ccxt-4.3.17 → ccxt-4.3.19}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.3.17
3
+ Version: 4.3.19
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
@@ -13,7 +13,7 @@ Project-URL: Twitter, https://twitter.com/ccxt_official
13
13
  Project-URL: Funding, https://opencollective.com/ccxt
14
14
  Description: # CCXT – CryptoCurrency eXchange Trading Library
15
15
 
16
- [![Build Status](https://travis-ci.com/ccxt/ccxt.svg?branch=master)](https://travis-ci.com/ccxt/ccxt) [![npm](https://img.shields.io/npm/v/ccxt.svg)](https://npmjs.com/package/ccxt) [![PyPI](https://img.shields.io/pypi/v/ccxt.svg)](https://pypi.python.org/pypi/ccxt) [![NPM Downloads](https://img.shields.io/npm/dy/ccxt.svg)](https://www.npmjs.com/package/ccxt) [![Discord](https://img.shields.io/discord/690203284119617602?logo=discord&logoColor=white)](https://discord.gg/ccxt) [![Supported Exchanges](https://img.shields.io/badge/exchanges-103-blue.svg)](https://github.com/ccxt/ccxt/wiki/Exchange-Markets) [![Twitter Follow](https://img.shields.io/twitter/follow/ccxt_official.svg?style=social&label=CCXT)](https://twitter.com/ccxt_official)
16
+ [![Build Status](https://travis-ci.com/ccxt/ccxt.svg?branch=master)](https://travis-ci.com/ccxt/ccxt) [![npm](https://img.shields.io/npm/v/ccxt.svg)](https://npmjs.com/package/ccxt) [![PyPI](https://img.shields.io/pypi/v/ccxt.svg)](https://pypi.python.org/pypi/ccxt) [![NPM Downloads](https://img.shields.io/npm/dy/ccxt.svg)](https://www.npmjs.com/package/ccxt) [![Discord](https://img.shields.io/discord/690203284119617602?logo=discord&logoColor=white)](https://discord.gg/ccxt) [![Supported Exchanges](https://img.shields.io/badge/exchanges-104-blue.svg)](https://github.com/ccxt/ccxt/wiki/Exchange-Markets) [![Twitter Follow](https://img.shields.io/twitter/follow/ccxt_official.svg?style=social&label=CCXT)](https://twitter.com/ccxt_official)
17
17
 
18
18
  A JavaScript / Python / PHP / C# library for cryptocurrency trading and e-commerce with support for many bitcoin/ether/altcoin exchange markets and merchant APIs.
19
19
 
@@ -65,10 +65,11 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
65
65
  | [![mexc](https://user-images.githubusercontent.com/1294454/137283979-8b2a818d-8633-461b-bfca-de89e8c446b2.jpg)](https://m.mexc.com/auth/signup?inviteCode=1FQ1G) | mexc | [MEXC Global](https://m.mexc.com/auth/signup?inviteCode=1FQ1G) | [![API Version 3](https://img.shields.io/badge/3-lightgray)](https://mexcdevelop.github.io/apidocs/) | [![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) | |
66
66
  | [![okx](https://user-images.githubusercontent.com/1294454/152485636-38b19e4a-bece-4dec-979a-5982859ffc04.jpg)](https://www.okx.com/join/CCXT2023) | okx | [OKX](https://www.okx.com/join/CCXT2023) | [![API Version 5](https://img.shields.io/badge/5-lightgray)](https://www.okx.com/docs-v5/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 OKX using CCXT's referral link for a 20% discount!](https://img.shields.io/static/v1?label=Fee&message=%2d20%25&color=orange)](https://www.okx.com/join/CCXT2023) |
67
67
  | [![woo](https://user-images.githubusercontent.com/1294454/150730761-1a00e5e0-d28c-480f-9e65-089ce3e6ef3b.jpg)](https://x.woo.org/register?ref=YWOWC96B) | woo | [WOO X](https://x.woo.org/register?ref=YWOWC96B) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://docs.woo.org/) | [![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 WOO X using CCXT's referral link for a 35% discount!](https://img.shields.io/static/v1?label=Fee&message=%2d35%25&color=orange)](https://x.woo.org/register?ref=YWOWC96B) |
68
+ | [![woofipro](https://github.com/ccxt/ccxt/assets/43336371/b1e7b348-a0fc-4605-8b7f-91176958fd69)](https://dex.woo.org/en/trade?ref=CCXT) | woofipro | [WOOFI PRO](https://dex.woo.org/en/trade?ref=CCXT) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://orderly.network/docs/build-on-evm/building-on-evm) | [![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 WOOFI PRO using CCXT's referral link for a 5% discount!](https://img.shields.io/static/v1?label=Fee&message=%2d5%25&color=orange)](https://dex.woo.org/en/trade?ref=CCXT) |
68
69
 
69
70
  ## Supported Cryptocurrency Exchanges
70
71
 
71
- The CCXT library currently supports the following 97 cryptocurrency exchange markets and trading APIs:
72
+ The CCXT library currently supports the following 98 cryptocurrency exchange markets and trading APIs:
72
73
 
73
74
  | logo | id | name | ver | certified | pro |
74
75
  |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------|-------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------:|-----------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------|
@@ -166,6 +167,7 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
166
167
  | [![wazirx](https://user-images.githubusercontent.com/1294454/148647666-c109c20b-f8ac-472f-91c3-5f658cb90f49.jpeg)](https://wazirx.com/invite/k7rrnks5) | wazirx | [WazirX](https://wazirx.com/invite/k7rrnks5) | [![API Version 2](https://img.shields.io/badge/2-lightgray)](https://docs.wazirx.com/#public-rest-api-for-wazirx) | | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
167
168
  | [![whitebit](https://user-images.githubusercontent.com/1294454/66732963-8eb7dd00-ee66-11e9-849b-10d9282bb9e0.jpg)](https://whitebit.com/referral/d9bdf40e-28f2-4b52-b2f9-cd1415d82963) | whitebit | [WhiteBit](https://whitebit.com/referral/d9bdf40e-28f2-4b52-b2f9-cd1415d82963) | [![API Version 4](https://img.shields.io/badge/4-lightgray)](https://github.com/whitebit-exchange/api-docs) | | [![CCXT Pro](https://img.shields.io/badge/CCXT-Pro-black)](https://ccxt.pro) |
168
169
  | [![woo](https://user-images.githubusercontent.com/1294454/150730761-1a00e5e0-d28c-480f-9e65-089ce3e6ef3b.jpg)](https://x.woo.org/register?ref=YWOWC96B) | woo | [WOO X](https://x.woo.org/register?ref=YWOWC96B) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://docs.woo.org/) | [![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) |
170
+ | [![woofipro](https://github.com/ccxt/ccxt/assets/43336371/b1e7b348-a0fc-4605-8b7f-91176958fd69)](https://dex.woo.org/en/trade?ref=CCXT) | woofipro | [WOOFI PRO](https://dex.woo.org/en/trade?ref=CCXT) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://orderly.network/docs/build-on-evm/building-on-evm) | [![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) |
169
171
  | [![yobit](https://user-images.githubusercontent.com/1294454/27766910-cdcbfdae-5eea-11e7-9859-03fea873272d.jpg)](https://www.yobit.net) | yobit | [YoBit](https://www.yobit.net) | [![API Version 3](https://img.shields.io/badge/3-lightgray)](https://www.yobit.net/en/api/) | | |
170
172
  | [![zaif](https://user-images.githubusercontent.com/1294454/27766927-39ca2ada-5eeb-11e7-972f-1b4199518ca6.jpg)](https://zaif.jp) | zaif | [Zaif](https://zaif.jp) | [![API Version 1](https://img.shields.io/badge/1-lightgray)](https://techbureau-api-document.readthedocs.io/ja/latest/index.html) | | |
171
173
  | [![zonda](https://user-images.githubusercontent.com/1294454/159202310-a0e38007-5e7c-4ba9-a32f-c8263a0291fe.jpg)](https://auth.zondaglobal.com/ref/jHlbB4mIkdS1) | zonda | [Zonda](https://auth.zondaglobal.com/ref/jHlbB4mIkdS1) | [![API Version *](https://img.shields.io/badge/*-lightgray)](https://docs.zondacrypto.exchange/) | | |
@@ -226,13 +228,13 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
226
228
 
227
229
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
228
230
 
229
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.17/dist/ccxt.browser.js
230
- * unpkg: https://unpkg.com/ccxt@4.3.17/dist/ccxt.browser.js
231
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.19/dist/ccxt.browser.js
232
+ * unpkg: https://unpkg.com/ccxt@4.3.19/dist/ccxt.browser.js
231
233
 
232
234
  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
235
 
234
236
  ```HTML
235
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.17/dist/ccxt.browser.js"></script>
237
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.19/dist/ccxt.browser.js"></script>
236
238
  ```
237
239
 
238
240
  Creates a global `ccxt` object:
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '4.3.17'
25
+ __version__ = '4.3.19'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -180,6 +180,7 @@ from ccxt.wavesexchange import wavesexchange # noqa: F4
180
180
  from ccxt.wazirx import wazirx # noqa: F401
181
181
  from ccxt.whitebit import whitebit # noqa: F401
182
182
  from ccxt.woo import woo # noqa: F401
183
+ from ccxt.woofipro import woofipro # noqa: F401
183
184
  from ccxt.yobit import yobit # noqa: F401
184
185
  from ccxt.zaif import zaif # noqa: F401
185
186
  from ccxt.zonda import zonda # noqa: F401
@@ -285,6 +286,7 @@ exchanges = [
285
286
  'wazirx',
286
287
  'whitebit',
287
288
  'woo',
289
+ 'woofipro',
288
290
  'yobit',
289
291
  'zaif',
290
292
  'zonda',
@@ -150,6 +150,7 @@ class ImplicitAPI:
150
150
  private_get_v5_asset_coin_query_info = privateGetV5AssetCoinQueryInfo = Entry('v5/asset/coin/query-info', 'private', 'GET', {'cost': 28})
151
151
  private_get_v5_asset_withdraw_query_record = privateGetV5AssetWithdrawQueryRecord = Entry('v5/asset/withdraw/query-record', 'private', 'GET', {'cost': 10})
152
152
  private_get_v5_asset_withdraw_withdrawable_amount = privateGetV5AssetWithdrawWithdrawableAmount = Entry('v5/asset/withdraw/withdrawable-amount', 'private', 'GET', {'cost': 5})
153
+ private_get_v5_asset_withdraw_vasp_list = privateGetV5AssetWithdrawVaspList = Entry('v5/asset/withdraw/vasp/list', 'private', 'GET', {'cost': 5})
153
154
  private_get_v5_user_query_sub_members = privateGetV5UserQuerySubMembers = Entry('v5/user/query-sub-members', 'private', 'GET', {'cost': 5})
154
155
  private_get_v5_user_query_api = privateGetV5UserQueryApi = Entry('v5/user/query-api', 'private', 'GET', {'cost': 5})
155
156
  private_get_v5_user_sub_apikeys = privateGetV5UserSubApikeys = Entry('v5/user/sub-apikeys', 'private', 'GET', {'cost': 5})
@@ -267,6 +267,7 @@ class ImplicitAPI:
267
267
  private_post_tradingbot_grid_compute_margin_balance = privatePostTradingBotGridComputeMarginBalance = Entry('tradingBot/grid/compute-margin-balance', 'private', 'POST', {'cost': 1})
268
268
  private_post_tradingbot_grid_margin_balance = privatePostTradingBotGridMarginBalance = Entry('tradingBot/grid/margin-balance', 'private', 'POST', {'cost': 1})
269
269
  private_post_tradingbot_grid_min_investment = privatePostTradingBotGridMinInvestment = Entry('tradingBot/grid/min-investment', 'private', 'POST', {'cost': 1})
270
+ private_post_tradingbot_grid_adjust_investment = privatePostTradingBotGridAdjustInvestment = Entry('tradingBot/grid/adjust-investment', 'private', 'POST', {'cost': 1})
270
271
  private_post_tradingbot_signal_create_signal = privatePostTradingBotSignalCreateSignal = Entry('tradingBot/signal/create-signal', 'private', 'POST', {'cost': 1})
271
272
  private_post_tradingbot_signal_order_algo = privatePostTradingBotSignalOrderAlgo = Entry('tradingBot/signal/order-algo', 'private', 'POST', {'cost': 1})
272
273
  private_post_tradingbot_signal_stop_order_algo = privatePostTradingBotSignalStopOrderAlgo = Entry('tradingBot/signal/stop-order-algo', 'private', 'POST', {'cost': 1})
@@ -0,0 +1,119 @@
1
+ from ccxt.base.types import Entry
2
+
3
+
4
+ class ImplicitAPI:
5
+ v1_public_get_public_volume_stats = v1PublicGetPublicVolumeStats = Entry('public/volume/stats', ['v1', 'public'], 'GET', {'cost': 1})
6
+ v1_public_get_public_broker_name = v1PublicGetPublicBrokerName = Entry('public/broker/name', ['v1', 'public'], 'GET', {'cost': 1})
7
+ v1_public_get_public_chain_info_broker_id = v1PublicGetPublicChainInfoBrokerId = Entry('public/chain_info/{broker_id}', ['v1', 'public'], 'GET', {'cost': 1})
8
+ v1_public_get_public_system_info = v1PublicGetPublicSystemInfo = Entry('public/system_info', ['v1', 'public'], 'GET', {'cost': 1})
9
+ v1_public_get_public_vault_balance = v1PublicGetPublicVaultBalance = Entry('public/vault_balance', ['v1', 'public'], 'GET', {'cost': 1})
10
+ v1_public_get_public_insurancefund = v1PublicGetPublicInsurancefund = Entry('public/insurancefund', ['v1', 'public'], 'GET', {'cost': 1})
11
+ v1_public_get_public_chain_info = v1PublicGetPublicChainInfo = Entry('public/chain_info', ['v1', 'public'], 'GET', {'cost': 1})
12
+ v1_public_get_faucet_usdc = v1PublicGetFaucetUsdc = Entry('faucet/usdc', ['v1', 'public'], 'GET', {'cost': 1})
13
+ v1_public_get_public_account = v1PublicGetPublicAccount = Entry('public/account', ['v1', 'public'], 'GET', {'cost': 1})
14
+ v1_public_get_get_account = v1PublicGetGetAccount = Entry('get_account', ['v1', 'public'], 'GET', {'cost': 1})
15
+ v1_public_get_registration_nonce = v1PublicGetRegistrationNonce = Entry('registration_nonce', ['v1', 'public'], 'GET', {'cost': 1})
16
+ v1_public_get_get_orderly_key = v1PublicGetGetOrderlyKey = Entry('get_orderly_key', ['v1', 'public'], 'GET', {'cost': 1})
17
+ v1_public_get_public_liquidation = v1PublicGetPublicLiquidation = Entry('public/liquidation', ['v1', 'public'], 'GET', {'cost': 1})
18
+ v1_public_get_public_liquidated_positions = v1PublicGetPublicLiquidatedPositions = Entry('public/liquidated_positions', ['v1', 'public'], 'GET', {'cost': 1})
19
+ v1_public_get_public_config = v1PublicGetPublicConfig = Entry('public/config', ['v1', 'public'], 'GET', {'cost': 1})
20
+ v1_public_get_public_campaign_ranking = v1PublicGetPublicCampaignRanking = Entry('public/campaign/ranking', ['v1', 'public'], 'GET', {'cost': 10})
21
+ v1_public_get_public_campaign_stats = v1PublicGetPublicCampaignStats = Entry('public/campaign/stats', ['v1', 'public'], 'GET', {'cost': 10})
22
+ v1_public_get_public_campaign_user = v1PublicGetPublicCampaignUser = Entry('public/campaign/user', ['v1', 'public'], 'GET', {'cost': 10})
23
+ v1_public_get_public_campaign_stats_details = v1PublicGetPublicCampaignStatsDetails = Entry('public/campaign/stats/details', ['v1', 'public'], 'GET', {'cost': 10})
24
+ v1_public_get_public_campaigns = v1PublicGetPublicCampaigns = Entry('public/campaigns', ['v1', 'public'], 'GET', {'cost': 10})
25
+ v1_public_get_public_points_leaderboard = v1PublicGetPublicPointsLeaderboard = Entry('public/points/leaderboard', ['v1', 'public'], 'GET', {'cost': 1})
26
+ v1_public_get_client_points = v1PublicGetClientPoints = Entry('client/points', ['v1', 'public'], 'GET', {'cost': 1})
27
+ v1_public_get_public_points_epoch = v1PublicGetPublicPointsEpoch = Entry('public/points/epoch', ['v1', 'public'], 'GET', {'cost': 1})
28
+ v1_public_get_public_points_epoch_dates = v1PublicGetPublicPointsEpochDates = Entry('public/points/epoch_dates', ['v1', 'public'], 'GET', {'cost': 1})
29
+ v1_public_get_public_referral_check_ref_code = v1PublicGetPublicReferralCheckRefCode = Entry('public/referral/check_ref_code', ['v1', 'public'], 'GET', {'cost': 1})
30
+ v1_public_get_public_referral_verify_ref_code = v1PublicGetPublicReferralVerifyRefCode = Entry('public/referral/verify_ref_code', ['v1', 'public'], 'GET', {'cost': 1})
31
+ v1_public_get_referral_admin_info = v1PublicGetReferralAdminInfo = Entry('referral/admin_info', ['v1', 'public'], 'GET', {'cost': 1})
32
+ v1_public_get_referral_info = v1PublicGetReferralInfo = Entry('referral/info', ['v1', 'public'], 'GET', {'cost': 1})
33
+ v1_public_get_referral_referee_info = v1PublicGetReferralRefereeInfo = Entry('referral/referee_info', ['v1', 'public'], 'GET', {'cost': 1})
34
+ v1_public_get_referral_referee_rebate_summary = v1PublicGetReferralRefereeRebateSummary = Entry('referral/referee_rebate_summary', ['v1', 'public'], 'GET', {'cost': 1})
35
+ v1_public_get_referral_referee_history = v1PublicGetReferralRefereeHistory = Entry('referral/referee_history', ['v1', 'public'], 'GET', {'cost': 1})
36
+ v1_public_get_referral_referral_history = v1PublicGetReferralReferralHistory = Entry('referral/referral_history', ['v1', 'public'], 'GET', {'cost': 1})
37
+ v1_public_get_referral_rebate_summary = v1PublicGetReferralRebateSummary = Entry('referral/rebate_summary', ['v1', 'public'], 'GET', {'cost': 1})
38
+ v1_public_get_client_distribution_history = v1PublicGetClientDistributionHistory = Entry('client/distribution_history', ['v1', 'public'], 'GET', {'cost': 1})
39
+ v1_public_get_tv_config = v1PublicGetTvConfig = Entry('tv/config', ['v1', 'public'], 'GET', {'cost': 1})
40
+ v1_public_get_tv_history = v1PublicGetTvHistory = Entry('tv/history', ['v1', 'public'], 'GET', {'cost': 1})
41
+ v1_public_get_tv_symbol_info = v1PublicGetTvSymbolInfo = Entry('tv/symbol_info', ['v1', 'public'], 'GET', {'cost': 1})
42
+ v1_public_get_public_funding_rate_history = v1PublicGetPublicFundingRateHistory = Entry('public/funding_rate_history', ['v1', 'public'], 'GET', {'cost': 1})
43
+ v1_public_get_public_funding_rate_symbol = v1PublicGetPublicFundingRateSymbol = Entry('public/funding_rate/{symbol}', ['v1', 'public'], 'GET', {'cost': 0.33})
44
+ v1_public_get_public_funding_rates = v1PublicGetPublicFundingRates = Entry('public/funding_rates', ['v1', 'public'], 'GET', {'cost': 1})
45
+ v1_public_get_public_info = v1PublicGetPublicInfo = Entry('public/info', ['v1', 'public'], 'GET', {'cost': 1})
46
+ v1_public_get_public_info_symbol = v1PublicGetPublicInfoSymbol = Entry('public/info/{symbol}', ['v1', 'public'], 'GET', {'cost': 1})
47
+ v1_public_get_public_market_trades = v1PublicGetPublicMarketTrades = Entry('public/market_trades', ['v1', 'public'], 'GET', {'cost': 1})
48
+ v1_public_get_public_token = v1PublicGetPublicToken = Entry('public/token', ['v1', 'public'], 'GET', {'cost': 1})
49
+ v1_public_get_public_futures = v1PublicGetPublicFutures = Entry('public/futures', ['v1', 'public'], 'GET', {'cost': 1})
50
+ v1_public_get_public_futures_symbol = v1PublicGetPublicFuturesSymbol = Entry('public/futures/{symbol}', ['v1', 'public'], 'GET', {'cost': 1})
51
+ v1_public_post_register_account = v1PublicPostRegisterAccount = Entry('register_account', ['v1', 'public'], 'POST', {'cost': 1})
52
+ v1_private_get_client_key_info = v1PrivateGetClientKeyInfo = Entry('client/key_info', ['v1', 'private'], 'GET', {'cost': 6})
53
+ v1_private_get_client_orderly_key_ip_restriction = v1PrivateGetClientOrderlyKeyIpRestriction = Entry('client/orderly_key_ip_restriction', ['v1', 'private'], 'GET', {'cost': 6})
54
+ v1_private_get_order_oid = v1PrivateGetOrderOid = Entry('order/{oid}', ['v1', 'private'], 'GET', {'cost': 1})
55
+ v1_private_get_client_order_client_order_id = v1PrivateGetClientOrderClientOrderId = Entry('client/order/{client_order_id}', ['v1', 'private'], 'GET', {'cost': 1})
56
+ v1_private_get_algo_order_oid = v1PrivateGetAlgoOrderOid = Entry('algo/order/{oid}', ['v1', 'private'], 'GET', {'cost': 1})
57
+ v1_private_get_algo_client_order_client_order_id = v1PrivateGetAlgoClientOrderClientOrderId = Entry('algo/client/order/{client_order_id}', ['v1', 'private'], 'GET', {'cost': 1})
58
+ v1_private_get_orders = v1PrivateGetOrders = Entry('orders', ['v1', 'private'], 'GET', {'cost': 1})
59
+ v1_private_get_algo_orders = v1PrivateGetAlgoOrders = Entry('algo/orders', ['v1', 'private'], 'GET', {'cost': 1})
60
+ v1_private_get_trade_tid = v1PrivateGetTradeTid = Entry('trade/{tid}', ['v1', 'private'], 'GET', {'cost': 1})
61
+ v1_private_get_trades = v1PrivateGetTrades = Entry('trades', ['v1', 'private'], 'GET', {'cost': 1})
62
+ v1_private_get_order_oid_trades = v1PrivateGetOrderOidTrades = Entry('order/{oid}/trades', ['v1', 'private'], 'GET', {'cost': 1})
63
+ v1_private_get_client_liquidator_liquidations = v1PrivateGetClientLiquidatorLiquidations = Entry('client/liquidator_liquidations', ['v1', 'private'], 'GET', {'cost': 1})
64
+ v1_private_get_liquidations = v1PrivateGetLiquidations = Entry('liquidations', ['v1', 'private'], 'GET', {'cost': 1})
65
+ v1_private_get_asset_history = v1PrivateGetAssetHistory = Entry('asset/history', ['v1', 'private'], 'GET', {'cost': 60})
66
+ v1_private_get_client_holding = v1PrivateGetClientHolding = Entry('client/holding', ['v1', 'private'], 'GET', {'cost': 1})
67
+ v1_private_get_withdraw_nonce = v1PrivateGetWithdrawNonce = Entry('withdraw_nonce', ['v1', 'private'], 'GET', {'cost': 1})
68
+ v1_private_get_settle_nonce = v1PrivateGetSettleNonce = Entry('settle_nonce', ['v1', 'private'], 'GET', {'cost': 1})
69
+ v1_private_get_pnl_settlement_history = v1PrivateGetPnlSettlementHistory = Entry('pnl_settlement/history', ['v1', 'private'], 'GET', {'cost': 1})
70
+ v1_private_get_volume_user_daily = v1PrivateGetVolumeUserDaily = Entry('volume/user/daily', ['v1', 'private'], 'GET', {'cost': 60})
71
+ v1_private_get_volume_user_stats = v1PrivateGetVolumeUserStats = Entry('volume/user/stats', ['v1', 'private'], 'GET', {'cost': 60})
72
+ v1_private_get_client_statistics = v1PrivateGetClientStatistics = Entry('client/statistics', ['v1', 'private'], 'GET', {'cost': 60})
73
+ v1_private_get_client_info = v1PrivateGetClientInfo = Entry('client/info', ['v1', 'private'], 'GET', {'cost': 60})
74
+ v1_private_get_client_statistics_daily = v1PrivateGetClientStatisticsDaily = Entry('client/statistics/daily', ['v1', 'private'], 'GET', {'cost': 60})
75
+ v1_private_get_positions = v1PrivateGetPositions = Entry('positions', ['v1', 'private'], 'GET', {'cost': 3.33})
76
+ v1_private_get_position_symbol = v1PrivateGetPositionSymbol = Entry('position/{symbol}', ['v1', 'private'], 'GET', {'cost': 3.33})
77
+ v1_private_get_funding_fee_history = v1PrivateGetFundingFeeHistory = Entry('funding_fee/history', ['v1', 'private'], 'GET', {'cost': 30})
78
+ v1_private_get_notification_inbox_notifications = v1PrivateGetNotificationInboxNotifications = Entry('notification/inbox/notifications', ['v1', 'private'], 'GET', {'cost': 60})
79
+ v1_private_get_notification_inbox_unread = v1PrivateGetNotificationInboxUnread = Entry('notification/inbox/unread', ['v1', 'private'], 'GET', {'cost': 60})
80
+ v1_private_get_volume_broker_daily = v1PrivateGetVolumeBrokerDaily = Entry('volume/broker/daily', ['v1', 'private'], 'GET', {'cost': 60})
81
+ v1_private_get_broker_fee_rate_default = v1PrivateGetBrokerFeeRateDefault = Entry('broker/fee_rate/default', ['v1', 'private'], 'GET', {'cost': 10})
82
+ v1_private_get_broker_user_info = v1PrivateGetBrokerUserInfo = Entry('broker/user_info', ['v1', 'private'], 'GET', {'cost': 10})
83
+ v1_private_get_orderbook_symbol = v1PrivateGetOrderbookSymbol = Entry('orderbook/{symbol}', ['v1', 'private'], 'GET', {'cost': 1})
84
+ v1_private_get_kline = v1PrivateGetKline = Entry('kline', ['v1', 'private'], 'GET', {'cost': 1})
85
+ v1_private_post_orderly_key = v1PrivatePostOrderlyKey = Entry('orderly_key', ['v1', 'private'], 'POST', {'cost': 1})
86
+ v1_private_post_client_set_orderly_key_ip_restriction = v1PrivatePostClientSetOrderlyKeyIpRestriction = Entry('client/set_orderly_key_ip_restriction', ['v1', 'private'], 'POST', {'cost': 6})
87
+ v1_private_post_client_reset_orderly_key_ip_restriction = v1PrivatePostClientResetOrderlyKeyIpRestriction = Entry('client/reset_orderly_key_ip_restriction', ['v1', 'private'], 'POST', {'cost': 6})
88
+ v1_private_post_order = v1PrivatePostOrder = Entry('order', ['v1', 'private'], 'POST', {'cost': 1})
89
+ v1_private_post_batch_order = v1PrivatePostBatchOrder = Entry('batch-order', ['v1', 'private'], 'POST', {'cost': 10})
90
+ v1_private_post_algo_order = v1PrivatePostAlgoOrder = Entry('algo/order', ['v1', 'private'], 'POST', {'cost': 1})
91
+ v1_private_post_liquidation = v1PrivatePostLiquidation = Entry('liquidation', ['v1', 'private'], 'POST', {'cost': 1})
92
+ v1_private_post_claim_insurance_fund = v1PrivatePostClaimInsuranceFund = Entry('claim_insurance_fund', ['v1', 'private'], 'POST', {'cost': 1})
93
+ v1_private_post_withdraw_request = v1PrivatePostWithdrawRequest = Entry('withdraw_request', ['v1', 'private'], 'POST', {'cost': 1})
94
+ v1_private_post_settle_pnl = v1PrivatePostSettlePnl = Entry('settle_pnl', ['v1', 'private'], 'POST', {'cost': 1})
95
+ v1_private_post_notification_inbox_mark_read = v1PrivatePostNotificationInboxMarkRead = Entry('notification/inbox/mark_read', ['v1', 'private'], 'POST', {'cost': 60})
96
+ v1_private_post_notification_inbox_mark_read_all = v1PrivatePostNotificationInboxMarkReadAll = Entry('notification/inbox/mark_read_all', ['v1', 'private'], 'POST', {'cost': 60})
97
+ v1_private_post_client_leverage = v1PrivatePostClientLeverage = Entry('client/leverage', ['v1', 'private'], 'POST', {'cost': 120})
98
+ v1_private_post_client_maintenance_config = v1PrivatePostClientMaintenanceConfig = Entry('client/maintenance_config', ['v1', 'private'], 'POST', {'cost': 60})
99
+ v1_private_post_delegate_signer = v1PrivatePostDelegateSigner = Entry('delegate_signer', ['v1', 'private'], 'POST', {'cost': 10})
100
+ v1_private_post_delegate_orderly_key = v1PrivatePostDelegateOrderlyKey = Entry('delegate_orderly_key', ['v1', 'private'], 'POST', {'cost': 10})
101
+ v1_private_post_delegate_settle_pnl = v1PrivatePostDelegateSettlePnl = Entry('delegate_settle_pnl', ['v1', 'private'], 'POST', {'cost': 10})
102
+ v1_private_post_delegate_withdraw_request = v1PrivatePostDelegateWithdrawRequest = Entry('delegate_withdraw_request', ['v1', 'private'], 'POST', {'cost': 10})
103
+ v1_private_post_broker_fee_rate_set = v1PrivatePostBrokerFeeRateSet = Entry('broker/fee_rate/set', ['v1', 'private'], 'POST', {'cost': 10})
104
+ v1_private_post_broker_fee_rate_set_default = v1PrivatePostBrokerFeeRateSetDefault = Entry('broker/fee_rate/set_default', ['v1', 'private'], 'POST', {'cost': 10})
105
+ v1_private_post_broker_fee_rate_default = v1PrivatePostBrokerFeeRateDefault = Entry('broker/fee_rate/default', ['v1', 'private'], 'POST', {'cost': 10})
106
+ v1_private_post_referral_create = v1PrivatePostReferralCreate = Entry('referral/create', ['v1', 'private'], 'POST', {'cost': 10})
107
+ v1_private_post_referral_update = v1PrivatePostReferralUpdate = Entry('referral/update', ['v1', 'private'], 'POST', {'cost': 10})
108
+ v1_private_post_referral_bind = v1PrivatePostReferralBind = Entry('referral/bind', ['v1', 'private'], 'POST', {'cost': 10})
109
+ v1_private_post_referral_edit_split = v1PrivatePostReferralEditSplit = Entry('referral/edit_split', ['v1', 'private'], 'POST', {'cost': 10})
110
+ v1_private_put_order = v1PrivatePutOrder = Entry('order', ['v1', 'private'], 'PUT', {'cost': 1})
111
+ v1_private_put_algo_order = v1PrivatePutAlgoOrder = Entry('algo/order', ['v1', 'private'], 'PUT', {'cost': 1})
112
+ v1_private_delete_order = v1PrivateDeleteOrder = Entry('order', ['v1', 'private'], 'DELETE', {'cost': 1})
113
+ v1_private_delete_algo_order = v1PrivateDeleteAlgoOrder = Entry('algo/order', ['v1', 'private'], 'DELETE', {'cost': 1})
114
+ v1_private_delete_client_order = v1PrivateDeleteClientOrder = Entry('client/order', ['v1', 'private'], 'DELETE', {'cost': 1})
115
+ v1_private_delete_algo_client_order = v1PrivateDeleteAlgoClientOrder = Entry('algo/client/order', ['v1', 'private'], 'DELETE', {'cost': 1})
116
+ v1_private_delete_algo_orders = v1PrivateDeleteAlgoOrders = Entry('algo/orders', ['v1', 'private'], 'DELETE', {'cost': 1})
117
+ v1_private_delete_orders = v1PrivateDeleteOrders = Entry('orders', ['v1', 'private'], 'DELETE', {'cost': 1})
118
+ v1_private_delete_batch_order = v1PrivateDeleteBatchOrder = Entry('batch-order', ['v1', 'private'], 'DELETE', {'cost': 1})
119
+ v1_private_delete_client_batch_order = v1PrivateDeleteClientBatchOrder = Entry('client/batch-order', ['v1', 'private'], 'DELETE', {'cost': 1})
@@ -259,7 +259,7 @@ class ace(Exchange, ImplicitAPI):
259
259
  'info': market,
260
260
  }
261
261
 
262
- def parse_ticker(self, ticker, market: Market = None) -> Ticker:
262
+ def parse_ticker(self, ticker: dict, market: Market = None) -> Ticker:
263
263
  #
264
264
  # {
265
265
  # "base_volume":229196.34035399999,
@@ -938,7 +938,7 @@ class ascendex(Exchange, ImplicitAPI):
938
938
  result['nonce'] = self.safe_integer(orderbook, 'seqnum')
939
939
  return result
940
940
 
941
- def parse_ticker(self, ticker, market: Market = None) -> Ticker:
941
+ def parse_ticker(self, ticker: dict, market: Market = None) -> Ticker:
942
942
  #
943
943
  # {
944
944
  # "symbol":"QTUM/BTC",
@@ -2995,7 +2995,6 @@ class ascendex(Exchange, ImplicitAPI):
2995
2995
  account = self.safe_value(self.accounts, 0, {})
2996
2996
  accountGroup = self.safe_string(account, 'id')
2997
2997
  currency = self.currency(code)
2998
- amount = self.currency_to_precision(code, amount)
2999
2998
  accountsByType = self.safe_value(self.options, 'accountsByType', {})
3000
2999
  fromId = self.safe_string(accountsByType, fromAccount, fromAccount)
3001
3000
  toId = self.safe_string(accountsByType, toAccount, toAccount)
@@ -3003,7 +3002,7 @@ class ascendex(Exchange, ImplicitAPI):
3003
3002
  raise ExchangeError(self.id + ' transfer() only supports direct balance transfer between spot and swap, spot and margin')
3004
3003
  request = {
3005
3004
  'account-group': accountGroup,
3006
- 'amount': amount,
3005
+ 'amount': self.currency_to_precision(code, amount),
3007
3006
  'asset': currency['id'],
3008
3007
  'fromAccount': fromId,
3009
3008
  'toAccount': toId,
@@ -3022,11 +3021,11 @@ class ascendex(Exchange, ImplicitAPI):
3022
3021
  transfer['currency'] = code
3023
3022
  return transfer
3024
3023
 
3025
- def parse_transfer(self, transfer, currency: Currency = None):
3024
+ def parse_transfer(self, transfer: dict, currency: Currency = None) -> TransferEntry:
3026
3025
  #
3027
3026
  # {"code": "0"}
3028
3027
  #
3029
- status = self.safe_integer(transfer, 'code')
3028
+ status = self.safe_string(transfer, 'code')
3030
3029
  currencyCode = self.safe_currency_code(None, currency)
3031
3030
  return {
3032
3031
  'info': transfer,
@@ -3040,8 +3039,8 @@ class ascendex(Exchange, ImplicitAPI):
3040
3039
  'status': self.parse_transfer_status(status),
3041
3040
  }
3042
3041
 
3043
- def parse_transfer_status(self, status):
3044
- if status == 0:
3042
+ def parse_transfer_status(self, status: Str) -> Str:
3043
+ if status == '0':
3045
3044
  return 'ok'
3046
3045
  return 'failed'
3047
3046
 
@@ -3245,7 +3244,7 @@ class ascendex(Exchange, ImplicitAPI):
3245
3244
  leverages = self.safe_list(data, 'contracts', [])
3246
3245
  return self.parse_leverages(leverages, symbols, 'symbol')
3247
3246
 
3248
- def parse_leverage(self, leverage, market=None) -> Leverage:
3247
+ def parse_leverage(self, leverage: dict, market: Market = None) -> Leverage:
3249
3248
  marketId = self.safe_string(leverage, 'symbol')
3250
3249
  leverageValue = self.safe_integer(leverage, 'leverage')
3251
3250
  marginType = self.safe_string(leverage, 'marginType')
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.17'
7
+ __version__ = '4.3.19'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -160,6 +160,7 @@ from ccxt.async_support.wavesexchange import wavesexchange
160
160
  from ccxt.async_support.wazirx import wazirx # noqa: F401
161
161
  from ccxt.async_support.whitebit import whitebit # noqa: F401
162
162
  from ccxt.async_support.woo import woo # noqa: F401
163
+ from ccxt.async_support.woofipro import woofipro # noqa: F401
163
164
  from ccxt.async_support.yobit import yobit # noqa: F401
164
165
  from ccxt.async_support.zaif import zaif # noqa: F401
165
166
  from ccxt.async_support.zonda import zonda # noqa: F401
@@ -265,6 +266,7 @@ exchanges = [
265
266
  'wazirx',
266
267
  'whitebit',
267
268
  'woo',
269
+ 'woofipro',
268
270
  'yobit',
269
271
  'zaif',
270
272
  'zonda',
@@ -259,7 +259,7 @@ class ace(Exchange, ImplicitAPI):
259
259
  'info': market,
260
260
  }
261
261
 
262
- def parse_ticker(self, ticker, market: Market = None) -> Ticker:
262
+ def parse_ticker(self, ticker: dict, market: Market = None) -> Ticker:
263
263
  #
264
264
  # {
265
265
  # "base_volume":229196.34035399999,
@@ -938,7 +938,7 @@ class ascendex(Exchange, ImplicitAPI):
938
938
  result['nonce'] = self.safe_integer(orderbook, 'seqnum')
939
939
  return result
940
940
 
941
- def parse_ticker(self, ticker, market: Market = None) -> Ticker:
941
+ def parse_ticker(self, ticker: dict, market: Market = None) -> Ticker:
942
942
  #
943
943
  # {
944
944
  # "symbol":"QTUM/BTC",
@@ -2995,7 +2995,6 @@ class ascendex(Exchange, ImplicitAPI):
2995
2995
  account = self.safe_value(self.accounts, 0, {})
2996
2996
  accountGroup = self.safe_string(account, 'id')
2997
2997
  currency = self.currency(code)
2998
- amount = self.currency_to_precision(code, amount)
2999
2998
  accountsByType = self.safe_value(self.options, 'accountsByType', {})
3000
2999
  fromId = self.safe_string(accountsByType, fromAccount, fromAccount)
3001
3000
  toId = self.safe_string(accountsByType, toAccount, toAccount)
@@ -3003,7 +3002,7 @@ class ascendex(Exchange, ImplicitAPI):
3003
3002
  raise ExchangeError(self.id + ' transfer() only supports direct balance transfer between spot and swap, spot and margin')
3004
3003
  request = {
3005
3004
  'account-group': accountGroup,
3006
- 'amount': amount,
3005
+ 'amount': self.currency_to_precision(code, amount),
3007
3006
  'asset': currency['id'],
3008
3007
  'fromAccount': fromId,
3009
3008
  'toAccount': toId,
@@ -3022,11 +3021,11 @@ class ascendex(Exchange, ImplicitAPI):
3022
3021
  transfer['currency'] = code
3023
3022
  return transfer
3024
3023
 
3025
- def parse_transfer(self, transfer, currency: Currency = None):
3024
+ def parse_transfer(self, transfer: dict, currency: Currency = None) -> TransferEntry:
3026
3025
  #
3027
3026
  # {"code": "0"}
3028
3027
  #
3029
- status = self.safe_integer(transfer, 'code')
3028
+ status = self.safe_string(transfer, 'code')
3030
3029
  currencyCode = self.safe_currency_code(None, currency)
3031
3030
  return {
3032
3031
  'info': transfer,
@@ -3040,8 +3039,8 @@ class ascendex(Exchange, ImplicitAPI):
3040
3039
  'status': self.parse_transfer_status(status),
3041
3040
  }
3042
3041
 
3043
- def parse_transfer_status(self, status):
3044
- if status == 0:
3042
+ def parse_transfer_status(self, status: Str) -> Str:
3043
+ if status == '0':
3045
3044
  return 'ok'
3046
3045
  return 'failed'
3047
3046
 
@@ -3245,7 +3244,7 @@ class ascendex(Exchange, ImplicitAPI):
3245
3244
  leverages = self.safe_list(data, 'contracts', [])
3246
3245
  return self.parse_leverages(leverages, symbols, 'symbol')
3247
3246
 
3248
- def parse_leverage(self, leverage, market=None) -> Leverage:
3247
+ def parse_leverage(self, leverage: dict, market: Market = None) -> Leverage:
3249
3248
  marketId = self.safe_string(leverage, 'symbol')
3250
3249
  leverageValue = self.safe_integer(leverage, 'leverage')
3251
3250
  marginType = self.safe_string(leverage, 'marginType')
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '4.3.17'
5
+ __version__ = '4.3.19'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -888,7 +888,7 @@ class Exchange(BaseExchange):
888
888
  async def fetch_positions_risk(self, symbols: List[str] = None, params={}):
889
889
  raise NotSupported(self.id + ' fetchPositionsRisk() is not supported yet')
890
890
 
891
- async def fetch_bids_asks(self, symbols: List[str] = None, params={}):
891
+ async def fetch_bids_asks(self, symbols: Strings = None, params={}):
892
892
  raise NotSupported(self.id + ' fetchBidsAsks() is not supported yet')
893
893
 
894
894
  async def fetch_borrow_interest(self, code: Str = None, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
@@ -1924,3 +1924,24 @@ class Exchange(BaseExchange):
1924
1924
  :returns dict[]: a list of `position structures <https://docs.ccxt.com/#/?id=position-structure>`
1925
1925
  """
1926
1926
  raise NotSupported(self.id + ' fetchPositionsHistory() is not supported yet')
1927
+
1928
+ async def fetch_transfer(self, id: str, code: Str = None, params={}):
1929
+ """
1930
+ fetches a transfer
1931
+ :param str id: transfer id
1932
+ :param [str] code: unified currency code
1933
+ :param dict params: extra parameters specific to the exchange api endpoint
1934
+ :returns dict: a `transfer structure <https://docs.ccxt.com/#/?id=transfer-structure>`
1935
+ """
1936
+ raise NotSupported(self.id + ' fetchTransfer() is not supported yet')
1937
+
1938
+ async def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}):
1939
+ """
1940
+ fetches a transfer
1941
+ :param str id: transfer id
1942
+ :param int [since]: timestamp in ms of the earliest transfer to fetch
1943
+ :param int [limit]: the maximum amount of transfers to fetch
1944
+ :param dict params: extra parameters specific to the exchange api endpoint
1945
+ :returns dict: a `transfer structure <https://docs.ccxt.com/#/?id=transfer-structure>`
1946
+ """
1947
+ raise NotSupported(self.id + ' fetchTransfers() is not supported yet')
@@ -702,7 +702,7 @@ class bigone(Exchange, ImplicitAPI):
702
702
  }))
703
703
  return result
704
704
 
705
- def parse_ticker(self, ticker, market: Market = None) -> Ticker:
705
+ def parse_ticker(self, ticker: dict, market: Market = None) -> Ticker:
706
706
  #
707
707
  # spot
708
708
  #
@@ -2018,14 +2018,14 @@ class bigone(Exchange, ImplicitAPI):
2018
2018
  transfer['id'] = guid
2019
2019
  return transfer
2020
2020
 
2021
- def parse_transfer(self, transfer, currency: Currency = None):
2021
+ def parse_transfer(self, transfer: dict, currency: Currency = None) -> TransferEntry:
2022
2022
  #
2023
2023
  # {
2024
2024
  # "code": 0,
2025
2025
  # "data": null
2026
2026
  # }
2027
2027
  #
2028
- code = self.safe_number(transfer, 'code')
2028
+ code = self.safe_string(transfer, 'code')
2029
2029
  return {
2030
2030
  'info': transfer,
2031
2031
  'id': None,
@@ -2038,7 +2038,7 @@ class bigone(Exchange, ImplicitAPI):
2038
2038
  'status': self.parse_transfer_status(code),
2039
2039
  }
2040
2040
 
2041
- def parse_transfer_status(self, status):
2041
+ def parse_transfer_status(self, status: Str) -> Str:
2042
2042
  statuses = {
2043
2043
  '0': 'ok',
2044
2044
  }