ccxt 4.4.93__tar.gz → 4.4.94__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.4.93/ccxt.egg-info → ccxt-4.4.94}/PKG-INFO +4 -4
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/__init__.py +1 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/__init__.py +1 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/exchange.py +1 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bybit.py +2 -2
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinbase.py +4 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinmetro.py +15 -3
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/htx.py +5 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/hyperliquid.py +124 -32
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/okx.py +10 -3
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/wavesexchange.py +12 -2
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/base/exchange.py +42 -20
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bybit.py +2 -2
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinbase.py +4 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinmetro.py +14 -3
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/htx.py +5 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/hyperliquid.py +124 -32
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/okx.py +10 -3
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/__init__.py +1 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/test/tests_async.py +17 -15
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/test/tests_sync.py +17 -15
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/wavesexchange.py +12 -2
- {ccxt-4.4.93 → ccxt-4.4.94/ccxt.egg-info}/PKG-INFO +4 -4
- {ccxt-4.4.93 → ccxt-4.4.94}/package.json +1 -1
- {ccxt-4.4.93 → ccxt-4.4.94}/LICENSE.txt +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/MANIFEST.in +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/README.rst +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/alpaca.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/apex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/ascendex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bequant.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bigone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/binance.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/binancecoinm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/binanceus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/binanceusdm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bingx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bit2c.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitbank.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitbns.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitfinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitflyer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitget.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bithumb.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitmart.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitmex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitopro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitrue.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitso.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitstamp.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitteam.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bittrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bitvavo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/blockchaincom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/blofin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/btcalpha.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/btcbox.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/btcmarkets.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/btcturk.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/bybit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/cex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinbase.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinbaseadvanced.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinbaseexchange.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinbaseinternational.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coincatch.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coincheck.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinmate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinmetro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinsph.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/coinspot.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/cryptocom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/cryptomus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/defx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/delta.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/deribit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/derive.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/digifinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/ellipx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/exmo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/fmfwio.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/gate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/gateio.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/gemini.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/hashkey.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/hitbtc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/hollaex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/htx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/huobi.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/hyperliquid.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/independentreserve.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/indodax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/kraken.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/krakenfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/kucoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/kucoinfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/latoken.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/lbank.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/luno.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/mercado.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/mexc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/modetrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/myokx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/ndax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/novadax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/oceanex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/okcoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/okx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/okxus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/onetrading.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/oxfun.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/p2b.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/paradex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/paymium.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/phemex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/poloniex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/probit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/timex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/tokocrypto.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/tradeogre.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/upbit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/vertex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/wavesexchange.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/whitebit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/woo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/woofipro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/xt.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/yobit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/zaif.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/abstract/zonda.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/alpaca.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/apex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/ascendex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/alpaca.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/apex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/ascendex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/throttler.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/ws/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/ws/cache.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/ws/client.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/ws/functions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/ws/future.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/ws/order_book.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/base/ws/order_book_side.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bequant.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bigone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/binance.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/binancecoinm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/binanceus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/binanceusdm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bingx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bit2c.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitbank.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitbns.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitfinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitflyer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitget.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bithumb.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitmart.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitmex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitopro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitrue.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitso.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitstamp.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitteam.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bittrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/bitvavo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/blockchaincom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/blofin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/btcalpha.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/btcbox.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/btcmarkets.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/btcturk.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/cex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinbaseadvanced.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinbaseexchange.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinbaseinternational.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coincatch.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coincheck.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinmate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinsph.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/coinspot.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/cryptocom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/cryptomus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/defx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/delta.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/deribit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/derive.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/digifinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/ellipx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/exmo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/fmfwio.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/gate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/gateio.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/gemini.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/hashkey.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/hitbtc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/hollaex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/huobi.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/independentreserve.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/indodax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/kraken.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/krakenfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/kucoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/kucoinfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/latoken.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/lbank.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/luno.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/mercado.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/mexc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/modetrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/myokx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/ndax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/novadax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/oceanex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/okcoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/okxus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/onetrading.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/oxfun.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/p2b.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/paradex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/paymium.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/phemex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/poloniex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/probit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/timex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/tokocrypto.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/tradeogre.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/upbit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/vertex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/whitebit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/woo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/woofipro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/xt.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/yobit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/zaif.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/async_support/zonda.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/base/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/base/decimal_to_precision.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/base/errors.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/base/precise.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/base/types.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bequant.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bigone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/binance.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/binancecoinm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/binanceus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/binanceusdm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bingx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bit2c.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitbank.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitbns.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitfinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitflyer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitget.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bithumb.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitmart.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitmex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitopro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitrue.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitso.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitstamp.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitteam.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bittrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/bitvavo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/blockchaincom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/blofin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/btcalpha.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/btcbox.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/btcmarkets.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/btcturk.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/cex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinbaseadvanced.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinbaseexchange.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinbaseinternational.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coincatch.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coincheck.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinmate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinsph.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/coinspot.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/cryptocom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/cryptomus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/defx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/delta.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/deribit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/derive.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/digifinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/ellipx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/exmo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/fmfwio.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/gate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/gateio.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/gemini.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/hashkey.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/hitbtc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/hollaex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/huobi.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/independentreserve.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/indodax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/kraken.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/krakenfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/kucoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/kucoinfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/latoken.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/lbank.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/luno.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/mercado.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/mexc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/modetrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/myokx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/ndax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/novadax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/oceanex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/okcoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/okxus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/onetrading.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/oxfun.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/p2b.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/paradex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/paymium.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/phemex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/poloniex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/alpaca.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/apex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/ascendex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bequant.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/binance.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/binancecoinm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/binanceus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/binanceusdm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bingx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitfinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitget.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bithumb.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitmart.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitmex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitopro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitrue.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitstamp.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bittrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bitvavo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/blockchaincom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/blofin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/bybit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/cex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coinbase.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coinbaseadvanced.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coinbaseexchange.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coinbaseinternational.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coincatch.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coincheck.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coinex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/coinone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/cryptocom.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/defx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/deribit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/derive.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/exmo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/gate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/gateio.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/gemini.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/hashkey.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/hitbtc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/hollaex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/htx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/huobi.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/hyperliquid.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/independentreserve.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/kraken.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/krakenfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/kucoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/kucoinfutures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/lbank.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/luno.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/mexc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/modetrade.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/myokx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/ndax.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/okcoin.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/okx.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/okxus.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/onetrading.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/oxfun.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/p2b.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/paradex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/phemex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/poloniex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/probit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/tradeogre.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/upbit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/vertex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/whitebit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/woo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/woofipro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/pro/xt.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/probit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/_version.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/curves.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/der.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/ecdsa.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/ellipticcurve.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/keys.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/numbertheory.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/rfc6979.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ecdsa/util.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/abi.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/base.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/codec.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/constants.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/decoding.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/encoding.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/exceptions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/grammar.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/packed.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/registry.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/utils/padding.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/abi/utils/string.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/account/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/account/messages.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/hexbytes/main.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/abi.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/bls.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/discovery.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/encoding.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/enums.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/ethpm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/evm.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/networks.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/abi.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/address.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/applicators.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/conversions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/currency.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/debug.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/decorators.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/encoding.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/exceptions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/functional.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/humanize.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/logging.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/module_loading.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/numeric.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/toolz.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/types.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/typing/misc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/ethereum/utils/units.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/keccak/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/keccak/keccak.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/__pyinstaller/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/ast_utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/common.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/exceptions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/grammar.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/grammars/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/indenter.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/lark.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/lexer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/load_grammar.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parse_tree_builder.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parser_frontends.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/cyk.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/earley.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/earley_common.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/earley_forest.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/grammar_analysis.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/lalr_analysis.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/lalr_parser.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/parsers/xearley.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/reconstruct.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/tools/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/tools/nearley.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/tools/serialize.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/tools/standalone.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/tree.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/tree_matcher.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/tree_templates.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/lark/visitors.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/base.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/class_registry.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/decorators.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/error_store.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/exceptions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/fields.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/orderedset.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/schema.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/types.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/validate.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow/warnings.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_dataclass/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_dataclass/mypy.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_dataclass/typing.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_dataclass/union_field.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/msgpack/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/msgpack/exceptions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/msgpack/ext.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/msgpack/fallback.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/parsimonious/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/parsimonious/exceptions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/parsimonious/expressions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/parsimonious/grammar.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/parsimonious/nodes.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/parsimonious/utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/data_types.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/felt.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/type_parser.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/v1/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/v2/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/ccxt_utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/common.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/constants.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/hash/address.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/hash/selector.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/hash/storage.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/hash/utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/models/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/models/typed_data.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/_context.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/errors.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/factory.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/utils/iterable.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/utils/schema.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starknet/utils/typed_data.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starkware/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starkware/crypto/math_utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starkware/crypto/signature.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/starkware/crypto/utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/core/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/core/intfunc.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/external/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/external/gmpy.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/external/importtools.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/external/ntheory.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/sympy/external/pythonmpq.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/_signatures.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/_version.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/compatibility.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/curried/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/curried/exceptions.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/curried/operator.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/dicttoolz.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/functoolz.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/itertoolz.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/recipes.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/toolz/utils.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/static_dependencies/typing_inspect/typing_inspect.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/test/__init__.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/test/tests_helpers.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/test/tests_init.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/timex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/tokocrypto.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/tradeogre.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/upbit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/vertex.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/whitebit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/woo.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/woofipro.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/xt.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/yobit.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/zaif.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt/zonda.py +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt.egg-info/SOURCES.txt +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt.egg-info/dependency_links.txt +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt.egg-info/requires.txt +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/ccxt.egg-info/top_level.txt +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/setup.cfg +0 -0
- {ccxt-4.4.93 → ccxt-4.4.94}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.4.
|
3
|
+
Version: 4.4.94
|
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
|
@@ -258,13 +258,13 @@ console.log(version, Object.keys(exchanges));
|
|
258
258
|
|
259
259
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
260
260
|
|
261
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.
|
262
|
-
* unpkg: https://unpkg.com/ccxt@4.4.
|
261
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.94/dist/ccxt.browser.min.js
|
262
|
+
* unpkg: https://unpkg.com/ccxt@4.4.94/dist/ccxt.browser.min.js
|
263
263
|
|
264
264
|
CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
|
265
265
|
|
266
266
|
```HTML
|
267
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.
|
267
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.94/dist/ccxt.browser.min.js"></script>
|
268
268
|
```
|
269
269
|
|
270
270
|
Creates a global `ccxt` object:
|
@@ -3752,7 +3752,7 @@ class bybit(Exchange, ImplicitAPI):
|
|
3752
3752
|
isTakeProfit = takeProfitPrice is not None
|
3753
3753
|
orderRequest = self.create_order_request(symbol, type, side, amount, price, params, enableUnifiedAccount)
|
3754
3754
|
defaultMethod = None
|
3755
|
-
if isTrailingAmountOrder or isStopLoss or isTakeProfit:
|
3755
|
+
if (isTrailingAmountOrder or isStopLoss or isTakeProfit) and not market['spot']:
|
3756
3756
|
defaultMethod = 'privatePostV5PositionTradingStop'
|
3757
3757
|
else:
|
3758
3758
|
defaultMethod = 'privatePostV5OrderCreate'
|
@@ -3828,7 +3828,7 @@ class bybit(Exchange, ImplicitAPI):
|
|
3828
3828
|
isLimit = lowerCaseType == 'limit'
|
3829
3829
|
isBuy = side == 'buy'
|
3830
3830
|
defaultMethod = None
|
3831
|
-
if isTrailingAmountOrder or isStopLossTriggerOrder or isTakeProfitTriggerOrder:
|
3831
|
+
if (isTrailingAmountOrder or isStopLossTriggerOrder or isTakeProfitTriggerOrder) and not market['spot']:
|
3832
3832
|
defaultMethod = 'privatePostV5PositionTradingStop'
|
3833
3833
|
else:
|
3834
3834
|
defaultMethod = 'privatePostV5OrderCreate'
|
@@ -14,6 +14,7 @@ from ccxt.base.errors import AuthenticationError
|
|
14
14
|
from ccxt.base.errors import PermissionDenied
|
15
15
|
from ccxt.base.errors import ArgumentsRequired
|
16
16
|
from ccxt.base.errors import BadRequest
|
17
|
+
from ccxt.base.errors import InsufficientFunds
|
17
18
|
from ccxt.base.errors import InvalidOrder
|
18
19
|
from ccxt.base.errors import OrderNotFound
|
19
20
|
from ccxt.base.errors import NotSupported
|
@@ -333,12 +334,14 @@ class coinbase(Exchange, ImplicitAPI):
|
|
333
334
|
'rate_limit_exceeded': RateLimitExceeded, # 429 Rate limit exceeded
|
334
335
|
'internal_server_error': ExchangeError, # 500 Internal server error
|
335
336
|
'UNSUPPORTED_ORDER_CONFIGURATION': BadRequest,
|
336
|
-
'INSUFFICIENT_FUND':
|
337
|
+
'INSUFFICIENT_FUND': InsufficientFunds,
|
337
338
|
'PERMISSION_DENIED': PermissionDenied,
|
338
339
|
'INVALID_ARGUMENT': BadRequest,
|
339
340
|
'PREVIEW_STOP_PRICE_ABOVE_LAST_TRADE_PRICE': InvalidOrder,
|
341
|
+
'PREVIEW_INSUFFICIENT_FUND': InsufficientFunds,
|
340
342
|
},
|
341
343
|
'broad': {
|
344
|
+
'Insufficient balance in source account': InsufficientFunds,
|
342
345
|
'request timestamp expired': InvalidNonce, # {"errors":[{"id":"authentication_error","message":"request timestamp expired"}]}
|
343
346
|
'order with self orderID was not found': OrderNotFound, # {"error":"unknown","error_details":"order with self orderID was not found","message":"order with self orderID was not found"}
|
344
347
|
},
|
@@ -5,6 +5,7 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.coinmetro import ImplicitAPI
|
8
|
+
import asyncio
|
8
9
|
from ccxt.base.types import Any, Balances, Currencies, Currency, IndexType, Int, LedgerEntry, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
|
9
10
|
from typing import List
|
10
11
|
from ccxt.base.errors import ExchangeError
|
@@ -220,6 +221,7 @@ class coinmetro(Exchange, ImplicitAPI):
|
|
220
221
|
'options': {
|
221
222
|
'currenciesByIdForParseMarket': None,
|
222
223
|
'currencyIdsListForParseMarket': ['QRDO'],
|
224
|
+
'skippedMarkets': ['VXVUSDT'], # broken markets which do not have enough info in API
|
223
225
|
},
|
224
226
|
'features': {
|
225
227
|
'spot': {
|
@@ -439,9 +441,12 @@ class coinmetro(Exchange, ImplicitAPI):
|
|
439
441
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
440
442
|
:returns dict[]: an array of objects representing market data
|
441
443
|
"""
|
442
|
-
|
444
|
+
promises = []
|
445
|
+
promises.append(self.publicGetMarkets(params))
|
443
446
|
if self.safe_value(self.options, 'currenciesByIdForParseMarket') is None:
|
444
|
-
|
447
|
+
promises.append(self.fetch_currencies())
|
448
|
+
responses = await asyncio.gather(*promises)
|
449
|
+
response = responses[0]
|
445
450
|
#
|
446
451
|
# [
|
447
452
|
# {
|
@@ -457,7 +462,14 @@ class coinmetro(Exchange, ImplicitAPI):
|
|
457
462
|
# ...
|
458
463
|
# ]
|
459
464
|
#
|
460
|
-
|
465
|
+
skippedMarkets = self.safe_list(self.options, 'skippedMarkets', [])
|
466
|
+
result = []
|
467
|
+
for i in range(0, len(response)):
|
468
|
+
market = self.parse_market(response[i])
|
469
|
+
if self.in_array(market['id'], skippedMarkets):
|
470
|
+
continue
|
471
|
+
result.append(market)
|
472
|
+
return result
|
461
473
|
|
462
474
|
def parse_market(self, market: dict) -> Market:
|
463
475
|
id = self.safe_string(market, 'pair')
|
@@ -6577,12 +6577,16 @@ class htx(Exchange, ImplicitAPI):
|
|
6577
6577
|
paginate = False
|
6578
6578
|
paginate, params = self.handle_option_and_params(params, 'fetchFundingRateHistory', 'paginate')
|
6579
6579
|
if paginate:
|
6580
|
-
return await self.fetch_paginated_call_cursor('fetchFundingRateHistory', symbol, since, limit, params, '
|
6580
|
+
return await self.fetch_paginated_call_cursor('fetchFundingRateHistory', symbol, since, limit, params, 'current_page', 'page_index', 1, 50)
|
6581
6581
|
await self.load_markets()
|
6582
6582
|
market = self.market(symbol)
|
6583
6583
|
request: dict = {
|
6584
6584
|
'contract_code': market['id'],
|
6585
6585
|
}
|
6586
|
+
if limit is not None:
|
6587
|
+
request['page_size'] = limit
|
6588
|
+
else:
|
6589
|
+
request['page_size'] = 50 # max
|
6586
6590
|
response = None
|
6587
6591
|
if market['inverse']:
|
6588
6592
|
response = await self.contractPublicGetSwapApiV1SwapHistoricalFundingRate(self.extend(request, params))
|
@@ -354,6 +354,8 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
354
354
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
355
355
|
:returns dict: an associative dictionary of currencies
|
356
356
|
"""
|
357
|
+
if self.check_required_credentials(False):
|
358
|
+
await self.handle_builder_fee_approval()
|
357
359
|
request: dict = {
|
358
360
|
'type': 'meta',
|
359
361
|
}
|
@@ -627,6 +629,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
627
629
|
'quote': quote,
|
628
630
|
'settle': None,
|
629
631
|
'baseId': baseId,
|
632
|
+
'baseName': baseName,
|
630
633
|
'quoteId': quoteId,
|
631
634
|
'settleId': None,
|
632
635
|
'type': 'spot',
|
@@ -729,6 +732,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
729
732
|
'quote': quote,
|
730
733
|
'settle': settle,
|
731
734
|
'baseId': baseId,
|
735
|
+
'baseName': baseName,
|
732
736
|
'quoteId': quoteId,
|
733
737
|
'settleId': settleId,
|
734
738
|
'type': 'swap',
|
@@ -785,6 +789,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
785
789
|
:param str [params.user]: user address, will default to self.walletAddress if not provided
|
786
790
|
:param str [params.type]: wallet type, ['spot', 'swap'], defaults to swap
|
787
791
|
:param str [params.marginMode]: 'cross' or 'isolated', for margin trading, uses self.options.defaultMarginMode if not passed, defaults to None/None/None
|
792
|
+
:param str [params.subAccountAddress]: sub account user address
|
788
793
|
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
|
789
794
|
"""
|
790
795
|
userAddress = None
|
@@ -794,9 +799,8 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
794
799
|
marginMode = None
|
795
800
|
marginMode, params = self.handle_margin_mode_and_params('fetchBalance', params)
|
796
801
|
isSpot = (type == 'spot')
|
797
|
-
reqType = 'spotClearinghouseState' if (isSpot) else 'clearinghouseState'
|
798
802
|
request: dict = {
|
799
|
-
'type':
|
803
|
+
'type': 'spotClearinghouseState' if (isSpot) else 'clearinghouseState',
|
800
804
|
'user': userAddress,
|
801
805
|
}
|
802
806
|
response = await self.publicPostInfo(self.extend(request, params))
|
@@ -880,7 +884,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
880
884
|
market = self.market(symbol)
|
881
885
|
request: dict = {
|
882
886
|
'type': 'l2Book',
|
883
|
-
'coin': market['
|
887
|
+
'coin': market['baseName'] if market['swap'] else market['id'],
|
884
888
|
}
|
885
889
|
response = await self.publicPostInfo(self.extend(request, params))
|
886
890
|
#
|
@@ -1113,7 +1117,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1113
1117
|
request: dict = {
|
1114
1118
|
'type': 'candleSnapshot',
|
1115
1119
|
'req': {
|
1116
|
-
'coin': market['
|
1120
|
+
'coin': market['baseName'] if market['swap'] else market['id'],
|
1117
1121
|
'interval': self.safe_string(self.timeframes, timeframe, timeframe),
|
1118
1122
|
'startTime': since,
|
1119
1123
|
'endTime': until,
|
@@ -1176,6 +1180,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1176
1180
|
:param int [params.until]: timestamp in ms of the latest trade
|
1177
1181
|
:param str [params.address]: wallet address that made trades
|
1178
1182
|
:param str [params.user]: wallet address that made trades
|
1183
|
+
:param str [params.subAccountAddress]: sub account user address
|
1179
1184
|
:returns Trade[]: a list of `trade structures <https://docs.ccxt.com/#/?id=trade-structure>`
|
1180
1185
|
"""
|
1181
1186
|
userAddress = None
|
@@ -1354,6 +1359,67 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1354
1359
|
}
|
1355
1360
|
return self.sign_user_signed_action(messageTypes, message)
|
1356
1361
|
|
1362
|
+
def build_approve_builder_fee_sig(self, message):
|
1363
|
+
messageTypes: dict = {
|
1364
|
+
'HyperliquidTransaction:ApproveBuilderFee': [
|
1365
|
+
{'name': 'hyperliquidChain', 'type': 'string'},
|
1366
|
+
{'name': 'maxFeeRate', 'type': 'string'},
|
1367
|
+
{'name': 'builder', 'type': 'address'},
|
1368
|
+
{'name': 'nonce', 'type': 'uint64'},
|
1369
|
+
],
|
1370
|
+
}
|
1371
|
+
return self.sign_user_signed_action(messageTypes, message)
|
1372
|
+
|
1373
|
+
async def approve_builder_fee(self, builder: str, maxFeeRate: str):
|
1374
|
+
nonce = self.milliseconds()
|
1375
|
+
isSandboxMode = self.safe_bool(self.options, 'sandboxMode', False)
|
1376
|
+
payload: dict = {
|
1377
|
+
'hyperliquidChain': 'Testnet' if isSandboxMode else 'Mainnet',
|
1378
|
+
'maxFeeRate': maxFeeRate,
|
1379
|
+
'builder': builder,
|
1380
|
+
'nonce': nonce,
|
1381
|
+
}
|
1382
|
+
sig = self.build_approve_builder_fee_sig(payload)
|
1383
|
+
action = {
|
1384
|
+
'hyperliquidChain': payload['hyperliquidChain'],
|
1385
|
+
'signatureChainId': '0x66eee',
|
1386
|
+
'maxFeeRate': payload['maxFeeRate'],
|
1387
|
+
'builder': payload['builder'],
|
1388
|
+
'nonce': nonce,
|
1389
|
+
'type': 'approveBuilderFee',
|
1390
|
+
}
|
1391
|
+
request: dict = {
|
1392
|
+
'action': action,
|
1393
|
+
'nonce': nonce,
|
1394
|
+
'signature': sig,
|
1395
|
+
'vaultAddress': None,
|
1396
|
+
}
|
1397
|
+
#
|
1398
|
+
# {
|
1399
|
+
# "status": "ok",
|
1400
|
+
# "response": {
|
1401
|
+
# "type": "default"
|
1402
|
+
# }
|
1403
|
+
# }
|
1404
|
+
#
|
1405
|
+
return await self.privatePostExchange(request)
|
1406
|
+
|
1407
|
+
async def handle_builder_fee_approval(self):
|
1408
|
+
buildFee = self.safe_bool(self.options, 'builderFee', True)
|
1409
|
+
if not buildFee:
|
1410
|
+
return False # skip if builder fee is not enabled
|
1411
|
+
approvedBuilderFee = self.safe_bool(self.options, 'approvedBuilderFee', False)
|
1412
|
+
if approvedBuilderFee:
|
1413
|
+
return True # skip if builder fee is already approved
|
1414
|
+
try:
|
1415
|
+
builder = self.safe_string(self.options, 'builder', '0x6530512A6c89C7cfCEbC3BA7fcD9aDa5f30827a6')
|
1416
|
+
maxFeeRate = self.safe_string(self.options, 'feeRate', '0.01%')
|
1417
|
+
await self.approve_builder_fee(builder, maxFeeRate)
|
1418
|
+
self.options['approvedBuilderFee'] = True
|
1419
|
+
except Exception as e:
|
1420
|
+
self.options['builderFee'] = False # disable builder fee if an error occurs
|
1421
|
+
return True
|
1422
|
+
|
1357
1423
|
async def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
|
1358
1424
|
"""
|
1359
1425
|
create a trade order
|
@@ -1373,6 +1439,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1373
1439
|
:param str [params.clientOrderId]: client order id,(optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
1374
1440
|
:param str [params.slippage]: the slippage for market order
|
1375
1441
|
:param str [params.vaultAddress]: the vault address for order
|
1442
|
+
:param str [params.subAccountAddress]: sub account user address
|
1376
1443
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1377
1444
|
"""
|
1378
1445
|
await self.load_markets()
|
@@ -1391,6 +1458,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1391
1458
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1392
1459
|
"""
|
1393
1460
|
await self.load_markets()
|
1461
|
+
await self.handle_builder_fee_approval()
|
1394
1462
|
request = self.create_orders_request(orders, params)
|
1395
1463
|
response = await self.privatePostExchange(request)
|
1396
1464
|
#
|
@@ -1554,10 +1622,10 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1554
1622
|
'type': 'order',
|
1555
1623
|
'orders': orderReq,
|
1556
1624
|
'grouping': grouping,
|
1557
|
-
# 'brokerCode': 1, # cant
|
1558
1625
|
}
|
1559
|
-
if
|
1560
|
-
|
1626
|
+
if self.safe_bool(self.options, 'approvedBuilderFee', False):
|
1627
|
+
wallet = self.safe_string_lower(self.options, 'builder', '0x6530512A6c89C7cfCEbC3BA7fcD9aDa5f30827a6')
|
1628
|
+
orderAction['builder'] = {'b': wallet, 'f': self.safe_integer(self.options, 'feeInt', 10)}
|
1561
1629
|
signature = self.sign_l1_action(orderAction, nonce, vaultAddress)
|
1562
1630
|
request: dict = {
|
1563
1631
|
'action': orderAction,
|
@@ -1582,6 +1650,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1582
1650
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1583
1651
|
:param str [params.clientOrderId]: client order id,(optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
1584
1652
|
:param str [params.vaultAddress]: the vault address for order
|
1653
|
+
:param str [params.subAccountAddress]: sub account user address
|
1585
1654
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1586
1655
|
"""
|
1587
1656
|
orders = await self.cancel_orders([id], symbol, params)
|
@@ -1599,6 +1668,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1599
1668
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1600
1669
|
:param string|str[] [params.clientOrderId]: client order ids,(optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
1601
1670
|
:param str [params.vaultAddress]: the vault address
|
1671
|
+
:param str [params.subAccountAddress]: sub account user address
|
1602
1672
|
:returns dict: an list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
1603
1673
|
"""
|
1604
1674
|
self.check_required_credentials()
|
@@ -1637,7 +1707,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1637
1707
|
})
|
1638
1708
|
cancelAction['cancels'] = cancelReq
|
1639
1709
|
vaultAddress = None
|
1640
|
-
vaultAddress, params = self.
|
1710
|
+
vaultAddress, params = self.handle_option_and_params_2(params, 'cancelOrders', 'vaultAddress', 'subAccountAddress')
|
1641
1711
|
vaultAddress = self.format_vault_address(vaultAddress)
|
1642
1712
|
signature = self.sign_l1_action(cancelAction, nonce, vaultAddress)
|
1643
1713
|
request['action'] = cancelAction
|
@@ -1681,6 +1751,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1681
1751
|
:param CancellationRequest[] orders: each order should contain the parameters required by cancelOrder namely id and symbol, example [{"id": "a", "symbol": "BTC/USDT"}, {"id": "b", "symbol": "ETH/USDT"}]
|
1682
1752
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1683
1753
|
:param str [params.vaultAddress]: the vault address
|
1754
|
+
:param str [params.subAccountAddress]: sub account user address
|
1684
1755
|
:returns dict: an list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
1685
1756
|
"""
|
1686
1757
|
self.check_required_credentials()
|
@@ -1717,7 +1788,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1717
1788
|
cancelAction['type'] = 'cancelByCloid' if cancelByCloid else 'cancel'
|
1718
1789
|
cancelAction['cancels'] = cancelReq
|
1719
1790
|
vaultAddress = None
|
1720
|
-
vaultAddress, params = self.
|
1791
|
+
vaultAddress, params = self.handle_option_and_params_2(params, 'cancelOrdersForSymbols', 'vaultAddress', 'subAccountAddress')
|
1721
1792
|
vaultAddress = self.format_vault_address(vaultAddress)
|
1722
1793
|
signature = self.sign_l1_action(cancelAction, nonce, vaultAddress)
|
1723
1794
|
request['action'] = cancelAction
|
@@ -1747,6 +1818,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1747
1818
|
:param number timeout: time in milliseconds, 0 represents cancel the timer
|
1748
1819
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1749
1820
|
:param str [params.vaultAddress]: the vault address
|
1821
|
+
:param str [params.subAccountAddress]: sub account user address
|
1750
1822
|
:returns dict: the api result
|
1751
1823
|
"""
|
1752
1824
|
self.check_required_credentials()
|
@@ -1762,7 +1834,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1762
1834
|
'time': nonce + timeout,
|
1763
1835
|
}
|
1764
1836
|
vaultAddress = None
|
1765
|
-
vaultAddress, params = self.
|
1837
|
+
vaultAddress, params = self.handle_option_and_params_2(params, 'cancelAllOrdersAfter', 'vaultAddress', 'subAccountAddress')
|
1766
1838
|
vaultAddress = self.format_vault_address(vaultAddress)
|
1767
1839
|
signature = self.sign_l1_action(cancelAction, nonce, vaultAddress)
|
1768
1840
|
request['action'] = cancelAction
|
@@ -1905,6 +1977,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1905
1977
|
:param float [params.triggerPrice]: The price at which a trigger order is triggered at
|
1906
1978
|
:param str [params.clientOrderId]: client order id,(optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
1907
1979
|
:param str [params.vaultAddress]: the vault address for order
|
1980
|
+
:param str [params.subAccountAddress]: sub account user address
|
1908
1981
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1909
1982
|
"""
|
1910
1983
|
await self.load_markets()
|
@@ -2024,7 +2097,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2024
2097
|
market = self.market(symbol)
|
2025
2098
|
request: dict = {
|
2026
2099
|
'type': 'fundingHistory',
|
2027
|
-
'coin': market['
|
2100
|
+
'coin': market['baseName'],
|
2028
2101
|
}
|
2029
2102
|
if since is not None:
|
2030
2103
|
request['startTime'] = since
|
@@ -2072,6 +2145,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2072
2145
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2073
2146
|
:param str [params.user]: user address, will default to self.walletAddress if not provided
|
2074
2147
|
:param str [params.method]: 'openOrders' or 'frontendOpenOrders' default is 'frontendOpenOrders'
|
2148
|
+
:param str [params.subAccountAddress]: sub account user address
|
2075
2149
|
:returns Order[]: a list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
2076
2150
|
"""
|
2077
2151
|
userAddress = None
|
@@ -2160,6 +2234,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2160
2234
|
:param int [limit]: the maximum number of open orders structures to retrieve
|
2161
2235
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2162
2236
|
:param str [params.user]: user address, will default to self.walletAddress if not provided
|
2237
|
+
:param str [params.subAccountAddress]: sub account user address
|
2163
2238
|
:returns Order[]: a list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
2164
2239
|
"""
|
2165
2240
|
userAddress = None
|
@@ -2196,6 +2271,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2196
2271
|
:param str symbol: unified symbol of the market the order was made in
|
2197
2272
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2198
2273
|
:param str [params.user]: user address, will default to self.walletAddress if not provided
|
2274
|
+
:param str [params.subAccountAddress]: sub account user address
|
2199
2275
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
2200
2276
|
"""
|
2201
2277
|
userAddress = None
|
@@ -2421,6 +2497,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2421
2497
|
:param int [limit]: the maximum number of trades structures to retrieve
|
2422
2498
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2423
2499
|
:param int [params.until]: timestamp in ms of the latest trade
|
2500
|
+
:param str [params.subAccountAddress]: sub account user address
|
2424
2501
|
:returns Trade[]: a list of `trade structures <https://docs.ccxt.com/#/?id=trade-structure>`
|
2425
2502
|
"""
|
2426
2503
|
userAddress = None
|
@@ -2541,6 +2618,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2541
2618
|
:param str[] [symbols]: list of unified market symbols
|
2542
2619
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2543
2620
|
:param str [params.user]: user address, will default to self.walletAddress if not provided
|
2621
|
+
:param str [params.subAccountAddress]: sub account user address
|
2544
2622
|
:returns dict[]: a list of `position structure <https://docs.ccxt.com/#/?id=position-structure>`
|
2545
2623
|
"""
|
2546
2624
|
await self.load_markets()
|
@@ -2681,6 +2759,8 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2681
2759
|
:param str symbol: unified market symbol of the market the position is held in, default is None
|
2682
2760
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2683
2761
|
:param str [params.leverage]: the rate of leverage, is required if setting trade mode(symbol)
|
2762
|
+
:param str [params.vaultAddress]: the vault address
|
2763
|
+
:param str [params.subAccountAddress]: sub account user address
|
2684
2764
|
:returns dict: response from the exchange
|
2685
2765
|
"""
|
2686
2766
|
if symbol is None:
|
@@ -2701,7 +2781,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2701
2781
|
'leverage': leverage,
|
2702
2782
|
}
|
2703
2783
|
vaultAddress = None
|
2704
|
-
vaultAddress, params = self.
|
2784
|
+
vaultAddress, params = self.handle_option_and_params_2(params, 'setMarginMode', 'vaultAddress', 'subAccountAddress')
|
2705
2785
|
if vaultAddress is not None:
|
2706
2786
|
if vaultAddress.startswith('0x'):
|
2707
2787
|
vaultAddress = vaultAddress.replace('0x', '')
|
@@ -2750,7 +2830,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2750
2830
|
'leverage': leverage,
|
2751
2831
|
}
|
2752
2832
|
vaultAddress = None
|
2753
|
-
vaultAddress, params = self.
|
2833
|
+
vaultAddress, params = self.handle_option_and_params_2(params, 'setLeverage', 'vaultAddress', 'subAccountAddress')
|
2754
2834
|
vaultAddress = self.format_vault_address(vaultAddress)
|
2755
2835
|
signature = self.sign_l1_action(updateAction, nonce, vaultAddress)
|
2756
2836
|
request: dict = {
|
@@ -2782,6 +2862,8 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2782
2862
|
:param str symbol: unified market symbol
|
2783
2863
|
:param float amount: amount of margin to add
|
2784
2864
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2865
|
+
:param str [params.vaultAddress]: the vault address
|
2866
|
+
:param str [params.subAccountAddress]: sub account user address
|
2785
2867
|
:returns dict: a `margin structure <https://docs.ccxt.com/#/?id=add-margin-structure>`
|
2786
2868
|
"""
|
2787
2869
|
return await self.modify_margin_helper(symbol, amount, 'add', params)
|
@@ -2795,6 +2877,8 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2795
2877
|
:param str symbol: unified market symbol
|
2796
2878
|
:param float amount: the amount of margin to remove
|
2797
2879
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
2880
|
+
:param str [params.vaultAddress]: the vault address
|
2881
|
+
:param str [params.subAccountAddress]: sub account user address
|
2798
2882
|
:returns dict: a `margin structure <https://docs.ccxt.com/#/?id=reduce-margin-structure>`
|
2799
2883
|
"""
|
2800
2884
|
return await self.modify_margin_helper(symbol, amount, 'reduce', params)
|
@@ -2814,7 +2898,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2814
2898
|
'ntli': sz,
|
2815
2899
|
}
|
2816
2900
|
vaultAddress = None
|
2817
|
-
vaultAddress, params = self.
|
2901
|
+
vaultAddress, params = self.handle_option_and_params_2(params, 'modifyMargin', 'vaultAddress', 'subAccountAddress')
|
2818
2902
|
vaultAddress = self.format_vault_address(vaultAddress)
|
2819
2903
|
signature = self.sign_l1_action(updateAction, nonce, vaultAddress)
|
2820
2904
|
request: dict = {
|
@@ -2909,28 +2993,31 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2909
2993
|
transferRequest['vaultAddress'] = vaultAddress
|
2910
2994
|
transferResponse = await self.privatePostExchange(transferRequest)
|
2911
2995
|
return transferResponse
|
2912
|
-
#
|
2913
|
-
self.check_address(toAccount)
|
2996
|
+
# transfer between main account and subaccount
|
2914
2997
|
if code is not None:
|
2915
2998
|
code = code.upper()
|
2916
2999
|
if code != 'USDC':
|
2917
3000
|
raise NotSupported(self.id + ' transfer() only support USDC')
|
2918
|
-
|
2919
|
-
|
2920
|
-
|
2921
|
-
|
2922
|
-
|
3001
|
+
isDeposit = False
|
3002
|
+
subAccountAddress = None
|
3003
|
+
if fromAccount == 'main':
|
3004
|
+
subAccountAddress = toAccount
|
3005
|
+
isDeposit = True
|
3006
|
+
elif toAccount == 'main':
|
3007
|
+
subAccountAddress = fromAccount
|
3008
|
+
else:
|
3009
|
+
raise NotSupported(self.id + ' transfer() only support main <> subaccount transfer')
|
3010
|
+
self.check_address(subAccountAddress)
|
3011
|
+
usd = self.parse_to_int(Precise.string_mul(self.number_to_string(amount), '1000000'))
|
3012
|
+
action = {
|
3013
|
+
'type': 'subAccountTransfer',
|
3014
|
+
'subAccountUser': subAccountAddress,
|
3015
|
+
'isDeposit': isDeposit,
|
3016
|
+
'usd': usd,
|
2923
3017
|
}
|
2924
|
-
sig = self.
|
3018
|
+
sig = self.sign_l1_action(action, nonce)
|
2925
3019
|
request: dict = {
|
2926
|
-
'action':
|
2927
|
-
'hyperliquidChain': payload['hyperliquidChain'],
|
2928
|
-
'signatureChainId': '0x66eee', # check self out
|
2929
|
-
'destination': toAccount,
|
2930
|
-
'amount': str(amount),
|
2931
|
-
'time': nonce,
|
2932
|
-
'type': 'usdSend',
|
2933
|
-
},
|
3020
|
+
'action': action,
|
2934
3021
|
'nonce': nonce,
|
2935
3022
|
'signature': sig,
|
2936
3023
|
}
|
@@ -3075,6 +3162,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3075
3162
|
:param str symbol: unified market symbol
|
3076
3163
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
3077
3164
|
:param str [params.user]: user address, will default to self.walletAddress if not provided
|
3165
|
+
:param str [params.subAccountAddress]: sub account user address
|
3078
3166
|
:returns dict: a `fee structure <https://docs.ccxt.com/#/?id=fee-structure>`
|
3079
3167
|
"""
|
3080
3168
|
await self.load_markets()
|
@@ -3181,6 +3269,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3181
3269
|
:param int [limit]: max number of ledger entries to return
|
3182
3270
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
3183
3271
|
:param int [params.until]: timestamp in ms of the latest ledger entry
|
3272
|
+
:param str [params.subAccountAddress]: sub account user address
|
3184
3273
|
:returns dict: a `ledger structure <https://docs.ccxt.com/#/?id=ledger>`
|
3185
3274
|
"""
|
3186
3275
|
await self.load_markets()
|
@@ -3268,6 +3357,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3268
3357
|
:param int [limit]: the maximum number of deposits structures to retrieve
|
3269
3358
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
3270
3359
|
:param int [params.until]: the latest time in ms to fetch withdrawals for
|
3360
|
+
:param str [params.subAccountAddress]: sub account user address
|
3271
3361
|
:returns dict[]: a list of `transaction structures <https://docs.ccxt.com/#/?id=transaction-structure>`
|
3272
3362
|
"""
|
3273
3363
|
await self.load_markets()
|
@@ -3309,6 +3399,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3309
3399
|
:param int [limit]: the maximum number of withdrawals structures to retrieve
|
3310
3400
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
3311
3401
|
:param int [params.until]: the latest time in ms to fetch withdrawals for
|
3402
|
+
:param str [params.subAccountAddress]: sub account user address
|
3312
3403
|
:returns dict[]: a list of `transaction structures <https://docs.ccxt.com/#/?id=transaction-structure>`
|
3313
3404
|
"""
|
3314
3405
|
await self.load_markets()
|
@@ -3406,6 +3497,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3406
3497
|
:param int [since]: the earliest time in ms to fetch funding history for
|
3407
3498
|
:param int [limit]: the maximum number of funding history structures to retrieve
|
3408
3499
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
3500
|
+
:param str [params.subAccountAddress]: sub account user address
|
3409
3501
|
:returns dict: a `funding history structure <https://docs.ccxt.com/#/?id=funding-history-structure>`
|
3410
3502
|
"""
|
3411
3503
|
await self.load_markets()
|
@@ -3496,7 +3588,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3496
3588
|
|
3497
3589
|
def handle_public_address(self, methodName: str, params: dict):
|
3498
3590
|
userAux = None
|
3499
|
-
userAux, params = self.
|
3591
|
+
userAux, params = self.handle_option_and_params_2(params, methodName, 'user', 'subAccountAddress')
|
3500
3592
|
user = userAux
|
3501
3593
|
user, params = self.handle_option_and_params(params, methodName, 'address', userAux)
|
3502
3594
|
if (user is not None) and (user != ''):
|
@@ -3563,7 +3655,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3563
3655
|
def parse_create_edit_order_args(self, id: Str, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
|
3564
3656
|
market = self.market(symbol)
|
3565
3657
|
vaultAddress = None
|
3566
|
-
vaultAddress, params = self.
|
3658
|
+
vaultAddress, params = self.handle_option_and_params_2(params, 'createOrder', 'vaultAddress', 'subAccountAddress')
|
3567
3659
|
vaultAddress = self.format_vault_address(vaultAddress)
|
3568
3660
|
symbol = market['symbol']
|
3569
3661
|
order = {
|
@@ -2557,11 +2557,11 @@ class okx(Exchange, ImplicitAPI):
|
|
2557
2557
|
# it may be incorrect to use total, free and used for swap accounts
|
2558
2558
|
eq = self.safe_string(balance, 'eq')
|
2559
2559
|
availEq = self.safe_string(balance, 'availEq')
|
2560
|
-
|
2560
|
+
account['total'] = eq
|
2561
|
+
if availEq is None:
|
2561
2562
|
account['free'] = self.safe_string(balance, 'availBal')
|
2562
2563
|
account['used'] = self.safe_string(balance, 'frozenBal')
|
2563
2564
|
else:
|
2564
|
-
account['total'] = eq
|
2565
2565
|
account['free'] = availEq
|
2566
2566
|
result[code] = account
|
2567
2567
|
result['timestamp'] = timestamp
|
@@ -2959,7 +2959,8 @@ class okx(Exchange, ImplicitAPI):
|
|
2959
2959
|
stopLossTriggerPrice = self.safe_value_n(stopLoss, ['triggerPrice', 'stopPrice', 'slTriggerPx'])
|
2960
2960
|
if stopLossTriggerPrice is None:
|
2961
2961
|
raise InvalidOrder(self.id + ' createOrder() requires a trigger price in params["stopLoss"]["triggerPrice"], or params["stopLoss"]["stopPrice"], or params["stopLoss"]["slTriggerPx"] for a stop loss order')
|
2962
|
-
|
2962
|
+
slTriggerPx = self.price_to_precision(symbol, stopLossTriggerPrice)
|
2963
|
+
request['slTriggerPx'] = slTriggerPx
|
2963
2964
|
stopLossLimitPrice = self.safe_value_n(stopLoss, ['price', 'stopLossPrice', 'slOrdPx'])
|
2964
2965
|
stopLossOrderType = self.safe_string(stopLoss, 'type')
|
2965
2966
|
if stopLossOrderType is not None:
|
@@ -3025,6 +3026,12 @@ class okx(Exchange, ImplicitAPI):
|
|
3025
3026
|
# tpOrdKind is 'condition' which is the default
|
3026
3027
|
if twoWayCondition:
|
3027
3028
|
request['ordType'] = 'oco'
|
3029
|
+
if side == 'sell':
|
3030
|
+
request = self.omit(request, 'tgtCcy')
|
3031
|
+
if self.safe_string(request, 'tdMode') == 'cash':
|
3032
|
+
# for some reason tdMode = cash throws
|
3033
|
+
# {"code":"1","data":[{"algoClOrdId":"","algoId":"","clOrdId":"","sCode":"51000","sMsg":"Parameter tdMode error ","tag":""}],"msg":""}
|
3034
|
+
request['tdMode'] = marginMode
|
3028
3035
|
if takeProfitPrice is not None:
|
3029
3036
|
request['tpTriggerPx'] = self.price_to_precision(symbol, takeProfitPrice)
|
3030
3037
|
tpOrdPxReq = '-1'
|