ccxt 4.0.76__tar.gz → 4.0.77__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.0.76/ccxt.egg-info → ccxt-4.0.77}/PKG-INFO +4 -4
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/__init__.py +1 -1
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/gate.py +24 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/gateio.py +24 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/__init__.py +1 -1
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/exchange.py +1 -1
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bingx.py +21 -6
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/gate.py +42 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/whitebit.py +1 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/base/exchange.py +1 -1
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bingx.py +21 -6
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/gate.py +42 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/__init__.py +1 -1
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/okx.py +3 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/whitebit.py +1 -0
- {ccxt-4.0.76 → ccxt-4.0.77/ccxt.egg-info}/PKG-INFO +4 -4
- {ccxt-4.0.76 → ccxt-4.0.77}/package.json +1 -1
- {ccxt-4.0.76 → ccxt-4.0.77}/LICENSE.txt +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/MANIFEST.in +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/README.rst +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/ace.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/alpaca.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/ascendex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bequant.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bigone.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/binance.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/binancecoinm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/binanceus.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/binanceusdm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bingx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bit2c.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitbank.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitbay.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitbns.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitcoincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitfinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitfinex2.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitflyer.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitforex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitget.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bithumb.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitmart.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitmex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitopro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitpanda.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitrue.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitso.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitstamp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitstamp1.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bittrex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bitvavo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bkex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bl3p.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/blockchaincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/btcalpha.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/btcbox.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/btcmarkets.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/btctradeua.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/btcturk.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/bybit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/cex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinbase.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinbaseprime.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinbasepro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coincheck.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinfalcon.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinmate.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinone.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinsph.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/coinspot.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/cryptocom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/currencycom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/delta.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/deribit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/digifinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/exmo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/fmfwio.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/gemini.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/hitbtc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/hitbtc3.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/hollaex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/huobi.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/huobijp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/huobipro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/idex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/independentreserve.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/indodax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/kraken.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/krakenfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/kucoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/kucoinfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/kuna.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/latoken.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/lbank.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/lbank2.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/luno.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/lykke.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/mercado.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/mexc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/mexc3.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/ndax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/novadax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/oceanex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/okcoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/okex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/okex5.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/okx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/paymium.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/phemex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/poloniex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/poloniexfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/probit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/tidex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/timex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/tokocrypto.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/upbit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/wavesexchange.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/wazirx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/whitebit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/woo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/yobit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/zaif.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/abstract/zonda.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/ace.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/alpaca.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/ascendex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/ace.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/alpaca.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/ascendex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/throttler.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/cache.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/client.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/fast_client.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/functions.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/future.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/order_book.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/base/ws/order_book_side.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bequant.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bigone.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/binance.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/binancecoinm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/binanceus.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/binanceusdm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bit2c.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitbank.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitbay.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitbns.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitcoincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitfinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitfinex2.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitflyer.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitforex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitget.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bithumb.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitmart.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitmex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitopro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitpanda.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitrue.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitso.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitstamp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitstamp1.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bittrex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bitvavo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bkex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bl3p.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/blockchaincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/btcalpha.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/btcbox.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/btcmarkets.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/btctradeua.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/btcturk.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/bybit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/cex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinbase.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinbaseprime.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinbasepro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coincheck.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinfalcon.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinmate.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinone.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinsph.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/coinspot.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/cryptocom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/currencycom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/delta.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/deribit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/digifinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/exmo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/flowbtc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/fmfwio.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/gateio.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/gemini.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/hitbtc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/hitbtc3.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/hollaex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/huobi.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/huobijp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/huobipro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/idex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/independentreserve.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/indodax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/kraken.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/krakenfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/kucoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/kucoinfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/kuna.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/latoken.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/lbank.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/lbank2.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/luno.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/lykke.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/mercado.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/mexc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/mexc3.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/ndax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/novadax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/oceanex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/okcoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/okex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/okex5.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/okx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/paymium.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/phemex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/poloniex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/poloniexfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/probit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/tidex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/timex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/tokocrypto.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/upbit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/wavesexchange.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/wazirx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/woo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/yobit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/zaif.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/async_support/zonda.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/base/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/base/decimal_to_precision.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/base/errors.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/base/precise.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/base/types.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bequant.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bigone.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/binance.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/binancecoinm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/binanceus.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/binanceusdm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bit2c.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitbank.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitbay.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitbns.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitcoincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitfinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitfinex2.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitflyer.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitforex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitget.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bithumb.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitmart.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitmex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitopro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitpanda.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitrue.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitso.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitstamp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitstamp1.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bittrex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bitvavo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bkex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bl3p.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/blockchaincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/btcalpha.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/btcbox.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/btcmarkets.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/btctradeua.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/btcturk.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/bybit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/cex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinbase.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinbaseprime.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinbasepro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coincheck.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinfalcon.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinmate.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinone.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinsph.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/coinspot.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/cryptocom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/currencycom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/delta.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/deribit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/digifinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/exmo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/flowbtc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/fmfwio.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/gateio.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/gemini.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/hitbtc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/hitbtc3.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/hollaex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/huobi.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/huobijp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/huobipro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/idex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/independentreserve.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/indodax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/kraken.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/krakenfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/kucoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/kucoinfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/kuna.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/latoken.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/lbank.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/lbank2.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/luno.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/lykke.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/mercado.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/mexc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/mexc3.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/ndax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/novadax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/oceanex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/okcoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/okex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/okex5.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/okx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/paymium.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/phemex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/poloniex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/poloniexfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/alpaca.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/ascendex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bequant.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/binance.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/binancecoinm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/binanceus.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/binanceusdm.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitcoincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitfinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitfinex2.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitget.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitmart.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitmex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitopro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitpanda.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitrue.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitstamp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bittrex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bitvavo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/blockchaincom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/btcex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/bybit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/cex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/coinbase.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/coinbaseprime.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/coinbasepro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/coinex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/cryptocom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/currencycom.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/deribit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/exmo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/gate.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/gateio.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/gemini.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/hitbtc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/hollaex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/huobi.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/huobijp.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/huobipro.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/idex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/independentreserve.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/kraken.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/krakenfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/kucoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/kucoinfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/luno.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/mexc.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/mexc3.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/ndax.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/okcoin.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/okex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/phemex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/poloniex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/poloniexfutures.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/probit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/ripio.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/upbit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/wazirx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/whitebit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/woo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/pro/zb.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/probit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/der.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/ecdsa/util.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/keccak/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/static_dependencies/keccak/keccak.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/__init__.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_account.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_balance.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_borrow_interest.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_borrow_rate.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_calculate_fee.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_crypto.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_currency.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_datetime.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_decimal_to_precision.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_deep_extend.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_deposit_withdrawal.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_exchange_datetime_functions.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_funding_rate_history.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_ledger_entry.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_ledger_item.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_leverage_tier.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_margin_modification.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_market.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_number.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_ohlcv.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_open_interest.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_order.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_order_book.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_position.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_shared_methods.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_status.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_throttle.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_ticker.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_trade.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_trading_fee.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/base/test_transaction.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/test_async.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/test/test_sync.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/tidex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/timex.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/tokocrypto.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/upbit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/wavesexchange.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/wazirx.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/woo.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/yobit.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/zaif.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt/zonda.py +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt.egg-info/SOURCES.txt +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt.egg-info/dependency_links.txt +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt.egg-info/requires.txt +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/ccxt.egg-info/top_level.txt +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/setup.cfg +0 -0
- {ccxt-4.0.76 → ccxt-4.0.77}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.0.
|
3
|
+
Version: 4.0.77
|
4
4
|
Summary: A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 130+ exchanges
|
5
5
|
Home-page: https://ccxt.com
|
6
6
|
Author: Igor Kroitor
|
@@ -228,13 +228,13 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
|
|
228
228
|
|
229
229
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
230
230
|
|
231
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.0.
|
232
|
-
* unpkg: https://unpkg.com/ccxt@4.0.
|
231
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.0.77/dist/ccxt.browser.js
|
232
|
+
* unpkg: https://unpkg.com/ccxt@4.0.77/dist/ccxt.browser.js
|
233
233
|
|
234
234
|
CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
|
235
235
|
|
236
236
|
```HTML
|
237
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.0.
|
237
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.0.77/dist/ccxt.browser.js"></script>
|
238
238
|
```
|
239
239
|
|
240
240
|
Creates a global `ccxt` object:
|
@@ -80,6 +80,19 @@ class ImplicitAPI:
|
|
80
80
|
private_subaccounts_post_sub_accounts_user_id_unlock = privateSubAccountsPostSubAccountsUserIdUnlock = Entry('sub_accounts/{user_id}/unlock', ['private', 'subAccounts'], 'POST', {'cost': 1})
|
81
81
|
private_subaccounts_put_sub_accounts_user_id_keys_key = privateSubAccountsPutSubAccountsUserIdKeysKey = Entry('sub_accounts/{user_id}/keys/{key}', ['private', 'subAccounts'], 'PUT', {'cost': 1})
|
82
82
|
private_subaccounts_delete_sub_accounts_user_id_keys_key = privateSubAccountsDeleteSubAccountsUserIdKeysKey = Entry('sub_accounts/{user_id}/keys/{key}', ['private', 'subAccounts'], 'DELETE', {'cost': 1})
|
83
|
+
private_portfolio_get_accounts = privatePortfolioGetAccounts = Entry('accounts', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
84
|
+
private_portfolio_get_account_mode = privatePortfolioGetAccountMode = Entry('account_mode', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
85
|
+
private_portfolio_get_borrowable = privatePortfolioGetBorrowable = Entry('borrowable', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
86
|
+
private_portfolio_get_transferable = privatePortfolioGetTransferable = Entry('transferable', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
87
|
+
private_portfolio_get_loans = privatePortfolioGetLoans = Entry('loans', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
88
|
+
private_portfolio_get_loan_records = privatePortfolioGetLoanRecords = Entry('loan_records', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
89
|
+
private_portfolio_get_interest_records = privatePortfolioGetInterestRecords = Entry('interest_records', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
90
|
+
private_portfolio_get_spot_orders = privatePortfolioGetSpotOrders = Entry('spot/orders', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
91
|
+
private_portfolio_get_spot_orders_order_id = privatePortfolioGetSpotOrdersOrderId = Entry('spot/orders/{order_id}', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
92
|
+
private_portfolio_post_loans = privatePortfolioPostLoans = Entry('loans', ['private', 'portfolio'], 'POST', {'cost': 1.5})
|
93
|
+
private_portfolio_post_spot_orders = privatePortfolioPostSpotOrders = Entry('spot/orders', ['private', 'portfolio'], 'POST', {'cost': 1.5})
|
94
|
+
private_portfolio_delete_spot_orders_order_id = privatePortfolioDeleteSpotOrdersOrderId = Entry('spot/orders/{order_id}', ['private', 'portfolio'], 'DELETE', {'cost': 1.5})
|
95
|
+
private_portfolio_patch_spot_orders_order_id = privatePortfolioPatchSpotOrdersOrderId = Entry('spot/orders/{order_id}', ['private', 'portfolio'], 'PATCH', {'cost': 1.5})
|
83
96
|
private_spot_get_fee = privateSpotGetFee = Entry('fee', ['private', 'spot'], 'GET', {'cost': 1})
|
84
97
|
private_spot_get_batch_fee = privateSpotGetBatchFee = Entry('batch_fee', ['private', 'spot'], 'GET', {'cost': 1})
|
85
98
|
private_spot_get_accounts = privateSpotGetAccounts = Entry('accounts', ['private', 'spot'], 'GET', {'cost': 1})
|
@@ -213,10 +226,21 @@ class ImplicitAPI:
|
|
213
226
|
private_earn_get_uni_interest_records = privateEarnGetUniInterestRecords = Entry('uni/interest_records', ['private', 'earn'], 'GET', {'cost': 1.5})
|
214
227
|
private_earn_post_uni_lends = privateEarnPostUniLends = Entry('uni/lends', ['private', 'earn'], 'POST', {'cost': 1.5})
|
215
228
|
private_earn_patch_uni_lends = privateEarnPatchUniLends = Entry('uni/lends', ['private', 'earn'], 'PATCH', {'cost': 1.5})
|
229
|
+
private_loan_get_collateral_orders = privateLoanGetCollateralOrders = Entry('collateral/orders', ['private', 'loan'], 'GET', {'cost': 1.5})
|
230
|
+
private_loan_get_collateral_orders_order_id = privateLoanGetCollateralOrdersOrderId = Entry('collateral/orders/{order_id}', ['private', 'loan'], 'GET', {'cost': 1.5})
|
231
|
+
private_loan_get_collateral_repay_records = privateLoanGetCollateralRepayRecords = Entry('collateral/repay_records', ['private', 'loan'], 'GET', {'cost': 1.5})
|
232
|
+
private_loan_get_collateral_collaterals = privateLoanGetCollateralCollaterals = Entry('collateral/collaterals', ['private', 'loan'], 'GET', {'cost': 1.5})
|
233
|
+
private_loan_get_collateral_total_amount = privateLoanGetCollateralTotalAmount = Entry('collateral/total_amount', ['private', 'loan'], 'GET', {'cost': 1.5})
|
234
|
+
private_loan_get_collateral_ltv = privateLoanGetCollateralLtv = Entry('collateral/ltv', ['private', 'loan'], 'GET', {'cost': 1.5})
|
235
|
+
private_loan_get_collateral_currencies = privateLoanGetCollateralCurrencies = Entry('collateral/currencies', ['private', 'loan'], 'GET', {'cost': 1.5})
|
236
|
+
private_loan_post_collateral_orders = privateLoanPostCollateralOrders = Entry('collateral/orders', ['private', 'loan'], 'POST', {'cost': 1.5})
|
237
|
+
private_loan_post_collateral_repay = privateLoanPostCollateralRepay = Entry('collateral/repay', ['private', 'loan'], 'POST', {'cost': 1.5})
|
238
|
+
private_loan_post_collateral_collaterals = privateLoanPostCollateralCollaterals = Entry('collateral/collaterals', ['private', 'loan'], 'POST', {'cost': 1.5})
|
216
239
|
private_account_get_detail = privateAccountGetDetail = Entry('detail', ['private', 'account'], 'GET', {'cost': 1.5})
|
217
240
|
private_account_get_stp_groups = privateAccountGetStpGroups = Entry('stp_groups', ['private', 'account'], 'GET', {'cost': 1.5})
|
218
241
|
private_account_get_stp_groups_stp_id_users = privateAccountGetStpGroupsStpIdUsers = Entry('stp_groups/{stp_id}/users', ['private', 'account'], 'GET', {'cost': 1.5})
|
219
242
|
private_account_post_stp_groups = privateAccountPostStpGroups = Entry('stp_groups', ['private', 'account'], 'POST', {'cost': 1.5})
|
220
243
|
private_account_post_stp_groups_stp_id_users = privateAccountPostStpGroupsStpIdUsers = Entry('stp_groups/{stp_id}/users', ['private', 'account'], 'POST', {'cost': 1.5})
|
244
|
+
private_account_delete_stp_groups_stp_id_users = privateAccountDeleteStpGroupsStpIdUsers = Entry('stp_groups/{stp_id}/users', ['private', 'account'], 'DELETE', {'cost': 1.5})
|
221
245
|
private_rebate_get_agency_transaction_history = privateRebateGetAgencyTransactionHistory = Entry('agency/transaction_history', ['private', 'rebate'], 'GET', {'cost': 1.5})
|
222
246
|
private_rebate_get_agency_commission_history = privateRebateGetAgencyCommissionHistory = Entry('agency/commission_history', ['private', 'rebate'], 'GET', {'cost': 1.5})
|
@@ -80,6 +80,19 @@ class ImplicitAPI:
|
|
80
80
|
private_subaccounts_post_sub_accounts_user_id_unlock = privateSubAccountsPostSubAccountsUserIdUnlock = Entry('sub_accounts/{user_id}/unlock', ['private', 'subAccounts'], 'POST', {'cost': 1})
|
81
81
|
private_subaccounts_put_sub_accounts_user_id_keys_key = privateSubAccountsPutSubAccountsUserIdKeysKey = Entry('sub_accounts/{user_id}/keys/{key}', ['private', 'subAccounts'], 'PUT', {'cost': 1})
|
82
82
|
private_subaccounts_delete_sub_accounts_user_id_keys_key = privateSubAccountsDeleteSubAccountsUserIdKeysKey = Entry('sub_accounts/{user_id}/keys/{key}', ['private', 'subAccounts'], 'DELETE', {'cost': 1})
|
83
|
+
private_portfolio_get_accounts = privatePortfolioGetAccounts = Entry('accounts', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
84
|
+
private_portfolio_get_account_mode = privatePortfolioGetAccountMode = Entry('account_mode', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
85
|
+
private_portfolio_get_borrowable = privatePortfolioGetBorrowable = Entry('borrowable', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
86
|
+
private_portfolio_get_transferable = privatePortfolioGetTransferable = Entry('transferable', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
87
|
+
private_portfolio_get_loans = privatePortfolioGetLoans = Entry('loans', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
88
|
+
private_portfolio_get_loan_records = privatePortfolioGetLoanRecords = Entry('loan_records', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
89
|
+
private_portfolio_get_interest_records = privatePortfolioGetInterestRecords = Entry('interest_records', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
90
|
+
private_portfolio_get_spot_orders = privatePortfolioGetSpotOrders = Entry('spot/orders', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
91
|
+
private_portfolio_get_spot_orders_order_id = privatePortfolioGetSpotOrdersOrderId = Entry('spot/orders/{order_id}', ['private', 'portfolio'], 'GET', {'cost': 1.5})
|
92
|
+
private_portfolio_post_loans = privatePortfolioPostLoans = Entry('loans', ['private', 'portfolio'], 'POST', {'cost': 1.5})
|
93
|
+
private_portfolio_post_spot_orders = privatePortfolioPostSpotOrders = Entry('spot/orders', ['private', 'portfolio'], 'POST', {'cost': 1.5})
|
94
|
+
private_portfolio_delete_spot_orders_order_id = privatePortfolioDeleteSpotOrdersOrderId = Entry('spot/orders/{order_id}', ['private', 'portfolio'], 'DELETE', {'cost': 1.5})
|
95
|
+
private_portfolio_patch_spot_orders_order_id = privatePortfolioPatchSpotOrdersOrderId = Entry('spot/orders/{order_id}', ['private', 'portfolio'], 'PATCH', {'cost': 1.5})
|
83
96
|
private_spot_get_fee = privateSpotGetFee = Entry('fee', ['private', 'spot'], 'GET', {'cost': 1})
|
84
97
|
private_spot_get_batch_fee = privateSpotGetBatchFee = Entry('batch_fee', ['private', 'spot'], 'GET', {'cost': 1})
|
85
98
|
private_spot_get_accounts = privateSpotGetAccounts = Entry('accounts', ['private', 'spot'], 'GET', {'cost': 1})
|
@@ -213,10 +226,21 @@ class ImplicitAPI:
|
|
213
226
|
private_earn_get_uni_interest_records = privateEarnGetUniInterestRecords = Entry('uni/interest_records', ['private', 'earn'], 'GET', {'cost': 1.5})
|
214
227
|
private_earn_post_uni_lends = privateEarnPostUniLends = Entry('uni/lends', ['private', 'earn'], 'POST', {'cost': 1.5})
|
215
228
|
private_earn_patch_uni_lends = privateEarnPatchUniLends = Entry('uni/lends', ['private', 'earn'], 'PATCH', {'cost': 1.5})
|
229
|
+
private_loan_get_collateral_orders = privateLoanGetCollateralOrders = Entry('collateral/orders', ['private', 'loan'], 'GET', {'cost': 1.5})
|
230
|
+
private_loan_get_collateral_orders_order_id = privateLoanGetCollateralOrdersOrderId = Entry('collateral/orders/{order_id}', ['private', 'loan'], 'GET', {'cost': 1.5})
|
231
|
+
private_loan_get_collateral_repay_records = privateLoanGetCollateralRepayRecords = Entry('collateral/repay_records', ['private', 'loan'], 'GET', {'cost': 1.5})
|
232
|
+
private_loan_get_collateral_collaterals = privateLoanGetCollateralCollaterals = Entry('collateral/collaterals', ['private', 'loan'], 'GET', {'cost': 1.5})
|
233
|
+
private_loan_get_collateral_total_amount = privateLoanGetCollateralTotalAmount = Entry('collateral/total_amount', ['private', 'loan'], 'GET', {'cost': 1.5})
|
234
|
+
private_loan_get_collateral_ltv = privateLoanGetCollateralLtv = Entry('collateral/ltv', ['private', 'loan'], 'GET', {'cost': 1.5})
|
235
|
+
private_loan_get_collateral_currencies = privateLoanGetCollateralCurrencies = Entry('collateral/currencies', ['private', 'loan'], 'GET', {'cost': 1.5})
|
236
|
+
private_loan_post_collateral_orders = privateLoanPostCollateralOrders = Entry('collateral/orders', ['private', 'loan'], 'POST', {'cost': 1.5})
|
237
|
+
private_loan_post_collateral_repay = privateLoanPostCollateralRepay = Entry('collateral/repay', ['private', 'loan'], 'POST', {'cost': 1.5})
|
238
|
+
private_loan_post_collateral_collaterals = privateLoanPostCollateralCollaterals = Entry('collateral/collaterals', ['private', 'loan'], 'POST', {'cost': 1.5})
|
216
239
|
private_account_get_detail = privateAccountGetDetail = Entry('detail', ['private', 'account'], 'GET', {'cost': 1.5})
|
217
240
|
private_account_get_stp_groups = privateAccountGetStpGroups = Entry('stp_groups', ['private', 'account'], 'GET', {'cost': 1.5})
|
218
241
|
private_account_get_stp_groups_stp_id_users = privateAccountGetStpGroupsStpIdUsers = Entry('stp_groups/{stp_id}/users', ['private', 'account'], 'GET', {'cost': 1.5})
|
219
242
|
private_account_post_stp_groups = privateAccountPostStpGroups = Entry('stp_groups', ['private', 'account'], 'POST', {'cost': 1.5})
|
220
243
|
private_account_post_stp_groups_stp_id_users = privateAccountPostStpGroupsStpIdUsers = Entry('stp_groups/{stp_id}/users', ['private', 'account'], 'POST', {'cost': 1.5})
|
244
|
+
private_account_delete_stp_groups_stp_id_users = privateAccountDeleteStpGroupsStpIdUsers = Entry('stp_groups/{stp_id}/users', ['private', 'account'], 'DELETE', {'cost': 1.5})
|
221
245
|
private_rebate_get_agency_transaction_history = privateRebateGetAgencyTransactionHistory = Entry('agency/transaction_history', ['private', 'rebate'], 'GET', {'cost': 1.5})
|
222
246
|
private_rebate_get_agency_commission_history = privateRebateGetAgencyCommissionHistory = Entry('agency/commission_history', ['private', 'rebate'], 'GET', {'cost': 1.5})
|
@@ -1070,9 +1070,9 @@ class bingx(Exchange, ImplicitAPI):
|
|
1070
1070
|
}
|
1071
1071
|
response = None
|
1072
1072
|
if market['spot']:
|
1073
|
-
response = await self.
|
1073
|
+
response = await self.spotV1PrivateGetTicker24hr(self.extend(request, params))
|
1074
1074
|
else:
|
1075
|
-
response = await self.
|
1075
|
+
response = await self.swapV2PublicGetQuoteTicker(self.extend(request, params))
|
1076
1076
|
#
|
1077
1077
|
# {
|
1078
1078
|
# "code": 0,
|
@@ -1094,7 +1094,8 @@ class bingx(Exchange, ImplicitAPI):
|
|
1094
1094
|
# }
|
1095
1095
|
#
|
1096
1096
|
data = self.safe_value(response, 'data')
|
1097
|
-
|
1097
|
+
ticker = self.safe_value(data, 0, data)
|
1098
|
+
return self.parse_ticker(ticker, market)
|
1098
1099
|
|
1099
1100
|
async def fetch_tickers(self, symbols: Optional[List[str]] = None, params={}):
|
1100
1101
|
"""
|
@@ -1138,6 +1139,20 @@ class bingx(Exchange, ImplicitAPI):
|
|
1138
1139
|
return self.parse_tickers(tickers, symbols)
|
1139
1140
|
|
1140
1141
|
def parse_ticker(self, ticker, market=None):
|
1142
|
+
#
|
1143
|
+
# spot
|
1144
|
+
# {
|
1145
|
+
# symbol: 'BTC-USDT',
|
1146
|
+
# openPrice: '26032.08',
|
1147
|
+
# highPrice: '26178.86',
|
1148
|
+
# lowPrice: '25968.18',
|
1149
|
+
# lastPrice: '26113.60',
|
1150
|
+
# volume: '1161.79',
|
1151
|
+
# quoteVolume: '30288466.44',
|
1152
|
+
# openTime: '1693081020762',
|
1153
|
+
# closeTime: '1693167420762'
|
1154
|
+
# }
|
1155
|
+
# swap
|
1141
1156
|
#
|
1142
1157
|
# {
|
1143
1158
|
# "symbol": "BTC-USDT",
|
@@ -1155,15 +1170,15 @@ class bingx(Exchange, ImplicitAPI):
|
|
1155
1170
|
# }
|
1156
1171
|
#
|
1157
1172
|
marketId = self.safe_string(ticker, 'symbol')
|
1158
|
-
|
1159
|
-
|
1173
|
+
change = self.safe_string(ticker, 'priceChange')
|
1174
|
+
type = 'spot' if (change is None) else 'swap'
|
1175
|
+
symbol = self.safe_symbol(marketId, market, None, type)
|
1160
1176
|
open = self.safe_string(ticker, 'openPrice')
|
1161
1177
|
high = self.safe_string(ticker, 'highPrice')
|
1162
1178
|
low = self.safe_string(ticker, 'lowPrice')
|
1163
1179
|
close = self.safe_string(ticker, 'lastPrice')
|
1164
1180
|
quoteVolume = self.safe_string(ticker, 'quoteVolume')
|
1165
1181
|
baseVolume = self.safe_string(ticker, 'volume')
|
1166
|
-
change = self.safe_string(ticker, 'chapriceChangenge')
|
1167
1182
|
percentage = self.safe_string(ticker, 'priceChangePercent')
|
1168
1183
|
ts = self.safe_integer(ticker, 'closeTime')
|
1169
1184
|
datetime = self.iso8601(ts)
|
@@ -298,6 +298,29 @@ class gate(Exchange, ImplicitAPI):
|
|
298
298
|
'sub_accounts/{user_id}/keys/{key}': 1,
|
299
299
|
},
|
300
300
|
},
|
301
|
+
'portfolio': {
|
302
|
+
'get': {
|
303
|
+
'accounts': 1.5,
|
304
|
+
'account_mode': 1.5,
|
305
|
+
'borrowable': 1.5,
|
306
|
+
'transferable': 1.5,
|
307
|
+
'loans': 1.5,
|
308
|
+
'loan_records': 1.5,
|
309
|
+
'interest_records': 1.5,
|
310
|
+
'spot/orders': 1.5,
|
311
|
+
'spot/orders/{order_id}': 1.5,
|
312
|
+
},
|
313
|
+
'post': {
|
314
|
+
'loans': 1.5,
|
315
|
+
'spot/orders': 1.5,
|
316
|
+
},
|
317
|
+
'delete': {
|
318
|
+
'spot/orders/{order_id}': 1.5,
|
319
|
+
},
|
320
|
+
'patch': {
|
321
|
+
'spot/orders/{order_id}': 1.5,
|
322
|
+
},
|
323
|
+
},
|
301
324
|
'spot': {
|
302
325
|
'get': {
|
303
326
|
'fee': 1,
|
@@ -491,6 +514,22 @@ class gate(Exchange, ImplicitAPI):
|
|
491
514
|
'uni/lends': 1.5,
|
492
515
|
},
|
493
516
|
},
|
517
|
+
'loan': {
|
518
|
+
'get': {
|
519
|
+
'collateral/orders': 1.5,
|
520
|
+
'collateral/orders/{order_id}': 1.5,
|
521
|
+
'collateral/repay_records': 1.5,
|
522
|
+
'collateral/collaterals': 1.5,
|
523
|
+
'collateral/total_amount': 1.5,
|
524
|
+
'collateral/ltv': 1.5,
|
525
|
+
'collateral/currencies': 1.5,
|
526
|
+
},
|
527
|
+
'post': {
|
528
|
+
'collateral/orders': 1.5,
|
529
|
+
'collateral/repay': 1.5,
|
530
|
+
'collateral/collaterals': 1.5,
|
531
|
+
},
|
532
|
+
},
|
494
533
|
'account': {
|
495
534
|
'get': {
|
496
535
|
'detail': 1.5,
|
@@ -501,6 +540,9 @@ class gate(Exchange, ImplicitAPI):
|
|
501
540
|
'stp_groups': 1.5,
|
502
541
|
'stp_groups/{stp_id}/users': 1.5,
|
503
542
|
},
|
543
|
+
'delete': {
|
544
|
+
'stp_groups/{stp_id}/users': 1.5,
|
545
|
+
},
|
504
546
|
},
|
505
547
|
'rebate': {
|
506
548
|
'get': {
|
@@ -268,6 +268,7 @@ class whitebit(Exchange, ImplicitAPI):
|
|
268
268
|
'422': OrderNotFound, # {"response":null,"status":422,"errors":{"orderId":["Finished order id 1295772653 not found on your account"]},"notification":null,"warning":"Finished order id 1295772653 not found on your account","_token":null}
|
269
269
|
},
|
270
270
|
'broad': {
|
271
|
+
'This action is unauthorized': PermissionDenied, # {"code":2,"message":"This action is unauthorized. Enable your key in API settings"}
|
271
272
|
'Given amount is less than min amount': InvalidOrder, # {"code":0,"message":"Validation failed","errors":{"amount":["Given amount is less than min amount 200000"],"total":["Total is less than 5.05"]}}
|
272
273
|
'Total is less than': InvalidOrder, # {"code":0,"message":"Validation failed","errors":{"amount":["Given amount is less than min amount 200000"],"total":["Total is less than 5.05"]}}
|
273
274
|
'fee must be no less than': InvalidOrder, # {"code":0,"message":"Validation failed","errors":{"amount":["Total amount + fee must be no less than 5.05505"]}}
|
@@ -1069,9 +1069,9 @@ class bingx(Exchange, ImplicitAPI):
|
|
1069
1069
|
}
|
1070
1070
|
response = None
|
1071
1071
|
if market['spot']:
|
1072
|
-
response = self.
|
1072
|
+
response = self.spotV1PrivateGetTicker24hr(self.extend(request, params))
|
1073
1073
|
else:
|
1074
|
-
response = self.
|
1074
|
+
response = self.swapV2PublicGetQuoteTicker(self.extend(request, params))
|
1075
1075
|
#
|
1076
1076
|
# {
|
1077
1077
|
# "code": 0,
|
@@ -1093,7 +1093,8 @@ class bingx(Exchange, ImplicitAPI):
|
|
1093
1093
|
# }
|
1094
1094
|
#
|
1095
1095
|
data = self.safe_value(response, 'data')
|
1096
|
-
|
1096
|
+
ticker = self.safe_value(data, 0, data)
|
1097
|
+
return self.parse_ticker(ticker, market)
|
1097
1098
|
|
1098
1099
|
def fetch_tickers(self, symbols: Optional[List[str]] = None, params={}):
|
1099
1100
|
"""
|
@@ -1137,6 +1138,20 @@ class bingx(Exchange, ImplicitAPI):
|
|
1137
1138
|
return self.parse_tickers(tickers, symbols)
|
1138
1139
|
|
1139
1140
|
def parse_ticker(self, ticker, market=None):
|
1141
|
+
#
|
1142
|
+
# spot
|
1143
|
+
# {
|
1144
|
+
# symbol: 'BTC-USDT',
|
1145
|
+
# openPrice: '26032.08',
|
1146
|
+
# highPrice: '26178.86',
|
1147
|
+
# lowPrice: '25968.18',
|
1148
|
+
# lastPrice: '26113.60',
|
1149
|
+
# volume: '1161.79',
|
1150
|
+
# quoteVolume: '30288466.44',
|
1151
|
+
# openTime: '1693081020762',
|
1152
|
+
# closeTime: '1693167420762'
|
1153
|
+
# }
|
1154
|
+
# swap
|
1140
1155
|
#
|
1141
1156
|
# {
|
1142
1157
|
# "symbol": "BTC-USDT",
|
@@ -1154,15 +1169,15 @@ class bingx(Exchange, ImplicitAPI):
|
|
1154
1169
|
# }
|
1155
1170
|
#
|
1156
1171
|
marketId = self.safe_string(ticker, 'symbol')
|
1157
|
-
|
1158
|
-
|
1172
|
+
change = self.safe_string(ticker, 'priceChange')
|
1173
|
+
type = 'spot' if (change is None) else 'swap'
|
1174
|
+
symbol = self.safe_symbol(marketId, market, None, type)
|
1159
1175
|
open = self.safe_string(ticker, 'openPrice')
|
1160
1176
|
high = self.safe_string(ticker, 'highPrice')
|
1161
1177
|
low = self.safe_string(ticker, 'lowPrice')
|
1162
1178
|
close = self.safe_string(ticker, 'lastPrice')
|
1163
1179
|
quoteVolume = self.safe_string(ticker, 'quoteVolume')
|
1164
1180
|
baseVolume = self.safe_string(ticker, 'volume')
|
1165
|
-
change = self.safe_string(ticker, 'chapriceChangenge')
|
1166
1181
|
percentage = self.safe_string(ticker, 'priceChangePercent')
|
1167
1182
|
ts = self.safe_integer(ticker, 'closeTime')
|
1168
1183
|
datetime = self.iso8601(ts)
|
@@ -297,6 +297,29 @@ class gate(Exchange, ImplicitAPI):
|
|
297
297
|
'sub_accounts/{user_id}/keys/{key}': 1,
|
298
298
|
},
|
299
299
|
},
|
300
|
+
'portfolio': {
|
301
|
+
'get': {
|
302
|
+
'accounts': 1.5,
|
303
|
+
'account_mode': 1.5,
|
304
|
+
'borrowable': 1.5,
|
305
|
+
'transferable': 1.5,
|
306
|
+
'loans': 1.5,
|
307
|
+
'loan_records': 1.5,
|
308
|
+
'interest_records': 1.5,
|
309
|
+
'spot/orders': 1.5,
|
310
|
+
'spot/orders/{order_id}': 1.5,
|
311
|
+
},
|
312
|
+
'post': {
|
313
|
+
'loans': 1.5,
|
314
|
+
'spot/orders': 1.5,
|
315
|
+
},
|
316
|
+
'delete': {
|
317
|
+
'spot/orders/{order_id}': 1.5,
|
318
|
+
},
|
319
|
+
'patch': {
|
320
|
+
'spot/orders/{order_id}': 1.5,
|
321
|
+
},
|
322
|
+
},
|
300
323
|
'spot': {
|
301
324
|
'get': {
|
302
325
|
'fee': 1,
|
@@ -490,6 +513,22 @@ class gate(Exchange, ImplicitAPI):
|
|
490
513
|
'uni/lends': 1.5,
|
491
514
|
},
|
492
515
|
},
|
516
|
+
'loan': {
|
517
|
+
'get': {
|
518
|
+
'collateral/orders': 1.5,
|
519
|
+
'collateral/orders/{order_id}': 1.5,
|
520
|
+
'collateral/repay_records': 1.5,
|
521
|
+
'collateral/collaterals': 1.5,
|
522
|
+
'collateral/total_amount': 1.5,
|
523
|
+
'collateral/ltv': 1.5,
|
524
|
+
'collateral/currencies': 1.5,
|
525
|
+
},
|
526
|
+
'post': {
|
527
|
+
'collateral/orders': 1.5,
|
528
|
+
'collateral/repay': 1.5,
|
529
|
+
'collateral/collaterals': 1.5,
|
530
|
+
},
|
531
|
+
},
|
493
532
|
'account': {
|
494
533
|
'get': {
|
495
534
|
'detail': 1.5,
|
@@ -500,6 +539,9 @@ class gate(Exchange, ImplicitAPI):
|
|
500
539
|
'stp_groups': 1.5,
|
501
540
|
'stp_groups/{stp_id}/users': 1.5,
|
502
541
|
},
|
542
|
+
'delete': {
|
543
|
+
'stp_groups/{stp_id}/users': 1.5,
|
544
|
+
},
|
503
545
|
},
|
504
546
|
'rebate': {
|
505
547
|
'get': {
|
@@ -11,6 +11,7 @@ from ccxt.base.types import OrderType
|
|
11
11
|
from ccxt.async_support.base.ws.client import Client
|
12
12
|
from typing import Optional
|
13
13
|
from typing import List
|
14
|
+
from ccxt.base.errors import ArgumentsRequired
|
14
15
|
from ccxt.base.errors import BadRequest
|
15
16
|
from ccxt.base.errors import InvalidNonce
|
16
17
|
from ccxt.base.errors import AuthenticationError
|
@@ -226,6 +227,8 @@ class okx(ccxt.async_support.okx):
|
|
226
227
|
:param str [params.channel]: the channel to subscribe to, tickers by default. Can be tickers, sprd-tickers, index-tickers, block-tickers
|
227
228
|
:returns dict: a `ticker structure <https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure>`
|
228
229
|
"""
|
230
|
+
if self.is_empty(symbols):
|
231
|
+
raise ArgumentsRequired(self.id + ' watchTickers requires a list of symbols')
|
229
232
|
channel = None
|
230
233
|
channel, params = self.handle_option_and_params(params, 'watchTickers', 'channel', 'tickers')
|
231
234
|
newTickers = await self.subscribe_multiple('public', channel, symbols, params)
|
@@ -268,6 +268,7 @@ class whitebit(Exchange, ImplicitAPI):
|
|
268
268
|
'422': OrderNotFound, # {"response":null,"status":422,"errors":{"orderId":["Finished order id 1295772653 not found on your account"]},"notification":null,"warning":"Finished order id 1295772653 not found on your account","_token":null}
|
269
269
|
},
|
270
270
|
'broad': {
|
271
|
+
'This action is unauthorized': PermissionDenied, # {"code":2,"message":"This action is unauthorized. Enable your key in API settings"}
|
271
272
|
'Given amount is less than min amount': InvalidOrder, # {"code":0,"message":"Validation failed","errors":{"amount":["Given amount is less than min amount 200000"],"total":["Total is less than 5.05"]}}
|
272
273
|
'Total is less than': InvalidOrder, # {"code":0,"message":"Validation failed","errors":{"amount":["Given amount is less than min amount 200000"],"total":["Total is less than 5.05"]}}
|
273
274
|
'fee must be no less than': InvalidOrder, # {"code":0,"message":"Validation failed","errors":{"amount":["Total amount + fee must be no less than 5.05505"]}}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.0.
|
3
|
+
Version: 4.0.77
|
4
4
|
Summary: A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 130+ exchanges
|
5
5
|
Home-page: https://ccxt.com
|
6
6
|
Author: Igor Kroitor
|
@@ -228,13 +228,13 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
|
|
228
228
|
|
229
229
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
230
230
|
|
231
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.0.
|
232
|
-
* unpkg: https://unpkg.com/ccxt@4.0.
|
231
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.0.77/dist/ccxt.browser.js
|
232
|
+
* unpkg: https://unpkg.com/ccxt@4.0.77/dist/ccxt.browser.js
|
233
233
|
|
234
234
|
CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
|
235
235
|
|
236
236
|
```HTML
|
237
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.0.
|
237
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.0.77/dist/ccxt.browser.js"></script>
|
238
238
|
```
|
239
239
|
|
240
240
|
Creates a global `ccxt` object:
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|