ccxt 4.2.77__tar.gz → 4.2.79__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.2.77/ccxt.egg-info → ccxt-4.2.79}/PKG-INFO +6 -6
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/__init__.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bingx.py +1 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/gate.py +1 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/gateio.py +1 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/__init__.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/exchange.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/functions.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bingx.py +37 -5
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitstamp.py +20 -26
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bybit.py +97 -2
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinbase.py +20 -9
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinbaseinternational.py +2 -2
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/gate.py +4 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/htx.py +34 -27
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/hyperliquid.py +6 -4
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/kucoin.py +52 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/okcoin.py +27 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/okx.py +18 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/woo.py +43 -3
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/base/exchange.py +5 -5
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bingx.py +37 -5
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitstamp.py +20 -26
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bybit.py +97 -2
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinbase.py +20 -9
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinbaseinternational.py +2 -2
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/gate.py +4 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/htx.py +34 -27
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/hyperliquid.py +6 -4
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/kucoin.py +52 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/okcoin.py +27 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/okx.py +18 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/__init__.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/alpaca.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitfinex2.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitget.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitmart.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitmex.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/blockchaincom.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bybit.py +14 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/cex.py +9 -5
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/cryptocom.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/hitbtc.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/htx.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/okcoin.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/onetrading.py +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/woo.py +30 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/woo.py +43 -3
- {ccxt-4.2.77 → ccxt-4.2.79/ccxt.egg-info}/PKG-INFO +6 -6
- {ccxt-4.2.77 → ccxt-4.2.79}/package.json +1 -1
- {ccxt-4.2.77 → ccxt-4.2.79}/LICENSE.txt +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/MANIFEST.in +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/README.rst +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/ace.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/alpaca.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/ascendex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bequant.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bigone.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/binance.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/binancecoinm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/binanceus.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/binanceusdm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bit2c.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitbank.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitbay.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitbns.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitcoincom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitfinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitfinex2.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitflyer.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitget.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bithumb.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitmart.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitmex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitopro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitpanda.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitrue.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitso.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitstamp.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitteam.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bitvavo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bl3p.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/blockchaincom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/blofin.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/btcalpha.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/btcbox.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/btcmarkets.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/btcturk.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/bybit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/cex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinbase.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinbaseinternational.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinbasepro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coincheck.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinlist.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinmate.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinmetro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinone.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinsph.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/coinspot.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/cryptocom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/currencycom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/delta.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/deribit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/digifinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/exmo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/fmfwio.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/gemini.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/hitbtc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/hitbtc3.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/hollaex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/htx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/huobi.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/huobijp.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/hyperliquid.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/idex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/independentreserve.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/indodax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/kraken.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/krakenfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/kucoin.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/kucoinfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/kuna.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/latoken.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/lbank.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/luno.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/lykke.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/mercado.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/mexc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/ndax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/novadax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/oceanex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/okcoin.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/okx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/onetrading.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/p2b.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/paymium.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/phemex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/poloniex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/poloniexfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/probit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/timex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/tokocrypto.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/tradeogre.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/upbit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/wavesexchange.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/wazirx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/whitebit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/woo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/yobit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/zaif.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/abstract/zonda.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/ace.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/alpaca.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/ascendex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/ace.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/alpaca.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/ascendex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/throttler.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/aiohttp_client.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/cache.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/client.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/fast_client.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/future.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/order_book.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/base/ws/order_book_side.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bequant.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bigone.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/binance.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/binancecoinm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/binanceus.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/binanceusdm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bit2c.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitbank.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitbay.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitbns.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitcoincom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitfinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitfinex2.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitflyer.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitget.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bithumb.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitmart.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitmex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitopro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitpanda.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitrue.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitso.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitteam.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bitvavo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/bl3p.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/blockchaincom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/blofin.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/btcalpha.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/btcbox.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/btcmarkets.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/btcturk.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/cex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinbasepro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coincheck.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinlist.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinmate.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinmetro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinone.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinsph.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/coinspot.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/cryptocom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/currencycom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/delta.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/deribit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/digifinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/exmo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/flowbtc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/fmfwio.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/gateio.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/gemini.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/hitbtc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/hitbtc3.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/hollaex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/huobi.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/huobijp.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/idex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/independentreserve.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/indodax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/kraken.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/krakenfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/kucoinfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/kuna.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/latoken.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/lbank.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/luno.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/lykke.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/mercado.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/mexc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/ndax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/novadax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/oceanex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/onetrading.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/p2b.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/paymium.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/phemex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/poloniex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/poloniexfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/probit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/timex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/tokocrypto.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/tradeogre.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/upbit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/wavesexchange.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/wazirx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/whitebit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/yobit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/zaif.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/async_support/zonda.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/base/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/base/decimal_to_precision.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/base/errors.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/base/precise.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/base/types.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bequant.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bigone.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/binance.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/binancecoinm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/binanceus.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/binanceusdm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bit2c.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitbank.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitbay.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitbns.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitcoincom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitfinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitfinex2.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitflyer.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitget.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bithumb.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitmart.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitmex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitopro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitpanda.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitrue.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitso.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitteam.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bitvavo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/bl3p.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/blockchaincom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/blofin.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/btcalpha.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/btcbox.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/btcmarkets.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/btcturk.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/cex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinbasepro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coincheck.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinlist.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinmate.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinmetro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinone.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinsph.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/coinspot.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/cryptocom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/currencycom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/delta.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/deribit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/digifinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/exmo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/flowbtc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/fmfwio.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/gateio.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/gemini.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/hitbtc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/hitbtc3.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/hollaex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/huobi.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/huobijp.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/idex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/independentreserve.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/indodax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/kraken.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/krakenfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/kucoinfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/kuna.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/latoken.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/lbank.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/luno.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/lykke.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/mercado.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/mexc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/ndax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/novadax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/oceanex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/onetrading.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/p2b.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/paymium.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/phemex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/poloniex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/poloniexfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/ascendex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bequant.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/binance.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/binancecoinm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/binanceus.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/binanceusdm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bingx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitcoincom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitfinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitopro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitpanda.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitrue.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitstamp.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/bitvavo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/coinbase.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/coinbaseinternational.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/coinbasepro.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/coincheck.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/coinex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/coinone.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/currencycom.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/deribit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/exmo.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/gate.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/gateio.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/gemini.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/hollaex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/huobi.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/huobijp.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/hyperliquid.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/idex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/independentreserve.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/kraken.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/krakenfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/kucoin.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/kucoinfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/lbank.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/luno.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/mexc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/ndax.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/okx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/p2b.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/phemex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/poloniex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/poloniexfutures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/probit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/upbit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/wazirx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/pro/whitebit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/probit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/der.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ecdsa/util.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/keccak/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/keccak/keccak.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/msgpack/ext.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/_version.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/recipes.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/static_dependencies/toolz/utils.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/__init__.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_account.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_balance.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_borrow_interest.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_borrow_rate.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_calculate_fee.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_crypto.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_currency.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_datetime.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_decimal_to_precision.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_deep_extend.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_deposit_withdrawal.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_exchange_datetime_functions.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_funding_rate_history.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_last_price.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_ledger_entry.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_ledger_item.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_leverage_tier.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_margin_mode.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_margin_modification.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_market.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_number.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_ohlcv.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_open_interest.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_order.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_order_book.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_position.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_shared_methods.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_status.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_throttle.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_ticker.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_trade.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_trading_fee.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/base/test_transaction.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/test_async.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/test/test_sync.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/timex.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/tokocrypto.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/tradeogre.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/upbit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/wavesexchange.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/wazirx.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/whitebit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/yobit.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/zaif.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt/zonda.py +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt.egg-info/SOURCES.txt +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt.egg-info/dependency_links.txt +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt.egg-info/requires.txt +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/ccxt.egg-info/top_level.txt +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/setup.cfg +0 -0
- {ccxt-4.2.77 → ccxt-4.2.79}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.2.
|
3
|
+
Version: 4.2.79
|
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
|
@@ -55,7 +55,7 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
|
|
55
55
|
| [](http://www.bitmart.com/?r=rQCFLh) | bitmart | [BitMart](http://www.bitmart.com/?r=rQCFLh) | [](https://developer-pro.bitmart.com/) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) | [](http://www.bitmart.com/?r=rQCFLh) |
|
56
56
|
| [](https://www.bitmex.com/app/register/NZTR1q) | bitmex | [BitMEX](https://www.bitmex.com/app/register/NZTR1q) | [](https://www.bitmex.com/app/apiOverview) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) | [](https://www.bitmex.com/app/register/NZTR1q) |
|
57
57
|
| [](https://www.bybit.com/register?affiliate_id=35953) | bybit | [Bybit](https://www.bybit.com/register?affiliate_id=35953) | [](https://bybit-exchange.github.io/docs/inverse/) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) | |
|
58
|
-
| [](https://international.coinbase.com) | coinbaseinternational | [Coinbase International](https://international.coinbase.com) | [](https://docs.cloud.
|
58
|
+
| [](https://international.coinbase.com) | coinbaseinternational | [Coinbase International](https://international.coinbase.com) | [](https://docs.cloud.coinbase.com/intx/docs) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) | |
|
59
59
|
| [](https://www.coinex.com/register?refer_code=yw5fz) | coinex | [CoinEx](https://www.coinex.com/register?refer_code=yw5fz) | [](https://viabtc.github.io/coinex_api_en_doc) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) | |
|
60
60
|
| [](https://crypto.com/exch/kdacthrnxt) | cryptocom | [Crypto.com](https://crypto.com/exch/kdacthrnxt) | [](https://exchange-docs.crypto.com/exchange/v1/rest-ws/index.html) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) | [](https://crypto.com/exch/kdacthrnxt) |
|
61
61
|
| [](https://www.gate.io/signup/2436035) | gate | [Gate.io](https://www.gate.io/signup/2436035) | [](https://www.gate.io/docs/developers/apiv4/en/) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) | [](https://www.gate.io/signup/2436035) |
|
@@ -108,7 +108,7 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
|
|
108
108
|
| [](https://www.bybit.com/register?affiliate_id=35953) | bybit | [Bybit](https://www.bybit.com/register?affiliate_id=35953) | [](https://bybit-exchange.github.io/docs/inverse/) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) |
|
109
109
|
| [](https://cex.io/r/0/up105393824/0/) | cex | [CEX.IO](https://cex.io/r/0/up105393824/0/) | [](https://cex.io/cex-api) | | [](https://ccxt.pro) |
|
110
110
|
| [](https://www.coinbase.com/join/58cbe25a355148797479dbd2) | coinbase | [Coinbase](https://www.coinbase.com/join/58cbe25a355148797479dbd2) | [](https://developers.coinbase.com/api/v2) | | [](https://ccxt.pro) |
|
111
|
-
| [](https://international.coinbase.com) | coinbaseinternational | [Coinbase International](https://international.coinbase.com) | [](https://docs.cloud.
|
111
|
+
| [](https://international.coinbase.com) | coinbaseinternational | [Coinbase International](https://international.coinbase.com) | [](https://docs.cloud.coinbase.com/intx/docs) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) |
|
112
112
|
| [](https://pro.coinbase.com/) | coinbasepro | [Coinbase Pro](https://pro.coinbase.com/) | [](https://docs.pro.coinbase.com) | | [](https://ccxt.pro) |
|
113
113
|
| [](https://coincheck.com) | coincheck | [coincheck](https://coincheck.com) | [](https://coincheck.com/documents/exchange/api) | | |
|
114
114
|
| [](https://www.coinex.com/register?refer_code=yw5fz) | coinex | [CoinEx](https://www.coinex.com/register?refer_code=yw5fz) | [](https://viabtc.github.io/coinex_api_en_doc) | [](https://github.com/ccxt/ccxt/wiki/Certification) | [](https://ccxt.pro) |
|
@@ -226,13 +226,13 @@ Description: # CCXT – CryptoCurrency eXchange Trading Library
|
|
226
226
|
|
227
227
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
228
228
|
|
229
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.2.
|
230
|
-
* unpkg: https://unpkg.com/ccxt@4.2.
|
229
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.2.79/dist/ccxt.browser.js
|
230
|
+
* unpkg: https://unpkg.com/ccxt@4.2.79/dist/ccxt.browser.js
|
231
231
|
|
232
232
|
CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
|
233
233
|
|
234
234
|
```HTML
|
235
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.2.
|
235
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.2.79/dist/ccxt.browser.js"></script>
|
236
236
|
```
|
237
237
|
|
238
238
|
Creates a global `ccxt` object:
|
@@ -32,6 +32,7 @@ class ImplicitAPI:
|
|
32
32
|
swap_v1_private_get_trade_batchcancelreplace = swapV1PrivateGetTradeBatchCancelReplace = Entry('trade/batchCancelReplace', ['swap', 'v1', 'private'], 'GET', {'cost': 1})
|
33
33
|
swap_v1_private_post_trade_cancelreplace = swapV1PrivatePostTradeCancelReplace = Entry('trade/cancelReplace', ['swap', 'v1', 'private'], 'POST', {'cost': 1})
|
34
34
|
swap_v1_private_post_positionside_dual = swapV1PrivatePostPositionSideDual = Entry('positionSide/dual', ['swap', 'v1', 'private'], 'POST', {'cost': 1})
|
35
|
+
swap_v1_private_post_trade_closeposition = swapV1PrivatePostTradeClosePosition = Entry('trade/closePosition', ['swap', 'v1', 'private'], 'POST', {'cost': 1})
|
35
36
|
swap_v2_public_get_server_time = swapV2PublicGetServerTime = Entry('server/time', ['swap', 'v2', 'public'], 'GET', {'cost': 3})
|
36
37
|
swap_v2_public_get_quote_contracts = swapV2PublicGetQuoteContracts = Entry('quote/contracts', ['swap', 'v2', 'public'], 'GET', {'cost': 1})
|
37
38
|
swap_v2_public_get_quote_price = swapV2PublicGetQuotePrice = Entry('quote/price', ['swap', 'v2', 'public'], 'GET', {'cost': 1})
|
@@ -91,6 +91,7 @@ class ImplicitAPI:
|
|
91
91
|
private_unified_get_loan_records = privateUnifiedGetLoanRecords = Entry('loan_records', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
92
92
|
private_unified_get_interest_records = privateUnifiedGetInterestRecords = Entry('interest_records', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
93
93
|
private_unified_get_estimate_rate = privateUnifiedGetEstimateRate = Entry('estimate_rate', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
94
|
+
private_unified_get_currency_discount_tiers = privateUnifiedGetCurrencyDiscountTiers = Entry('currency_discount_tiers', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
94
95
|
private_unified_post_account_mode = privateUnifiedPostAccountMode = Entry('account_mode', ['private', 'unified'], 'POST', {'cost': 1.3333333333333333})
|
95
96
|
private_unified_post_loans = privateUnifiedPostLoans = Entry('loans', ['private', 'unified'], 'POST', {'cost': 13.333333333333334})
|
96
97
|
private_spot_get_fee = privateSpotGetFee = Entry('fee', ['private', 'spot'], 'GET', {'cost': 1})
|
@@ -91,6 +91,7 @@ class ImplicitAPI:
|
|
91
91
|
private_unified_get_loan_records = privateUnifiedGetLoanRecords = Entry('loan_records', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
92
92
|
private_unified_get_interest_records = privateUnifiedGetInterestRecords = Entry('interest_records', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
93
93
|
private_unified_get_estimate_rate = privateUnifiedGetEstimateRate = Entry('estimate_rate', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
94
|
+
private_unified_get_currency_discount_tiers = privateUnifiedGetCurrencyDiscountTiers = Entry('currency_discount_tiers', ['private', 'unified'], 'GET', {'cost': 1.3333333333333333})
|
94
95
|
private_unified_post_account_mode = privateUnifiedPostAccountMode = Entry('account_mode', ['private', 'unified'], 'POST', {'cost': 1.3333333333333333})
|
95
96
|
private_unified_post_loans = privateUnifiedPostLoans = Entry('loans', ['private', 'unified'], 'POST', {'cost': 13.333333333333334})
|
96
97
|
private_spot_get_fee = privateSpotGetFee = Entry('fee', ['private', 'spot'], 'GET', {'cost': 1})
|
@@ -34,7 +34,7 @@ def iso8601(timestamp=None):
|
|
34
34
|
if int(timestamp) < 0:
|
35
35
|
return None
|
36
36
|
try:
|
37
|
-
utc = datetime.datetime.
|
37
|
+
utc = datetime.datetime.fromtimestamp(timestamp // 1000, datetime.timezone.utc)
|
38
38
|
return utc.strftime('%Y-%m-%dT%H:%M:%S.%f')[:-6] + "{:03d}".format(int(timestamp) % 1000) + 'Z'
|
39
39
|
except (TypeError, OverflowError, OSError):
|
40
40
|
return None
|
@@ -196,6 +196,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
196
196
|
'post': {
|
197
197
|
'trade/cancelReplace': 1,
|
198
198
|
'positionSide/dual': 1,
|
199
|
+
'trade/closePosition': 1,
|
199
200
|
},
|
200
201
|
},
|
201
202
|
},
|
@@ -2032,6 +2033,8 @@ class bingx(Exchange, ImplicitAPI):
|
|
2032
2033
|
'SELL': 'sell',
|
2033
2034
|
'SHORT': 'sell',
|
2034
2035
|
'LONG': 'buy',
|
2036
|
+
'ask': 'sell',
|
2037
|
+
'bid': 'buy',
|
2035
2038
|
}
|
2036
2039
|
return self.safe_string(sides, side, side)
|
2037
2040
|
|
@@ -3656,14 +3659,43 @@ class bingx(Exchange, ImplicitAPI):
|
|
3656
3659
|
:param str symbol: Unified CCXT market symbol
|
3657
3660
|
:param str [side]: not used by bingx
|
3658
3661
|
:param dict [params]: extra parameters specific to the bingx api endpoint
|
3662
|
+
:param str|None [params.positionId]: it is recommended to hasattr(self, fill) parameter when closing a position
|
3659
3663
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
3660
3664
|
"""
|
3661
3665
|
await self.load_markets()
|
3662
|
-
|
3663
|
-
|
3664
|
-
|
3665
|
-
|
3666
|
-
|
3666
|
+
positionId = self.safe_string(params, 'positionId')
|
3667
|
+
params = self.omit(params, 'positionId')
|
3668
|
+
response = None
|
3669
|
+
if positionId is not None:
|
3670
|
+
request: dict = {
|
3671
|
+
'positionId': positionId,
|
3672
|
+
}
|
3673
|
+
response = await self.swapV1PrivatePostTradeClosePosition(self.extend(request, params))
|
3674
|
+
else:
|
3675
|
+
market = self.market(symbol)
|
3676
|
+
request: dict = {
|
3677
|
+
'symbol': market['id'],
|
3678
|
+
}
|
3679
|
+
response = await self.swapV2PrivatePostTradeCloseAllPositions(self.extend(request, params))
|
3680
|
+
#
|
3681
|
+
# swapV1PrivatePostTradeClosePosition
|
3682
|
+
#
|
3683
|
+
# {
|
3684
|
+
# "code": 0,
|
3685
|
+
# "msg": "",
|
3686
|
+
# "timestamp": 1710992264190,
|
3687
|
+
# "data": {
|
3688
|
+
# "orderId": 1770656007907930112,
|
3689
|
+
# "positionId": "1751667128353910784",
|
3690
|
+
# "symbol": "LTC-USDT",
|
3691
|
+
# "side": "Ask",
|
3692
|
+
# "type": "MARKET",
|
3693
|
+
# "positionSide": "Long",
|
3694
|
+
# "origQty": "0.2"
|
3695
|
+
# }
|
3696
|
+
# }
|
3697
|
+
#
|
3698
|
+
# swapV2PrivatePostTradeCloseAllPositions
|
3667
3699
|
#
|
3668
3700
|
# {
|
3669
3701
|
# "code": 0,
|
@@ -1082,16 +1082,17 @@ class bitstamp(Exchange, ImplicitAPI):
|
|
1082
1082
|
'timestamp': None,
|
1083
1083
|
'datetime': None,
|
1084
1084
|
}
|
1085
|
-
|
1086
|
-
|
1087
|
-
|
1088
|
-
|
1089
|
-
currencyId = currency
|
1085
|
+
if response is None:
|
1086
|
+
response = []
|
1087
|
+
for i in range(0, len(response)):
|
1088
|
+
currencyBalance = response[i]
|
1089
|
+
currencyId = self.safe_string(currencyBalance, 'currency')
|
1090
|
+
currencyCode = self.safe_currency_code(currencyId)
|
1090
1091
|
account = self.account()
|
1091
|
-
account['free'] = self.safe_string(
|
1092
|
-
account['used'] = self.safe_string(
|
1093
|
-
account['total'] = self.safe_string(
|
1094
|
-
result[
|
1092
|
+
account['free'] = self.safe_string(currencyBalance, 'available')
|
1093
|
+
account['used'] = self.safe_string(currencyBalance, 'reserved')
|
1094
|
+
account['total'] = self.safe_string(currencyBalance, 'total')
|
1095
|
+
result[currencyCode] = account
|
1095
1096
|
return self.safe_balance(result)
|
1096
1097
|
|
1097
1098
|
async def fetch_balance(self, params={}) -> Balances:
|
@@ -1102,24 +1103,17 @@ class bitstamp(Exchange, ImplicitAPI):
|
|
1102
1103
|
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
|
1103
1104
|
"""
|
1104
1105
|
await self.load_markets()
|
1105
|
-
response = await self.
|
1106
|
+
response = await self.privatePostAccountBalances(params)
|
1106
1107
|
#
|
1107
|
-
#
|
1108
|
-
#
|
1109
|
-
#
|
1110
|
-
#
|
1111
|
-
#
|
1112
|
-
#
|
1113
|
-
#
|
1114
|
-
#
|
1115
|
-
#
|
1116
|
-
# "bat_balance": "0.00000000",
|
1117
|
-
# "bat_reserved": "0.00000000",
|
1118
|
-
# "bat_withdrawal_fee": "5.00000000",
|
1119
|
-
# "batbtc_fee": "0.000",
|
1120
|
-
# "bateur_fee": "0.000",
|
1121
|
-
# "batusd_fee": "0.000",
|
1122
|
-
# }
|
1108
|
+
# [
|
1109
|
+
# {
|
1110
|
+
# "currency": "usdt",
|
1111
|
+
# "total": "7.00000",
|
1112
|
+
# "available": "7.00000",
|
1113
|
+
# "reserved": "0.00000"
|
1114
|
+
# },
|
1115
|
+
# ...
|
1116
|
+
# ]
|
1123
1117
|
#
|
1124
1118
|
return self.parse_balance(response)
|
1125
1119
|
|
@@ -85,6 +85,7 @@ class bybit(Exchange, ImplicitAPI):
|
|
85
85
|
'fetchDeposits': True,
|
86
86
|
'fetchDepositWithdrawFee': 'emulated',
|
87
87
|
'fetchDepositWithdrawFees': True,
|
88
|
+
'fetchFundingHistory': True,
|
88
89
|
'fetchFundingRate': True, # emulated in exchange
|
89
90
|
'fetchFundingRateHistory': True,
|
90
91
|
'fetchFundingRates': True,
|
@@ -7526,17 +7527,111 @@ class bybit(Exchange, ImplicitAPI):
|
|
7526
7527
|
tier = info[i]
|
7527
7528
|
marketId = self.safe_string(info, 'symbol')
|
7528
7529
|
market = self.safe_market(marketId)
|
7530
|
+
minNotional = self.parse_number('0')
|
7531
|
+
if i != 0:
|
7532
|
+
minNotional = self.safe_number(info[i - 1], 'riskLimitValue')
|
7529
7533
|
tiers.append({
|
7530
7534
|
'tier': self.safe_integer(tier, 'id'),
|
7531
7535
|
'currency': market['settle'],
|
7532
|
-
'minNotional':
|
7533
|
-
'maxNotional':
|
7536
|
+
'minNotional': minNotional,
|
7537
|
+
'maxNotional': self.safe_number(tier, 'riskLimitValue'),
|
7534
7538
|
'maintenanceMarginRate': self.safe_number(tier, 'maintenanceMargin'),
|
7535
7539
|
'maxLeverage': self.safe_number(tier, 'maxLeverage'),
|
7536
7540
|
'info': tier,
|
7537
7541
|
})
|
7538
7542
|
return tiers
|
7539
7543
|
|
7544
|
+
async def fetch_funding_history(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
7545
|
+
"""
|
7546
|
+
fetch the history of funding payments paid and received on self account
|
7547
|
+
:see: https://bybit-exchange.github.io/docs/api-explorer/v5/position/execution
|
7548
|
+
:param str [symbol]: unified market symbol
|
7549
|
+
:param int [since]: the earliest time in ms to fetch funding history for
|
7550
|
+
:param int [limit]: the maximum number of funding history structures to retrieve
|
7551
|
+
:param dict [params]: extra parameters specific to the exchange API endpoint
|
7552
|
+
:param boolean [params.paginate]: default False, when True will automatically paginate by calling self endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
7553
|
+
:returns dict: a `funding history structure <https://docs.ccxt.com/#/?id=funding-history-structure>`
|
7554
|
+
"""
|
7555
|
+
await self.load_markets()
|
7556
|
+
paginate = False
|
7557
|
+
paginate, params = self.handle_option_and_params(params, 'fetchFundingHistory', 'paginate')
|
7558
|
+
if paginate:
|
7559
|
+
return await self.fetch_paginated_call_cursor('fetchFundingHistory', symbol, since, limit, params, 'nextPageCursor', 'cursor', None, 100)
|
7560
|
+
request = {
|
7561
|
+
'execType': 'Funding',
|
7562
|
+
}
|
7563
|
+
market: Market = None
|
7564
|
+
if symbol is not None:
|
7565
|
+
market = self.market(symbol)
|
7566
|
+
request['symbol'] = market['id']
|
7567
|
+
type = None
|
7568
|
+
type, params = self.get_bybit_type('fetchFundingHistory', market, params)
|
7569
|
+
request['category'] = type
|
7570
|
+
if symbol is not None:
|
7571
|
+
request['symbol'] = market['id']
|
7572
|
+
if since is not None:
|
7573
|
+
request['startTime'] = since
|
7574
|
+
if limit is not None:
|
7575
|
+
request['size'] = limit
|
7576
|
+
else:
|
7577
|
+
request['size'] = 100
|
7578
|
+
request, params = self.handle_until_option('endTime', request, params)
|
7579
|
+
response = await self.privateGetV5ExecutionList(self.extend(request, params))
|
7580
|
+
fundings = self.add_pagination_cursor_to_result(response)
|
7581
|
+
return self.parse_incomes(fundings, market, since, limit)
|
7582
|
+
|
7583
|
+
def parse_income(self, income, market: Market = None):
|
7584
|
+
#
|
7585
|
+
# {
|
7586
|
+
# "symbol": "XMRUSDT",
|
7587
|
+
# "orderType": "UNKNOWN",
|
7588
|
+
# "underlyingPrice": "",
|
7589
|
+
# "orderLinkId": "",
|
7590
|
+
# "orderId": "a11e5fe2-1dbf-4bab-a9b2-af80a14efc5d",
|
7591
|
+
# "stopOrderType": "UNKNOWN",
|
7592
|
+
# "execTime": "1710950400000",
|
7593
|
+
# "feeCurrency": "",
|
7594
|
+
# "createType": "",
|
7595
|
+
# "feeRate": "-0.000761",
|
7596
|
+
# "tradeIv": "",
|
7597
|
+
# "blockTradeId": "",
|
7598
|
+
# "markPrice": "136.79",
|
7599
|
+
# "execPrice": "137.11",
|
7600
|
+
# "markIv": "",
|
7601
|
+
# "orderQty": "0",
|
7602
|
+
# "orderPrice": "0",
|
7603
|
+
# "execValue": "134.3678",
|
7604
|
+
# "closedSize": "0",
|
7605
|
+
# "execType": "Funding",
|
7606
|
+
# "seq": "28097658790",
|
7607
|
+
# "side": "Sell",
|
7608
|
+
# "indexPrice": "",
|
7609
|
+
# "leavesQty": "0",
|
7610
|
+
# "isMaker": False,
|
7611
|
+
# "execFee": "-0.10232512",
|
7612
|
+
# "execId": "8d1ef156-4ec6-4445-9a6c-1c0c24dbd046",
|
7613
|
+
# "marketUnit": "",
|
7614
|
+
# "execQty": "0.98",
|
7615
|
+
# "nextPageCursor": "5774437%3A0%2C5771289%3A0"
|
7616
|
+
# }
|
7617
|
+
#
|
7618
|
+
marketId = self.safe_string(income, 'symbol')
|
7619
|
+
market = self.safe_market(marketId, market, None, 'contract')
|
7620
|
+
code = 'USDT'
|
7621
|
+
if market['inverse']:
|
7622
|
+
code = market['quote']
|
7623
|
+
timestamp = self.safe_integer(income, 'execTime')
|
7624
|
+
return {
|
7625
|
+
'info': income,
|
7626
|
+
'symbol': self.safe_symbol(marketId, market, '-', 'swap'),
|
7627
|
+
'code': code,
|
7628
|
+
'timestamp': timestamp,
|
7629
|
+
'datetime': self.iso8601(timestamp),
|
7630
|
+
'id': self.safe_string(income, 'execId'),
|
7631
|
+
'amount': self.safe_number(income, 'execQty'),
|
7632
|
+
'rate': self.safe_number(income, 'feeRate'),
|
7633
|
+
}
|
7634
|
+
|
7540
7635
|
def sign(self, path, api='public', method='GET', params={}, headers=None, body=None):
|
7541
7636
|
url = self.implode_hostname(self.urls['api'][api]) + '/' + path
|
7542
7637
|
if api == 'public':
|
@@ -1041,7 +1041,9 @@ class coinbase(Exchange, ImplicitAPI):
|
|
1041
1041
|
:returns dict[]: an array of objects representing market data
|
1042
1042
|
"""
|
1043
1043
|
method = self.safe_string(self.options, 'fetchMarkets', 'fetchMarketsV3')
|
1044
|
-
|
1044
|
+
if method == 'fetchMarketsV3':
|
1045
|
+
return await self.fetch_markets_v3(params)
|
1046
|
+
return await self.fetch_markets_v2(params)
|
1045
1047
|
|
1046
1048
|
async def fetch_markets_v2(self, params={}):
|
1047
1049
|
response = await self.fetch_currencies_from_cache(params)
|
@@ -1113,7 +1115,13 @@ class coinbase(Exchange, ImplicitAPI):
|
|
1113
1115
|
return result
|
1114
1116
|
|
1115
1117
|
async def fetch_markets_v3(self, params={}):
|
1116
|
-
|
1118
|
+
promisesUnresolved = [
|
1119
|
+
self.v3PrivateGetBrokerageProducts(params),
|
1120
|
+
self.v3PrivateGetBrokerageTransactionSummary(params),
|
1121
|
+
]
|
1122
|
+
# response = await self.v3PrivateGetBrokerageProducts(params)
|
1123
|
+
promises = await asyncio.gather(*promisesUnresolved)
|
1124
|
+
response = self.safe_dict(promises, 0, {})
|
1117
1125
|
#
|
1118
1126
|
# [
|
1119
1127
|
# {
|
@@ -1148,7 +1156,8 @@ class coinbase(Exchange, ImplicitAPI):
|
|
1148
1156
|
# ...
|
1149
1157
|
# ]
|
1150
1158
|
#
|
1151
|
-
fees = await self.v3PrivateGetBrokerageTransactionSummary(params)
|
1159
|
+
# fees = await self.v3PrivateGetBrokerageTransactionSummary(params)
|
1160
|
+
fees = self.safe_dict(promises, 1, {})
|
1152
1161
|
#
|
1153
1162
|
# {
|
1154
1163
|
# "total_volume": 0,
|
@@ -1832,6 +1841,8 @@ class coinbase(Exchange, ImplicitAPI):
|
|
1832
1841
|
response = await self.v2PrivateGetAccountsAccountIdTransactions(self.extend(request, params))
|
1833
1842
|
ledger = self.parse_ledger(response['data'], currency, since, limit)
|
1834
1843
|
length = len(ledger)
|
1844
|
+
if length == 0:
|
1845
|
+
return ledger
|
1835
1846
|
lastIndex = length - 1
|
1836
1847
|
last = self.safe_dict(ledger, lastIndex)
|
1837
1848
|
pagination = self.safe_dict(response, 'pagination', {})
|
@@ -2165,9 +2176,9 @@ class coinbase(Exchange, ImplicitAPI):
|
|
2165
2176
|
'fee': fee,
|
2166
2177
|
}
|
2167
2178
|
|
2168
|
-
async def find_account_id(self, code):
|
2179
|
+
async def find_account_id(self, code, params={}):
|
2169
2180
|
await self.load_markets()
|
2170
|
-
await self.load_accounts()
|
2181
|
+
await self.load_accounts(False, params)
|
2171
2182
|
for i in range(0, len(self.accounts)):
|
2172
2183
|
account = self.accounts[i]
|
2173
2184
|
if account['code'] == code:
|
@@ -2191,7 +2202,7 @@ class coinbase(Exchange, ImplicitAPI):
|
|
2191
2202
|
if accountId is None:
|
2192
2203
|
if code is None:
|
2193
2204
|
raise ArgumentsRequired(self.id + ' prepareAccountRequestWithCurrencyCode() method requires an account_id(or accountId) parameter OR a currency code argument')
|
2194
|
-
accountId = await self.find_account_id(code)
|
2205
|
+
accountId = await self.find_account_id(code, params)
|
2195
2206
|
if accountId is None:
|
2196
2207
|
raise ExchangeError(self.id + ' prepareAccountRequestWithCurrencyCode() could not find account id for ' + code)
|
2197
2208
|
request = {
|
@@ -3220,7 +3231,7 @@ class coinbase(Exchange, ImplicitAPI):
|
|
3220
3231
|
if accountId is None:
|
3221
3232
|
if code is None:
|
3222
3233
|
raise ArgumentsRequired(self.id + ' withdraw() requires an account_id(or accountId) parameter OR a currency code argument')
|
3223
|
-
accountId = await self.find_account_id(code)
|
3234
|
+
accountId = await self.find_account_id(code, params)
|
3224
3235
|
if accountId is None:
|
3225
3236
|
raise ExchangeError(self.id + ' withdraw() could not find account id for ' + code)
|
3226
3237
|
request = {
|
@@ -3437,7 +3448,7 @@ class coinbase(Exchange, ImplicitAPI):
|
|
3437
3448
|
if accountId is None:
|
3438
3449
|
if code is None:
|
3439
3450
|
raise ArgumentsRequired(self.id + ' deposit() requires an account_id(or accountId) parameter OR a currency code argument')
|
3440
|
-
accountId = await self.find_account_id(code)
|
3451
|
+
accountId = await self.find_account_id(code, params)
|
3441
3452
|
if accountId is None:
|
3442
3453
|
raise ExchangeError(self.id + ' deposit() could not find account id for ' + code)
|
3443
3454
|
request = {
|
@@ -3502,7 +3513,7 @@ class coinbase(Exchange, ImplicitAPI):
|
|
3502
3513
|
if accountId is None:
|
3503
3514
|
if code is None:
|
3504
3515
|
raise ArgumentsRequired(self.id + ' fetchDeposit() requires an account_id(or accountId) parameter OR a currency code argument')
|
3505
|
-
accountId = await self.find_account_id(code)
|
3516
|
+
accountId = await self.find_account_id(code, params)
|
3506
3517
|
if accountId is None:
|
3507
3518
|
raise ExchangeError(self.id + ' fetchDeposit() could not find account id for ' + code)
|
3508
3519
|
request = {
|
@@ -126,10 +126,10 @@ class coinbaseinternational(Exchange, ImplicitAPI):
|
|
126
126
|
},
|
127
127
|
'www': 'https://international.coinbase.com',
|
128
128
|
'doc': [
|
129
|
-
'https://docs.cloud.
|
129
|
+
'https://docs.cloud.coinbase.com/intx/docs',
|
130
130
|
],
|
131
131
|
'fees': [
|
132
|
-
'https://help.
|
132
|
+
'https://help.coinbase.com/en/international-exchange/trading-deposits-withdrawals/international-exchange-fees',
|
133
133
|
],
|
134
134
|
'referral': '',
|
135
135
|
},
|
@@ -68,6 +68,7 @@ class gate(Exchange, ImplicitAPI):
|
|
68
68
|
'rebate': 'https://api.gateio.ws/api/v4',
|
69
69
|
'earn': 'https://api.gateio.ws/api/v4',
|
70
70
|
'account': 'https://api.gateio.ws/api/v4',
|
71
|
+
'loan': 'https://api.gateio.ws/api/v4',
|
71
72
|
},
|
72
73
|
},
|
73
74
|
'test': {
|
@@ -328,6 +329,7 @@ class gate(Exchange, ImplicitAPI):
|
|
328
329
|
'loan_records': 20 / 15,
|
329
330
|
'interest_records': 20 / 15,
|
330
331
|
'estimate_rate': 20 / 15,
|
332
|
+
'currency_discount_tiers': 20 / 15,
|
331
333
|
},
|
332
334
|
'post': {
|
333
335
|
'account_mode': 20 / 15,
|
@@ -3958,7 +3960,8 @@ class gate(Exchange, ImplicitAPI):
|
|
3958
3960
|
'account': account,
|
3959
3961
|
}
|
3960
3962
|
if amount is not None:
|
3961
|
-
|
3963
|
+
amountKey = 'amount' if (market['spot']) else 'size'
|
3964
|
+
request[amountKey] = self.amount_to_precision(symbol, amount)
|
3962
3965
|
if price is not None:
|
3963
3966
|
request['price'] = self.price_to_precision(symbol, price)
|
3964
3967
|
response = None
|