ccxt 4.4.46 → 4.4.48
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.
- package/README.md +3 -4
- package/dist/ccxt.browser.min.js +16 -16
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/abstract/ace.js +1 -1
- package/dist/cjs/src/abstract/alpaca.js +1 -1
- package/dist/cjs/src/abstract/ascendex.js +1 -1
- package/dist/cjs/src/abstract/bigone.js +1 -1
- package/dist/cjs/src/abstract/binance.js +1 -1
- package/dist/cjs/src/abstract/bingx.js +1 -1
- package/dist/cjs/src/abstract/bit2c.js +1 -1
- package/dist/cjs/src/abstract/bitbank.js +1 -1
- package/dist/cjs/src/abstract/bitbns.js +1 -1
- package/dist/cjs/src/abstract/bitfinex.js +1 -1
- package/dist/cjs/src/abstract/bitfinex1.js +1 -1
- package/dist/cjs/src/abstract/bitflyer.js +1 -1
- package/dist/cjs/src/abstract/bitget.js +1 -1
- package/dist/cjs/src/abstract/bithumb.js +1 -1
- package/dist/cjs/src/abstract/bitmart.js +1 -1
- package/dist/cjs/src/abstract/bitmex.js +1 -1
- package/dist/cjs/src/abstract/bitopro.js +1 -1
- package/dist/cjs/src/abstract/bitrue.js +1 -1
- package/dist/cjs/src/abstract/bitso.js +1 -1
- package/dist/cjs/src/abstract/bitstamp.js +1 -1
- package/dist/cjs/src/abstract/bitteam.js +1 -1
- package/dist/cjs/src/abstract/bitvavo.js +1 -1
- package/dist/cjs/src/abstract/bl3p.js +1 -1
- package/dist/cjs/src/abstract/blockchaincom.js +1 -1
- package/dist/cjs/src/abstract/blofin.js +1 -1
- package/dist/cjs/src/abstract/btcalpha.js +1 -1
- package/dist/cjs/src/abstract/btcbox.js +1 -1
- package/dist/cjs/src/abstract/btcmarkets.js +1 -1
- package/dist/cjs/src/abstract/btcturk.js +1 -1
- package/dist/cjs/src/abstract/bybit.js +1 -1
- package/dist/cjs/src/abstract/cex.js +1 -1
- package/dist/cjs/src/abstract/coinbase.js +1 -1
- package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
- package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
- package/dist/cjs/src/abstract/coincatch.js +1 -1
- package/dist/cjs/src/abstract/coincheck.js +1 -1
- package/dist/cjs/src/abstract/coinex.js +1 -1
- package/dist/cjs/src/abstract/coinlist.js +1 -1
- package/dist/cjs/src/abstract/coinmate.js +1 -1
- package/dist/cjs/src/abstract/coinmetro.js +1 -1
- package/dist/cjs/src/abstract/coinone.js +1 -1
- package/dist/cjs/src/abstract/coinsph.js +1 -1
- package/dist/cjs/src/abstract/coinspot.js +1 -1
- package/dist/cjs/src/abstract/cryptocom.js +1 -1
- package/dist/cjs/src/abstract/currencycom.js +1 -1
- package/dist/cjs/src/abstract/defx.js +1 -1
- package/dist/cjs/src/abstract/delta.js +1 -1
- package/dist/cjs/src/abstract/deribit.js +1 -1
- package/dist/cjs/src/abstract/digifinex.js +1 -1
- package/dist/cjs/src/abstract/ellipx.js +1 -1
- package/dist/cjs/src/abstract/exmo.js +1 -1
- package/dist/cjs/src/abstract/gate.js +1 -1
- package/dist/cjs/src/abstract/gemini.js +1 -1
- package/dist/cjs/src/abstract/hashkey.js +1 -1
- package/dist/cjs/src/abstract/hitbtc.js +1 -1
- package/dist/cjs/src/abstract/hollaex.js +1 -1
- package/dist/cjs/src/abstract/htx.js +1 -1
- package/dist/cjs/src/abstract/huobijp.js +1 -1
- package/dist/cjs/src/abstract/hyperliquid.js +1 -1
- package/dist/cjs/src/abstract/idex.js +1 -1
- package/dist/cjs/src/abstract/independentreserve.js +1 -1
- package/dist/cjs/src/abstract/indodax.js +1 -1
- package/dist/cjs/src/abstract/kraken.js +1 -1
- package/dist/cjs/src/abstract/krakenfutures.js +1 -1
- package/dist/cjs/src/abstract/kucoin.js +1 -1
- package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
- package/dist/cjs/src/abstract/kuna.js +1 -1
- package/dist/cjs/src/abstract/latoken.js +1 -1
- package/dist/cjs/src/abstract/lbank.js +1 -1
- package/dist/cjs/src/abstract/luno.js +1 -1
- package/dist/cjs/src/abstract/lykke.js +1 -1
- package/dist/cjs/src/abstract/mercado.js +1 -1
- package/dist/cjs/src/abstract/mexc.js +1 -1
- package/dist/cjs/src/abstract/ndax.js +1 -1
- package/dist/cjs/src/abstract/novadax.js +1 -1
- package/dist/cjs/src/abstract/oceanex.js +1 -1
- package/dist/cjs/src/abstract/okcoin.js +1 -1
- package/dist/cjs/src/abstract/okx.js +1 -1
- package/dist/cjs/src/abstract/onetrading.js +1 -1
- package/dist/cjs/src/abstract/oxfun.js +1 -1
- package/dist/cjs/src/abstract/p2b.js +1 -1
- package/dist/cjs/src/abstract/paradex.js +1 -1
- package/dist/cjs/src/abstract/paymium.js +1 -1
- package/dist/cjs/src/abstract/phemex.js +1 -1
- package/dist/cjs/src/abstract/poloniex.js +1 -1
- package/dist/cjs/src/abstract/poloniexfutures.js +1 -1
- package/dist/cjs/src/abstract/probit.js +1 -1
- package/dist/cjs/src/abstract/timex.js +1 -1
- package/dist/cjs/src/abstract/tokocrypto.js +1 -1
- package/dist/cjs/src/abstract/tradeogre.js +1 -1
- package/dist/cjs/src/abstract/upbit.js +1 -1
- package/dist/cjs/src/abstract/vertex.js +1 -1
- package/dist/cjs/src/abstract/wavesexchange.js +1 -1
- package/dist/cjs/src/abstract/wazirx.js +1 -1
- package/dist/cjs/src/abstract/whitebit.js +1 -1
- package/dist/cjs/src/abstract/woo.js +1 -1
- package/dist/cjs/src/abstract/woofipro.js +1 -1
- package/dist/cjs/src/abstract/xt.js +1 -1
- package/dist/cjs/src/abstract/yobit.js +1 -1
- package/dist/cjs/src/abstract/zaif.js +1 -1
- package/dist/cjs/src/abstract/zonda.js +1 -1
- package/dist/cjs/src/ace.js +60 -2
- package/dist/cjs/src/alpaca.js +81 -1
- package/dist/cjs/src/ascendex.js +96 -3
- package/dist/cjs/src/base/Exchange.js +16 -14
- package/dist/cjs/src/base/Precise.js +6 -0
- package/dist/cjs/src/base/errors.js +6 -0
- package/dist/cjs/src/base/functions/crypto.js +1 -1
- package/dist/cjs/src/base/functions/encode.js +1 -1
- package/dist/cjs/src/base/functions/misc.js +1 -0
- package/dist/cjs/src/base/functions/number.js +6 -0
- package/dist/cjs/src/base/functions/platform.js +6 -0
- package/dist/cjs/src/base/functions/rsa.js +1 -0
- package/dist/cjs/src/base/functions/string.js +6 -0
- package/dist/cjs/src/base/functions/throttle.js +1 -1
- package/dist/cjs/src/base/functions/time.js +6 -0
- package/dist/cjs/src/base/functions/totp.js +1 -0
- package/dist/cjs/src/base/functions/type.js +6 -0
- package/dist/cjs/src/base/functions.js +1 -1
- package/dist/cjs/src/base/ws/Cache.js +6 -0
- package/dist/cjs/src/base/ws/Client.js +1 -0
- package/dist/cjs/src/base/ws/Future.js +1 -1
- package/dist/cjs/src/base/ws/OrderBook.js +1 -1
- package/dist/cjs/src/base/ws/OrderBookSide.js +6 -0
- package/dist/cjs/src/base/ws/WsClient.js +1 -1
- package/dist/cjs/src/bequant.js +1 -1
- package/dist/cjs/src/bigone.js +117 -5
- package/dist/cjs/src/binance.js +22 -19
- package/dist/cjs/src/binancecoinm.js +1 -1
- package/dist/cjs/src/binanceus.js +11 -1
- package/dist/cjs/src/binanceusdm.js +1 -1
- package/dist/cjs/src/bingx.js +2 -3
- package/dist/cjs/src/bit2c.js +57 -1
- package/dist/cjs/src/bitbank.js +59 -1
- package/dist/cjs/src/bitbns.js +61 -1
- package/dist/cjs/src/bitcoincom.js +1 -1
- package/dist/cjs/src/bitfinex.js +3 -4
- package/dist/cjs/src/bitfinex1.js +12 -2
- package/dist/cjs/src/bitflyer.js +72 -1
- package/dist/cjs/src/bitget.js +6 -5
- package/dist/cjs/src/bithumb.js +55 -1
- package/dist/cjs/src/bitmart.js +8 -3
- package/dist/cjs/src/bitmex.js +7 -5
- package/dist/cjs/src/bitopro.js +75 -1
- package/dist/cjs/src/bitpanda.js +1 -1
- package/dist/cjs/src/bitrue.js +98 -18
- package/dist/cjs/src/bitso.js +60 -1
- package/dist/cjs/src/bitstamp.js +1 -1
- package/dist/cjs/src/bitteam.js +74 -1
- package/dist/cjs/src/bitvavo.js +68 -2
- package/dist/cjs/src/bl3p.js +43 -1
- package/dist/cjs/src/blockchaincom.js +67 -3
- package/dist/cjs/src/blofin.js +88 -2
- package/dist/cjs/src/btcalpha.js +74 -1
- package/dist/cjs/src/btcbox.js +59 -1
- package/dist/cjs/src/btcmarkets.js +74 -1
- package/dist/cjs/src/btcturk.js +62 -1
- package/dist/cjs/src/bybit.js +16 -5
- package/dist/cjs/src/cex.js +58 -1
- package/dist/cjs/src/coinbase.js +12 -2
- package/dist/cjs/src/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/coinbaseexchange.js +76 -0
- package/dist/cjs/src/coincatch.js +87 -3
- package/dist/cjs/src/coincheck.js +53 -1
- package/dist/cjs/src/coinex.js +2 -3
- package/dist/cjs/src/coinlist.js +78 -0
- package/dist/cjs/src/coinmate.js +64 -1
- package/dist/cjs/src/coinmetro.js +69 -1
- package/dist/cjs/src/coinone.js +57 -1
- package/dist/cjs/src/coinsph.js +68 -1
- package/dist/cjs/src/coinspot.js +48 -1
- package/dist/cjs/src/cryptocom.js +1 -1
- package/dist/cjs/src/currencycom.js +73 -1
- package/dist/cjs/src/defx.js +94 -7
- package/dist/cjs/src/delta.js +85 -4
- package/dist/cjs/src/deribit.js +1 -1
- package/dist/cjs/src/digifinex.js +1 -1
- package/dist/cjs/src/ellipx.js +1 -1
- package/dist/cjs/src/exmo.js +1 -1
- package/dist/cjs/src/fmfwio.js +1 -1
- package/dist/cjs/src/gate.js +14 -5
- package/dist/cjs/src/gateio.js +1 -1
- package/dist/cjs/src/gemini.js +1 -1
- package/dist/cjs/src/hashkey.js +2 -3
- package/dist/cjs/src/hitbtc.js +1 -0
- package/dist/cjs/src/hollaex.js +2 -2
- package/dist/cjs/src/htx.js +13 -7
- package/dist/cjs/src/huobi.js +1 -1
- package/dist/cjs/src/huobijp.js +1 -1
- package/dist/cjs/src/hyperliquid.js +12 -6
- package/dist/cjs/src/idex.js +1 -1
- package/dist/cjs/src/independentreserve.js +61 -1
- package/dist/cjs/src/indodax.js +1 -1
- package/dist/cjs/src/kraken.js +2 -2
- package/dist/cjs/src/krakenfutures.js +8 -5
- package/dist/cjs/src/kucoin.js +1 -1
- package/dist/cjs/src/kucoinfutures.js +1 -1
- package/dist/cjs/src/kuna.js +1 -1
- package/dist/cjs/src/latoken.js +1 -1
- package/dist/cjs/src/lbank.js +2 -3
- package/dist/cjs/src/luno.js +1 -1
- package/dist/cjs/src/lykke.js +1 -1
- package/dist/cjs/src/mercado.js +1 -1
- package/dist/cjs/src/mexc.js +1 -1
- package/dist/cjs/src/myokx.js +1 -1
- package/dist/cjs/src/ndax.js +1 -1
- package/dist/cjs/src/novadax.js +1 -1
- package/dist/cjs/src/oceanex.js +1 -1
- package/dist/cjs/src/okcoin.js +1 -1
- package/dist/cjs/src/okx.js +23 -11
- package/dist/cjs/src/onetrading.js +1 -1
- package/dist/cjs/src/oxfun.js +2 -3
- package/dist/cjs/src/p2b.js +1 -1
- package/dist/cjs/src/paradex.js +6 -3
- package/dist/cjs/src/paymium.js +1 -1
- package/dist/cjs/src/phemex.js +103 -0
- package/dist/cjs/src/poloniex.js +62 -1
- package/dist/cjs/src/poloniexfutures.js +75 -1
- package/dist/cjs/src/pro/alpaca.js +1 -1
- package/dist/cjs/src/pro/ascendex.js +1 -1
- package/dist/cjs/src/pro/bequant.js +1 -1
- package/dist/cjs/src/pro/binancecoinm.js +1 -1
- package/dist/cjs/src/pro/binanceus.js +1 -1
- package/dist/cjs/src/pro/binanceusdm.js +1 -1
- package/dist/cjs/src/pro/bingx.js +4 -7
- package/dist/cjs/src/pro/bitcoincom.js +1 -1
- package/dist/cjs/src/pro/bitfinex.js +1 -1
- package/dist/cjs/src/pro/bitfinex1.js +1 -1
- package/dist/cjs/src/pro/bitget.js +3 -6
- package/dist/cjs/src/pro/bithumb.js +1 -1
- package/dist/cjs/src/pro/bitmart.js +1 -1
- package/dist/cjs/src/pro/bitmex.js +1 -1
- package/dist/cjs/src/pro/bitpanda.js +1 -1
- package/dist/cjs/src/pro/bitrue.js +1 -1
- package/dist/cjs/src/pro/bitstamp.js +1 -1
- package/dist/cjs/src/pro/bitvavo.js +1 -1
- package/dist/cjs/src/pro/blockchaincom.js +1 -1
- package/dist/cjs/src/pro/blofin.js +1 -1
- package/dist/cjs/src/pro/bybit.js +1 -1
- package/dist/cjs/src/pro/cex.js +1 -1
- package/dist/cjs/src/pro/coinbase.js +1 -1
- package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
- package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
- package/dist/cjs/src/pro/coincatch.js +1 -1
- package/dist/cjs/src/pro/coincheck.js +1 -1
- package/dist/cjs/src/pro/coinex.js +1 -1
- package/dist/cjs/src/pro/coinone.js +1 -1
- package/dist/cjs/src/pro/cryptocom.js +1 -1
- package/dist/cjs/src/pro/currencycom.js +1 -1
- package/dist/cjs/src/pro/defx.js +1 -1
- package/dist/cjs/src/pro/deribit.js +1 -1
- package/dist/cjs/src/pro/exmo.js +1 -1
- package/dist/cjs/src/pro/gate.js +1 -1
- package/dist/cjs/src/pro/gateio.js +1 -1
- package/dist/cjs/src/pro/gemini.js +1 -1
- package/dist/cjs/src/pro/hashkey.js +1 -1
- package/dist/cjs/src/pro/hitbtc.js +1 -1
- package/dist/cjs/src/pro/hollaex.js +1 -1
- package/dist/cjs/src/pro/htx.js +1 -1
- package/dist/cjs/src/pro/huobi.js +1 -1
- package/dist/cjs/src/pro/hyperliquid.js +1 -1
- package/dist/cjs/src/pro/idex.js +1 -1
- package/dist/cjs/src/pro/independentreserve.js +1 -1
- package/dist/cjs/src/pro/kraken.js +1 -1
- package/dist/cjs/src/pro/krakenfutures.js +1 -1
- package/dist/cjs/src/pro/kucoin.js +1 -1
- package/dist/cjs/src/pro/kucoinfutures.js +1 -1
- package/dist/cjs/src/pro/lbank.js +1 -0
- package/dist/cjs/src/pro/luno.js +1 -1
- package/dist/cjs/src/pro/mexc.js +1 -1
- package/dist/cjs/src/pro/myokx.js +1 -1
- package/dist/cjs/src/pro/ndax.js +1 -1
- package/dist/cjs/src/pro/okcoin.js +1 -1
- package/dist/cjs/src/pro/okx.js +1 -1
- package/dist/cjs/src/pro/onetrading.js +1 -1
- package/dist/cjs/src/pro/oxfun.js +1 -1
- package/dist/cjs/src/pro/p2b.js +1 -1
- package/dist/cjs/src/pro/paradex.js +1 -1
- package/dist/cjs/src/pro/phemex.js +1 -1
- package/dist/cjs/src/pro/poloniex.js +1 -1
- package/dist/cjs/src/pro/poloniexfutures.js +1 -1
- package/dist/cjs/src/pro/probit.js +1 -1
- package/dist/cjs/src/pro/upbit.js +1 -1
- package/dist/cjs/src/pro/wazirx.js +1 -1
- package/dist/cjs/src/pro/whitebit.js +1 -1
- package/dist/cjs/src/pro/xt.js +2 -2
- package/dist/cjs/src/probit.js +1 -1
- package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/address.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/array.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/null.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/number.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/string.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/fragments.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/index.js +1 -10
- package/dist/cjs/src/static_dependencies/ethers/interface.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/typed.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +1 -13
- package/dist/cjs/src/static_dependencies/ethers/utils/data.js +1 -6
- package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +1 -9
- package/dist/cjs/src/static_dependencies/ethers/utils/events.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/index.js +1 -7
- package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +1 -5
- package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +6 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +1 -8
- package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +1 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +1 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +1 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
- package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +6 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +1 -0
- package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
- package/dist/cjs/src/static_dependencies/node-fetch/body.js +1 -5
- package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +1 -0
- package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +1 -0
- package/dist/cjs/src/static_dependencies/node-fetch/headers.js +1 -5
- package/dist/cjs/src/static_dependencies/node-fetch/index.js +1 -7
- package/dist/cjs/src/static_dependencies/node-fetch/request.js +1 -7
- package/dist/cjs/src/static_dependencies/node-fetch/response.js +1 -5
- package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +6 -0
- package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +1 -0
- package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
- package/dist/cjs/src/static_dependencies/scure-base/index.js +6 -0
- package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +1 -4
- package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +1 -3
- package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/num.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +1 -0
- package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
- package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +6 -0
- package/dist/cjs/src/timex.js +1 -0
- package/dist/cjs/src/tokocrypto.js +1 -1
- package/dist/cjs/src/tradeogre.js +1 -1
- package/dist/cjs/src/upbit.js +62 -1
- package/dist/cjs/src/vertex.js +1 -1
- package/dist/cjs/src/wavesexchange.js +1 -1
- package/dist/cjs/src/wazirx.js +1 -0
- package/dist/cjs/src/whitebit.js +3 -3
- package/dist/cjs/src/woo.js +8 -4
- package/dist/cjs/src/woofipro.js +2 -3
- package/dist/cjs/src/xt.js +1 -1
- package/dist/cjs/src/yobit.js +1 -1
- package/dist/cjs/src/zaif.js +1 -1
- package/dist/cjs/src/zonda.js +1 -1
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/abstract/binance.d.ts +1 -0
- package/js/src/abstract/binancecoinm.d.ts +1 -0
- package/js/src/abstract/binanceus.d.ts +1 -0
- package/js/src/abstract/binanceusdm.d.ts +1 -0
- package/js/src/abstract/bybit.d.ts +1 -0
- package/js/src/abstract/independentreserve.d.ts +6 -0
- package/js/src/ace.js +59 -1
- package/js/src/alpaca.js +80 -0
- package/js/src/ascendex.js +95 -2
- package/js/src/base/Exchange.d.ts +2 -2
- package/js/src/base/Exchange.js +16 -14
- package/js/src/bigone.d.ts +1 -0
- package/js/src/bigone.js +116 -4
- package/js/src/binance.d.ts +7 -0
- package/js/src/binance.js +21 -18
- package/js/src/binanceus.js +10 -0
- package/js/src/bingx.js +1 -2
- package/js/src/bit2c.js +56 -0
- package/js/src/bitbank.js +58 -0
- package/js/src/bitbns.js +60 -0
- package/js/src/bitfinex.js +2 -3
- package/js/src/bitfinex1.d.ts +2 -1
- package/js/src/bitfinex1.js +11 -1
- package/js/src/bitflyer.js +71 -0
- package/js/src/bitget.js +5 -4
- package/js/src/bithumb.js +54 -0
- package/js/src/bitmart.js +7 -2
- package/js/src/bitmex.js +6 -4
- package/js/src/bitopro.js +74 -0
- package/js/src/bitrue.d.ts +11 -16
- package/js/src/bitrue.js +97 -17
- package/js/src/bitso.js +59 -0
- package/js/src/bitteam.js +73 -0
- package/js/src/bitvavo.d.ts +3 -2
- package/js/src/bitvavo.js +68 -2
- package/js/src/bl3p.js +42 -0
- package/js/src/blockchaincom.js +66 -2
- package/js/src/blofin.js +87 -1
- package/js/src/btcalpha.js +73 -0
- package/js/src/btcbox.js +58 -0
- package/js/src/btcmarkets.js +73 -0
- package/js/src/btcturk.js +61 -0
- package/js/src/bybit.d.ts +1 -1
- package/js/src/bybit.js +15 -4
- package/js/src/cex.js +57 -0
- package/js/src/coinbase.d.ts +1 -0
- package/js/src/coinbase.js +12 -2
- package/js/src/coinbaseexchange.js +76 -0
- package/js/src/coincatch.d.ts +1 -2
- package/js/src/coincatch.js +86 -2
- package/js/src/coincheck.js +52 -0
- package/js/src/coinex.js +1 -2
- package/js/src/coinlist.js +77 -0
- package/js/src/coinmate.js +63 -0
- package/js/src/coinmetro.js +68 -0
- package/js/src/coinone.js +56 -0
- package/js/src/coinsph.d.ts +1 -1
- package/js/src/coinsph.js +67 -1
- package/js/src/coinspot.js +47 -0
- package/js/src/currencycom.js +72 -0
- package/js/src/defx.js +93 -6
- package/js/src/delta.js +84 -3
- package/js/src/gate.d.ts +1 -0
- package/js/src/gate.js +13 -4
- package/js/src/hashkey.js +1 -2
- package/js/src/hollaex.js +1 -1
- package/js/src/htx.d.ts +1 -0
- package/js/src/htx.js +12 -6
- package/js/src/hyperliquid.js +11 -5
- package/js/src/independentreserve.js +60 -0
- package/js/src/kraken.js +1 -1
- package/js/src/krakenfutures.js +7 -4
- package/js/src/lbank.js +1 -2
- package/js/src/okx.d.ts +1 -0
- package/js/src/okx.js +22 -10
- package/js/src/oxfun.js +1 -2
- package/js/src/paradex.js +5 -2
- package/js/src/phemex.js +103 -0
- package/js/src/poloniex.js +61 -0
- package/js/src/poloniexfutures.js +74 -0
- package/js/src/pro/bingx.js +3 -6
- package/js/src/pro/bitget.js +2 -5
- package/js/src/pro/xt.js +1 -1
- package/js/src/static_dependencies/qs/formats.d.cts +0 -6
- package/js/src/static_dependencies/qs/index.d.cts +0 -6
- package/js/src/static_dependencies/qs/parse.d.cts +0 -6
- package/js/src/static_dependencies/qs/stringify.d.cts +0 -6
- package/js/src/static_dependencies/qs/utils.d.cts +0 -6
- package/js/src/upbit.js +61 -0
- package/js/src/whitebit.js +2 -2
- package/js/src/woo.js +7 -3
- package/js/src/woofipro.js +1 -2
- package/package.json +12 -2
package/js/src/gate.d.ts
CHANGED
|
@@ -801,6 +801,7 @@ export default class gate extends Exchange {
|
|
|
801
801
|
*/
|
|
802
802
|
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
803
803
|
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
804
|
+
nonce(): number;
|
|
804
805
|
sign(path: any, api?: any[], method?: string, params?: {}, headers?: any, body?: any): {
|
|
805
806
|
url: any;
|
|
806
807
|
method: string;
|
package/js/src/gate.js
CHANGED
|
@@ -650,6 +650,8 @@ export default class gate extends Exchange {
|
|
|
650
650
|
'X-Gate-Channel-Id': 'ccxt',
|
|
651
651
|
},
|
|
652
652
|
'options': {
|
|
653
|
+
'timeDifference': 0,
|
|
654
|
+
'adjustForTimeDifference': false,
|
|
653
655
|
'sandboxMode': false,
|
|
654
656
|
'unifiedAccount': undefined,
|
|
655
657
|
'createOrder': {
|
|
@@ -1163,6 +1165,9 @@ export default class gate extends Exchange {
|
|
|
1163
1165
|
* @returns {object[]} an array of objects representing market data
|
|
1164
1166
|
*/
|
|
1165
1167
|
async fetchMarkets(params = {}) {
|
|
1168
|
+
if (this.options['adjustForTimeDifference']) {
|
|
1169
|
+
await this.loadTimeDifference();
|
|
1170
|
+
}
|
|
1166
1171
|
const sandboxMode = this.safeBool(this.options, 'sandboxMode', false);
|
|
1167
1172
|
let rawPromises = [
|
|
1168
1173
|
this.fetchContractMarkets(params),
|
|
@@ -1997,8 +2002,7 @@ export default class gate extends Exchange {
|
|
|
1997
2002
|
// }
|
|
1998
2003
|
// ]
|
|
1999
2004
|
//
|
|
2000
|
-
|
|
2001
|
-
return this.filterByArray(result, 'symbol', symbols);
|
|
2005
|
+
return this.parseFundingRates(response, symbols);
|
|
2002
2006
|
}
|
|
2003
2007
|
parseFundingRate(contract, market = undefined) {
|
|
2004
2008
|
//
|
|
@@ -2429,7 +2433,8 @@ export default class gate extends Exchange {
|
|
|
2429
2433
|
const chainKeys = Object.keys(withdrawFixOnChains);
|
|
2430
2434
|
for (let i = 0; i < chainKeys.length; i++) {
|
|
2431
2435
|
const chainKey = chainKeys[i];
|
|
2432
|
-
|
|
2436
|
+
const networkCode = this.networkIdToCode(chainKey, this.safeString(fee, 'currency'));
|
|
2437
|
+
result['networks'][networkCode] = {
|
|
2433
2438
|
'withdraw': {
|
|
2434
2439
|
'fee': this.parseNumber(withdrawFixOnChains[chainKey]),
|
|
2435
2440
|
'percentage': false,
|
|
@@ -6667,6 +6672,9 @@ export default class gate extends Exchange {
|
|
|
6667
6672
|
'datetime': this.iso8601(timestamp),
|
|
6668
6673
|
};
|
|
6669
6674
|
}
|
|
6675
|
+
nonce() {
|
|
6676
|
+
return this.milliseconds() - this.options['timeDifference'];
|
|
6677
|
+
}
|
|
6670
6678
|
sign(path, api = [], method = 'GET', params = {}, headers = undefined, body = undefined) {
|
|
6671
6679
|
const authentication = api[0]; // public, private
|
|
6672
6680
|
const type = api[1]; // spot, margin, future, delivery
|
|
@@ -6740,7 +6748,8 @@ export default class gate extends Exchange {
|
|
|
6740
6748
|
}
|
|
6741
6749
|
const bodyPayload = (body === undefined) ? '' : body;
|
|
6742
6750
|
const bodySignature = this.hash(this.encode(bodyPayload), sha512);
|
|
6743
|
-
const
|
|
6751
|
+
const nonce = this.nonce();
|
|
6752
|
+
const timestamp = this.parseToInt(nonce / 1000);
|
|
6744
6753
|
const timestampString = timestamp.toString();
|
|
6745
6754
|
const signaturePath = '/api/' + this.version + entirePath;
|
|
6746
6755
|
const payloadArray = [method.toUpperCase(), signaturePath, queryString, bodySignature, timestampString];
|
package/js/src/hashkey.js
CHANGED
|
@@ -3765,8 +3765,7 @@ export default class hashkey extends Exchange {
|
|
|
3765
3765
|
// { "symbol": "ETHUSDT-PERPETUAL", "rate": "0.0001", "nextSettleTime": "1722297600000" }
|
|
3766
3766
|
// ]
|
|
3767
3767
|
//
|
|
3768
|
-
|
|
3769
|
-
return this.filterByArray(fundingRates, 'symbol', symbols);
|
|
3768
|
+
return this.parseFundingRates(response, symbols);
|
|
3770
3769
|
}
|
|
3771
3770
|
parseFundingRate(contract, market = undefined) {
|
|
3772
3771
|
//
|
package/js/src/hollaex.js
CHANGED
|
@@ -349,7 +349,7 @@ export default class hollaex extends Exchange {
|
|
|
349
349
|
// "verified":true,
|
|
350
350
|
// "allow_deposit":true,
|
|
351
351
|
// "allow_withdrawal":true,
|
|
352
|
-
// "withdrawal_fee":0.
|
|
352
|
+
// "withdrawal_fee":0.0002,
|
|
353
353
|
// "min":0.001,
|
|
354
354
|
// "max":100000,
|
|
355
355
|
// "increment_unit":0.001,
|
package/js/src/htx.d.ts
CHANGED
|
@@ -672,6 +672,7 @@ export default class htx extends Exchange {
|
|
|
672
672
|
*/
|
|
673
673
|
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
674
674
|
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
675
|
+
nonce(): number;
|
|
675
676
|
sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
|
|
676
677
|
url: string;
|
|
677
678
|
method: string;
|
package/js/src/htx.js
CHANGED
|
@@ -953,6 +953,8 @@ export default class htx extends Exchange {
|
|
|
953
953
|
'inverse': true,
|
|
954
954
|
},
|
|
955
955
|
},
|
|
956
|
+
'timeDifference': 0,
|
|
957
|
+
'adjustForTimeDifference': false,
|
|
956
958
|
'fetchOHLCV': {
|
|
957
959
|
'useHistoricalEndpointForSpot': true,
|
|
958
960
|
},
|
|
@@ -1771,6 +1773,9 @@ export default class htx extends Exchange {
|
|
|
1771
1773
|
* @returns {object[]} an array of objects representing market data
|
|
1772
1774
|
*/
|
|
1773
1775
|
async fetchMarkets(params = {}) {
|
|
1776
|
+
if (this.options['adjustForTimeDifference']) {
|
|
1777
|
+
await this.loadTimeDifference();
|
|
1778
|
+
}
|
|
1774
1779
|
let types = undefined;
|
|
1775
1780
|
[types, params] = this.handleOptionAndParams(params, 'fetchMarkets', 'types', {});
|
|
1776
1781
|
let allMarkets = [];
|
|
@@ -7323,8 +7328,7 @@ export default class htx extends Exchange {
|
|
|
7323
7328
|
// }
|
|
7324
7329
|
//
|
|
7325
7330
|
const data = this.safeValue(response, 'data', []);
|
|
7326
|
-
|
|
7327
|
-
return this.filterByArray(result, 'symbol', symbols);
|
|
7331
|
+
return this.parseFundingRates(data, symbols);
|
|
7328
7332
|
}
|
|
7329
7333
|
/**
|
|
7330
7334
|
* @method
|
|
@@ -7452,6 +7456,9 @@ export default class htx extends Exchange {
|
|
|
7452
7456
|
'datetime': this.iso8601(timestamp),
|
|
7453
7457
|
};
|
|
7454
7458
|
}
|
|
7459
|
+
nonce() {
|
|
7460
|
+
return this.milliseconds() - this.options['timeDifference'];
|
|
7461
|
+
}
|
|
7455
7462
|
sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
|
|
7456
7463
|
let url = '/';
|
|
7457
7464
|
const query = this.omit(params, this.extractParams(path));
|
|
@@ -7466,7 +7473,7 @@ export default class htx extends Exchange {
|
|
|
7466
7473
|
url += '/' + this.implodeParams(path, params);
|
|
7467
7474
|
if (api === 'private' || api === 'v2Private') {
|
|
7468
7475
|
this.checkRequiredCredentials();
|
|
7469
|
-
const timestamp = this.ymdhms(this.
|
|
7476
|
+
const timestamp = this.ymdhms(this.nonce(), 'T');
|
|
7470
7477
|
let request = {
|
|
7471
7478
|
'SignatureMethod': 'HmacSHA256',
|
|
7472
7479
|
'SignatureVersion': '2',
|
|
@@ -7546,7 +7553,7 @@ export default class htx extends Exchange {
|
|
|
7546
7553
|
}
|
|
7547
7554
|
}
|
|
7548
7555
|
}
|
|
7549
|
-
const timestamp = this.ymdhms(this.
|
|
7556
|
+
const timestamp = this.ymdhms(this.nonce(), 'T');
|
|
7550
7557
|
let request = {
|
|
7551
7558
|
'SignatureMethod': 'HmacSHA256',
|
|
7552
7559
|
'SignatureVersion': '2',
|
|
@@ -8742,8 +8749,7 @@ export default class htx extends Exchange {
|
|
|
8742
8749
|
//
|
|
8743
8750
|
}
|
|
8744
8751
|
const data = this.safeList(response, 'data', []);
|
|
8745
|
-
|
|
8746
|
-
return this.filterByArray(result, 'symbol', symbols);
|
|
8752
|
+
return this.parseOpenInterests(data, symbols);
|
|
8747
8753
|
}
|
|
8748
8754
|
/**
|
|
8749
8755
|
* @method
|
package/js/src/hyperliquid.js
CHANGED
|
@@ -694,6 +694,11 @@ export default class hyperliquid extends Exchange {
|
|
|
694
694
|
const price = this.safeNumber(market, 'markPx', 0);
|
|
695
695
|
const pricePrecision = this.calculatePricePrecision(price, amountPrecision, 6);
|
|
696
696
|
const pricePrecisionStr = this.numberToString(pricePrecision);
|
|
697
|
+
const isDelisted = this.safeBool(market, 'isDelisted');
|
|
698
|
+
let active = true;
|
|
699
|
+
if (isDelisted !== undefined) {
|
|
700
|
+
active = !isDelisted;
|
|
701
|
+
}
|
|
697
702
|
return this.safeMarketStructure({
|
|
698
703
|
'id': baseId,
|
|
699
704
|
'symbol': symbol,
|
|
@@ -709,7 +714,7 @@ export default class hyperliquid extends Exchange {
|
|
|
709
714
|
'swap': swap,
|
|
710
715
|
'future': false,
|
|
711
716
|
'option': false,
|
|
712
|
-
'active':
|
|
717
|
+
'active': active,
|
|
713
718
|
'contract': contract,
|
|
714
719
|
'linear': true,
|
|
715
720
|
'inverse': false,
|
|
@@ -971,8 +976,7 @@ export default class hyperliquid extends Exchange {
|
|
|
971
976
|
const data = this.extend(this.safeDict(universe, i, {}), this.safeDict(assetCtxs, i, {}));
|
|
972
977
|
result.push(data);
|
|
973
978
|
}
|
|
974
|
-
|
|
975
|
-
return this.filterByArray(funding_rates, 'symbol', symbols);
|
|
979
|
+
return this.parseFundingRates(result, symbols);
|
|
976
980
|
}
|
|
977
981
|
parseFundingRate(info, market = undefined) {
|
|
978
982
|
//
|
|
@@ -1917,6 +1921,9 @@ export default class hyperliquid extends Exchange {
|
|
|
1917
1921
|
*/
|
|
1918
1922
|
async fetchFundingRateHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
1919
1923
|
await this.loadMarkets();
|
|
1924
|
+
if (symbol === undefined) {
|
|
1925
|
+
throw new ArgumentsRequired(this.id + ' fetchFundingRateHistory() requires a symbol argument');
|
|
1926
|
+
}
|
|
1920
1927
|
const market = this.market(symbol);
|
|
1921
1928
|
const request = {
|
|
1922
1929
|
'type': 'fundingHistory',
|
|
@@ -3272,8 +3279,7 @@ export default class hyperliquid extends Exchange {
|
|
|
3272
3279
|
await this.loadMarkets();
|
|
3273
3280
|
symbols = this.marketSymbols(symbols);
|
|
3274
3281
|
const swapMarkets = await this.fetchSwapMarkets();
|
|
3275
|
-
|
|
3276
|
-
return this.filterByArray(result, 'symbol', symbols);
|
|
3282
|
+
return this.parseOpenInterests(swapMarkets, symbols);
|
|
3277
3283
|
}
|
|
3278
3284
|
/**
|
|
3279
3285
|
* @method
|
|
@@ -109,6 +109,9 @@ export default class independentreserve extends Exchange {
|
|
|
109
109
|
'GetFxRates',
|
|
110
110
|
'GetOrderMinimumVolumes',
|
|
111
111
|
'GetCryptoWithdrawalFees',
|
|
112
|
+
'GetCryptoWithdrawalFees2',
|
|
113
|
+
'GetNetworks',
|
|
114
|
+
'GetPrimaryCurrencyConfig2',
|
|
112
115
|
],
|
|
113
116
|
},
|
|
114
117
|
'private': {
|
|
@@ -121,7 +124,9 @@ export default class independentreserve extends Exchange {
|
|
|
121
124
|
'GetTransactions',
|
|
122
125
|
'GetFiatBankAccounts',
|
|
123
126
|
'GetDigitalCurrencyDepositAddress',
|
|
127
|
+
'GetDigitalCurrencyDepositAddress2',
|
|
124
128
|
'GetDigitalCurrencyDepositAddresses',
|
|
129
|
+
'GetDigitalCurrencyDepositAddresses2',
|
|
125
130
|
'GetTrades',
|
|
126
131
|
'GetBrokerageFees',
|
|
127
132
|
'GetDigitalCurrencyWithdrawal',
|
|
@@ -132,6 +137,7 @@ export default class independentreserve extends Exchange {
|
|
|
132
137
|
'RequestFiatWithdrawal',
|
|
133
138
|
'WithdrawFiatCurrency',
|
|
134
139
|
'WithdrawDigitalCurrency',
|
|
140
|
+
'WithdrawCrypto',
|
|
135
141
|
],
|
|
136
142
|
},
|
|
137
143
|
},
|
|
@@ -147,6 +153,60 @@ export default class independentreserve extends Exchange {
|
|
|
147
153
|
'PLA': 'PlayChip',
|
|
148
154
|
},
|
|
149
155
|
'precisionMode': TICK_SIZE,
|
|
156
|
+
'options': {
|
|
157
|
+
'defaultNetworks': {
|
|
158
|
+
'USDT': 'Ethereum',
|
|
159
|
+
'USDC': 'Ethereum',
|
|
160
|
+
'BTC': 'Bitcoin',
|
|
161
|
+
'BCH': 'BitcoinCash',
|
|
162
|
+
'ETH': 'Ethereum',
|
|
163
|
+
'LTC': 'Litecoin',
|
|
164
|
+
'XRP': 'XrpLedger',
|
|
165
|
+
'ZRX': 'Ethereum',
|
|
166
|
+
'EOS': 'EosIo',
|
|
167
|
+
'XLM': 'Stellar',
|
|
168
|
+
'BAT': 'Ethereum',
|
|
169
|
+
'ETC': 'EthereumClassic',
|
|
170
|
+
'LINK': 'Ethereum',
|
|
171
|
+
'MKR': 'Ethereum',
|
|
172
|
+
'DAI': 'Ethereum',
|
|
173
|
+
'COMP': 'Ethereum',
|
|
174
|
+
'SNX': 'Ethereum',
|
|
175
|
+
'YFI': 'Ethereum',
|
|
176
|
+
'AAVE': 'Ethereum',
|
|
177
|
+
'GRT': 'Ethereum',
|
|
178
|
+
'DOT': 'Polkadot',
|
|
179
|
+
'UNI': 'Ethereum',
|
|
180
|
+
'ADA': 'Cardano',
|
|
181
|
+
'MATIC': 'Ethereum',
|
|
182
|
+
'DOGE': 'Dogecoin',
|
|
183
|
+
'SOL': 'Solana',
|
|
184
|
+
'MANA': 'Ethereum',
|
|
185
|
+
'SAND': 'Ethereum',
|
|
186
|
+
'SHIB': 'Ethereum',
|
|
187
|
+
'TRX': 'Tron',
|
|
188
|
+
'RENDER': 'Solana',
|
|
189
|
+
'WIF': 'Solana',
|
|
190
|
+
'RLUSD': 'Ethereum',
|
|
191
|
+
'PEPE': 'Ethereum',
|
|
192
|
+
},
|
|
193
|
+
'networks': {
|
|
194
|
+
'BTC': 'Bitcoin',
|
|
195
|
+
'ETH': 'Ethereum',
|
|
196
|
+
'BCH': 'BitcoinCash',
|
|
197
|
+
'LTC': 'Litecoin',
|
|
198
|
+
'XRP': 'XrpLedger',
|
|
199
|
+
'EOS': 'EosIo',
|
|
200
|
+
'XLM': 'Stellar',
|
|
201
|
+
'ETC': 'EthereumClassic',
|
|
202
|
+
'BSV': 'BitcoinSV',
|
|
203
|
+
'DOGE': 'Dogecoin',
|
|
204
|
+
'DOT': 'Polkadot',
|
|
205
|
+
'ADA': 'Cardano',
|
|
206
|
+
'SOL': 'Solana',
|
|
207
|
+
'TRX': 'Tron',
|
|
208
|
+
},
|
|
209
|
+
},
|
|
150
210
|
});
|
|
151
211
|
}
|
|
152
212
|
/**
|
package/js/src/kraken.js
CHANGED
|
@@ -695,7 +695,7 @@ export default class kraken extends Exchange {
|
|
|
695
695
|
if (currencyId !== undefined) {
|
|
696
696
|
if (currencyId.length > 3) {
|
|
697
697
|
if ((currencyId.indexOf('X') === 0) || (currencyId.indexOf('Z') === 0)) {
|
|
698
|
-
if (!(currencyId.indexOf('.') > 0)) {
|
|
698
|
+
if (!(currencyId.indexOf('.') > 0) && (currencyId !== 'ZEUS')) {
|
|
699
699
|
currencyId = currencyId.slice(1);
|
|
700
700
|
}
|
|
701
701
|
}
|
package/js/src/krakenfutures.js
CHANGED
|
@@ -2582,21 +2582,24 @@ export default class krakenfutures extends Exchange {
|
|
|
2582
2582
|
const marketId = this.safeString(info, 'symbol');
|
|
2583
2583
|
market = this.safeMarket(marketId, market);
|
|
2584
2584
|
const tiers = [];
|
|
2585
|
+
if (marginLevels === undefined) {
|
|
2586
|
+
return tiers;
|
|
2587
|
+
}
|
|
2585
2588
|
for (let i = 0; i < marginLevels.length; i++) {
|
|
2586
2589
|
const tier = marginLevels[i];
|
|
2587
2590
|
const initialMargin = this.safeString(tier, 'initialMargin');
|
|
2588
|
-
const
|
|
2591
|
+
const minNotional = this.safeNumber(tier, 'numNonContractUnits');
|
|
2589
2592
|
if (i !== 0) {
|
|
2590
2593
|
const tiersLength = tiers.length;
|
|
2591
2594
|
const previousTier = tiers[tiersLength - 1];
|
|
2592
|
-
previousTier['
|
|
2595
|
+
previousTier['maxNotional'] = minNotional;
|
|
2593
2596
|
}
|
|
2594
2597
|
tiers.push({
|
|
2595
2598
|
'tier': this.sum(i, 1),
|
|
2596
2599
|
'symbol': this.safeSymbol(marketId, market),
|
|
2597
2600
|
'currency': market['quote'],
|
|
2598
|
-
'
|
|
2599
|
-
'
|
|
2601
|
+
'minNotional': minNotional,
|
|
2602
|
+
'maxNotional': undefined,
|
|
2600
2603
|
'maintenanceMarginRate': this.safeNumber(tier, 'maintenanceMargin'),
|
|
2601
2604
|
'maxLeverage': this.parseNumber(Precise.stringDiv('1', initialMargin)),
|
|
2602
2605
|
'info': tier,
|
package/js/src/lbank.js
CHANGED
|
@@ -1277,8 +1277,7 @@ export default class lbank extends Exchange {
|
|
|
1277
1277
|
// "success": True,
|
|
1278
1278
|
// }
|
|
1279
1279
|
const data = this.safeList(response, 'data', []);
|
|
1280
|
-
|
|
1281
|
-
return this.filterByArray(result, 'symbol', symbols);
|
|
1280
|
+
return this.parseFundingRates(data, symbols);
|
|
1282
1281
|
}
|
|
1283
1282
|
/**
|
|
1284
1283
|
* @method
|
package/js/src/okx.d.ts
CHANGED
|
@@ -37,6 +37,7 @@ export default class okx extends Exchange {
|
|
|
37
37
|
* @returns {object} a dictionary of [account structures]{@link https://docs.ccxt.com/#/?id=account-structure} indexed by the account type
|
|
38
38
|
*/
|
|
39
39
|
fetchAccounts(params?: {}): Promise<Account[]>;
|
|
40
|
+
nonce(): number;
|
|
40
41
|
/**
|
|
41
42
|
* @method
|
|
42
43
|
* @name okx#fetchMarkets
|
package/js/src/okx.js
CHANGED
|
@@ -997,7 +997,7 @@ export default class okx extends Exchange {
|
|
|
997
997
|
'BHP': 'BHP',
|
|
998
998
|
'APT': 'Aptos',
|
|
999
999
|
'ARBONE': 'Arbitrum One',
|
|
1000
|
-
'AVAXC': 'Avalanche C',
|
|
1000
|
+
'AVAXC': 'Avalanche C-Chain',
|
|
1001
1001
|
'AVAXX': 'Avalanche X-Chain',
|
|
1002
1002
|
'ARK': 'ARK',
|
|
1003
1003
|
'AR': 'Arweave',
|
|
@@ -1116,6 +1116,8 @@ export default class okx extends Exchange {
|
|
|
1116
1116
|
'createOrder': 'privatePostTradeBatchOrders',
|
|
1117
1117
|
'createMarketBuyOrderRequiresPrice': false,
|
|
1118
1118
|
'fetchMarkets': ['spot', 'future', 'swap', 'option'],
|
|
1119
|
+
'timeDifference': 0,
|
|
1120
|
+
'adjustForTimeDifference': false,
|
|
1119
1121
|
'defaultType': 'spot',
|
|
1120
1122
|
// 'fetchBalance': {
|
|
1121
1123
|
// 'type': 'spot', // 'funding', 'trading', 'spot'
|
|
@@ -1490,6 +1492,9 @@ export default class okx extends Exchange {
|
|
|
1490
1492
|
}
|
|
1491
1493
|
return result;
|
|
1492
1494
|
}
|
|
1495
|
+
nonce() {
|
|
1496
|
+
return this.milliseconds() - this.options['timeDifference'];
|
|
1497
|
+
}
|
|
1493
1498
|
/**
|
|
1494
1499
|
* @method
|
|
1495
1500
|
* @name okx#fetchMarkets
|
|
@@ -1499,6 +1504,9 @@ export default class okx extends Exchange {
|
|
|
1499
1504
|
* @returns {object[]} an array of objects representing market data
|
|
1500
1505
|
*/
|
|
1501
1506
|
async fetchMarkets(params = {}) {
|
|
1507
|
+
if (this.options['adjustForTimeDifference']) {
|
|
1508
|
+
await this.loadTimeDifference();
|
|
1509
|
+
}
|
|
1502
1510
|
const types = this.safeList(this.options, 'fetchMarkets', []);
|
|
1503
1511
|
let promises = [];
|
|
1504
1512
|
let result = [];
|
|
@@ -1806,8 +1814,8 @@ export default class okx extends Exchange {
|
|
|
1806
1814
|
currencyActive = (active) ? active : currencyActive;
|
|
1807
1815
|
const networkId = this.safeString(chain, 'chain');
|
|
1808
1816
|
if ((networkId !== undefined) && (networkId.indexOf('-') >= 0)) {
|
|
1809
|
-
const parts = networkId.split('-');
|
|
1810
|
-
const chainPart =
|
|
1817
|
+
const parts = networkId.split('-').slice(1);
|
|
1818
|
+
const chainPart = parts.join('-');
|
|
1811
1819
|
const networkCode = this.networkIdToCode(chainPart, currency['code']);
|
|
1812
1820
|
const precision = this.parsePrecision(this.safeString(chain, 'wdTickSz'));
|
|
1813
1821
|
if (maxPrecision === undefined) {
|
|
@@ -2803,9 +2811,11 @@ export default class okx extends Exchange {
|
|
|
2803
2811
|
if (!market['spot']) {
|
|
2804
2812
|
throw new NotSupported(this.id + ' createMarketBuyOrderWithCost() supports spot markets only');
|
|
2805
2813
|
}
|
|
2806
|
-
|
|
2807
|
-
|
|
2808
|
-
|
|
2814
|
+
const req = {
|
|
2815
|
+
'createMarketBuyOrderRequiresPrice': false,
|
|
2816
|
+
'tgtCcy': 'quote_ccy',
|
|
2817
|
+
};
|
|
2818
|
+
return await this.createOrder(symbol, 'market', 'buy', cost, undefined, this.extend(req, params));
|
|
2809
2819
|
}
|
|
2810
2820
|
/**
|
|
2811
2821
|
* @method
|
|
@@ -2823,9 +2833,11 @@ export default class okx extends Exchange {
|
|
|
2823
2833
|
if (!market['spot']) {
|
|
2824
2834
|
throw new NotSupported(this.id + ' createMarketSellOrderWithCost() supports spot markets only');
|
|
2825
2835
|
}
|
|
2826
|
-
|
|
2827
|
-
|
|
2828
|
-
|
|
2836
|
+
const req = {
|
|
2837
|
+
'createMarketBuyOrderRequiresPrice': false,
|
|
2838
|
+
'tgtCcy': 'quote_ccy',
|
|
2839
|
+
};
|
|
2840
|
+
return await this.createOrder(symbol, 'market', 'sell', cost, undefined, this.extend(req, params));
|
|
2829
2841
|
}
|
|
2830
2842
|
createOrderRequest(symbol, type, side, amount, price = undefined, params = {}) {
|
|
2831
2843
|
const market = this.market(symbol);
|
|
@@ -6178,7 +6190,7 @@ export default class okx extends Exchange {
|
|
|
6178
6190
|
}
|
|
6179
6191
|
}
|
|
6180
6192
|
}
|
|
6181
|
-
const timestamp = this.iso8601(this.
|
|
6193
|
+
const timestamp = this.iso8601(this.nonce());
|
|
6182
6194
|
headers = {
|
|
6183
6195
|
'OK-ACCESS-KEY': this.apiKey,
|
|
6184
6196
|
'OK-ACCESS-PASSPHRASE': this.password,
|
package/js/src/oxfun.js
CHANGED
|
@@ -1033,8 +1033,7 @@ export default class oxfun extends Exchange {
|
|
|
1033
1033
|
// }
|
|
1034
1034
|
//
|
|
1035
1035
|
const data = this.safeList(response, 'data', []);
|
|
1036
|
-
|
|
1037
|
-
return this.filterByArray(result, 'symbol', symbols);
|
|
1036
|
+
return this.parseFundingRates(data, symbols);
|
|
1038
1037
|
}
|
|
1039
1038
|
parseFundingRate(fundingRate, market = undefined) {
|
|
1040
1039
|
//
|
package/js/src/paradex.js
CHANGED
|
@@ -269,7 +269,9 @@ export default class paradex extends Exchange {
|
|
|
269
269
|
'40111': AuthenticationError,
|
|
270
270
|
'40112': PermissionDenied, // Geo IP blocked
|
|
271
271
|
},
|
|
272
|
-
'broad': {
|
|
272
|
+
'broad': {
|
|
273
|
+
'missing or malformed jwt': AuthenticationError,
|
|
274
|
+
},
|
|
273
275
|
},
|
|
274
276
|
'precisionMode': TICK_SIZE,
|
|
275
277
|
'commonCurrencies': {},
|
|
@@ -1032,7 +1034,8 @@ export default class paradex extends Exchange {
|
|
|
1032
1034
|
}
|
|
1033
1035
|
}
|
|
1034
1036
|
const account = await this.retrieveAccount();
|
|
1035
|
-
|
|
1037
|
+
// https://docs.paradex.trade/api-reference/general-information/authentication
|
|
1038
|
+
const expires = now + 180;
|
|
1036
1039
|
const req = {
|
|
1037
1040
|
'method': 'POST',
|
|
1038
1041
|
'path': '/v1/auth',
|
package/js/src/phemex.js
CHANGED
|
@@ -293,6 +293,109 @@ export default class phemex extends Exchange {
|
|
|
293
293
|
'maker': this.parseNumber('0.001'),
|
|
294
294
|
},
|
|
295
295
|
},
|
|
296
|
+
'features': {
|
|
297
|
+
'default': {
|
|
298
|
+
'sandbox': true,
|
|
299
|
+
'createOrder': {
|
|
300
|
+
'marginMode': false,
|
|
301
|
+
'triggerPrice': true,
|
|
302
|
+
// todo
|
|
303
|
+
'triggerPriceType': {
|
|
304
|
+
'mark': true,
|
|
305
|
+
'last': true,
|
|
306
|
+
'index': true,
|
|
307
|
+
},
|
|
308
|
+
'triggerDirection': false,
|
|
309
|
+
'stopLossPrice': false,
|
|
310
|
+
'takeProfitPrice': false,
|
|
311
|
+
'attachedStopLossTakeProfit': undefined,
|
|
312
|
+
'timeInForce': {
|
|
313
|
+
'IOC': true,
|
|
314
|
+
'FOK': true,
|
|
315
|
+
'PO': true,
|
|
316
|
+
'GTD': false,
|
|
317
|
+
},
|
|
318
|
+
'hedged': false,
|
|
319
|
+
'leverage': false,
|
|
320
|
+
'marketBuyByCost': true,
|
|
321
|
+
'marketBuyRequiresPrice': false,
|
|
322
|
+
'selfTradePrevention': false,
|
|
323
|
+
'trailing': false,
|
|
324
|
+
'iceberg': false,
|
|
325
|
+
},
|
|
326
|
+
'createOrders': undefined,
|
|
327
|
+
'fetchMyTrades': {
|
|
328
|
+
'marginMode': false,
|
|
329
|
+
'limit': 200,
|
|
330
|
+
'daysBack': 100000,
|
|
331
|
+
'untilDays': 2, // todo implement
|
|
332
|
+
},
|
|
333
|
+
'fetchOrder': {
|
|
334
|
+
'marginMode': false,
|
|
335
|
+
'trigger': false,
|
|
336
|
+
'trailing': false,
|
|
337
|
+
},
|
|
338
|
+
'fetchOpenOrders': {
|
|
339
|
+
'marginMode': false,
|
|
340
|
+
'limit': undefined,
|
|
341
|
+
'trigger': false,
|
|
342
|
+
'trailing': false,
|
|
343
|
+
},
|
|
344
|
+
'fetchOrders': {
|
|
345
|
+
'marginMode': false,
|
|
346
|
+
'limit': undefined,
|
|
347
|
+
'daysBack': undefined,
|
|
348
|
+
'untilDays': undefined,
|
|
349
|
+
'trigger': false,
|
|
350
|
+
'trailing': false,
|
|
351
|
+
},
|
|
352
|
+
'fetchClosedOrders': {
|
|
353
|
+
'marginMode': false,
|
|
354
|
+
'limit': 200,
|
|
355
|
+
'daysBack': 100000,
|
|
356
|
+
'daysBackCanceled': 100000,
|
|
357
|
+
'untilDays': 2,
|
|
358
|
+
'trigger': false,
|
|
359
|
+
'trailing': false,
|
|
360
|
+
},
|
|
361
|
+
'fetchOHLCV': {
|
|
362
|
+
'limit': 1000,
|
|
363
|
+
},
|
|
364
|
+
},
|
|
365
|
+
'spot': {
|
|
366
|
+
'extends': 'default',
|
|
367
|
+
},
|
|
368
|
+
'forDerivatives': {
|
|
369
|
+
'extends': 'default',
|
|
370
|
+
'createOrder': {
|
|
371
|
+
'triggerDirection': true,
|
|
372
|
+
'attachedStopLossTakeProfit': {
|
|
373
|
+
'triggerPriceType': {
|
|
374
|
+
'mark': true,
|
|
375
|
+
'last': true,
|
|
376
|
+
'index': true,
|
|
377
|
+
},
|
|
378
|
+
'price': true,
|
|
379
|
+
},
|
|
380
|
+
'hedged': true,
|
|
381
|
+
},
|
|
382
|
+
'fetchOHLCV': {
|
|
383
|
+
'limit': 2000,
|
|
384
|
+
},
|
|
385
|
+
},
|
|
386
|
+
'swap': {
|
|
387
|
+
'linear': {
|
|
388
|
+
'extends': 'forDerivatives',
|
|
389
|
+
},
|
|
390
|
+
'inverse': {
|
|
391
|
+
'extends': 'forDerivatives',
|
|
392
|
+
},
|
|
393
|
+
},
|
|
394
|
+
'future': {
|
|
395
|
+
'linear': undefined,
|
|
396
|
+
'inverse': undefined,
|
|
397
|
+
},
|
|
398
|
+
},
|
|
296
399
|
'requiredCredentials': {
|
|
297
400
|
'apiKey': true,
|
|
298
401
|
'secret': true,
|
package/js/src/poloniex.js
CHANGED
|
@@ -274,6 +274,67 @@ export default class poloniex extends Exchange {
|
|
|
274
274
|
'futures': 'future',
|
|
275
275
|
},
|
|
276
276
|
},
|
|
277
|
+
'features': {
|
|
278
|
+
'default': {
|
|
279
|
+
'sandbox': true,
|
|
280
|
+
'createOrder': {
|
|
281
|
+
'marginMode': true,
|
|
282
|
+
'triggerPrice': true,
|
|
283
|
+
'triggerPriceType': undefined,
|
|
284
|
+
'triggerDirection': false,
|
|
285
|
+
'stopLossPrice': false,
|
|
286
|
+
'takeProfitPrice': false,
|
|
287
|
+
'attachedStopLossTakeProfit': undefined,
|
|
288
|
+
'timeInForce': {
|
|
289
|
+
'IOC': true,
|
|
290
|
+
'FOK': true,
|
|
291
|
+
'PO': false,
|
|
292
|
+
'GTD': false,
|
|
293
|
+
},
|
|
294
|
+
'hedged': false,
|
|
295
|
+
'leverage': false,
|
|
296
|
+
'marketBuyByCost': true,
|
|
297
|
+
'marketBuyRequiresPrice': false,
|
|
298
|
+
'selfTradePrevention': true,
|
|
299
|
+
'trailing': false,
|
|
300
|
+
'iceberg': false,
|
|
301
|
+
},
|
|
302
|
+
'createOrders': undefined,
|
|
303
|
+
'fetchMyTrades': {
|
|
304
|
+
'marginMode': false,
|
|
305
|
+
'limit': 1000,
|
|
306
|
+
'daysBack': 100000,
|
|
307
|
+
'untilDays': 100000,
|
|
308
|
+
},
|
|
309
|
+
'fetchOrder': {
|
|
310
|
+
'marginMode': false,
|
|
311
|
+
'trigger': false,
|
|
312
|
+
'trailing': false,
|
|
313
|
+
},
|
|
314
|
+
'fetchOpenOrders': {
|
|
315
|
+
'marginMode': false,
|
|
316
|
+
'limit': 2000,
|
|
317
|
+
'trigger': false,
|
|
318
|
+
'trailing': false,
|
|
319
|
+
},
|
|
320
|
+
'fetchOrders': undefined,
|
|
321
|
+
'fetchClosedOrders': undefined,
|
|
322
|
+
'fetchOHLCV': {
|
|
323
|
+
'limit': 500,
|
|
324
|
+
},
|
|
325
|
+
},
|
|
326
|
+
'spot': {
|
|
327
|
+
'extends': 'default',
|
|
328
|
+
},
|
|
329
|
+
'swap': {
|
|
330
|
+
'linear': undefined,
|
|
331
|
+
'inverse': undefined,
|
|
332
|
+
},
|
|
333
|
+
'future': {
|
|
334
|
+
'linear': undefined,
|
|
335
|
+
'inverse': undefined,
|
|
336
|
+
},
|
|
337
|
+
},
|
|
277
338
|
'precisionMode': TICK_SIZE,
|
|
278
339
|
'exceptions': {
|
|
279
340
|
'exact': {
|