ccxt 4.3.52__tar.gz → 4.3.54__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.
- {ccxt-4.3.52/ccxt.egg-info → ccxt-4.3.54}/PKG-INFO +7 -6
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/__init__.py +3 -1
- ccxt-4.3.54/ccxt/abstract/vertex.py +19 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/__init__.py +3 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/exchange.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/cache.py +2 -2
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/binance.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bingx.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitget.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitmart.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinex.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/htx.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/hyperliquid.py +27 -25
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/phemex.py +28 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/poloniex.py +2 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/probit.py +9 -5
- ccxt-4.3.54/ccxt/async_support/vertex.py +2811 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/woo.py +26 -18
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/base/exchange.py +2 -2
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/base/precise.py +10 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/binance.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bingx.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitget.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitmart.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinex.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/htx.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/hyperliquid.py +27 -25
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/phemex.py +28 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/poloniex.py +2 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/__init__.py +3 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/binance.py +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bybit.py +18 -12
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/kucoin.py +63 -26
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/probit.py +6 -4
- ccxt-4.3.54/ccxt/pro/vertex.py +916 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/probit.py +9 -5
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/test_async.py +37 -3
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/test_sync.py +37 -3
- ccxt-4.3.54/ccxt/vertex.py +2811 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/woo.py +26 -18
- {ccxt-4.3.52 → ccxt-4.3.54/ccxt.egg-info}/PKG-INFO +7 -6
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt.egg-info/SOURCES.txt +4 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/package.json +1 -1
- {ccxt-4.3.52 → ccxt-4.3.54}/LICENSE.txt +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/MANIFEST.in +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/README.rst +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/ace.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/alpaca.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/ascendex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bequant.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bigone.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/binance.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/binancecoinm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/binanceus.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/binanceusdm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bingx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bit2c.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitbank.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitbay.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitbns.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitcoincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitfinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitfinex2.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitflyer.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitget.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bithumb.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitmart.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitmex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitopro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitpanda.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitrue.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitso.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitstamp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitteam.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bitvavo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bl3p.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/blockchaincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/blofin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/btcalpha.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/btcbox.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/btcmarkets.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/btcturk.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/bybit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/cex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinbase.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinbaseadvanced.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinbaseexchange.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinbaseinternational.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coincheck.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinlist.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinmate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinmetro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinone.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinsph.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/coinspot.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/cryptocom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/currencycom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/delta.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/deribit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/digifinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/exmo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/fmfwio.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/gate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/gateio.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/gemini.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/hitbtc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/hitbtc3.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/hollaex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/htx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/huobi.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/huobijp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/hyperliquid.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/idex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/independentreserve.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/indodax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/kraken.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/krakenfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/kucoin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/kucoinfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/kuna.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/latoken.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/lbank.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/luno.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/lykke.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/mercado.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/mexc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/ndax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/novadax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/oceanex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/okcoin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/okx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/onetrading.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/oxfun.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/p2b.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/paymium.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/phemex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/poloniex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/poloniexfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/probit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/timex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/tokocrypto.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/tradeogre.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/upbit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/wavesexchange.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/wazirx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/whitebit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/woo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/woofipro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/xt.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/yobit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/zaif.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/abstract/zonda.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/ace.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/alpaca.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/ascendex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/ace.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/alpaca.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/ascendex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/throttler.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/client.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/fast_client.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/functions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/future.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/order_book.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/base/ws/order_book_side.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bequant.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bigone.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/binancecoinm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/binanceus.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/binanceusdm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bit2c.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitbank.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitbay.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitbns.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitcoincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitfinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitfinex2.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitflyer.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bithumb.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitmex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitopro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitpanda.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitrue.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitso.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitstamp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitteam.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bitvavo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bl3p.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/blockchaincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/blofin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/btcalpha.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/btcbox.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/btcmarkets.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/btcturk.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/bybit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/cex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinbase.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinbaseadvanced.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinbaseexchange.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinbaseinternational.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coincheck.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinlist.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinmate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinmetro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinone.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinsph.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/coinspot.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/cryptocom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/currencycom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/delta.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/deribit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/digifinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/exmo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/fmfwio.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/gate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/gateio.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/gemini.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/hitbtc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/hitbtc3.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/hollaex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/huobi.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/huobijp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/idex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/independentreserve.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/indodax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/kraken.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/krakenfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/kucoin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/kucoinfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/kuna.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/latoken.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/lbank.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/luno.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/lykke.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/mercado.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/mexc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/ndax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/novadax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/oceanex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/okcoin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/okx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/onetrading.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/oxfun.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/p2b.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/paymium.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/poloniexfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/timex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/tokocrypto.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/tradeogre.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/upbit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/wavesexchange.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/wazirx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/whitebit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/woofipro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/xt.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/yobit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/zaif.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/async_support/zonda.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/base/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/base/decimal_to_precision.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/base/errors.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/base/types.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bequant.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bigone.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/binancecoinm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/binanceus.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/binanceusdm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bit2c.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitbank.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitbay.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitbns.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitcoincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitfinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitfinex2.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitflyer.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bithumb.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitmex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitopro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitpanda.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitrue.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitso.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitstamp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitteam.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bitvavo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bl3p.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/blockchaincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/blofin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/btcalpha.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/btcbox.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/btcmarkets.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/btcturk.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/bybit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/cex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinbase.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinbaseadvanced.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinbaseexchange.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinbaseinternational.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coincheck.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinlist.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinmate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinmetro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinone.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinsph.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/coinspot.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/cryptocom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/currencycom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/delta.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/deribit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/digifinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/exmo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/fmfwio.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/gate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/gateio.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/gemini.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/hitbtc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/hitbtc3.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/hollaex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/huobi.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/huobijp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/idex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/independentreserve.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/indodax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/kraken.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/krakenfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/kucoin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/kucoinfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/kuna.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/latoken.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/lbank.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/luno.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/lykke.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/mercado.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/mexc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/ndax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/novadax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/oceanex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/okcoin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/okx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/onetrading.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/oxfun.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/p2b.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/paymium.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/poloniexfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/alpaca.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/ascendex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bequant.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/binancecoinm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/binanceus.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/binanceusdm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bingx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitcoincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitfinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitfinex2.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitget.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bithumb.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitmart.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitmex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitopro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitpanda.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitrue.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitstamp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/bitvavo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/blockchaincom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/cex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/coinbase.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/coinbaseexchange.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/coinbaseinternational.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/coincheck.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/coinex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/coinone.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/cryptocom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/currencycom.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/deribit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/exmo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/gate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/gateio.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/gemini.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/hitbtc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/hollaex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/htx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/huobi.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/huobijp.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/hyperliquid.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/idex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/independentreserve.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/kraken.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/krakenfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/kucoinfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/lbank.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/luno.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/mexc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/ndax.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/okcoin.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/okx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/onetrading.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/oxfun.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/p2b.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/phemex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/poloniex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/poloniexfutures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/upbit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/wazirx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/whitebit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/woo.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/pro/woofipro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/der.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ecdsa/util.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/keccak/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/keccak/keccak.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/msgpack/ext.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/_version.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/recipes.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/static_dependencies/toolz/utils.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/__init__.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_account.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_balance.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_borrow_interest.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_borrow_rate.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_calculate_fee.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_crypto.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_currency.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_datetime.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_decimal_to_precision.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_deep_extend.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_deposit_withdrawal.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_exchange_datetime_functions.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_funding_rate_history.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_last_price.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_ledger_entry.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_ledger_item.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_leverage_tier.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_liquidation.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_margin_mode.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_margin_modification.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_market.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_number.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_ohlcv.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_open_interest.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_order.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_order_book.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_position.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_shared_methods.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_status.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_throttle.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_ticker.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_trade.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_trading_fee.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/test/base/test_transaction.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/timex.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/tokocrypto.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/tradeogre.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/upbit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/wavesexchange.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/wazirx.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/whitebit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/woofipro.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/xt.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/yobit.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/zaif.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt/zonda.py +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt.egg-info/dependency_links.txt +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt.egg-info/requires.txt +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/ccxt.egg-info/top_level.txt +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/setup.cfg +0 -0
- {ccxt-4.3.52 → ccxt-4.3.54}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.3.
|
3
|
+
Version: 4.3.54
|
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
|
@@ -39,7 +39,7 @@ License-File: LICENSE.txt
|
|
39
39
|
|
40
40
|
# CCXT – CryptoCurrency eXchange Trading Library
|
41
41
|
|
42
|
-
[](https://travis-ci.com/ccxt/ccxt) [](https://npmjs.com/package/ccxt) [](https://pypi.python.org/pypi/ccxt) [](https://www.npmjs.com/package/ccxt) [](https://discord.gg/ccxt) [](https://travis-ci.com/ccxt/ccxt) [](https://npmjs.com/package/ccxt) [](https://pypi.python.org/pypi/ccxt) [](https://www.npmjs.com/package/ccxt) [](https://discord.gg/ccxt) [](https://github.com/ccxt/ccxt/wiki/Exchange-Markets) [](https://twitter.com/ccxt_official)
|
43
43
|
|
44
44
|
A JavaScript / Python / PHP / C# library for cryptocurrency trading and e-commerce with support for many bitcoin/ether/altcoin exchange markets and merchant APIs.
|
45
45
|
|
@@ -97,7 +97,7 @@ Current feature list:
|
|
97
97
|
|
98
98
|
## Supported Cryptocurrency Exchanges
|
99
99
|
|
100
|
-
The CCXT library currently supports the following
|
100
|
+
The CCXT library currently supports the following 101 cryptocurrency exchange markets and trading APIs:
|
101
101
|
|
102
102
|
| logo | id | name | ver | type | certified | pro |
|
103
103
|
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------|-------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------:|------|-----------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------|
|
@@ -192,6 +192,7 @@ The CCXT library currently supports the following 100 cryptocurrency exchange ma
|
|
192
192
|
| [](https://tokocrypto.com) | tokocrypto | [Tokocrypto](https://tokocrypto.com) | [](https://www.tokocrypto.com/apidocs/) | cex | | |
|
193
193
|
| [](https://tradeogre.com) | tradeogre | [tradeogre](https://tradeogre.com) | [](https://tradeogre.com/help/api) | cex | | |
|
194
194
|
| [](https://upbit.com) | upbit | [Upbit](https://upbit.com) | [](https://docs.upbit.com/docs/%EC%9A%94%EC%B2%AD-%EC%88%98-%EC%A0%9C%ED%95%9C) | cex | | [](https://ccxt.pro) |
|
195
|
+
| [](https://app.vertexprotocol.com?referrer=0xCfC9BaB96a2eA3d3c3F031c005e82E1D9F295aC1) | vertex | [Vertex](https://app.vertexprotocol.com?referrer=0xCfC9BaB96a2eA3d3c3F031c005e82E1D9F295aC1) | [](https://docs.vertexprotocol.com/) | dex | | [](https://ccxt.pro) |
|
195
196
|
| [](https://wx.network) | wavesexchange | [Waves.Exchange](https://wx.network) | [](https://docs.wx.network) | dex | | |
|
196
197
|
| [](https://wazirx.com/invite/k7rrnks5) | wazirx | [WazirX](https://wazirx.com/invite/k7rrnks5) | [](https://docs.wazirx.com/#public-rest-api-for-wazirx) | cex | | [](https://ccxt.pro) |
|
197
198
|
| [](https://whitebit.com/referral/d9bdf40e-28f2-4b52-b2f9-cd1415d82963) | whitebit | [WhiteBit](https://whitebit.com/referral/d9bdf40e-28f2-4b52-b2f9-cd1415d82963) | [](https://github.com/whitebit-exchange/api-docs) | cex | | [](https://ccxt.pro) |
|
@@ -258,13 +259,13 @@ console.log(version, Object.keys(exchanges));
|
|
258
259
|
|
259
260
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
260
261
|
|
261
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.
|
262
|
-
* unpkg: https://unpkg.com/ccxt@4.3.
|
262
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.54/dist/ccxt.browser.min.js
|
263
|
+
* unpkg: https://unpkg.com/ccxt@4.3.54/dist/ccxt.browser.min.js
|
263
264
|
|
264
265
|
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.
|
265
266
|
|
266
267
|
```HTML
|
267
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.
|
268
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.54/dist/ccxt.browser.min.js"></script>
|
268
269
|
```
|
269
270
|
|
270
271
|
Creates a global `ccxt` object:
|
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
# ----------------------------------------------------------------------------
|
24
24
|
|
25
|
-
__version__ = '4.3.
|
25
|
+
__version__ = '4.3.54'
|
26
26
|
|
27
27
|
# ----------------------------------------------------------------------------
|
28
28
|
|
@@ -178,6 +178,7 @@ from ccxt.timex import timex # noqa: F4
|
|
178
178
|
from ccxt.tokocrypto import tokocrypto # noqa: F401
|
179
179
|
from ccxt.tradeogre import tradeogre # noqa: F401
|
180
180
|
from ccxt.upbit import upbit # noqa: F401
|
181
|
+
from ccxt.vertex import vertex # noqa: F401
|
181
182
|
from ccxt.wavesexchange import wavesexchange # noqa: F401
|
182
183
|
from ccxt.wazirx import wazirx # noqa: F401
|
183
184
|
from ccxt.whitebit import whitebit # noqa: F401
|
@@ -287,6 +288,7 @@ exchanges = [
|
|
287
288
|
'tokocrypto',
|
288
289
|
'tradeogre',
|
289
290
|
'upbit',
|
291
|
+
'vertex',
|
290
292
|
'wavesexchange',
|
291
293
|
'wazirx',
|
292
294
|
'whitebit',
|
@@ -0,0 +1,19 @@
|
|
1
|
+
from ccxt.base.types import Entry
|
2
|
+
|
3
|
+
|
4
|
+
class ImplicitAPI:
|
5
|
+
v1_archive_post = v1ArchivePost = Entry('', ['v1', 'archive'], 'POST', {'cost': 1})
|
6
|
+
v1_gateway_get_query = v1GatewayGetQuery = Entry('query', ['v1', 'gateway'], 'GET', {'cost': 1})
|
7
|
+
v1_gateway_get_symbols = v1GatewayGetSymbols = Entry('symbols', ['v1', 'gateway'], 'GET', {'cost': 1})
|
8
|
+
v1_gateway_get_time = v1GatewayGetTime = Entry('time', ['v1', 'gateway'], 'GET', {'cost': 1})
|
9
|
+
v1_gateway_post_query = v1GatewayPostQuery = Entry('query', ['v1', 'gateway'], 'POST', {'cost': 1})
|
10
|
+
v1_gateway_post_execute = v1GatewayPostExecute = Entry('execute', ['v1', 'gateway'], 'POST', {'cost': 1})
|
11
|
+
v1_trigger_post_execute = v1TriggerPostExecute = Entry('execute', ['v1', 'trigger'], 'POST', {'cost': 1})
|
12
|
+
v1_trigger_post_query = v1TriggerPostQuery = Entry('query', ['v1', 'trigger'], 'POST', {'cost': 1})
|
13
|
+
v2_archive_get_tickers = v2ArchiveGetTickers = Entry('tickers', ['v2', 'archive'], 'GET', {'cost': 1})
|
14
|
+
v2_archive_get_contracts = v2ArchiveGetContracts = Entry('contracts', ['v2', 'archive'], 'GET', {'cost': 1})
|
15
|
+
v2_archive_get_trades = v2ArchiveGetTrades = Entry('trades', ['v2', 'archive'], 'GET', {'cost': 1})
|
16
|
+
v2_archive_get_vrtx = v2ArchiveGetVrtx = Entry('vrtx', ['v2', 'archive'], 'GET', {'cost': 1})
|
17
|
+
v2_gateway_get_assets = v2GatewayGetAssets = Entry('assets', ['v2', 'gateway'], 'GET', {'cost': 0.6667})
|
18
|
+
v2_gateway_get_pairs = v2GatewayGetPairs = Entry('pairs', ['v2', 'gateway'], 'GET', {'cost': 1})
|
19
|
+
v2_gateway_get_orderbook = v2GatewayGetOrderbook = Entry('orderbook', ['v2', 'gateway'], 'GET', {'cost': 1})
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
# -----------------------------------------------------------------------------
|
6
6
|
|
7
|
-
__version__ = '4.3.
|
7
|
+
__version__ = '4.3.54'
|
8
8
|
|
9
9
|
# -----------------------------------------------------------------------------
|
10
10
|
|
@@ -158,6 +158,7 @@ from ccxt.async_support.timex import timex
|
|
158
158
|
from ccxt.async_support.tokocrypto import tokocrypto # noqa: F401
|
159
159
|
from ccxt.async_support.tradeogre import tradeogre # noqa: F401
|
160
160
|
from ccxt.async_support.upbit import upbit # noqa: F401
|
161
|
+
from ccxt.async_support.vertex import vertex # noqa: F401
|
161
162
|
from ccxt.async_support.wavesexchange import wavesexchange # noqa: F401
|
162
163
|
from ccxt.async_support.wazirx import wazirx # noqa: F401
|
163
164
|
from ccxt.async_support.whitebit import whitebit # noqa: F401
|
@@ -267,6 +268,7 @@ exchanges = [
|
|
267
268
|
'tokocrypto',
|
268
269
|
'tradeogre',
|
269
270
|
'upbit',
|
271
|
+
'vertex',
|
270
272
|
'wavesexchange',
|
271
273
|
'wazirx',
|
272
274
|
'whitebit',
|
@@ -184,7 +184,7 @@ class ArrayCacheBySymbolBySide(ArrayCache):
|
|
184
184
|
if reference != item:
|
185
185
|
reference.update(item)
|
186
186
|
item = reference
|
187
|
-
index = self._index.index(item['side'])
|
187
|
+
index = self._index.index(item['symbol'] + item['side'])
|
188
188
|
del self._deque[index]
|
189
189
|
del self._index[index]
|
190
190
|
else:
|
@@ -194,7 +194,7 @@ class ArrayCacheBySymbolBySide(ArrayCache):
|
|
194
194
|
self._index.popleft()
|
195
195
|
del self.hashmap[delete_item['symbol']][delete_item['side']]
|
196
196
|
self._deque.append(item)
|
197
|
-
self._index.append(item['side'])
|
197
|
+
self._index.append(item['symbol'] + item['side'])
|
198
198
|
if self._clear_all_updates:
|
199
199
|
self._clear_all_updates = False
|
200
200
|
self._clear_updates_by_symbol.clear()
|
@@ -10682,7 +10682,7 @@ class binance(Exchange, ImplicitAPI):
|
|
10682
10682
|
'info': info,
|
10683
10683
|
}
|
10684
10684
|
|
10685
|
-
def parse_isolated_borrow_rate(self, info, market: Market = None):
|
10685
|
+
def parse_isolated_borrow_rate(self, info: dict, market: Market = None) -> IsolatedBorrowRate:
|
10686
10686
|
#
|
10687
10687
|
# {
|
10688
10688
|
# "vipLevel": 0,
|
@@ -704,7 +704,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
704
704
|
'limits': {
|
705
705
|
'leverage': {
|
706
706
|
'min': None,
|
707
|
-
'max':
|
707
|
+
'max': None,
|
708
708
|
},
|
709
709
|
'amount': {
|
710
710
|
'min': self.safe_number_2(market, 'minQty', 'tradeMinQuantity'),
|
@@ -7451,7 +7451,7 @@ class bitget(Exchange, ImplicitAPI):
|
|
7451
7451
|
first['timestamp'] = timestamp
|
7452
7452
|
return self.parse_isolated_borrow_rate(first, market)
|
7453
7453
|
|
7454
|
-
def parse_isolated_borrow_rate(self, info, market: Market = None) -> IsolatedBorrowRate:
|
7454
|
+
def parse_isolated_borrow_rate(self, info: dict, market: Market = None) -> IsolatedBorrowRate:
|
7455
7455
|
#
|
7456
7456
|
# {
|
7457
7457
|
# "symbol": "BTCUSDT",
|
@@ -3601,7 +3601,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3601
3601
|
borrowRate = self.safe_value(symbols, 0)
|
3602
3602
|
return self.parse_isolated_borrow_rate(borrowRate, market)
|
3603
3603
|
|
3604
|
-
def parse_isolated_borrow_rate(self, info, market: Market = None) -> IsolatedBorrowRate:
|
3604
|
+
def parse_isolated_borrow_rate(self, info: dict, market: Market = None) -> IsolatedBorrowRate:
|
3605
3605
|
#
|
3606
3606
|
# {
|
3607
3607
|
# "symbol": "BTC_USDT",
|
@@ -4838,7 +4838,7 @@ class coinex(Exchange, ImplicitAPI):
|
|
4838
4838
|
data = self.safe_list(response, 'data', [])
|
4839
4839
|
return self.parse_transactions(data, currency, since, limit)
|
4840
4840
|
|
4841
|
-
def parse_isolated_borrow_rate(self, info, market: Market = None) -> IsolatedBorrowRate:
|
4841
|
+
def parse_isolated_borrow_rate(self, info: dict, market: Market = None) -> IsolatedBorrowRate:
|
4842
4842
|
#
|
4843
4843
|
# {
|
4844
4844
|
# "market": "BTCUSDT",
|
@@ -6181,7 +6181,7 @@ class htx(Exchange, ImplicitAPI):
|
|
6181
6181
|
data = self.safe_value(response, 'data', [])
|
6182
6182
|
return self.parse_isolated_borrow_rates(data)
|
6183
6183
|
|
6184
|
-
def parse_isolated_borrow_rate(self, info, market: Market = None) -> IsolatedBorrowRate:
|
6184
|
+
def parse_isolated_borrow_rate(self, info: dict, market: Market = None) -> IsolatedBorrowRate:
|
6185
6185
|
#
|
6186
6186
|
# {
|
6187
6187
|
# "symbol": "1inchusdt",
|
@@ -445,23 +445,26 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
445
445
|
for i in range(0, len(meta)):
|
446
446
|
market = self.safe_dict(meta, i, {})
|
447
447
|
marketName = self.safe_string(market, 'name')
|
448
|
-
if marketName.find('/') < 0:
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
quote = self.safe_currency_code(quoteId)
|
456
|
-
symbol = base + '/' + quote
|
448
|
+
# if marketName.find('/') < 0:
|
449
|
+
# # there are some weird spot markets in testnet, eg @2
|
450
|
+
# continue
|
451
|
+
# }
|
452
|
+
# marketParts = marketName.split('/')
|
453
|
+
# baseName = self.safe_string(marketParts, 0)
|
454
|
+
# quoteId = self.safe_string(marketParts, 1)
|
457
455
|
fees = self.safe_dict(self.fees, 'spot', {})
|
458
456
|
taker = self.safe_number(fees, 'taker')
|
459
457
|
maker = self.safe_number(fees, 'maker')
|
460
458
|
tokensPos = self.safe_list(market, 'tokens', [])
|
461
459
|
baseTokenPos = self.safe_integer(tokensPos, 0)
|
462
|
-
|
460
|
+
quoteTokenPos = self.safe_integer(tokensPos, 1)
|
463
461
|
baseTokenInfo = self.safe_dict(tokens, baseTokenPos, {})
|
464
|
-
|
462
|
+
quoteTokenInfo = self.safe_dict(tokens, quoteTokenPos, {})
|
463
|
+
baseName = self.safe_string(baseTokenInfo, 'name')
|
464
|
+
quoteId = self.safe_string(quoteTokenInfo, 'name')
|
465
|
+
base = self.safe_currency_code(baseName)
|
466
|
+
quote = self.safe_currency_code(quoteId)
|
467
|
+
symbol = base + '/' + quote
|
465
468
|
innerBaseTokenInfo = self.safe_dict(baseTokenInfo, 'spec', baseTokenInfo)
|
466
469
|
# innerQuoteTokenInfo = self.safe_dict(quoteTokenInfo, 'spec', quoteTokenInfo)
|
467
470
|
amountPrecision = self.parse_number(self.parse_precision(self.safe_string(innerBaseTokenInfo, 'szDecimals')))
|
@@ -1115,7 +1118,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1115
1118
|
}
|
1116
1119
|
if clientOrderId is not None:
|
1117
1120
|
orderObj['c'] = clientOrderId
|
1118
|
-
orderReq.append(
|
1121
|
+
orderReq.append(orderObj)
|
1119
1122
|
vaultAddress = self.format_vault_address(self.safe_string(params, 'vaultAddress'))
|
1120
1123
|
orderAction: dict = {
|
1121
1124
|
'type': 'order',
|
@@ -1135,7 +1138,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1135
1138
|
if vaultAddress is not None:
|
1136
1139
|
params = self.omit(params, 'vaultAddress')
|
1137
1140
|
request['vaultAddress'] = vaultAddress
|
1138
|
-
response = await self.privatePostExchange(
|
1141
|
+
response = await self.privatePostExchange(request)
|
1139
1142
|
#
|
1140
1143
|
# {
|
1141
1144
|
# "status": "ok",
|
@@ -1227,7 +1230,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1227
1230
|
if vaultAddress is not None:
|
1228
1231
|
params = self.omit(params, 'vaultAddress')
|
1229
1232
|
request['vaultAddress'] = vaultAddress
|
1230
|
-
response = await self.privatePostExchange(
|
1233
|
+
response = await self.privatePostExchange(request)
|
1231
1234
|
#
|
1232
1235
|
# {
|
1233
1236
|
# "status":"ok",
|
@@ -1303,7 +1306,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1303
1306
|
if vaultAddress is not None:
|
1304
1307
|
params = self.omit(params, 'vaultAddress')
|
1305
1308
|
request['vaultAddress'] = vaultAddress
|
1306
|
-
response = await self.privatePostExchange(
|
1309
|
+
response = await self.privatePostExchange(request)
|
1307
1310
|
#
|
1308
1311
|
# {
|
1309
1312
|
# "status":"ok",
|
@@ -1346,7 +1349,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1346
1349
|
if vaultAddress is not None:
|
1347
1350
|
params = self.omit(params, 'vaultAddress')
|
1348
1351
|
request['vaultAddress'] = vaultAddress
|
1349
|
-
response = await self.privatePostExchange(
|
1352
|
+
response = await self.privatePostExchange(request)
|
1350
1353
|
#
|
1351
1354
|
# {
|
1352
1355
|
# "status":"err",
|
@@ -1455,7 +1458,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1455
1458
|
if vaultAddress is not None:
|
1456
1459
|
params = self.omit(params, 'vaultAddress')
|
1457
1460
|
request['vaultAddress'] = vaultAddress
|
1458
|
-
response = await self.privatePostExchange(
|
1461
|
+
response = await self.privatePostExchange(request)
|
1459
1462
|
#
|
1460
1463
|
# {
|
1461
1464
|
# "status": "ok",
|
@@ -2097,10 +2100,9 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2097
2100
|
params = self.omit(params, 'vaultAddress')
|
2098
2101
|
if vaultAddress.startswith('0x'):
|
2099
2102
|
vaultAddress = vaultAddress.replace('0x', '')
|
2100
|
-
|
2101
|
-
signature = self.sign_l1_action(extendedAction, nonce, vaultAddress)
|
2103
|
+
signature = self.sign_l1_action(updateAction, nonce, vaultAddress)
|
2102
2104
|
request: dict = {
|
2103
|
-
'action':
|
2105
|
+
'action': updateAction,
|
2104
2106
|
'nonce': nonce,
|
2105
2107
|
'signature': signature,
|
2106
2108
|
# 'vaultAddress': vaultAddress,
|
@@ -2153,7 +2155,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2153
2155
|
if vaultAddress is not None:
|
2154
2156
|
params = self.omit(params, 'vaultAddress')
|
2155
2157
|
request['vaultAddress'] = vaultAddress
|
2156
|
-
response = await self.privatePostExchange(
|
2158
|
+
response = await self.privatePostExchange(request)
|
2157
2159
|
#
|
2158
2160
|
# {
|
2159
2161
|
# 'response': {
|
@@ -2211,7 +2213,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2211
2213
|
if vaultAddress is not None:
|
2212
2214
|
params = self.omit(params, 'vaultAddress')
|
2213
2215
|
request['vaultAddress'] = vaultAddress
|
2214
|
-
response = await self.privatePostExchange(
|
2216
|
+
response = await self.privatePostExchange(request)
|
2215
2217
|
#
|
2216
2218
|
# {
|
2217
2219
|
# 'response': {
|
@@ -2275,7 +2277,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2275
2277
|
}
|
2276
2278
|
signature = self.sign_l1_action(action, nonce, vaultAddress)
|
2277
2279
|
innerRequest: dict = {
|
2278
|
-
'action':
|
2280
|
+
'action': action,
|
2279
2281
|
'nonce': nonce,
|
2280
2282
|
'signature': signature,
|
2281
2283
|
}
|
@@ -2308,7 +2310,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2308
2310
|
'nonce': nonce,
|
2309
2311
|
'signature': sig,
|
2310
2312
|
}
|
2311
|
-
response = await self.privatePostExchange(
|
2313
|
+
response = await self.privatePostExchange(request)
|
2312
2314
|
return response
|
2313
2315
|
|
2314
2316
|
async def withdraw(self, code: str, amount: float, address: str, tag=None, params={}) -> Transaction:
|
@@ -2350,7 +2352,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2350
2352
|
'nonce': nonce,
|
2351
2353
|
'signature': sig,
|
2352
2354
|
}
|
2353
|
-
response = await self.privatePostExchange(
|
2355
|
+
response = await self.privatePostExchange(request)
|
2354
2356
|
return self.parse_transaction(response)
|
2355
2357
|
|
2356
2358
|
def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
|
@@ -2763,11 +2763,38 @@ class phemex(Exchange, ImplicitAPI):
|
|
2763
2763
|
response = None
|
2764
2764
|
if market['settle'] == 'USDT':
|
2765
2765
|
response = await self.privateDeleteGOrdersAll(self.extend(request, params))
|
2766
|
+
#
|
2767
|
+
# {
|
2768
|
+
# code: '0',
|
2769
|
+
# msg: '',
|
2770
|
+
# data: '1'
|
2771
|
+
# }
|
2772
|
+
#
|
2766
2773
|
elif market['swap']:
|
2767
2774
|
response = await self.privateDeleteOrdersAll(self.extend(request, params))
|
2775
|
+
#
|
2776
|
+
# {
|
2777
|
+
# code: '0',
|
2778
|
+
# msg: '',
|
2779
|
+
# data: '1'
|
2780
|
+
# }
|
2781
|
+
#
|
2768
2782
|
else:
|
2769
2783
|
response = await self.privateDeleteSpotOrdersAll(self.extend(request, params))
|
2770
|
-
|
2784
|
+
#
|
2785
|
+
# {
|
2786
|
+
# code: '0',
|
2787
|
+
# msg: '',
|
2788
|
+
# data: {
|
2789
|
+
# total: '1'
|
2790
|
+
# }
|
2791
|
+
# }
|
2792
|
+
#
|
2793
|
+
return [
|
2794
|
+
self.safe_order({
|
2795
|
+
'info': response,
|
2796
|
+
}),
|
2797
|
+
]
|
2771
2798
|
|
2772
2799
|
async def fetch_order(self, id: str, symbol: Str = None, params={}):
|
2773
2800
|
"""
|
@@ -13,6 +13,7 @@ from ccxt.base.errors import AuthenticationError
|
|
13
13
|
from ccxt.base.errors import ArgumentsRequired
|
14
14
|
from ccxt.base.errors import BadRequest
|
15
15
|
from ccxt.base.errors import BadSymbol
|
16
|
+
from ccxt.base.errors import MarketClosed
|
16
17
|
from ccxt.base.errors import BadResponse
|
17
18
|
from ccxt.base.errors import InsufficientFunds
|
18
19
|
from ccxt.base.errors import InvalidAddress
|
@@ -194,7 +195,7 @@ class probit(Exchange, ImplicitAPI):
|
|
194
195
|
'RATE_LIMIT_EXCEEDED': RateLimitExceeded, # You are sending requests too frequently. Please try it later.
|
195
196
|
'MARKET_UNAVAILABLE': ExchangeNotAvailable, # Market is closed today
|
196
197
|
'INVALID_MARKET': BadSymbol, # Requested market is not exist
|
197
|
-
'MARKET_CLOSED':
|
198
|
+
'MARKET_CLOSED': MarketClosed, # {"errorCode":"MARKET_CLOSED"}
|
198
199
|
'MARKET_NOT_FOUND': BadSymbol, # {"errorCode":"MARKET_NOT_FOUND","message":"8e2b8496-0a1e-5beb-b990-a205b902eabe","details":{}}
|
199
200
|
'INVALID_CURRENCY': BadRequest, # Requested currency is not exist on ProBit system
|
200
201
|
'TOO_MANY_OPEN_ORDERS': DDoSProtection, # Too many open orders
|
@@ -1725,10 +1726,13 @@ class probit(Exchange, ImplicitAPI):
|
|
1725
1726
|
return None # fallback to default error handler
|
1726
1727
|
if 'errorCode' in response:
|
1727
1728
|
errorCode = self.safe_string(response, 'errorCode')
|
1728
|
-
message = self.safe_string(response, 'message')
|
1729
1729
|
if errorCode is not None:
|
1730
|
-
|
1731
|
-
self.
|
1732
|
-
self.
|
1730
|
+
errMessage = self.safe_string(response, 'message', '')
|
1731
|
+
details = self.safe_value(response, 'details')
|
1732
|
+
feedback = self.id + ' ' + errorCode + ' ' + errMessage + ' ' + self.json(details)
|
1733
|
+
if 'exact' in self.exceptions:
|
1734
|
+
self.throw_exactly_matched_exception(self.exceptions['exact'], errorCode, feedback)
|
1735
|
+
if 'broad' in self.exceptions:
|
1736
|
+
self.throw_broadly_matched_exception(self.exceptions['broad'], errMessage, feedback)
|
1733
1737
|
raise ExchangeError(feedback)
|
1734
1738
|
return None
|