ccxt 4.4.27__tar.gz → 4.4.28__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (669) hide show
  1. {ccxt-4.4.27/ccxt.egg-info → ccxt-4.4.28}/PKG-INFO +4 -4
  2. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/__init__.py +1 -1
  3. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/binance.py +7 -0
  4. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/binancecoinm.py +7 -0
  5. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/binanceus.py +7 -0
  6. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/binanceusdm.py +7 -0
  7. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/alpaca.py +44 -40
  8. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/__init__.py +1 -1
  9. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/alpaca.py +44 -40
  10. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/exchange.py +1 -1
  11. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/binance.py +7 -0
  12. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/kraken.py +43 -35
  13. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/wavesexchange.py +1 -0
  14. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/base/exchange.py +1 -1
  15. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/binance.py +7 -0
  16. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/kraken.py +43 -35
  17. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/__init__.py +1 -1
  18. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/binance.py +4 -5
  19. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/wavesexchange.py +1 -0
  20. {ccxt-4.4.27 → ccxt-4.4.28/ccxt.egg-info}/PKG-INFO +4 -4
  21. {ccxt-4.4.27 → ccxt-4.4.28}/package.json +1 -1
  22. {ccxt-4.4.27 → ccxt-4.4.28}/LICENSE.txt +0 -0
  23. {ccxt-4.4.27 → ccxt-4.4.28}/MANIFEST.in +0 -0
  24. {ccxt-4.4.27 → ccxt-4.4.28}/README.rst +0 -0
  25. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/__init__.py +0 -0
  26. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/ace.py +0 -0
  27. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/alpaca.py +0 -0
  28. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/ascendex.py +0 -0
  29. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bequant.py +0 -0
  30. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bigone.py +0 -0
  31. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bingx.py +0 -0
  32. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bit2c.py +0 -0
  33. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitbank.py +0 -0
  34. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitbns.py +0 -0
  35. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitcoincom.py +0 -0
  36. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitfinex.py +0 -0
  37. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitfinex2.py +0 -0
  38. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitflyer.py +0 -0
  39. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitget.py +0 -0
  40. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bithumb.py +0 -0
  41. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitmart.py +0 -0
  42. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitmex.py +0 -0
  43. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitopro.py +0 -0
  44. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitpanda.py +0 -0
  45. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitrue.py +0 -0
  46. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitso.py +0 -0
  47. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitstamp.py +0 -0
  48. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitteam.py +0 -0
  49. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bitvavo.py +0 -0
  50. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bl3p.py +0 -0
  51. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/blockchaincom.py +0 -0
  52. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/blofin.py +0 -0
  53. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/btcalpha.py +0 -0
  54. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/btcbox.py +0 -0
  55. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/btcmarkets.py +0 -0
  56. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/btcturk.py +0 -0
  57. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/bybit.py +0 -0
  58. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/cex.py +0 -0
  59. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinbase.py +0 -0
  60. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinbaseadvanced.py +0 -0
  61. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinbaseexchange.py +0 -0
  62. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinbaseinternational.py +0 -0
  63. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coincatch.py +0 -0
  64. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coincheck.py +0 -0
  65. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinex.py +0 -0
  66. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinlist.py +0 -0
  67. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinmate.py +0 -0
  68. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinmetro.py +0 -0
  69. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinone.py +0 -0
  70. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinsph.py +0 -0
  71. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/coinspot.py +0 -0
  72. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/cryptocom.py +0 -0
  73. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/currencycom.py +0 -0
  74. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/delta.py +0 -0
  75. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/deribit.py +0 -0
  76. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/digifinex.py +0 -0
  77. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/exmo.py +0 -0
  78. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/fmfwio.py +0 -0
  79. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/gate.py +0 -0
  80. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/gateio.py +0 -0
  81. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/gemini.py +0 -0
  82. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/hashkey.py +0 -0
  83. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/hitbtc.py +0 -0
  84. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/hollaex.py +0 -0
  85. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/htx.py +0 -0
  86. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/huobi.py +0 -0
  87. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/huobijp.py +0 -0
  88. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/hyperliquid.py +0 -0
  89. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/idex.py +0 -0
  90. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/independentreserve.py +0 -0
  91. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/indodax.py +0 -0
  92. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/kraken.py +0 -0
  93. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/krakenfutures.py +0 -0
  94. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/kucoin.py +0 -0
  95. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/kucoinfutures.py +0 -0
  96. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/kuna.py +0 -0
  97. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/latoken.py +0 -0
  98. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/lbank.py +0 -0
  99. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/luno.py +0 -0
  100. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/lykke.py +0 -0
  101. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/mercado.py +0 -0
  102. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/mexc.py +0 -0
  103. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/ndax.py +0 -0
  104. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/novadax.py +0 -0
  105. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/oceanex.py +0 -0
  106. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/okcoin.py +0 -0
  107. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/okx.py +0 -0
  108. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/onetrading.py +0 -0
  109. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/oxfun.py +0 -0
  110. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/p2b.py +0 -0
  111. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/paradex.py +0 -0
  112. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/paymium.py +0 -0
  113. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/phemex.py +0 -0
  114. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/poloniex.py +0 -0
  115. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/poloniexfutures.py +0 -0
  116. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/probit.py +0 -0
  117. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/timex.py +0 -0
  118. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/tokocrypto.py +0 -0
  119. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/tradeogre.py +0 -0
  120. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/upbit.py +0 -0
  121. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/vertex.py +0 -0
  122. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/wavesexchange.py +0 -0
  123. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/wazirx.py +0 -0
  124. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/whitebit.py +0 -0
  125. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/woo.py +0 -0
  126. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/woofipro.py +0 -0
  127. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/xt.py +0 -0
  128. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/yobit.py +0 -0
  129. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/zaif.py +0 -0
  130. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/abstract/zonda.py +0 -0
  131. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/ace.py +0 -0
  132. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/ascendex.py +0 -0
  133. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/ace.py +0 -0
  134. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/ascendex.py +0 -0
  135. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/__init__.py +0 -0
  136. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/throttler.py +0 -0
  137. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/__init__.py +0 -0
  138. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
  139. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/cache.py +0 -0
  140. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/client.py +0 -0
  141. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/fast_client.py +0 -0
  142. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/functions.py +0 -0
  143. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/future.py +0 -0
  144. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/order_book.py +0 -0
  145. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/base/ws/order_book_side.py +0 -0
  146. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bequant.py +0 -0
  147. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bigone.py +0 -0
  148. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/binancecoinm.py +0 -0
  149. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/binanceus.py +0 -0
  150. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/binanceusdm.py +0 -0
  151. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bingx.py +0 -0
  152. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bit2c.py +0 -0
  153. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitbank.py +0 -0
  154. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitbay.py +0 -0
  155. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitbns.py +0 -0
  156. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitcoincom.py +0 -0
  157. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitfinex.py +0 -0
  158. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitfinex2.py +0 -0
  159. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitflyer.py +0 -0
  160. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitget.py +0 -0
  161. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bithumb.py +0 -0
  162. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitmart.py +0 -0
  163. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitmex.py +0 -0
  164. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitopro.py +0 -0
  165. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitpanda.py +0 -0
  166. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitrue.py +0 -0
  167. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitso.py +0 -0
  168. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitstamp.py +0 -0
  169. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitteam.py +0 -0
  170. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bitvavo.py +0 -0
  171. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bl3p.py +0 -0
  172. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/blockchaincom.py +0 -0
  173. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/blofin.py +0 -0
  174. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/btcalpha.py +0 -0
  175. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/btcbox.py +0 -0
  176. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/btcmarkets.py +0 -0
  177. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/btcturk.py +0 -0
  178. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/bybit.py +0 -0
  179. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/cex.py +0 -0
  180. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinbase.py +0 -0
  181. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinbaseadvanced.py +0 -0
  182. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinbaseexchange.py +0 -0
  183. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinbaseinternational.py +0 -0
  184. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coincatch.py +0 -0
  185. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coincheck.py +0 -0
  186. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinex.py +0 -0
  187. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinlist.py +0 -0
  188. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinmate.py +0 -0
  189. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinmetro.py +0 -0
  190. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinone.py +0 -0
  191. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinsph.py +0 -0
  192. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/coinspot.py +0 -0
  193. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/cryptocom.py +0 -0
  194. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/currencycom.py +0 -0
  195. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/delta.py +0 -0
  196. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/deribit.py +0 -0
  197. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/digifinex.py +0 -0
  198. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/exmo.py +0 -0
  199. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/fmfwio.py +0 -0
  200. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/gate.py +0 -0
  201. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/gateio.py +0 -0
  202. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/gemini.py +0 -0
  203. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/hashkey.py +0 -0
  204. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/hitbtc.py +0 -0
  205. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/hitbtc3.py +0 -0
  206. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/hollaex.py +0 -0
  207. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/htx.py +0 -0
  208. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/huobi.py +0 -0
  209. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/huobijp.py +0 -0
  210. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/hyperliquid.py +0 -0
  211. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/idex.py +0 -0
  212. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/independentreserve.py +0 -0
  213. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/indodax.py +0 -0
  214. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/krakenfutures.py +0 -0
  215. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/kucoin.py +0 -0
  216. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/kucoinfutures.py +0 -0
  217. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/kuna.py +0 -0
  218. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/latoken.py +0 -0
  219. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/lbank.py +0 -0
  220. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/luno.py +0 -0
  221. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/lykke.py +0 -0
  222. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/mercado.py +0 -0
  223. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/mexc.py +0 -0
  224. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/ndax.py +0 -0
  225. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/novadax.py +0 -0
  226. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/oceanex.py +0 -0
  227. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/okcoin.py +0 -0
  228. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/okx.py +0 -0
  229. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/onetrading.py +0 -0
  230. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/oxfun.py +0 -0
  231. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/p2b.py +0 -0
  232. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/paradex.py +0 -0
  233. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/paymium.py +0 -0
  234. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/phemex.py +0 -0
  235. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/poloniex.py +0 -0
  236. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/poloniexfutures.py +0 -0
  237. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/probit.py +0 -0
  238. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/timex.py +0 -0
  239. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/tokocrypto.py +0 -0
  240. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/tradeogre.py +0 -0
  241. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/upbit.py +0 -0
  242. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/vertex.py +0 -0
  243. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/wazirx.py +0 -0
  244. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/whitebit.py +0 -0
  245. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/woo.py +0 -0
  246. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/woofipro.py +0 -0
  247. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/xt.py +0 -0
  248. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/yobit.py +0 -0
  249. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/zaif.py +0 -0
  250. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/async_support/zonda.py +0 -0
  251. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/base/__init__.py +0 -0
  252. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/base/decimal_to_precision.py +0 -0
  253. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/base/errors.py +0 -0
  254. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/base/precise.py +0 -0
  255. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/base/types.py +0 -0
  256. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bequant.py +0 -0
  257. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bigone.py +0 -0
  258. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/binancecoinm.py +0 -0
  259. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/binanceus.py +0 -0
  260. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/binanceusdm.py +0 -0
  261. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bingx.py +0 -0
  262. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bit2c.py +0 -0
  263. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitbank.py +0 -0
  264. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitbay.py +0 -0
  265. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitbns.py +0 -0
  266. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitcoincom.py +0 -0
  267. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitfinex.py +0 -0
  268. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitfinex2.py +0 -0
  269. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitflyer.py +0 -0
  270. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitget.py +0 -0
  271. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bithumb.py +0 -0
  272. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitmart.py +0 -0
  273. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitmex.py +0 -0
  274. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitopro.py +0 -0
  275. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitpanda.py +0 -0
  276. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitrue.py +0 -0
  277. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitso.py +0 -0
  278. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitstamp.py +0 -0
  279. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitteam.py +0 -0
  280. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bitvavo.py +0 -0
  281. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bl3p.py +0 -0
  282. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/blockchaincom.py +0 -0
  283. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/blofin.py +0 -0
  284. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/btcalpha.py +0 -0
  285. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/btcbox.py +0 -0
  286. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/btcmarkets.py +0 -0
  287. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/btcturk.py +0 -0
  288. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/bybit.py +0 -0
  289. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/cex.py +0 -0
  290. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinbase.py +0 -0
  291. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinbaseadvanced.py +0 -0
  292. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinbaseexchange.py +0 -0
  293. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinbaseinternational.py +0 -0
  294. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coincatch.py +0 -0
  295. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coincheck.py +0 -0
  296. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinex.py +0 -0
  297. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinlist.py +0 -0
  298. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinmate.py +0 -0
  299. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinmetro.py +0 -0
  300. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinone.py +0 -0
  301. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinsph.py +0 -0
  302. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/coinspot.py +0 -0
  303. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/cryptocom.py +0 -0
  304. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/currencycom.py +0 -0
  305. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/delta.py +0 -0
  306. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/deribit.py +0 -0
  307. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/digifinex.py +0 -0
  308. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/exmo.py +0 -0
  309. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/fmfwio.py +0 -0
  310. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/gate.py +0 -0
  311. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/gateio.py +0 -0
  312. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/gemini.py +0 -0
  313. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/hashkey.py +0 -0
  314. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/hitbtc.py +0 -0
  315. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/hitbtc3.py +0 -0
  316. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/hollaex.py +0 -0
  317. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/htx.py +0 -0
  318. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/huobi.py +0 -0
  319. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/huobijp.py +0 -0
  320. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/hyperliquid.py +0 -0
  321. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/idex.py +0 -0
  322. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/independentreserve.py +0 -0
  323. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/indodax.py +0 -0
  324. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/krakenfutures.py +0 -0
  325. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/kucoin.py +0 -0
  326. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/kucoinfutures.py +0 -0
  327. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/kuna.py +0 -0
  328. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/latoken.py +0 -0
  329. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/lbank.py +0 -0
  330. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/luno.py +0 -0
  331. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/lykke.py +0 -0
  332. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/mercado.py +0 -0
  333. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/mexc.py +0 -0
  334. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/ndax.py +0 -0
  335. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/novadax.py +0 -0
  336. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/oceanex.py +0 -0
  337. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/okcoin.py +0 -0
  338. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/okx.py +0 -0
  339. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/onetrading.py +0 -0
  340. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/oxfun.py +0 -0
  341. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/p2b.py +0 -0
  342. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/paradex.py +0 -0
  343. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/paymium.py +0 -0
  344. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/phemex.py +0 -0
  345. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/poloniex.py +0 -0
  346. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/poloniexfutures.py +0 -0
  347. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/alpaca.py +0 -0
  348. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/ascendex.py +0 -0
  349. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bequant.py +0 -0
  350. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/binancecoinm.py +0 -0
  351. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/binanceus.py +0 -0
  352. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/binanceusdm.py +0 -0
  353. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bingx.py +0 -0
  354. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitcoincom.py +0 -0
  355. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitfinex.py +0 -0
  356. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitfinex2.py +0 -0
  357. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitget.py +0 -0
  358. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bithumb.py +0 -0
  359. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitmart.py +0 -0
  360. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitmex.py +0 -0
  361. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitopro.py +0 -0
  362. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitpanda.py +0 -0
  363. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitrue.py +0 -0
  364. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitstamp.py +0 -0
  365. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bitvavo.py +0 -0
  366. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/blockchaincom.py +0 -0
  367. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/blofin.py +0 -0
  368. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/bybit.py +0 -0
  369. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/cex.py +0 -0
  370. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coinbase.py +0 -0
  371. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coinbaseadvanced.py +0 -0
  372. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coinbaseexchange.py +0 -0
  373. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coinbaseinternational.py +0 -0
  374. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coincatch.py +0 -0
  375. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coincheck.py +0 -0
  376. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coinex.py +0 -0
  377. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/coinone.py +0 -0
  378. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/cryptocom.py +0 -0
  379. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/currencycom.py +0 -0
  380. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/deribit.py +0 -0
  381. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/exmo.py +0 -0
  382. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/gate.py +0 -0
  383. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/gateio.py +0 -0
  384. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/gemini.py +0 -0
  385. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/hashkey.py +0 -0
  386. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/hitbtc.py +0 -0
  387. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/hollaex.py +0 -0
  388. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/htx.py +0 -0
  389. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/huobi.py +0 -0
  390. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/huobijp.py +0 -0
  391. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/hyperliquid.py +0 -0
  392. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/idex.py +0 -0
  393. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/independentreserve.py +0 -0
  394. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/kraken.py +0 -0
  395. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/krakenfutures.py +0 -0
  396. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/kucoin.py +0 -0
  397. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/kucoinfutures.py +0 -0
  398. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/lbank.py +0 -0
  399. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/luno.py +0 -0
  400. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/mexc.py +0 -0
  401. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/ndax.py +0 -0
  402. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/okcoin.py +0 -0
  403. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/okx.py +0 -0
  404. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/onetrading.py +0 -0
  405. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/oxfun.py +0 -0
  406. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/p2b.py +0 -0
  407. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/paradex.py +0 -0
  408. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/phemex.py +0 -0
  409. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/poloniex.py +0 -0
  410. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/poloniexfutures.py +0 -0
  411. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/probit.py +0 -0
  412. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/upbit.py +0 -0
  413. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/vertex.py +0 -0
  414. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/wazirx.py +0 -0
  415. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/whitebit.py +0 -0
  416. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/woo.py +0 -0
  417. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/woofipro.py +0 -0
  418. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/pro/xt.py +0 -0
  419. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/probit.py +0 -0
  420. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/__init__.py +0 -0
  421. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
  422. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
  423. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
  424. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/der.py +0 -0
  425. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
  426. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
  427. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
  428. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
  429. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
  430. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ecdsa/util.py +0 -0
  431. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
  432. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
  433. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
  434. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
  435. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
  436. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
  437. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
  438. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
  439. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
  440. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
  441. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
  442. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  443. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
  444. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
  445. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
  446. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
  447. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
  448. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
  449. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
  450. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
  451. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
  452. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
  453. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
  454. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
  455. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  456. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
  457. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
  458. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
  459. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  460. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
  461. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
  462. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
  463. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
  464. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
  465. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
  466. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
  467. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
  468. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
  469. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  470. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
  471. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
  472. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
  473. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
  474. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
  475. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
  476. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
  477. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
  478. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
  479. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
  480. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
  481. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
  482. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
  483. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
  484. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
  485. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
  486. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
  487. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  488. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
  489. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
  490. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
  491. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
  492. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
  493. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/keccak/__init__.py +0 -0
  494. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/keccak/keccak.py +0 -0
  495. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/__init__.py +0 -0
  496. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/__pyinstaller/__init__.py +0 -0
  497. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +0 -0
  498. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/ast_utils.py +0 -0
  499. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/common.py +0 -0
  500. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/exceptions.py +0 -0
  501. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/grammar.py +0 -0
  502. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/grammars/__init__.py +0 -0
  503. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/indenter.py +0 -0
  504. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/lark.py +0 -0
  505. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/lexer.py +0 -0
  506. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/load_grammar.py +0 -0
  507. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parse_tree_builder.py +0 -0
  508. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parser_frontends.py +0 -0
  509. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/__init__.py +0 -0
  510. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/cyk.py +0 -0
  511. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/earley.py +0 -0
  512. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/earley_common.py +0 -0
  513. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/earley_forest.py +0 -0
  514. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/grammar_analysis.py +0 -0
  515. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/lalr_analysis.py +0 -0
  516. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +0 -0
  517. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/lalr_parser.py +0 -0
  518. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +0 -0
  519. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/parsers/xearley.py +0 -0
  520. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/py.typed +0 -0
  521. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/reconstruct.py +0 -0
  522. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/tools/__init__.py +0 -0
  523. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/tools/nearley.py +0 -0
  524. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/tools/serialize.py +0 -0
  525. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/tools/standalone.py +0 -0
  526. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/tree.py +0 -0
  527. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/tree_matcher.py +0 -0
  528. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/tree_templates.py +0 -0
  529. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/utils.py +0 -0
  530. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/lark/visitors.py +0 -0
  531. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/__init__.py +0 -0
  532. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/base.py +0 -0
  533. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/class_registry.py +0 -0
  534. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/decorators.py +0 -0
  535. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/error_store.py +0 -0
  536. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/exceptions.py +0 -0
  537. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/fields.py +0 -0
  538. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/orderedset.py +0 -0
  539. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/py.typed +0 -0
  540. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/schema.py +0 -0
  541. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/types.py +0 -0
  542. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/utils.py +0 -0
  543. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/validate.py +0 -0
  544. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow/warnings.py +0 -0
  545. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_dataclass/__init__.py +0 -0
  546. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +0 -0
  547. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +0 -0
  548. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_dataclass/mypy.py +0 -0
  549. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
  550. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_dataclass/typing.py +0 -0
  551. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_dataclass/union_field.py +0 -0
  552. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +0 -0
  553. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +0 -0
  554. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
  555. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
  556. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
  557. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/msgpack/ext.py +0 -0
  558. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
  559. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
  560. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
  561. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
  562. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
  563. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
  564. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
  565. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/__init__.py +0 -0
  566. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/__init__.py +0 -0
  567. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/data_types.py +0 -0
  568. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py +0 -0
  569. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +0 -0
  570. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +0 -0
  571. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +0 -0
  572. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/felt.py +0 -0
  573. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/type_parser.py +0 -0
  574. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/v1/__init__.py +0 -0
  575. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +0 -0
  576. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/v2/__init__.py +0 -0
  577. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +0 -0
  578. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/ccxt_utils.py +0 -0
  579. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/common.py +0 -0
  580. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/constants.py +0 -0
  581. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
  582. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/hash/address.py +0 -0
  583. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +0 -0
  584. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/hash/selector.py +0 -0
  585. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/hash/storage.py +0 -0
  586. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/hash/utils.py +0 -0
  587. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/models/__init__.py +0 -0
  588. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/models/typed_data.py +0 -0
  589. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/__init__.py +0 -0
  590. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +0 -0
  591. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/_context.py +0 -0
  592. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +0 -0
  593. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +0 -0
  594. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +0 -0
  595. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +0 -0
  596. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +0 -0
  597. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +0 -0
  598. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +0 -0
  599. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +0 -0
  600. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +0 -0
  601. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +0 -0
  602. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +0 -0
  603. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +0 -0
  604. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +0 -0
  605. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +0 -0
  606. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +0 -0
  607. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +0 -0
  608. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +0 -0
  609. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/errors.py +0 -0
  610. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/factory.py +0 -0
  611. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +0 -0
  612. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +0 -0
  613. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
  614. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +0 -0
  615. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/utils/iterable.py +0 -0
  616. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/utils/schema.py +0 -0
  617. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starknet/utils/typed_data.py +0 -0
  618. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starkware/__init__.py +0 -0
  619. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
  620. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +0 -0
  621. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starkware/crypto/math_utils.py +0 -0
  622. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starkware/crypto/signature.py +0 -0
  623. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/starkware/crypto/utils.py +0 -0
  624. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/__init__.py +0 -0
  625. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/core/__init__.py +0 -0
  626. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/core/intfunc.py +0 -0
  627. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/external/__init__.py +0 -0
  628. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/external/gmpy.py +0 -0
  629. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/external/importtools.py +0 -0
  630. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/external/ntheory.py +0 -0
  631. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/sympy/external/pythonmpq.py +0 -0
  632. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/__init__.py +0 -0
  633. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
  634. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/_version.py +0 -0
  635. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
  636. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
  637. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
  638. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
  639. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
  640. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
  641. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
  642. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/recipes.py +0 -0
  643. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/toolz/utils.py +0 -0
  644. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
  645. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/static_dependencies/typing_inspect/typing_inspect.py +0 -0
  646. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/test/__init__.py +0 -0
  647. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/test/tests_async.py +0 -0
  648. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/test/tests_helpers.py +0 -0
  649. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/test/tests_init.py +0 -0
  650. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/test/tests_sync.py +0 -0
  651. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/timex.py +0 -0
  652. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/tokocrypto.py +0 -0
  653. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/tradeogre.py +0 -0
  654. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/upbit.py +0 -0
  655. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/vertex.py +0 -0
  656. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/wazirx.py +0 -0
  657. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/whitebit.py +0 -0
  658. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/woo.py +0 -0
  659. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/woofipro.py +0 -0
  660. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/xt.py +0 -0
  661. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/yobit.py +0 -0
  662. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/zaif.py +0 -0
  663. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt/zonda.py +0 -0
  664. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt.egg-info/SOURCES.txt +0 -0
  665. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt.egg-info/dependency_links.txt +0 -0
  666. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt.egg-info/requires.txt +0 -0
  667. {ccxt-4.4.27 → ccxt-4.4.28}/ccxt.egg-info/top_level.txt +0 -0
  668. {ccxt-4.4.27 → ccxt-4.4.28}/setup.cfg +0 -0
  669. {ccxt-4.4.27 → ccxt-4.4.28}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.4.27
3
+ Version: 4.4.28
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
@@ -262,13 +262,13 @@ console.log(version, Object.keys(exchanges));
262
262
 
263
263
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
264
264
 
265
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.27/dist/ccxt.browser.min.js
266
- * unpkg: https://unpkg.com/ccxt@4.4.27/dist/ccxt.browser.min.js
265
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.28/dist/ccxt.browser.min.js
266
+ * unpkg: https://unpkg.com/ccxt@4.4.28/dist/ccxt.browser.min.js
267
267
 
268
268
  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.
269
269
 
270
270
  ```HTML
271
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.27/dist/ccxt.browser.min.js"></script>
271
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.28/dist/ccxt.browser.min.js"></script>
272
272
  ```
273
273
 
274
274
  Creates a global `ccxt` object:
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '4.4.27'
25
+ __version__ = '4.4.28'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -587,6 +587,9 @@ class ImplicitAPI:
587
587
  eapiprivate_get_mmp = eapiPrivateGetMmp = Entry('mmp', 'eapiPrivate', 'GET', {'cost': 1})
588
588
  eapiprivate_get_countdowncancelall = eapiPrivateGetCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'GET', {'cost': 1})
589
589
  eapiprivate_get_order = eapiPrivateGetOrder = Entry('order', 'eapiPrivate', 'GET', {'cost': 1})
590
+ eapiprivate_get_block_order_orders = eapiPrivateGetBlockOrderOrders = Entry('block/order/orders', 'eapiPrivate', 'GET', {'cost': 5})
591
+ eapiprivate_get_block_order_execute = eapiPrivateGetBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'GET', {'cost': 5})
592
+ eapiprivate_get_block_user_trades = eapiPrivateGetBlockUserTrades = Entry('block/user-trades', 'eapiPrivate', 'GET', {'cost': 5})
590
593
  eapiprivate_post_order = eapiPrivatePostOrder = Entry('order', 'eapiPrivate', 'POST', {'cost': 1})
591
594
  eapiprivate_post_batchorders = eapiPrivatePostBatchOrders = Entry('batchOrders', 'eapiPrivate', 'POST', {'cost': 5})
592
595
  eapiprivate_post_listenkey = eapiPrivatePostListenKey = Entry('listenKey', 'eapiPrivate', 'POST', {'cost': 1})
@@ -594,12 +597,16 @@ class ImplicitAPI:
594
597
  eapiprivate_post_mmpreset = eapiPrivatePostMmpReset = Entry('mmpReset', 'eapiPrivate', 'POST', {'cost': 1})
595
598
  eapiprivate_post_countdowncancelall = eapiPrivatePostCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'POST', {'cost': 1})
596
599
  eapiprivate_post_countdowncancelallheartbeat = eapiPrivatePostCountdownCancelAllHeartBeat = Entry('countdownCancelAllHeartBeat', 'eapiPrivate', 'POST', {'cost': 10})
600
+ eapiprivate_post_block_order_create = eapiPrivatePostBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'POST', {'cost': 5})
601
+ eapiprivate_post_block_order_execute = eapiPrivatePostBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'POST', {'cost': 5})
597
602
  eapiprivate_put_listenkey = eapiPrivatePutListenKey = Entry('listenKey', 'eapiPrivate', 'PUT', {'cost': 1})
603
+ eapiprivate_put_block_order_create = eapiPrivatePutBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'PUT', {'cost': 5})
598
604
  eapiprivate_delete_order = eapiPrivateDeleteOrder = Entry('order', 'eapiPrivate', 'DELETE', {'cost': 1})
599
605
  eapiprivate_delete_batchorders = eapiPrivateDeleteBatchOrders = Entry('batchOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
600
606
  eapiprivate_delete_allopenorders = eapiPrivateDeleteAllOpenOrders = Entry('allOpenOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
601
607
  eapiprivate_delete_allopenordersbyunderlying = eapiPrivateDeleteAllOpenOrdersByUnderlying = Entry('allOpenOrdersByUnderlying', 'eapiPrivate', 'DELETE', {'cost': 1})
602
608
  eapiprivate_delete_listenkey = eapiPrivateDeleteListenKey = Entry('listenKey', 'eapiPrivate', 'DELETE', {'cost': 1})
609
+ eapiprivate_delete_block_order_create = eapiPrivateDeleteBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'DELETE', {'cost': 5})
603
610
  public_get_ping = publicGetPing = Entry('ping', 'public', 'GET', {'cost': 0.2})
604
611
  public_get_time = publicGetTime = Entry('time', 'public', 'GET', {'cost': 0.2})
605
612
  public_get_depth = publicGetDepth = Entry('depth', 'public', 'GET', {'cost': 1, 'byLimit': [[100, 1], [500, 5], [1000, 10], [5000, 50]]})
@@ -587,6 +587,9 @@ class ImplicitAPI:
587
587
  eapiprivate_get_mmp = eapiPrivateGetMmp = Entry('mmp', 'eapiPrivate', 'GET', {'cost': 1})
588
588
  eapiprivate_get_countdowncancelall = eapiPrivateGetCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'GET', {'cost': 1})
589
589
  eapiprivate_get_order = eapiPrivateGetOrder = Entry('order', 'eapiPrivate', 'GET', {'cost': 1})
590
+ eapiprivate_get_block_order_orders = eapiPrivateGetBlockOrderOrders = Entry('block/order/orders', 'eapiPrivate', 'GET', {'cost': 5})
591
+ eapiprivate_get_block_order_execute = eapiPrivateGetBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'GET', {'cost': 5})
592
+ eapiprivate_get_block_user_trades = eapiPrivateGetBlockUserTrades = Entry('block/user-trades', 'eapiPrivate', 'GET', {'cost': 5})
590
593
  eapiprivate_post_order = eapiPrivatePostOrder = Entry('order', 'eapiPrivate', 'POST', {'cost': 1})
591
594
  eapiprivate_post_batchorders = eapiPrivatePostBatchOrders = Entry('batchOrders', 'eapiPrivate', 'POST', {'cost': 5})
592
595
  eapiprivate_post_listenkey = eapiPrivatePostListenKey = Entry('listenKey', 'eapiPrivate', 'POST', {'cost': 1})
@@ -594,12 +597,16 @@ class ImplicitAPI:
594
597
  eapiprivate_post_mmpreset = eapiPrivatePostMmpReset = Entry('mmpReset', 'eapiPrivate', 'POST', {'cost': 1})
595
598
  eapiprivate_post_countdowncancelall = eapiPrivatePostCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'POST', {'cost': 1})
596
599
  eapiprivate_post_countdowncancelallheartbeat = eapiPrivatePostCountdownCancelAllHeartBeat = Entry('countdownCancelAllHeartBeat', 'eapiPrivate', 'POST', {'cost': 10})
600
+ eapiprivate_post_block_order_create = eapiPrivatePostBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'POST', {'cost': 5})
601
+ eapiprivate_post_block_order_execute = eapiPrivatePostBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'POST', {'cost': 5})
597
602
  eapiprivate_put_listenkey = eapiPrivatePutListenKey = Entry('listenKey', 'eapiPrivate', 'PUT', {'cost': 1})
603
+ eapiprivate_put_block_order_create = eapiPrivatePutBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'PUT', {'cost': 5})
598
604
  eapiprivate_delete_order = eapiPrivateDeleteOrder = Entry('order', 'eapiPrivate', 'DELETE', {'cost': 1})
599
605
  eapiprivate_delete_batchorders = eapiPrivateDeleteBatchOrders = Entry('batchOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
600
606
  eapiprivate_delete_allopenorders = eapiPrivateDeleteAllOpenOrders = Entry('allOpenOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
601
607
  eapiprivate_delete_allopenordersbyunderlying = eapiPrivateDeleteAllOpenOrdersByUnderlying = Entry('allOpenOrdersByUnderlying', 'eapiPrivate', 'DELETE', {'cost': 1})
602
608
  eapiprivate_delete_listenkey = eapiPrivateDeleteListenKey = Entry('listenKey', 'eapiPrivate', 'DELETE', {'cost': 1})
609
+ eapiprivate_delete_block_order_create = eapiPrivateDeleteBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'DELETE', {'cost': 5})
603
610
  public_get_ping = publicGetPing = Entry('ping', 'public', 'GET', {'cost': 0.2})
604
611
  public_get_time = publicGetTime = Entry('time', 'public', 'GET', {'cost': 0.2})
605
612
  public_get_depth = publicGetDepth = Entry('depth', 'public', 'GET', {'cost': 1, 'byLimit': [[100, 1], [500, 5], [1000, 10], [5000, 50]]})
@@ -639,6 +639,9 @@ class ImplicitAPI:
639
639
  eapiprivate_get_mmp = eapiPrivateGetMmp = Entry('mmp', 'eapiPrivate', 'GET', {'cost': 1})
640
640
  eapiprivate_get_countdowncancelall = eapiPrivateGetCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'GET', {'cost': 1})
641
641
  eapiprivate_get_order = eapiPrivateGetOrder = Entry('order', 'eapiPrivate', 'GET', {'cost': 1})
642
+ eapiprivate_get_block_order_orders = eapiPrivateGetBlockOrderOrders = Entry('block/order/orders', 'eapiPrivate', 'GET', {'cost': 5})
643
+ eapiprivate_get_block_order_execute = eapiPrivateGetBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'GET', {'cost': 5})
644
+ eapiprivate_get_block_user_trades = eapiPrivateGetBlockUserTrades = Entry('block/user-trades', 'eapiPrivate', 'GET', {'cost': 5})
642
645
  eapiprivate_post_order = eapiPrivatePostOrder = Entry('order', 'eapiPrivate', 'POST', {'cost': 1})
643
646
  eapiprivate_post_batchorders = eapiPrivatePostBatchOrders = Entry('batchOrders', 'eapiPrivate', 'POST', {'cost': 5})
644
647
  eapiprivate_post_listenkey = eapiPrivatePostListenKey = Entry('listenKey', 'eapiPrivate', 'POST', {'cost': 1})
@@ -646,12 +649,16 @@ class ImplicitAPI:
646
649
  eapiprivate_post_mmpreset = eapiPrivatePostMmpReset = Entry('mmpReset', 'eapiPrivate', 'POST', {'cost': 1})
647
650
  eapiprivate_post_countdowncancelall = eapiPrivatePostCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'POST', {'cost': 1})
648
651
  eapiprivate_post_countdowncancelallheartbeat = eapiPrivatePostCountdownCancelAllHeartBeat = Entry('countdownCancelAllHeartBeat', 'eapiPrivate', 'POST', {'cost': 10})
652
+ eapiprivate_post_block_order_create = eapiPrivatePostBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'POST', {'cost': 5})
653
+ eapiprivate_post_block_order_execute = eapiPrivatePostBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'POST', {'cost': 5})
649
654
  eapiprivate_put_listenkey = eapiPrivatePutListenKey = Entry('listenKey', 'eapiPrivate', 'PUT', {'cost': 1})
655
+ eapiprivate_put_block_order_create = eapiPrivatePutBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'PUT', {'cost': 5})
650
656
  eapiprivate_delete_order = eapiPrivateDeleteOrder = Entry('order', 'eapiPrivate', 'DELETE', {'cost': 1})
651
657
  eapiprivate_delete_batchorders = eapiPrivateDeleteBatchOrders = Entry('batchOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
652
658
  eapiprivate_delete_allopenorders = eapiPrivateDeleteAllOpenOrders = Entry('allOpenOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
653
659
  eapiprivate_delete_allopenordersbyunderlying = eapiPrivateDeleteAllOpenOrdersByUnderlying = Entry('allOpenOrdersByUnderlying', 'eapiPrivate', 'DELETE', {'cost': 1})
654
660
  eapiprivate_delete_listenkey = eapiPrivateDeleteListenKey = Entry('listenKey', 'eapiPrivate', 'DELETE', {'cost': 1})
661
+ eapiprivate_delete_block_order_create = eapiPrivateDeleteBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'DELETE', {'cost': 5})
655
662
  public_get_ping = publicGetPing = Entry('ping', 'public', 'GET', {'cost': 1})
656
663
  public_get_time = publicGetTime = Entry('time', 'public', 'GET', {'cost': 1})
657
664
  public_get_depth = publicGetDepth = Entry('depth', 'public', 'GET', {'cost': 1, 'byLimit': [[100, 1], [500, 5], [1000, 10], [5000, 50]]})
@@ -587,6 +587,9 @@ class ImplicitAPI:
587
587
  eapiprivate_get_mmp = eapiPrivateGetMmp = Entry('mmp', 'eapiPrivate', 'GET', {'cost': 1})
588
588
  eapiprivate_get_countdowncancelall = eapiPrivateGetCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'GET', {'cost': 1})
589
589
  eapiprivate_get_order = eapiPrivateGetOrder = Entry('order', 'eapiPrivate', 'GET', {'cost': 1})
590
+ eapiprivate_get_block_order_orders = eapiPrivateGetBlockOrderOrders = Entry('block/order/orders', 'eapiPrivate', 'GET', {'cost': 5})
591
+ eapiprivate_get_block_order_execute = eapiPrivateGetBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'GET', {'cost': 5})
592
+ eapiprivate_get_block_user_trades = eapiPrivateGetBlockUserTrades = Entry('block/user-trades', 'eapiPrivate', 'GET', {'cost': 5})
590
593
  eapiprivate_post_order = eapiPrivatePostOrder = Entry('order', 'eapiPrivate', 'POST', {'cost': 1})
591
594
  eapiprivate_post_batchorders = eapiPrivatePostBatchOrders = Entry('batchOrders', 'eapiPrivate', 'POST', {'cost': 5})
592
595
  eapiprivate_post_listenkey = eapiPrivatePostListenKey = Entry('listenKey', 'eapiPrivate', 'POST', {'cost': 1})
@@ -594,12 +597,16 @@ class ImplicitAPI:
594
597
  eapiprivate_post_mmpreset = eapiPrivatePostMmpReset = Entry('mmpReset', 'eapiPrivate', 'POST', {'cost': 1})
595
598
  eapiprivate_post_countdowncancelall = eapiPrivatePostCountdownCancelAll = Entry('countdownCancelAll', 'eapiPrivate', 'POST', {'cost': 1})
596
599
  eapiprivate_post_countdowncancelallheartbeat = eapiPrivatePostCountdownCancelAllHeartBeat = Entry('countdownCancelAllHeartBeat', 'eapiPrivate', 'POST', {'cost': 10})
600
+ eapiprivate_post_block_order_create = eapiPrivatePostBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'POST', {'cost': 5})
601
+ eapiprivate_post_block_order_execute = eapiPrivatePostBlockOrderExecute = Entry('block/order/execute', 'eapiPrivate', 'POST', {'cost': 5})
597
602
  eapiprivate_put_listenkey = eapiPrivatePutListenKey = Entry('listenKey', 'eapiPrivate', 'PUT', {'cost': 1})
603
+ eapiprivate_put_block_order_create = eapiPrivatePutBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'PUT', {'cost': 5})
598
604
  eapiprivate_delete_order = eapiPrivateDeleteOrder = Entry('order', 'eapiPrivate', 'DELETE', {'cost': 1})
599
605
  eapiprivate_delete_batchorders = eapiPrivateDeleteBatchOrders = Entry('batchOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
600
606
  eapiprivate_delete_allopenorders = eapiPrivateDeleteAllOpenOrders = Entry('allOpenOrders', 'eapiPrivate', 'DELETE', {'cost': 1})
601
607
  eapiprivate_delete_allopenordersbyunderlying = eapiPrivateDeleteAllOpenOrdersByUnderlying = Entry('allOpenOrdersByUnderlying', 'eapiPrivate', 'DELETE', {'cost': 1})
602
608
  eapiprivate_delete_listenkey = eapiPrivateDeleteListenKey = Entry('listenKey', 'eapiPrivate', 'DELETE', {'cost': 1})
609
+ eapiprivate_delete_block_order_create = eapiPrivateDeleteBlockOrderCreate = Entry('block/order/create', 'eapiPrivate', 'DELETE', {'cost': 5})
603
610
  public_get_ping = publicGetPing = Entry('ping', 'public', 'GET', {'cost': 0.2})
604
611
  public_get_time = publicGetTime = Entry('time', 'public', 'GET', {'cost': 0.2})
605
612
  public_get_depth = publicGetDepth = Entry('depth', 'public', 'GET', {'cost': 1, 'byLimit': [[100, 1], [500, 5], [1000, 10], [5000, 50]]})
@@ -17,6 +17,7 @@ from ccxt.base.errors import InvalidOrder
17
17
  from ccxt.base.errors import NotSupported
18
18
  from ccxt.base.errors import RateLimitExceeded
19
19
  from ccxt.base.decimal_to_precision import TICK_SIZE
20
+ from ccxt.base.precise import Precise
20
21
 
21
22
 
22
23
  class alpaca(Exchange, ImplicitAPI):
@@ -1313,19 +1314,19 @@ class alpaca(Exchange, ImplicitAPI):
1313
1314
  response = self.traderPrivatePostV2WalletsTransfers(self.extend(request, params))
1314
1315
  #
1315
1316
  # {
1316
- # "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1317
- # "tx_hash": "string",
1318
- # "direction": "INCOMING",
1317
+ # "id": "e27b70a6-5610-40d7-8468-a516a284b776",
1318
+ # "tx_hash": null,
1319
+ # "direction": "OUTGOING",
1320
+ # "amount": "20",
1321
+ # "usd_value": "19.99856",
1322
+ # "chain": "ETH",
1323
+ # "asset": "USDT",
1324
+ # "from_address": "0x123930E4dCA196E070d39B60c644C8Aae02f23",
1325
+ # "to_address": "0x1232c0925196e4dcf05945f67f690153190fbaab",
1319
1326
  # "status": "PROCESSING",
1320
- # "amount": "string",
1321
- # "usd_value": "string",
1322
- # "network_fee": "string",
1323
- # "fees": "string",
1324
- # "chain": "string",
1325
- # "asset": "string",
1326
- # "from_address": "string",
1327
- # "to_address": "string",
1328
- # "created_at": "2024-11-02T07:42:48.402Z"
1327
+ # "created_at": "2024-11-07T02:39:01.775495Z",
1328
+ # "network_fee": "4",
1329
+ # "fees": "0.1"
1329
1330
  # }
1330
1331
  #
1331
1332
  return self.parse_transaction(response, currency)
@@ -1338,19 +1339,19 @@ class alpaca(Exchange, ImplicitAPI):
1338
1339
  response = self.traderPrivateGetV2WalletsTransfers(params)
1339
1340
  #
1340
1341
  # {
1341
- # "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1342
- # "tx_hash": "string",
1343
- # "direction": "INCOMING",
1342
+ # "id": "e27b70a6-5610-40d7-8468-a516a284b776",
1343
+ # "tx_hash": null,
1344
+ # "direction": "OUTGOING",
1345
+ # "amount": "20",
1346
+ # "usd_value": "19.99856",
1347
+ # "chain": "ETH",
1348
+ # "asset": "USDT",
1349
+ # "from_address": "0x123930E4dCA196E070d39B60c644C8Aae02f23",
1350
+ # "to_address": "0x1232c0925196e4dcf05945f67f690153190fbaab",
1344
1351
  # "status": "PROCESSING",
1345
- # "amount": "string",
1346
- # "usd_value": "string",
1347
- # "network_fee": "string",
1348
- # "fees": "string",
1349
- # "chain": "string",
1350
- # "asset": "string",
1351
- # "from_address": "string",
1352
- # "to_address": "string",
1353
- # "created_at": "2024-11-02T07:42:48.402Z"
1352
+ # "created_at": "2024-11-07T02:39:01.775495Z",
1353
+ # "network_fee": "4",
1354
+ # "fees": "0.1"
1354
1355
  # }
1355
1356
  #
1356
1357
  results = []
@@ -1359,7 +1360,7 @@ class alpaca(Exchange, ImplicitAPI):
1359
1360
  direction = self.safe_string(entry, 'direction')
1360
1361
  if direction == type:
1361
1362
  results.append(entry)
1362
- elif direction == 'BOTH':
1363
+ elif type == 'BOTH':
1363
1364
  results.append(entry)
1364
1365
  return self.parse_transactions(results, currency, since, limit, params)
1365
1366
 
@@ -1402,26 +1403,29 @@ class alpaca(Exchange, ImplicitAPI):
1402
1403
  def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
1403
1404
  #
1404
1405
  # {
1405
- # "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1406
- # "tx_hash": "string",
1407
- # "direction": "INCOMING",
1406
+ # "id": "e27b70a6-5610-40d7-8468-a516a284b776",
1407
+ # "tx_hash": null,
1408
+ # "direction": "OUTGOING",
1409
+ # "amount": "20",
1410
+ # "usd_value": "19.99856",
1411
+ # "chain": "ETH",
1412
+ # "asset": "USDT",
1413
+ # "from_address": "0x123930E4dCA196E070d39B60c644C8Aae02f23",
1414
+ # "to_address": "0x1232c0925196e4dcf05945f67f690153190fbaab",
1408
1415
  # "status": "PROCESSING",
1409
- # "amount": "string",
1410
- # "usd_value": "string",
1411
- # "network_fee": "string",
1412
- # "fees": "string",
1413
- # "chain": "string",
1414
- # "asset": "string",
1415
- # "from_address": "string",
1416
- # "to_address": "string",
1417
- # "created_at": "2024-11-02T07:42:48.402Z"
1416
+ # "created_at": "2024-11-07T02:39:01.775495Z",
1417
+ # "network_fee": "4",
1418
+ # "fees": "0.1"
1418
1419
  # }
1419
1420
  #
1420
1421
  datetime = self.safe_string(transaction, 'created_at')
1421
1422
  currencyId = self.safe_string(transaction, 'asset')
1422
1423
  code = self.safe_currency_code(currencyId, currency)
1424
+ fees = self.safe_string(transaction, 'fees')
1425
+ networkFee = self.safe_string(transaction, 'network_fee')
1426
+ totalFee = Precise.string_add(fees, networkFee)
1423
1427
  fee = {
1424
- 'cost': self.safe_number(transaction, 'fees'),
1428
+ 'cost': self.parse_number(totalFee),
1425
1429
  'currency': code,
1426
1430
  }
1427
1431
  return {
@@ -1450,8 +1454,8 @@ class alpaca(Exchange, ImplicitAPI):
1450
1454
  def parse_transaction_status(self, status: Str):
1451
1455
  statuses: dict = {
1452
1456
  'PROCESSING': 'pending',
1453
- # 'FAILED': 'failed',
1454
- # 'SUCCESS': 'ok',
1457
+ 'FAILED': 'failed',
1458
+ 'COMPLETE': 'ok',
1455
1459
  }
1456
1460
  return self.safe_string(statuses, status, status)
1457
1461
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.4.27'
7
+ __version__ = '4.4.28'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -17,6 +17,7 @@ from ccxt.base.errors import InvalidOrder
17
17
  from ccxt.base.errors import NotSupported
18
18
  from ccxt.base.errors import RateLimitExceeded
19
19
  from ccxt.base.decimal_to_precision import TICK_SIZE
20
+ from ccxt.base.precise import Precise
20
21
 
21
22
 
22
23
  class alpaca(Exchange, ImplicitAPI):
@@ -1313,19 +1314,19 @@ class alpaca(Exchange, ImplicitAPI):
1313
1314
  response = await self.traderPrivatePostV2WalletsTransfers(self.extend(request, params))
1314
1315
  #
1315
1316
  # {
1316
- # "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1317
- # "tx_hash": "string",
1318
- # "direction": "INCOMING",
1317
+ # "id": "e27b70a6-5610-40d7-8468-a516a284b776",
1318
+ # "tx_hash": null,
1319
+ # "direction": "OUTGOING",
1320
+ # "amount": "20",
1321
+ # "usd_value": "19.99856",
1322
+ # "chain": "ETH",
1323
+ # "asset": "USDT",
1324
+ # "from_address": "0x123930E4dCA196E070d39B60c644C8Aae02f23",
1325
+ # "to_address": "0x1232c0925196e4dcf05945f67f690153190fbaab",
1319
1326
  # "status": "PROCESSING",
1320
- # "amount": "string",
1321
- # "usd_value": "string",
1322
- # "network_fee": "string",
1323
- # "fees": "string",
1324
- # "chain": "string",
1325
- # "asset": "string",
1326
- # "from_address": "string",
1327
- # "to_address": "string",
1328
- # "created_at": "2024-11-02T07:42:48.402Z"
1327
+ # "created_at": "2024-11-07T02:39:01.775495Z",
1328
+ # "network_fee": "4",
1329
+ # "fees": "0.1"
1329
1330
  # }
1330
1331
  #
1331
1332
  return self.parse_transaction(response, currency)
@@ -1338,19 +1339,19 @@ class alpaca(Exchange, ImplicitAPI):
1338
1339
  response = await self.traderPrivateGetV2WalletsTransfers(params)
1339
1340
  #
1340
1341
  # {
1341
- # "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1342
- # "tx_hash": "string",
1343
- # "direction": "INCOMING",
1342
+ # "id": "e27b70a6-5610-40d7-8468-a516a284b776",
1343
+ # "tx_hash": null,
1344
+ # "direction": "OUTGOING",
1345
+ # "amount": "20",
1346
+ # "usd_value": "19.99856",
1347
+ # "chain": "ETH",
1348
+ # "asset": "USDT",
1349
+ # "from_address": "0x123930E4dCA196E070d39B60c644C8Aae02f23",
1350
+ # "to_address": "0x1232c0925196e4dcf05945f67f690153190fbaab",
1344
1351
  # "status": "PROCESSING",
1345
- # "amount": "string",
1346
- # "usd_value": "string",
1347
- # "network_fee": "string",
1348
- # "fees": "string",
1349
- # "chain": "string",
1350
- # "asset": "string",
1351
- # "from_address": "string",
1352
- # "to_address": "string",
1353
- # "created_at": "2024-11-02T07:42:48.402Z"
1352
+ # "created_at": "2024-11-07T02:39:01.775495Z",
1353
+ # "network_fee": "4",
1354
+ # "fees": "0.1"
1354
1355
  # }
1355
1356
  #
1356
1357
  results = []
@@ -1359,7 +1360,7 @@ class alpaca(Exchange, ImplicitAPI):
1359
1360
  direction = self.safe_string(entry, 'direction')
1360
1361
  if direction == type:
1361
1362
  results.append(entry)
1362
- elif direction == 'BOTH':
1363
+ elif type == 'BOTH':
1363
1364
  results.append(entry)
1364
1365
  return self.parse_transactions(results, currency, since, limit, params)
1365
1366
 
@@ -1402,26 +1403,29 @@ class alpaca(Exchange, ImplicitAPI):
1402
1403
  def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
1403
1404
  #
1404
1405
  # {
1405
- # "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1406
- # "tx_hash": "string",
1407
- # "direction": "INCOMING",
1406
+ # "id": "e27b70a6-5610-40d7-8468-a516a284b776",
1407
+ # "tx_hash": null,
1408
+ # "direction": "OUTGOING",
1409
+ # "amount": "20",
1410
+ # "usd_value": "19.99856",
1411
+ # "chain": "ETH",
1412
+ # "asset": "USDT",
1413
+ # "from_address": "0x123930E4dCA196E070d39B60c644C8Aae02f23",
1414
+ # "to_address": "0x1232c0925196e4dcf05945f67f690153190fbaab",
1408
1415
  # "status": "PROCESSING",
1409
- # "amount": "string",
1410
- # "usd_value": "string",
1411
- # "network_fee": "string",
1412
- # "fees": "string",
1413
- # "chain": "string",
1414
- # "asset": "string",
1415
- # "from_address": "string",
1416
- # "to_address": "string",
1417
- # "created_at": "2024-11-02T07:42:48.402Z"
1416
+ # "created_at": "2024-11-07T02:39:01.775495Z",
1417
+ # "network_fee": "4",
1418
+ # "fees": "0.1"
1418
1419
  # }
1419
1420
  #
1420
1421
  datetime = self.safe_string(transaction, 'created_at')
1421
1422
  currencyId = self.safe_string(transaction, 'asset')
1422
1423
  code = self.safe_currency_code(currencyId, currency)
1424
+ fees = self.safe_string(transaction, 'fees')
1425
+ networkFee = self.safe_string(transaction, 'network_fee')
1426
+ totalFee = Precise.string_add(fees, networkFee)
1423
1427
  fee = {
1424
- 'cost': self.safe_number(transaction, 'fees'),
1428
+ 'cost': self.parse_number(totalFee),
1425
1429
  'currency': code,
1426
1430
  }
1427
1431
  return {
@@ -1450,8 +1454,8 @@ class alpaca(Exchange, ImplicitAPI):
1450
1454
  def parse_transaction_status(self, status: Str):
1451
1455
  statuses: dict = {
1452
1456
  'PROCESSING': 'pending',
1453
- # 'FAILED': 'failed',
1454
- # 'SUCCESS': 'ok',
1457
+ 'FAILED': 'failed',
1458
+ 'COMPLETE': 'ok',
1455
1459
  }
1456
1460
  return self.safe_string(statuses, status, status)
1457
1461
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '4.4.27'
5
+ __version__ = '4.4.28'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -974,6 +974,9 @@ class binance(Exchange, ImplicitAPI):
974
974
  'mmp': 1,
975
975
  'countdownCancelAll': 1,
976
976
  'order': 1,
977
+ 'block/order/orders': 5,
978
+ 'block/order/execute': 5,
979
+ 'block/user-trades': 5,
977
980
  },
978
981
  'post': {
979
982
  'order': 1,
@@ -983,9 +986,12 @@ class binance(Exchange, ImplicitAPI):
983
986
  'mmpReset': 1,
984
987
  'countdownCancelAll': 1,
985
988
  'countdownCancelAllHeartBeat': 10,
989
+ 'block/order/create': 5,
990
+ 'block/order/execute': 5,
986
991
  },
987
992
  'put': {
988
993
  'listenKey': 1,
994
+ 'block/order/create': 5,
989
995
  },
990
996
  'delete': {
991
997
  'order': 1,
@@ -993,6 +999,7 @@ class binance(Exchange, ImplicitAPI):
993
999
  'allOpenOrders': 1,
994
1000
  'allOpenOrdersByUnderlying': 1,
995
1001
  'listenKey': 1,
1002
+ 'block/order/create': 5,
996
1003
  },
997
1004
  },
998
1005
  'public': {
@@ -1436,7 +1436,7 @@ class kraken(Exchange, ImplicitAPI):
1436
1436
  # {
1437
1437
  # "error": [],
1438
1438
  # "result": {
1439
- # "descr": {order: 'buy 0.02100000 ETHUSDT @ limit 330.00'},
1439
+ # "descr": {order: 'buy 0.02100000 ETHUSDT @ limit 330.00'}, # see more examples in "parseOrder"
1440
1440
  # "txid": ['OEKVV2-IH52O-TPL6GZ']
1441
1441
  # }
1442
1442
  # }
@@ -1496,9 +1496,10 @@ class kraken(Exchange, ImplicitAPI):
1496
1496
 
1497
1497
  def parse_order_type(self, status):
1498
1498
  statuses: dict = {
1499
+ # we dont add "space" delimited orders here(eg. stop loss) because they need separate parsing
1499
1500
  'take-profit': 'market',
1500
- 'stop-loss-limit': 'limit',
1501
1501
  'stop-loss': 'market',
1502
+ 'stop-loss-limit': 'limit',
1502
1503
  'take-profit-limit': 'limit',
1503
1504
  'trailing-stop-limit': 'limit',
1504
1505
  }
@@ -1506,30 +1507,19 @@ class kraken(Exchange, ImplicitAPI):
1506
1507
 
1507
1508
  def parse_order(self, order: dict, market: Market = None) -> Order:
1508
1509
  #
1509
- # createOrder for regular orders
1510
+ # createOrder
1510
1511
  #
1511
1512
  # {
1512
- # "descr": {order: 'buy 0.02100000 ETHUSDT @ limit 330.00'},
1513
+ # "descr": {
1514
+ # "order": "buy 0.02100000 ETHUSDT @ limit 330.00" # limit orders
1515
+ # "buy 0.12345678 ETHUSDT @ market" # market order
1516
+ # "sell 0.28002676 ETHUSDT @ stop loss 0.0123 -> limit 0.0.1222" # stop order
1517
+ # "sell 0.00100000 ETHUSDT @ stop loss 2677.00 -> limit 2577.00 with 5:1 leverage"
1518
+ # "buy 0.10000000 LTCUSDT @ take profit 75.00000 -> limit 74.00000"
1519
+ # "sell 10.00000000 XRPEUR @ trailing stop +50.0000%" # trailing stop
1520
+ # },
1513
1521
  # "txid": ['OEKVV2-IH52O-TPL6GZ']
1514
1522
  # }
1515
- # {
1516
- # "txid": ["TX_ID_HERE"],
1517
- # "descr": {"order":"buy 0.12345678 ETHEUR @ market"},
1518
- # }
1519
- #
1520
- #
1521
- # createOrder for stop orders
1522
- #
1523
- # {
1524
- # "txid":["OSILNC-VQI5Q-775ZDQ"],
1525
- # "descr":{"order":"sell 167.28002676 ADAXBT @ stop loss 0.00003280 -> limit 0.00003212"}
1526
- # }
1527
- #
1528
- #
1529
- # {
1530
- # "txid":["OVHMJV-BZW2V-6NZFWF"],
1531
- # "descr":{"order":"sell 0.00100000 ETHUSD @ stop loss 2677.00 -> limit 2577.00 with 5:1 leverage"}
1532
- # }
1533
1523
  #
1534
1524
  # editOrder
1535
1525
  #
@@ -1607,24 +1597,29 @@ class kraken(Exchange, ImplicitAPI):
1607
1597
  else:
1608
1598
  orderDescription = self.safe_string(order, 'descr')
1609
1599
  side = None
1610
- type = None
1600
+ rawType = None
1611
1601
  marketId = None
1612
1602
  price = None
1613
1603
  amount = None
1614
- stopPrice = None
1604
+ triggerPrice = None
1615
1605
  if orderDescription is not None:
1616
1606
  parts = orderDescription.split(' ')
1617
1607
  side = self.safe_string(parts, 0)
1618
1608
  amount = self.safe_string(parts, 1)
1619
1609
  marketId = self.safe_string(parts, 2)
1620
- type = self.safe_string(parts, 4)
1621
- if type == 'stop':
1622
- stopPrice = self.safe_string(parts, 6)
1610
+ part4 = self.safe_string(parts, 4)
1611
+ part5 = self.safe_string(parts, 5)
1612
+ if part4 == 'limit' or part4 == 'market':
1613
+ rawType = part4 # eg, limit, market
1614
+ else:
1615
+ rawType = part4 + ' ' + part5 # eg. stop loss, take profit, trailing stop
1616
+ if rawType == 'stop loss' or rawType == 'take profit':
1617
+ triggerPrice = self.safe_string(parts, 6)
1623
1618
  price = self.safe_string(parts, 9)
1624
- elif type == 'limit':
1619
+ elif rawType == 'limit':
1625
1620
  price = self.safe_string(parts, 5)
1626
1621
  side = self.safe_string(description, 'type', side)
1627
- type = self.safe_string(description, 'ordertype', type)
1622
+ rawType = self.safe_string(description, 'ordertype', rawType) # orderType has dash, e.g. trailing-stop
1628
1623
  marketId = self.safe_string(description, 'pair', marketId)
1629
1624
  foundMarket = self.find_market_by_altname_or_id(marketId)
1630
1625
  symbol = None
@@ -1676,15 +1671,28 @@ class kraken(Exchange, ImplicitAPI):
1676
1671
  trades.append(self.safe_trade({'id': rawTrade, 'orderId': id, 'symbol': symbol, 'info': {}}))
1677
1672
  else:
1678
1673
  trades.append(rawTrade)
1679
- stopPrice = self.omit_zero(self.safe_string(order, 'stopprice', stopPrice))
1674
+ # in #24192 PR, self field is not something consistent/actual
1675
+ # triggerPrice = self.omit_zero(self.safe_string(order, 'stopprice', triggerPrice))
1680
1676
  stopLossPrice = None
1681
1677
  takeProfitPrice = None
1682
- if type.startswith('take-profit'):
1678
+ # the dashed strings are not provided from fields(eg. fetch order)
1679
+ # while spaced strings from "order" sentence(when other fields not available)
1680
+ if rawType.startswith('take-profit'):
1683
1681
  takeProfitPrice = self.safe_string(description, 'price')
1684
1682
  price = self.omit_zero(self.safe_string(description, 'price2'))
1685
- elif type.startswith('stop-loss'):
1683
+ elif rawType.startswith('stop-loss'):
1686
1684
  stopLossPrice = self.safe_string(description, 'price')
1687
1685
  price = self.omit_zero(self.safe_string(description, 'price2'))
1686
+ elif rawType == 'take profit':
1687
+ takeProfitPrice = triggerPrice
1688
+ elif rawType == 'stop loss':
1689
+ stopLossPrice = triggerPrice
1690
+ finalType = self.parse_order_type(rawType)
1691
+ # unlike from endpoints which provide eg: "take-profit-limit"
1692
+ # for "space-delimited" orders we dont have market/limit suffixes, their format is
1693
+ # eg: `stop loss > limit 123`, so we need to parse them manually
1694
+ if self.in_array(finalType, ['stop loss', 'take profit']):
1695
+ finalType = 'market' if (price is None) else 'limit'
1688
1696
  return self.safe_order({
1689
1697
  'id': id,
1690
1698
  'clientOrderId': clientOrderId,
@@ -1694,13 +1702,13 @@ class kraken(Exchange, ImplicitAPI):
1694
1702
  'lastTradeTimestamp': None,
1695
1703
  'status': status,
1696
1704
  'symbol': symbol,
1697
- 'type': self.parse_order_type(type),
1705
+ 'type': finalType,
1698
1706
  'timeInForce': None,
1699
1707
  'postOnly': isPostOnly,
1700
1708
  'side': side,
1701
1709
  'price': price,
1702
- 'stopPrice': stopPrice,
1703
- 'triggerPrice': stopPrice,
1710
+ 'stopPrice': triggerPrice,
1711
+ 'triggerPrice': triggerPrice,
1704
1712
  'takeProfitPrice': takeProfitPrice,
1705
1713
  'stopLossPrice': stopLossPrice,
1706
1714
  'cost': None,
@@ -1443,6 +1443,7 @@ class wavesexchange(Exchange, ImplicitAPI):
1443
1443
  async def fetch_order(self, id: str, symbol: Str = None, params={}):
1444
1444
  """
1445
1445
  fetches information on an order made by the user
1446
+ :see: https://matcher.waves.exchange/api-docs/index.html#/status/getOrderStatusByPKAndIdWithSig
1446
1447
  :param str symbol: unified symbol of the market the order was made in
1447
1448
  :param dict [params]: extra parameters specific to the exchange API endpoint
1448
1449
  :returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`