ccxt 4.4.95 → 4.4.97
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 +18 -18
- package/dist/ccxt.browser.min.js +3 -3
- package/dist/cjs/ccxt.js +4 -1
- package/dist/cjs/src/abstract/alpaca.js +1 -1
- package/dist/cjs/src/abstract/apex.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/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/bittrade.js +1 -1
- package/dist/cjs/src/abstract/bitvavo.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/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/cryptomus.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/derive.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/foxbit.js +9 -0
- 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/hyperliquid.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/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/mercado.js +1 -1
- package/dist/cjs/src/abstract/mexc.js +1 -1
- package/dist/cjs/src/abstract/modetrade.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/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/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/alpaca.js +1 -1
- package/dist/cjs/src/apex.js +3 -3
- package/dist/cjs/src/ascendex.js +4 -4
- package/dist/cjs/src/base/Exchange.js +69 -17
- 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 +36 -9
- 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 +1 -1
- package/dist/cjs/src/binance.js +96 -35
- package/dist/cjs/src/binancecoinm.js +6 -2
- package/dist/cjs/src/binanceus.js +4 -2
- package/dist/cjs/src/binanceusdm.js +4 -2
- package/dist/cjs/src/bingx.js +2 -2
- package/dist/cjs/src/bit2c.js +1 -1
- package/dist/cjs/src/bitbank.js +1 -1
- package/dist/cjs/src/bitbns.js +1 -1
- package/dist/cjs/src/bitfinex.js +1 -1
- package/dist/cjs/src/bitflyer.js +1 -1
- package/dist/cjs/src/bitget.js +32 -144
- package/dist/cjs/src/bithumb.js +1 -1
- package/dist/cjs/src/bitmart.js +3 -3
- package/dist/cjs/src/bitmex.js +1 -1
- package/dist/cjs/src/bitopro.js +1 -1
- package/dist/cjs/src/bitrue.js +16 -9
- package/dist/cjs/src/bitso.js +1 -1
- package/dist/cjs/src/bitstamp.js +1 -1
- package/dist/cjs/src/bitteam.js +1 -1
- package/dist/cjs/src/bittrade.js +1 -1
- package/dist/cjs/src/blockchaincom.js +1 -1
- package/dist/cjs/src/blofin.js +1 -1
- package/dist/cjs/src/btcalpha.js +1 -1
- package/dist/cjs/src/btcbox.js +1 -1
- package/dist/cjs/src/btcmarkets.js +1 -1
- package/dist/cjs/src/btcturk.js +1 -1
- package/dist/cjs/src/bybit.js +17 -6
- package/dist/cjs/src/cex.js +1 -1
- package/dist/cjs/src/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/coinbaseexchange.js +4 -2
- package/dist/cjs/src/coincatch.js +1 -1
- package/dist/cjs/src/coincheck.js +1 -1
- package/dist/cjs/src/coinex.js +1 -1
- package/dist/cjs/src/coinmate.js +1 -1
- package/dist/cjs/src/coinmetro.js +1 -1
- package/dist/cjs/src/coinone.js +1 -1
- package/dist/cjs/src/coinsph.js +1 -0
- package/dist/cjs/src/coinspot.js +37 -2
- package/dist/cjs/src/cryptocom.js +79 -3
- package/dist/cjs/src/cryptomus.js +42 -2
- package/dist/cjs/src/defx.js +2 -2
- package/dist/cjs/src/delta.js +1 -1
- package/dist/cjs/src/deribit.js +1 -1
- package/dist/cjs/src/derive.js +2 -2
- package/dist/cjs/src/digifinex.js +1 -1
- package/dist/cjs/src/ellipx.js +41 -1
- package/dist/cjs/src/exmo.js +2 -2
- package/dist/cjs/src/fmfwio.js +1 -1
- package/dist/cjs/src/foxbit.js +2016 -0
- package/dist/cjs/src/gate.js +2 -3
- package/dist/cjs/src/gateio.js +1 -1
- package/dist/cjs/src/gemini.js +1 -1
- package/dist/cjs/src/hashkey.js +40 -1
- package/dist/cjs/src/hitbtc.js +1 -0
- package/dist/cjs/src/hollaex.js +1 -1
- package/dist/cjs/src/htx.js +1 -1
- package/dist/cjs/src/huobi.js +1 -1
- package/dist/cjs/src/hyperliquid.js +45 -30
- package/dist/cjs/src/independentreserve.js +36 -1
- package/dist/cjs/src/indodax.js +35 -1
- package/dist/cjs/src/kraken.js +1 -1
- package/dist/cjs/src/krakenfutures.js +1 -1
- package/dist/cjs/src/kucoin.js +4 -3
- package/dist/cjs/src/kucoinfutures.js +4 -3
- package/dist/cjs/src/latoken.js +43 -1
- package/dist/cjs/src/lbank.js +1 -1
- package/dist/cjs/src/luno.js +37 -1
- package/dist/cjs/src/mercado.js +35 -1
- package/dist/cjs/src/mexc.js +32 -39
- package/dist/cjs/src/modetrade.js +4 -4
- 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 +2 -2
- package/dist/cjs/src/okx.js +13 -4
- package/dist/cjs/src/okxus.js +1 -1
- package/dist/cjs/src/onetrading.js +2 -2
- package/dist/cjs/src/oxfun.js +3 -2
- package/dist/cjs/src/p2b.js +1 -1
- package/dist/cjs/src/paradex.js +3 -3
- package/dist/cjs/src/paymium.js +1 -1
- package/dist/cjs/src/phemex.js +36 -31
- package/dist/cjs/src/poloniex.js +1 -1
- package/dist/cjs/src/pro/alpaca.js +1 -1
- package/dist/cjs/src/pro/apex.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 +4 -2
- package/dist/cjs/src/pro/binanceus.js +4 -2
- package/dist/cjs/src/pro/binanceusdm.js +4 -2
- package/dist/cjs/src/pro/bingx.js +1 -1
- package/dist/cjs/src/pro/bitfinex.js +1 -1
- package/dist/cjs/src/pro/bitget.js +1 -1
- 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/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 +34 -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/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/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/okxus.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/probit.js +1 -1
- package/dist/cjs/src/pro/tradeogre.js +1 -1
- package/dist/cjs/src/pro/upbit.js +1 -1
- package/dist/cjs/src/pro/whitebit.js +1 -1
- package/dist/cjs/src/pro/xt.js +1 -1
- 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/static_dependencies/zklink/zklink-sdk-web.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 +1 -1
- package/dist/cjs/src/vertex.js +4 -3
- package/dist/cjs/src/wavesexchange.js +1 -1
- package/dist/cjs/src/whitebit.js +1 -1
- package/dist/cjs/src/woo.js +9 -4
- package/dist/cjs/src/woofipro.js +3 -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 +5 -2
- package/js/ccxt.js +4 -2
- package/js/src/abstract/binance.d.ts +3 -0
- package/js/src/abstract/binancecoinm.d.ts +3 -0
- package/js/src/abstract/binanceus.d.ts +3 -0
- package/js/src/abstract/binanceusdm.d.ts +3 -0
- package/js/src/abstract/foxbit.d.ts +29 -0
- package/js/src/abstract/foxbit.js +5 -0
- package/js/src/abstract/phemex.d.ts +1 -0
- package/js/src/apex.d.ts +2 -2
- package/js/src/apex.js +2 -2
- package/js/src/ascendex.d.ts +1 -1
- package/js/src/ascendex.js +3 -3
- package/js/src/base/Exchange.d.ts +20 -11
- package/js/src/base/Exchange.js +69 -17
- package/js/src/base/functions/number.js +30 -9
- package/js/src/binance.d.ts +1 -0
- package/js/src/binance.js +95 -34
- package/js/src/binancecoinm.js +5 -1
- package/js/src/binanceus.js +3 -1
- package/js/src/binanceusdm.js +3 -1
- package/js/src/bingx.js +1 -1
- package/js/src/bitget.js +31 -143
- package/js/src/bitmart.d.ts +2 -2
- package/js/src/bitmart.js +2 -2
- package/js/src/bitrue.js +15 -8
- package/js/src/bittrade.d.ts +1 -1
- package/js/src/blofin.d.ts +1 -1
- package/js/src/bybit.d.ts +1 -1
- package/js/src/bybit.js +16 -5
- package/js/src/coinbaseexchange.d.ts +3 -3
- package/js/src/coinbaseexchange.js +4 -2
- package/js/src/coinbaseinternational.d.ts +2 -2
- package/js/src/coinspot.d.ts +1 -1
- package/js/src/coinspot.js +36 -1
- package/js/src/cryptocom.d.ts +13 -2
- package/js/src/cryptocom.js +78 -2
- package/js/src/cryptomus.d.ts +1 -1
- package/js/src/cryptomus.js +41 -1
- package/js/src/defx.d.ts +2 -2
- package/js/src/defx.js +1 -1
- package/js/src/derive.d.ts +2 -2
- package/js/src/derive.js +1 -1
- package/js/src/digifinex.d.ts +1 -1
- package/js/src/ellipx.js +40 -0
- package/js/src/exmo.js +1 -1
- package/js/src/foxbit.d.ts +352 -0
- package/js/src/foxbit.js +2010 -0
- package/js/src/gate.js +1 -2
- package/js/src/hashkey.js +39 -0
- package/js/src/htx.d.ts +2 -2
- package/js/src/hyperliquid.d.ts +2 -2
- package/js/src/hyperliquid.js +44 -29
- package/js/src/independentreserve.js +35 -0
- package/js/src/indodax.js +34 -0
- package/js/src/krakenfutures.d.ts +1 -1
- package/js/src/kucoin.d.ts +1 -1
- package/js/src/kucoin.js +3 -2
- package/js/src/kucoinfutures.d.ts +3 -3
- package/js/src/kucoinfutures.js +3 -2
- package/js/src/latoken.js +42 -0
- package/js/src/luno.js +36 -0
- package/js/src/mercado.js +34 -0
- package/js/src/mexc.d.ts +1 -2
- package/js/src/mexc.js +31 -38
- package/js/src/modetrade.d.ts +2 -4
- package/js/src/modetrade.js +3 -3
- package/js/src/ndax.d.ts +1 -1
- package/js/src/okcoin.d.ts +1 -1
- package/js/src/okcoin.js +1 -1
- package/js/src/okx.d.ts +1 -1
- package/js/src/okx.js +12 -3
- package/js/src/onetrading.d.ts +1 -1
- package/js/src/onetrading.js +1 -1
- package/js/src/oxfun.d.ts +1 -1
- package/js/src/oxfun.js +2 -1
- package/js/src/paradex.d.ts +1 -1
- package/js/src/paradex.js +2 -2
- package/js/src/phemex.js +36 -31
- package/js/src/pro/binancecoinm.js +3 -1
- package/js/src/pro/binanceus.js +3 -1
- package/js/src/pro/binanceusdm.js +3 -1
- package/js/src/pro/bybit.d.ts +11 -1
- package/js/src/pro/bybit.js +33 -0
- package/js/src/static_dependencies/fflake/browser.d.ts +5 -5
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +1 -1
- package/js/src/static_dependencies/noble-curves/abstract/weierstrass.d.ts +1 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/index.d.ts +1 -1
- package/js/src/timex.d.ts +1 -1
- package/js/src/vertex.d.ts +2 -2
- package/js/src/vertex.js +3 -2
- package/js/src/woo.d.ts +1 -1
- package/js/src/woo.js +8 -3
- package/js/src/woofipro.d.ts +2 -4
- package/js/src/woofipro.js +2 -2
- package/package.json +1 -2
package/js/src/phemex.js
CHANGED
|
@@ -262,6 +262,7 @@ export default class phemex extends Exchange {
|
|
|
262
262
|
// swap
|
|
263
263
|
'orders/replace': 1,
|
|
264
264
|
'g-orders/replace': 1,
|
|
265
|
+
'g-orders/create': 1,
|
|
265
266
|
'positions/leverage': 5,
|
|
266
267
|
'g-positions/leverage': 5,
|
|
267
268
|
'g-positions/switch-pos-mode-sync': 5,
|
|
@@ -1216,7 +1217,8 @@ export default class phemex extends Exchange {
|
|
|
1216
1217
|
// 'id': 123456789, // optional request id
|
|
1217
1218
|
};
|
|
1218
1219
|
let response = undefined;
|
|
1219
|
-
|
|
1220
|
+
const isStableSettled = (market['settle'] === 'USDT') || (market['settle'] === 'USDC');
|
|
1221
|
+
if (market['linear'] && isStableSettled) {
|
|
1220
1222
|
response = await this.v2GetMdV2Orderbook(this.extend(request, params));
|
|
1221
1223
|
}
|
|
1222
1224
|
else {
|
|
@@ -1360,7 +1362,8 @@ export default class phemex extends Exchange {
|
|
|
1360
1362
|
};
|
|
1361
1363
|
const until = this.safeInteger2(params, 'until', 'to');
|
|
1362
1364
|
params = this.omit(params, ['until']);
|
|
1363
|
-
const
|
|
1365
|
+
const isStableSettled = (market['settle'] === 'USDT') || (market['settle'] === 'USDC');
|
|
1366
|
+
const usesSpecialFromToEndpoint = ((market['linear'] || isStableSettled)) && ((since !== undefined) || (until !== undefined));
|
|
1364
1367
|
let maxLimit = 1000;
|
|
1365
1368
|
if (usesSpecialFromToEndpoint) {
|
|
1366
1369
|
maxLimit = 2000;
|
|
@@ -1370,7 +1373,7 @@ export default class phemex extends Exchange {
|
|
|
1370
1373
|
}
|
|
1371
1374
|
request['limit'] = Math.min(limit, maxLimit);
|
|
1372
1375
|
let response = undefined;
|
|
1373
|
-
if (market['linear'] ||
|
|
1376
|
+
if (market['linear'] || isStableSettled) {
|
|
1374
1377
|
if ((until !== undefined) || (since !== undefined)) {
|
|
1375
1378
|
const candleDuration = this.parseTimeframe(timeframe);
|
|
1376
1379
|
if (since !== undefined) {
|
|
@@ -1645,7 +1648,8 @@ export default class phemex extends Exchange {
|
|
|
1645
1648
|
// 'id': 123456789, // optional request id
|
|
1646
1649
|
};
|
|
1647
1650
|
let response = undefined;
|
|
1648
|
-
|
|
1651
|
+
const isStableSettled = (market['settle'] === 'USDT') || (market['settle'] === 'USDC');
|
|
1652
|
+
if (market['linear'] && isStableSettled) {
|
|
1649
1653
|
response = await this.v2GetMdV2Trade(this.extend(request, params));
|
|
1650
1654
|
}
|
|
1651
1655
|
else {
|
|
@@ -1890,7 +1894,7 @@ export default class phemex extends Exchange {
|
|
|
1890
1894
|
}
|
|
1891
1895
|
id = this.safeString2(trade, 'execId', 'execID');
|
|
1892
1896
|
orderId = this.safeString(trade, 'orderID');
|
|
1893
|
-
if (market['settle'] === 'USDT') {
|
|
1897
|
+
if (market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
1894
1898
|
const sideId = this.safeStringLower(trade, 'side');
|
|
1895
1899
|
if ((sideId === 'buy') || (sideId === 'sell')) {
|
|
1896
1900
|
side = sideId;
|
|
@@ -2665,6 +2669,7 @@ export default class phemex extends Exchange {
|
|
|
2665
2669
|
const stopLossDefined = (stopLoss !== undefined);
|
|
2666
2670
|
const takeProfit = this.safeValue(params, 'takeProfit');
|
|
2667
2671
|
const takeProfitDefined = (takeProfit !== undefined);
|
|
2672
|
+
const isStableSettled = (market['settle'] === 'USDT') || (market['settle'] === 'USDC');
|
|
2668
2673
|
if (clientOrderId === undefined) {
|
|
2669
2674
|
const brokerId = this.safeString(this.options, 'brokerId', 'CCXT123456');
|
|
2670
2675
|
if (brokerId !== undefined) {
|
|
@@ -2677,7 +2682,7 @@ export default class phemex extends Exchange {
|
|
|
2677
2682
|
}
|
|
2678
2683
|
const triggerPrice = this.safeStringN(params, ['stopPx', 'stopPrice', 'triggerPrice']);
|
|
2679
2684
|
if (triggerPrice !== undefined) {
|
|
2680
|
-
if (
|
|
2685
|
+
if (isStableSettled) {
|
|
2681
2686
|
request['stopPxRp'] = this.priceToPrecision(symbol, triggerPrice);
|
|
2682
2687
|
}
|
|
2683
2688
|
else {
|
|
@@ -2744,7 +2749,7 @@ export default class phemex extends Exchange {
|
|
|
2744
2749
|
}
|
|
2745
2750
|
posSide = this.capitalize(posSide);
|
|
2746
2751
|
request['posSide'] = posSide;
|
|
2747
|
-
if (
|
|
2752
|
+
if (isStableSettled) {
|
|
2748
2753
|
request['orderQtyRq'] = amount;
|
|
2749
2754
|
}
|
|
2750
2755
|
else {
|
|
@@ -2783,7 +2788,7 @@ export default class phemex extends Exchange {
|
|
|
2783
2788
|
if (stopLossTriggerPrice === undefined) {
|
|
2784
2789
|
throw new InvalidOrder(this.id + ' createOrder() requires a trigger price in params["stopLoss"]["triggerPrice"] for a stop loss order');
|
|
2785
2790
|
}
|
|
2786
|
-
if (
|
|
2791
|
+
if (isStableSettled) {
|
|
2787
2792
|
request['stopLossRp'] = this.priceToPrecision(symbol, stopLossTriggerPrice);
|
|
2788
2793
|
}
|
|
2789
2794
|
else {
|
|
@@ -2803,7 +2808,7 @@ export default class phemex extends Exchange {
|
|
|
2803
2808
|
if (takeProfitTriggerPrice === undefined) {
|
|
2804
2809
|
throw new InvalidOrder(this.id + ' createOrder() requires a trigger price in params["takeProfit"]["triggerPrice"] for a take profit order');
|
|
2805
2810
|
}
|
|
2806
|
-
if (
|
|
2811
|
+
if (isStableSettled) {
|
|
2807
2812
|
request['takeProfitRp'] = this.priceToPrecision(symbol, takeProfitTriggerPrice);
|
|
2808
2813
|
}
|
|
2809
2814
|
else {
|
|
@@ -2821,7 +2826,7 @@ export default class phemex extends Exchange {
|
|
|
2821
2826
|
}
|
|
2822
2827
|
}
|
|
2823
2828
|
if ((type === 'Limit') || (type === 'StopLimit') || (type === 'LimitIfTouched')) {
|
|
2824
|
-
if (
|
|
2829
|
+
if (isStableSettled) {
|
|
2825
2830
|
request['priceRp'] = this.priceToPrecision(symbol, price);
|
|
2826
2831
|
}
|
|
2827
2832
|
else {
|
|
@@ -2831,7 +2836,7 @@ export default class phemex extends Exchange {
|
|
|
2831
2836
|
}
|
|
2832
2837
|
const takeProfitPrice = this.safeString(params, 'takeProfitPrice');
|
|
2833
2838
|
if (takeProfitPrice !== undefined) {
|
|
2834
|
-
if (
|
|
2839
|
+
if (isStableSettled) {
|
|
2835
2840
|
request['takeProfitRp'] = this.priceToPrecision(symbol, takeProfitPrice);
|
|
2836
2841
|
}
|
|
2837
2842
|
else {
|
|
@@ -2841,7 +2846,7 @@ export default class phemex extends Exchange {
|
|
|
2841
2846
|
}
|
|
2842
2847
|
const stopLossPrice = this.safeString(params, 'stopLossPrice');
|
|
2843
2848
|
if (stopLossPrice !== undefined) {
|
|
2844
|
-
if (
|
|
2849
|
+
if (isStableSettled) {
|
|
2845
2850
|
request['stopLossRp'] = this.priceToPrecision(symbol, stopLossPrice);
|
|
2846
2851
|
}
|
|
2847
2852
|
else {
|
|
@@ -2850,7 +2855,7 @@ export default class phemex extends Exchange {
|
|
|
2850
2855
|
params = this.omit(params, 'stopLossPrice');
|
|
2851
2856
|
}
|
|
2852
2857
|
let response = undefined;
|
|
2853
|
-
if (
|
|
2858
|
+
if (isStableSettled) {
|
|
2854
2859
|
response = await this.privatePostGOrders(this.extend(request, params));
|
|
2855
2860
|
}
|
|
2856
2861
|
else if (market['contract']) {
|
|
@@ -2961,7 +2966,7 @@ export default class phemex extends Exchange {
|
|
|
2961
2966
|
};
|
|
2962
2967
|
const clientOrderId = this.safeString2(params, 'clientOrderId', 'clOrdID');
|
|
2963
2968
|
params = this.omit(params, ['clientOrderId', 'clOrdID']);
|
|
2964
|
-
const
|
|
2969
|
+
const isStableSettled = (market['settle'] === 'USDT') || (market['settle'] === 'USDC');
|
|
2965
2970
|
if (clientOrderId !== undefined) {
|
|
2966
2971
|
request['clOrdID'] = clientOrderId;
|
|
2967
2972
|
}
|
|
@@ -2969,7 +2974,7 @@ export default class phemex extends Exchange {
|
|
|
2969
2974
|
request['orderID'] = id;
|
|
2970
2975
|
}
|
|
2971
2976
|
if (price !== undefined) {
|
|
2972
|
-
if (
|
|
2977
|
+
if (isStableSettled) {
|
|
2973
2978
|
request['priceRp'] = this.priceToPrecision(market['symbol'], price);
|
|
2974
2979
|
}
|
|
2975
2980
|
else {
|
|
@@ -2983,7 +2988,7 @@ export default class phemex extends Exchange {
|
|
|
2983
2988
|
request['baseQtyEV'] = finalQty;
|
|
2984
2989
|
}
|
|
2985
2990
|
else if (amount !== undefined) {
|
|
2986
|
-
if (
|
|
2991
|
+
if (isStableSettled) {
|
|
2987
2992
|
request['orderQtyRq'] = this.amountToPrecision(market['symbol'], amount);
|
|
2988
2993
|
}
|
|
2989
2994
|
else {
|
|
@@ -2992,7 +2997,7 @@ export default class phemex extends Exchange {
|
|
|
2992
2997
|
}
|
|
2993
2998
|
const triggerPrice = this.safeStringN(params, ['triggerPrice', 'stopPx', 'stopPrice']);
|
|
2994
2999
|
if (triggerPrice !== undefined) {
|
|
2995
|
-
if (
|
|
3000
|
+
if (isStableSettled) {
|
|
2996
3001
|
request['stopPxRp'] = this.priceToPrecision(symbol, triggerPrice);
|
|
2997
3002
|
}
|
|
2998
3003
|
else {
|
|
@@ -3001,7 +3006,7 @@ export default class phemex extends Exchange {
|
|
|
3001
3006
|
}
|
|
3002
3007
|
params = this.omit(params, ['triggerPrice', 'stopPx', 'stopPrice']);
|
|
3003
3008
|
let response = undefined;
|
|
3004
|
-
if (
|
|
3009
|
+
if (isStableSettled) {
|
|
3005
3010
|
const posSide = this.safeString(params, 'posSide');
|
|
3006
3011
|
if (posSide === undefined) {
|
|
3007
3012
|
request['posSide'] = 'Merged';
|
|
@@ -3046,7 +3051,7 @@ export default class phemex extends Exchange {
|
|
|
3046
3051
|
request['orderID'] = id;
|
|
3047
3052
|
}
|
|
3048
3053
|
let response = undefined;
|
|
3049
|
-
if (market['settle'] === 'USDT') {
|
|
3054
|
+
if (market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
3050
3055
|
const posSide = this.safeString(params, 'posSide');
|
|
3051
3056
|
if (posSide === undefined) {
|
|
3052
3057
|
request['posSide'] = 'Merged';
|
|
@@ -3088,7 +3093,7 @@ export default class phemex extends Exchange {
|
|
|
3088
3093
|
request['untriggerred'] = trigger;
|
|
3089
3094
|
}
|
|
3090
3095
|
let response = undefined;
|
|
3091
|
-
if (market['settle'] === 'USDT') {
|
|
3096
|
+
if (market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
3092
3097
|
response = await this.privateDeleteGOrdersAll(this.extend(request, params));
|
|
3093
3098
|
//
|
|
3094
3099
|
// {
|
|
@@ -3154,7 +3159,7 @@ export default class phemex extends Exchange {
|
|
|
3154
3159
|
request['orderID'] = id;
|
|
3155
3160
|
}
|
|
3156
3161
|
let response = undefined;
|
|
3157
|
-
if (market['settle'] === 'USDT') {
|
|
3162
|
+
if (market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
3158
3163
|
response = await this.privateGetApiDataGFuturesOrdersByOrderId(this.extend(request, params));
|
|
3159
3164
|
}
|
|
3160
3165
|
else if (market['spot']) {
|
|
@@ -3210,7 +3215,7 @@ export default class phemex extends Exchange {
|
|
|
3210
3215
|
request['limit'] = limit;
|
|
3211
3216
|
}
|
|
3212
3217
|
let response = undefined;
|
|
3213
|
-
if (market['settle'] === 'USDT') {
|
|
3218
|
+
if (market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
3214
3219
|
request['currency'] = market['settle'];
|
|
3215
3220
|
response = await this.privateGetExchangeOrderV2OrderList(this.extend(request, params));
|
|
3216
3221
|
}
|
|
@@ -3249,7 +3254,7 @@ export default class phemex extends Exchange {
|
|
|
3249
3254
|
};
|
|
3250
3255
|
let response = undefined;
|
|
3251
3256
|
try {
|
|
3252
|
-
if (market['settle'] === 'USDT') {
|
|
3257
|
+
if (market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
3253
3258
|
response = await this.privateGetGOrdersActiveList(this.extend(request, params));
|
|
3254
3259
|
}
|
|
3255
3260
|
else if (market['swap']) {
|
|
@@ -4114,8 +4119,8 @@ export default class phemex extends Exchange {
|
|
|
4114
4119
|
request['limit'] = limit;
|
|
4115
4120
|
}
|
|
4116
4121
|
let response = undefined;
|
|
4117
|
-
const
|
|
4118
|
-
if (
|
|
4122
|
+
const isStableSettled = market['settle'] === 'USDT' || market['settle'] === 'USDC';
|
|
4123
|
+
if (isStableSettled) {
|
|
4119
4124
|
response = await this.privateGetApiDataGFuturesFundingFees(this.extend(request, params));
|
|
4120
4125
|
}
|
|
4121
4126
|
else {
|
|
@@ -4168,8 +4173,8 @@ export default class phemex extends Exchange {
|
|
|
4168
4173
|
return value;
|
|
4169
4174
|
}
|
|
4170
4175
|
// it was confirmed by phemex support, that USDT contracts use direct amounts in funding fees, while USD & INVERSE needs 'valueScale'
|
|
4171
|
-
const
|
|
4172
|
-
if (!
|
|
4176
|
+
const isStableSettled = market['settle'] === 'USDT' || market['settle'] === 'USDC';
|
|
4177
|
+
if (!isStableSettled) {
|
|
4173
4178
|
const currency = this.safeCurrency(currencyCode);
|
|
4174
4179
|
const scale = this.safeString(currency['info'], 'valueScale');
|
|
4175
4180
|
const tickPrecision = this.parsePrecision(scale);
|
|
@@ -4368,8 +4373,8 @@ export default class phemex extends Exchange {
|
|
|
4368
4373
|
}
|
|
4369
4374
|
await this.loadMarkets();
|
|
4370
4375
|
const market = this.market(symbol);
|
|
4371
|
-
if (!market['swap'] || market['settle'] === 'USDT') {
|
|
4372
|
-
throw new BadSymbol(this.id + ' setMarginMode() supports swap (non USDT based) contracts only');
|
|
4376
|
+
if (!market['swap'] || market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
4377
|
+
throw new BadSymbol(this.id + ' setMarginMode() supports swap (non USDT/USDC based) contracts only');
|
|
4373
4378
|
}
|
|
4374
4379
|
marginMode = marginMode.toLowerCase();
|
|
4375
4380
|
if (marginMode !== 'isolated' && marginMode !== 'cross') {
|
|
@@ -4625,7 +4630,7 @@ export default class phemex extends Exchange {
|
|
|
4625
4630
|
'symbol': market['id'],
|
|
4626
4631
|
};
|
|
4627
4632
|
let response = undefined;
|
|
4628
|
-
if (market['settle'] === 'USDT') {
|
|
4633
|
+
if (market['settle'] === 'USDT' || market['settle'] === 'USDC') {
|
|
4629
4634
|
if (!isHedged && longLeverageRr === undefined && shortLeverageRr === undefined) {
|
|
4630
4635
|
request['leverageRr'] = leverage;
|
|
4631
4636
|
}
|
|
@@ -4867,7 +4872,7 @@ export default class phemex extends Exchange {
|
|
|
4867
4872
|
}
|
|
4868
4873
|
await this.loadMarkets();
|
|
4869
4874
|
const market = this.market(symbol);
|
|
4870
|
-
const isUsdtSettled = market['settle'] === 'USDT';
|
|
4875
|
+
const isUsdtSettled = market['settle'] === 'USDT' || market['settle'] === 'USDC';
|
|
4871
4876
|
if (!market['swap']) {
|
|
4872
4877
|
throw new BadRequest(this.id + ' fetchFundingRateHistory() supports swap contracts only');
|
|
4873
4878
|
}
|
package/js/src/pro/binanceus.js
CHANGED
|
@@ -12,7 +12,9 @@ export default class binanceusdm extends binance {
|
|
|
12
12
|
'doc': 'https://developers.binance.com/en',
|
|
13
13
|
},
|
|
14
14
|
'options': {
|
|
15
|
-
'fetchMarkets':
|
|
15
|
+
'fetchMarkets': {
|
|
16
|
+
'types': ['linear'],
|
|
17
|
+
},
|
|
16
18
|
'defaultSubType': 'linear',
|
|
17
19
|
},
|
|
18
20
|
// https://binance-docs.github.io/apidocs/futures/en/#error-codes
|
package/js/src/pro/bybit.d.ts
CHANGED
|
@@ -320,6 +320,16 @@ export default class bybit extends bybitRest {
|
|
|
320
320
|
setPositionsCache(client: Client, symbols?: Strings): void;
|
|
321
321
|
loadPositionsSnapshot(client: any, messageHash: any): Promise<void>;
|
|
322
322
|
handlePositions(client: any, message: any): void;
|
|
323
|
+
/**
|
|
324
|
+
* @method
|
|
325
|
+
* @name bybit#unWatchPositions
|
|
326
|
+
* @description unWatches all open positions
|
|
327
|
+
* @see https://bybit-exchange.github.io/docs/v5/websocket/private/position
|
|
328
|
+
* @param {string[]} [symbols] list of unified market symbols
|
|
329
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
330
|
+
* @returns {object} status of the unwatch request
|
|
331
|
+
*/
|
|
332
|
+
unWatchPositions(symbols?: Strings, params?: {}): Promise<any>;
|
|
323
333
|
/**
|
|
324
334
|
* @method
|
|
325
335
|
* @name bybit#watchLiquidations
|
|
@@ -372,7 +382,7 @@ export default class bybit extends bybitRest {
|
|
|
372
382
|
handleBalance(client: Client, message: any): void;
|
|
373
383
|
parseWsBalance(balance: any, accountType?: any): void;
|
|
374
384
|
watchTopics(url: any, messageHashes: any, topics: any, params?: {}): Promise<any>;
|
|
375
|
-
unWatchTopics(url: string, topic: string, symbols:
|
|
385
|
+
unWatchTopics(url: string, topic: string, symbols: Strings, messageHashes: string[], subMessageHashes: string[], topics: any, params?: {}, subExtension?: {}): Promise<any>;
|
|
376
386
|
authenticate(url: any, params?: {}): Promise<any>;
|
|
377
387
|
handleErrorMessage(client: Client, message: any): boolean;
|
|
378
388
|
handleMessage(client: Client, message: any): void;
|
package/js/src/pro/bybit.js
CHANGED
|
@@ -35,6 +35,17 @@ export default class bybit extends bybitRest {
|
|
|
35
35
|
'watchTrades': true,
|
|
36
36
|
'watchPositions': true,
|
|
37
37
|
'watchTradesForSymbols': true,
|
|
38
|
+
'unWatchTicker': true,
|
|
39
|
+
'unWatchTickers': true,
|
|
40
|
+
'unWatchOHLCV': true,
|
|
41
|
+
'unWatchOHLCVForSymbols': true,
|
|
42
|
+
'unWatchOrderBook': true,
|
|
43
|
+
'unWatchOrderBookForSymbols': true,
|
|
44
|
+
'unWatchTrades': true,
|
|
45
|
+
'unWatchTradesForSymbols': true,
|
|
46
|
+
'unWatchMyTrades': true,
|
|
47
|
+
'unWatchOrders': true,
|
|
48
|
+
'unWatchPositions': true,
|
|
38
49
|
},
|
|
39
50
|
'urls': {
|
|
40
51
|
'api': {
|
|
@@ -1550,6 +1561,28 @@ export default class bybit extends bybitRest {
|
|
|
1550
1561
|
}
|
|
1551
1562
|
client.resolve(newPositions, 'positions');
|
|
1552
1563
|
}
|
|
1564
|
+
/**
|
|
1565
|
+
* @method
|
|
1566
|
+
* @name bybit#unWatchPositions
|
|
1567
|
+
* @description unWatches all open positions
|
|
1568
|
+
* @see https://bybit-exchange.github.io/docs/v5/websocket/private/position
|
|
1569
|
+
* @param {string[]} [symbols] list of unified market symbols
|
|
1570
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1571
|
+
* @returns {object} status of the unwatch request
|
|
1572
|
+
*/
|
|
1573
|
+
async unWatchPositions(symbols = undefined, params = {}) {
|
|
1574
|
+
await this.loadMarkets();
|
|
1575
|
+
const method = 'watchPositions';
|
|
1576
|
+
const messageHash = 'unsubscribe:positions';
|
|
1577
|
+
const subHash = 'positions';
|
|
1578
|
+
if (!this.isEmpty(symbols)) {
|
|
1579
|
+
throw new NotSupported(this.id + ' unWatchPositions() does not support a symbol parameter, you must unwatch all orders');
|
|
1580
|
+
}
|
|
1581
|
+
const url = await this.getUrlByMarketType(undefined, true, method, params);
|
|
1582
|
+
await this.authenticate(url);
|
|
1583
|
+
const topics = ['position'];
|
|
1584
|
+
return await this.unWatchTopics(url, 'positions', symbols, [messageHash], [subHash], topics, params);
|
|
1585
|
+
}
|
|
1553
1586
|
/**
|
|
1554
1587
|
* @method
|
|
1555
1588
|
* @name bybit#watchLiquidations
|
|
@@ -5,7 +5,7 @@ export function deflate(data: any, opts: any, cb: any): () => void;
|
|
|
5
5
|
* @param opts The compression options
|
|
6
6
|
* @returns The deflated version of the data
|
|
7
7
|
*/
|
|
8
|
-
export function deflateSync(data: any, opts: any): Uint8Array |
|
|
8
|
+
export function deflateSync(data: any, opts: any): Uint8Array | Uint16Array | Uint32Array;
|
|
9
9
|
export function inflate(data: any, opts: any, cb: any): () => void;
|
|
10
10
|
/**
|
|
11
11
|
* Expands DEFLATE data with no wrapper
|
|
@@ -21,7 +21,7 @@ export function gzip(data: any, opts: any, cb: any): () => void;
|
|
|
21
21
|
* @param opts The compression options
|
|
22
22
|
* @returns The gzipped version of the data
|
|
23
23
|
*/
|
|
24
|
-
export function gzipSync(data: any, opts: any): Uint8Array |
|
|
24
|
+
export function gzipSync(data: any, opts: any): Uint8Array | Uint16Array | Uint32Array;
|
|
25
25
|
export function gunzip(data: any, opts: any, cb: any): () => void;
|
|
26
26
|
/**
|
|
27
27
|
* Expands GZIP data
|
|
@@ -37,7 +37,7 @@ export function zlib(data: any, opts: any, cb: any): () => void;
|
|
|
37
37
|
* @param opts The compression options
|
|
38
38
|
* @returns The zlib-compressed version of the data
|
|
39
39
|
*/
|
|
40
|
-
export function zlibSync(data: any, opts: any): Uint8Array |
|
|
40
|
+
export function zlibSync(data: any, opts: any): Uint8Array | Uint16Array | Uint32Array;
|
|
41
41
|
export function unzlib(data: any, opts: any, cb: any): () => void;
|
|
42
42
|
/**
|
|
43
43
|
* Expands Zlib data
|
|
@@ -61,7 +61,7 @@ export function decompressSync(data: any, out: any): any;
|
|
|
61
61
|
* not need to be true unless decoding a binary string.
|
|
62
62
|
* @returns The string encoded in UTF-8/Latin-1 binary
|
|
63
63
|
*/
|
|
64
|
-
export function strToU8(str: any, latin1: any): Uint8Array |
|
|
64
|
+
export function strToU8(str: any, latin1: any): Uint8Array | Uint16Array | Uint32Array;
|
|
65
65
|
/**
|
|
66
66
|
* Converts a Uint8Array to a string
|
|
67
67
|
* @param dat The data to decode to string
|
|
@@ -69,7 +69,7 @@ export function strToU8(str: any, latin1: any): Uint8Array | Uint32Array | Uint1
|
|
|
69
69
|
* not need to be true unless encoding to binary string.
|
|
70
70
|
* @returns The original UTF-8/Latin-1 string
|
|
71
71
|
*/
|
|
72
|
-
export function strFromU8(dat: any, latin1: any): string | Uint8Array |
|
|
72
|
+
export function strFromU8(dat: any, latin1: any): string | Uint8Array | Uint16Array | Uint32Array;
|
|
73
73
|
export function zip(data: any, opts: any, cb: any): () => void;
|
|
74
74
|
/**
|
|
75
75
|
* Synchronously creates a ZIP file. Prefer using `zip` for better performance
|
|
@@ -15,7 +15,7 @@ export declare class BigInteger {
|
|
|
15
15
|
protected intValue(): number;
|
|
16
16
|
protected byteValue(): number;
|
|
17
17
|
protected shortValue(): number;
|
|
18
|
-
protected signum():
|
|
18
|
+
protected signum(): 0 | 1 | -1;
|
|
19
19
|
toByteArray(): number[];
|
|
20
20
|
protected equals(a: BigInteger): boolean;
|
|
21
21
|
protected min(a: BigInteger): BigInteger;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Abi, FunctionAbi, RawArgs } from '../../../types/index.js';
|
|
2
2
|
import { AbiParserInterface } from './interface.js';
|
|
3
3
|
export declare function createAbiParser(abi: Abi): AbiParserInterface;
|
|
4
|
-
export declare function getAbiVersion(abi: Abi):
|
|
4
|
+
export declare function getAbiVersion(abi: Abi): 0 | 1 | 2;
|
|
5
5
|
export declare function isNoConstructorValid(method: string, argsCalldata: RawArgs, abiMethod?: FunctionAbi): boolean;
|
package/js/src/timex.d.ts
CHANGED
|
@@ -150,7 +150,7 @@ export default class timex extends Exchange {
|
|
|
150
150
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
151
151
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
152
152
|
*/
|
|
153
|
-
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<
|
|
153
|
+
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
154
154
|
/**
|
|
155
155
|
* @method
|
|
156
156
|
* @name timex#cancelOrders
|
package/js/src/vertex.d.ts
CHANGED
|
@@ -272,7 +272,7 @@ export default class vertex extends Exchange {
|
|
|
272
272
|
* @param {boolean} [params.trigger] whether the order is a trigger/algo order
|
|
273
273
|
* @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
274
274
|
*/
|
|
275
|
-
cancelAllOrders(symbol?: Str, params?: {}): Promise<
|
|
275
|
+
cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
|
|
276
276
|
/**
|
|
277
277
|
* @method
|
|
278
278
|
* @name vertex#cancelOrder
|
|
@@ -284,7 +284,7 @@ export default class vertex extends Exchange {
|
|
|
284
284
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
285
285
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
286
286
|
*/
|
|
287
|
-
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<
|
|
287
|
+
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
288
288
|
/**
|
|
289
289
|
* @method
|
|
290
290
|
* @name vertex#cancelOrders
|
package/js/src/vertex.js
CHANGED
|
@@ -2418,7 +2418,7 @@ export default class vertex extends Exchange {
|
|
|
2418
2418
|
// }
|
|
2419
2419
|
//
|
|
2420
2420
|
}
|
|
2421
|
-
return response;
|
|
2421
|
+
return [this.safeOrder({ 'info': response })];
|
|
2422
2422
|
}
|
|
2423
2423
|
/**
|
|
2424
2424
|
* @method
|
|
@@ -2432,7 +2432,8 @@ export default class vertex extends Exchange {
|
|
|
2432
2432
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
2433
2433
|
*/
|
|
2434
2434
|
async cancelOrder(id, symbol = undefined, params = {}) {
|
|
2435
|
-
|
|
2435
|
+
const order = await this.cancelOrders([id], symbol, params);
|
|
2436
|
+
return this.safeOrder({ 'info': order });
|
|
2436
2437
|
}
|
|
2437
2438
|
/**
|
|
2438
2439
|
* @method
|
package/js/src/woo.d.ts
CHANGED
|
@@ -215,7 +215,7 @@ export default class woo extends Exchange {
|
|
|
215
215
|
* @param {boolean} [params.trigger] whether the order is a trigger/algo order
|
|
216
216
|
* @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
217
217
|
*/
|
|
218
|
-
cancelAllOrders(symbol?: Str, params?: {}): Promise<
|
|
218
|
+
cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
|
|
219
219
|
/**
|
|
220
220
|
* @method
|
|
221
221
|
* @name woo#cancelAllOrdersAfter
|
package/js/src/woo.js
CHANGED
|
@@ -689,7 +689,7 @@ export default class woo extends Exchange {
|
|
|
689
689
|
'max': undefined,
|
|
690
690
|
},
|
|
691
691
|
},
|
|
692
|
-
'created':
|
|
692
|
+
'created': undefined,
|
|
693
693
|
'info': market,
|
|
694
694
|
};
|
|
695
695
|
}
|
|
@@ -1561,8 +1561,12 @@ export default class woo extends Exchange {
|
|
|
1561
1561
|
const market = this.market(symbol);
|
|
1562
1562
|
request['symbol'] = market['id'];
|
|
1563
1563
|
}
|
|
1564
|
+
let response = undefined;
|
|
1564
1565
|
if (trigger) {
|
|
1565
|
-
|
|
1566
|
+
response = await this.v3PrivateDeleteTradeAlgoOrders(params);
|
|
1567
|
+
}
|
|
1568
|
+
else {
|
|
1569
|
+
response = await this.v3PrivateDeleteTradeOrders(this.extend(request, params));
|
|
1566
1570
|
}
|
|
1567
1571
|
//
|
|
1568
1572
|
// {
|
|
@@ -1573,7 +1577,8 @@ export default class woo extends Exchange {
|
|
|
1573
1577
|
// "timestamp": 1751941988134
|
|
1574
1578
|
// }
|
|
1575
1579
|
//
|
|
1576
|
-
|
|
1580
|
+
const data = this.safeDict(response, 'data', {});
|
|
1581
|
+
return [this.safeOrder({ 'info': data })];
|
|
1577
1582
|
}
|
|
1578
1583
|
/**
|
|
1579
1584
|
* @method
|
package/js/src/woofipro.d.ts
CHANGED
|
@@ -217,7 +217,7 @@ export default class woofipro extends Exchange {
|
|
|
217
217
|
* @param {string} [params.clientOrderId] a unique id for the order
|
|
218
218
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
219
219
|
*/
|
|
220
|
-
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<
|
|
220
|
+
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
221
221
|
/**
|
|
222
222
|
* @method
|
|
223
223
|
* @name woofipro#cancelOrders
|
|
@@ -242,9 +242,7 @@ export default class woofipro extends Exchange {
|
|
|
242
242
|
* @param {boolean} [params.trigger] whether the order is a stop/algo order
|
|
243
243
|
* @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
244
244
|
*/
|
|
245
|
-
cancelAllOrders(symbol?: Str, params?: {}): Promise<
|
|
246
|
-
info: any;
|
|
247
|
-
}[]>;
|
|
245
|
+
cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
|
|
248
246
|
/**
|
|
249
247
|
* @method
|
|
250
248
|
* @name woofipro#fetchOrder
|
package/js/src/woofipro.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ccxt",
|
|
3
|
-
"version": "4.4.
|
|
3
|
+
"version": "4.4.97",
|
|
4
4
|
"description": "A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 100+ exchanges",
|
|
5
5
|
"unpkg": "dist/ccxt.browser.min.js",
|
|
6
6
|
"type": "module",
|
|
@@ -202,7 +202,6 @@
|
|
|
202
202
|
"eslint-config-airbnb-base": "15.0.0",
|
|
203
203
|
"eslint-plugin-import": "2.25.4",
|
|
204
204
|
"eslint-plugin-jsdoc": "^46.9.0",
|
|
205
|
-
"esmify": "^2.1.1",
|
|
206
205
|
"https-proxy-agent": "^5.0.1",
|
|
207
206
|
"jsdoc-to-markdown": "^8.0.0",
|
|
208
207
|
"ololog": "^1.1.175",
|