ccxt 4.5.4 → 4.5.6
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 +7 -6
- package/dist/ccxt.browser.min.js +15 -15
- package/dist/cjs/ccxt.js +11 -6
- 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/backpack.js +11 -0
- 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/exmo.js +1 -1
- package/dist/cjs/src/abstract/foxbit.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/hibachi.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/toobit.js +11 -0
- package/dist/cjs/src/abstract/upbit.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 +1 -1
- package/dist/cjs/src/ascendex.js +1 -1
- package/dist/cjs/src/backpack.js +2280 -0
- package/dist/cjs/src/base/Exchange.js +226 -62
- package/dist/cjs/src/base/Precise.js +0 -6
- package/dist/cjs/src/base/errors.js +0 -6
- 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 +0 -1
- package/dist/cjs/src/base/functions/number.js +0 -6
- package/dist/cjs/src/base/functions/platform.js +0 -6
- package/dist/cjs/src/base/functions/rsa.js +0 -1
- package/dist/cjs/src/base/functions/string.js +0 -6
- package/dist/cjs/src/base/functions/throttle.js +1 -1
- package/dist/cjs/src/base/functions/time.js +0 -6
- package/dist/cjs/src/base/functions/totp.js +0 -1
- package/dist/cjs/src/base/functions/type.js +0 -6
- package/dist/cjs/src/base/functions.js +1 -1
- package/dist/cjs/src/base/ws/Cache.js +0 -6
- package/dist/cjs/src/base/ws/Client.js +0 -1
- 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 +0 -6
- package/dist/cjs/src/base/ws/WsClient.js +1 -1
- package/dist/cjs/src/bequant.js +1 -1
- package/dist/cjs/src/bigone.js +5 -5
- package/dist/cjs/src/binance.js +80 -21
- package/dist/cjs/src/binancecoinm.js +1 -1
- package/dist/cjs/src/binanceus.js +1 -1
- package/dist/cjs/src/binanceusdm.js +1 -1
- package/dist/cjs/src/bingx.js +6 -3
- package/dist/cjs/src/bit2c.js +1 -1
- package/dist/cjs/src/bitbank.js +2 -2
- 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 +73 -19
- package/dist/cjs/src/bithumb.js +1 -1
- package/dist/cjs/src/bitmart.js +1 -1
- package/dist/cjs/src/bitmex.js +1 -1
- package/dist/cjs/src/bitopro.js +1 -1
- package/dist/cjs/src/bitrue.js +1 -1
- 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 +187 -128
- package/dist/cjs/src/cex.js +1 -1
- package/dist/cjs/src/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/coincatch.js +2 -2
- 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 +12 -1
- package/dist/cjs/src/coinone.js +1 -1
- package/dist/cjs/src/coinsph.js +4 -2
- package/dist/cjs/src/coinspot.js +1 -1
- package/dist/cjs/src/cryptocom.js +7 -4
- package/dist/cjs/src/cryptomus.js +1 -1
- package/dist/cjs/src/defx.js +1 -1
- package/dist/cjs/src/delta.js +1 -1
- package/dist/cjs/src/deribit.js +1 -1
- package/dist/cjs/src/derive.js +1 -1
- package/dist/cjs/src/digifinex.js +1 -1
- package/dist/cjs/src/exmo.js +1 -1
- package/dist/cjs/src/fmfwio.js +1 -1
- package/dist/cjs/src/foxbit.js +1 -1
- package/dist/cjs/src/gate.js +9 -3
- package/dist/cjs/src/gateio.js +1 -1
- package/dist/cjs/src/gemini.js +13 -8
- package/dist/cjs/src/hashkey.js +1 -1
- package/dist/cjs/src/hibachi.js +1 -1
- package/dist/cjs/src/hitbtc.js +0 -1
- 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 +4 -1
- package/dist/cjs/src/independentreserve.js +1 -1
- package/dist/cjs/src/indodax.js +1 -1
- package/dist/cjs/src/kraken.js +7 -3
- package/dist/cjs/src/krakenfutures.js +2 -2
- package/dist/cjs/src/kucoin.js +2 -3
- package/dist/cjs/src/kucoinfutures.js +52 -4
- package/dist/cjs/src/latoken.js +1 -1
- package/dist/cjs/src/lbank.js +1 -1
- package/dist/cjs/src/luno.js +5 -2
- package/dist/cjs/src/mercado.js +1 -1
- package/dist/cjs/src/mexc.js +5 -2
- package/dist/cjs/src/modetrade.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 +5 -2
- package/dist/cjs/src/okx.js +59 -18
- package/dist/cjs/src/okxus.js +1 -1
- package/dist/cjs/src/onetrading.js +161 -66
- package/dist/cjs/src/oxfun.js +1 -1
- package/dist/cjs/src/p2b.js +1 -1
- package/dist/cjs/src/paradex.js +1 -1
- package/dist/cjs/src/paymium.js +1 -1
- package/dist/cjs/src/phemex.js +16 -10
- package/dist/cjs/src/poloniex.js +1 -1
- package/dist/cjs/src/pro/alpaca.js +1 -1
- package/dist/cjs/src/pro/apex.js +2 -1
- package/dist/cjs/src/pro/ascendex.js +1 -1
- package/dist/cjs/src/pro/backpack.js +1325 -0
- package/dist/cjs/src/pro/bequant.js +1 -1
- package/dist/cjs/src/pro/binance.js +159 -19
- 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 +1 -1
- package/dist/cjs/src/pro/bitfinex.js +1 -1
- package/dist/cjs/src/pro/bitget.js +373 -88
- 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 +4 -1
- package/dist/cjs/src/pro/cex.js +2 -1
- package/dist/cjs/src/pro/coinbase.js +227 -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 +2 -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 +0 -1
- package/dist/cjs/src/pro/luno.js +1 -1
- package/dist/cjs/src/pro/mexc.js +24 -24
- 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 +47 -11
- 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/toobit.js +1163 -0
- 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/protobuf/mexc/compiled.cjs.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/coders/address.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/array.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/null.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/number.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/string.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +0 -1
- package/dist/cjs/src/static_dependencies/ethers/fragments.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/index.js +10 -1
- package/dist/cjs/src/static_dependencies/ethers/interface.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/typed.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +13 -1
- package/dist/cjs/src/static_dependencies/ethers/utils/data.js +6 -1
- package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +9 -1
- package/dist/cjs/src/static_dependencies/ethers/utils/events.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/utils/index.js +7 -1
- package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +5 -1
- package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +0 -6
- package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +8 -1
- package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
- package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
- 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 +0 -6
- 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 +0 -6
- package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +0 -6
- 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 +0 -1
- 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 +0 -6
- 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 +0 -6
- package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +0 -6
- package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +0 -6
- package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
- package/dist/cjs/src/static_dependencies/node-fetch/body.js +5 -1
- package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +0 -1
- package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +0 -6
- package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -1
- package/dist/cjs/src/static_dependencies/node-fetch/headers.js +5 -1
- package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -1
- package/dist/cjs/src/static_dependencies/node-fetch/request.js +7 -1
- package/dist/cjs/src/static_dependencies/node-fetch/response.js +5 -1
- package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
- package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
- package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +0 -6
- package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +0 -1
- package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +0 -1
- package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -1
- package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -1
- package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
- package/dist/cjs/src/static_dependencies/scure-base/index.js +0 -6
- 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 +0 -6
- package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +0 -6
- 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 +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -1
- 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 +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +4 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +3 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/num.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +0 -1
- package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
- package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +0 -6
- package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
- package/dist/cjs/src/timex.js +0 -1
- package/dist/cjs/src/tokocrypto.js +1 -1
- package/dist/cjs/src/toobit.js +2999 -0
- package/dist/cjs/src/upbit.js +1 -1
- package/dist/cjs/src/wavesexchange.js +1 -1
- package/dist/cjs/src/whitebit.js +1 -1
- package/dist/cjs/src/woo.js +1 -1
- package/dist/cjs/src/woofipro.js +1 -1
- package/dist/cjs/src/xt.js +10 -1
- package/dist/cjs/src/yobit.js +10 -1
- package/dist/cjs/src/zaif.js +1 -1
- package/dist/cjs/src/zonda.js +1 -1
- package/js/ccxt.d.ts +14 -8
- package/js/ccxt.js +10 -12
- package/js/src/abstract/alpaca.js +0 -6
- package/js/src/abstract/apex.js +0 -6
- package/js/src/abstract/ascendex.js +0 -6
- package/js/src/abstract/backpack.d.ts +63 -0
- package/js/src/abstract/backpack.js +5 -0
- package/js/src/abstract/bequant.js +0 -6
- package/js/src/abstract/bigone.js +0 -6
- package/js/src/abstract/binance.js +0 -6
- package/js/src/abstract/binancecoinm.js +0 -6
- package/js/src/abstract/binanceus.js +0 -6
- package/js/src/abstract/binanceusdm.js +0 -6
- package/js/src/abstract/bingx.js +0 -6
- package/js/src/abstract/bit2c.js +0 -6
- package/js/src/abstract/bitbank.js +0 -6
- package/js/src/abstract/bitbns.js +0 -6
- package/js/src/abstract/bitfinex.js +0 -6
- package/js/src/abstract/bitflyer.js +0 -6
- package/js/src/abstract/bitget.js +0 -6
- package/js/src/abstract/bithumb.js +0 -6
- package/js/src/abstract/bitmart.js +0 -6
- package/js/src/abstract/bitmex.js +0 -6
- package/js/src/abstract/bitopro.js +0 -6
- package/js/src/abstract/bitrue.js +0 -6
- package/js/src/abstract/bitso.js +0 -6
- package/js/src/abstract/bitstamp.js +0 -6
- package/js/src/abstract/bitteam.js +0 -6
- package/js/src/abstract/bittrade.js +0 -6
- package/js/src/abstract/bitvavo.js +0 -6
- package/js/src/abstract/blockchaincom.js +0 -6
- package/js/src/abstract/blofin.js +0 -6
- package/js/src/abstract/btcalpha.js +0 -6
- package/js/src/abstract/btcbox.js +0 -6
- package/js/src/abstract/btcmarkets.js +0 -6
- package/js/src/abstract/btcturk.js +0 -6
- package/js/src/abstract/bybit.js +0 -6
- package/js/src/abstract/cex.js +0 -6
- package/js/src/abstract/coinbase.js +0 -6
- package/js/src/abstract/coinbaseadvanced.js +0 -6
- package/js/src/abstract/coinbaseexchange.js +0 -6
- package/js/src/abstract/coinbaseinternational.js +0 -6
- package/js/src/abstract/coincatch.js +0 -6
- package/js/src/abstract/coincheck.js +0 -6
- package/js/src/abstract/coinex.js +0 -6
- package/js/src/abstract/coinmate.js +0 -6
- package/js/src/abstract/coinmetro.js +0 -6
- package/js/src/abstract/coinone.js +0 -6
- package/js/src/abstract/coinsph.js +0 -6
- package/js/src/abstract/coinspot.js +0 -6
- package/js/src/abstract/cryptocom.js +0 -6
- package/js/src/abstract/cryptomus.js +0 -6
- package/js/src/abstract/defx.js +0 -6
- package/js/src/abstract/delta.js +0 -6
- package/js/src/abstract/deribit.js +0 -6
- package/js/src/abstract/derive.js +0 -6
- package/js/src/abstract/digifinex.js +0 -6
- package/js/src/abstract/exmo.js +0 -6
- package/js/src/abstract/fmfwio.js +0 -6
- package/js/src/abstract/foxbit.js +0 -6
- package/js/src/abstract/gate.js +0 -6
- package/js/src/abstract/gateio.js +0 -6
- package/js/src/abstract/gemini.js +0 -6
- package/js/src/abstract/hashkey.js +0 -6
- package/js/src/abstract/hibachi.js +0 -6
- package/js/src/abstract/hitbtc.js +0 -6
- package/js/src/abstract/hollaex.js +0 -6
- package/js/src/abstract/htx.js +0 -6
- package/js/src/abstract/huobi.js +0 -6
- package/js/src/abstract/hyperliquid.js +0 -6
- package/js/src/abstract/independentreserve.js +0 -6
- package/js/src/abstract/indodax.js +0 -6
- package/js/src/abstract/kraken.js +0 -6
- package/js/src/abstract/krakenfutures.js +0 -6
- package/js/src/abstract/kucoin.js +0 -6
- package/js/src/abstract/kucoinfutures.d.ts +1 -0
- package/js/src/abstract/kucoinfutures.js +0 -6
- package/js/src/abstract/latoken.js +0 -6
- package/js/src/abstract/lbank.js +0 -6
- package/js/src/abstract/luno.js +0 -6
- package/js/src/abstract/mercado.js +0 -6
- package/js/src/abstract/mexc.js +0 -6
- package/js/src/abstract/modetrade.js +0 -6
- package/js/src/abstract/myokx.d.ts +1 -0
- package/js/src/abstract/myokx.js +0 -6
- package/js/src/abstract/ndax.js +0 -6
- package/js/src/abstract/novadax.js +0 -6
- package/js/src/abstract/oceanex.js +0 -6
- package/js/src/abstract/okcoin.js +0 -6
- package/js/src/abstract/okx.d.ts +1 -0
- package/js/src/abstract/okx.js +0 -6
- package/js/src/abstract/okxus.d.ts +1 -0
- package/js/src/abstract/okxus.js +0 -6
- package/js/src/abstract/onetrading.js +0 -6
- package/js/src/abstract/oxfun.js +0 -6
- package/js/src/abstract/p2b.js +0 -6
- package/js/src/abstract/paradex.js +0 -6
- package/js/src/abstract/paymium.js +0 -6
- package/js/src/abstract/phemex.d.ts +1 -1
- package/js/src/abstract/phemex.js +0 -6
- package/js/src/abstract/poloniex.js +0 -6
- package/js/src/abstract/probit.js +0 -6
- package/js/src/abstract/timex.js +0 -6
- package/js/src/abstract/tokocrypto.js +0 -6
- package/js/src/abstract/toobit.d.ts +66 -0
- package/js/src/abstract/toobit.js +5 -0
- package/js/src/abstract/upbit.js +0 -6
- package/js/src/abstract/wavesexchange.js +0 -6
- package/js/src/abstract/whitebit.js +0 -6
- package/js/src/abstract/woo.js +0 -6
- package/js/src/abstract/woofipro.js +0 -6
- package/js/src/abstract/xt.js +0 -6
- package/js/src/abstract/yobit.js +0 -6
- package/js/src/abstract/zaif.js +0 -6
- package/js/src/abstract/zonda.js +0 -6
- package/js/src/alpaca.js +0 -6
- package/js/src/apex.js +0 -6
- package/js/src/ascendex.js +0 -6
- package/js/src/backpack.d.ts +371 -0
- package/js/src/backpack.js +2273 -0
- package/js/src/base/Exchange.d.ts +48 -40
- package/js/src/base/Exchange.js +231 -72
- package/js/src/base/Precise.js +0 -6
- package/js/src/base/errorHierarchy.js +0 -6
- package/js/src/base/errors.js +0 -6
- package/js/src/base/functions/crypto.js +0 -6
- package/js/src/base/functions/encode.js +0 -6
- package/js/src/base/functions/generic.js +0 -6
- package/js/src/base/functions/misc.js +0 -6
- package/js/src/base/functions/number.js +0 -6
- package/js/src/base/functions/platform.js +0 -6
- package/js/src/base/functions/rsa.js +0 -6
- package/js/src/base/functions/string.js +0 -6
- package/js/src/base/functions/throttle.js +0 -6
- package/js/src/base/functions/time.js +0 -6
- package/js/src/base/functions/totp.js +0 -6
- package/js/src/base/functions/type.js +0 -6
- package/js/src/base/functions.js +0 -6
- package/js/src/base/types.d.ts +1 -3
- package/js/src/base/types.js +0 -6
- package/js/src/base/ws/Cache.js +0 -6
- package/js/src/base/ws/Client.js +0 -6
- package/js/src/base/ws/Future.js +0 -6
- package/js/src/base/ws/OrderBook.js +0 -6
- package/js/src/base/ws/OrderBookSide.js +0 -6
- package/js/src/base/ws/WsClient.js +0 -6
- package/js/src/base/ws/functions.js +0 -6
- package/js/src/bequant.js +0 -6
- package/js/src/bigone.js +4 -10
- package/js/src/binance.d.ts +10 -1
- package/js/src/binance.js +79 -26
- package/js/src/binancecoinm.js +0 -6
- package/js/src/binanceus.js +0 -6
- package/js/src/binanceusdm.js +0 -6
- package/js/src/bingx.js +5 -8
- package/js/src/bit2c.js +0 -6
- package/js/src/bitbank.js +1 -7
- package/js/src/bitbns.js +0 -6
- package/js/src/bitfinex.js +0 -6
- package/js/src/bitflyer.js +0 -6
- package/js/src/bitget.d.ts +3 -1
- package/js/src/bitget.js +72 -24
- package/js/src/bithumb.js +0 -6
- package/js/src/bitmart.js +0 -6
- package/js/src/bitmex.js +0 -6
- package/js/src/bitopro.js +0 -6
- package/js/src/bitrue.js +0 -6
- package/js/src/bitso.js +0 -6
- package/js/src/bitstamp.js +0 -6
- package/js/src/bitteam.js +0 -6
- package/js/src/bittrade.js +0 -6
- package/js/src/bitvavo.js +0 -6
- package/js/src/blockchaincom.js +0 -6
- package/js/src/blofin.js +0 -6
- package/js/src/btcalpha.js +0 -6
- package/js/src/btcbox.js +0 -6
- package/js/src/btcmarkets.js +0 -6
- package/js/src/btcturk.js +0 -6
- package/js/src/bybit.d.ts +8 -0
- package/js/src/bybit.js +186 -133
- package/js/src/cex.js +0 -6
- package/js/src/coinbase.d.ts +1 -1
- package/js/src/coinbase.js +0 -6
- package/js/src/coinbaseadvanced.js +0 -6
- package/js/src/coinbaseexchange.js +0 -6
- package/js/src/coinbaseinternational.js +0 -6
- package/js/src/coincatch.js +1 -7
- package/js/src/coincheck.js +0 -6
- package/js/src/coinex.js +0 -6
- package/js/src/coinmate.js +0 -6
- package/js/src/coinmetro.js +11 -6
- package/js/src/coinone.js +0 -6
- package/js/src/coinsph.js +4 -7
- package/js/src/coinspot.js +0 -6
- package/js/src/cryptocom.js +6 -9
- package/js/src/cryptomus.js +0 -6
- package/js/src/defx.js +0 -6
- package/js/src/delta.js +0 -6
- package/js/src/deribit.js +0 -6
- package/js/src/derive.js +0 -6
- package/js/src/digifinex.js +0 -6
- package/js/src/exmo.js +0 -6
- package/js/src/fmfwio.js +0 -6
- package/js/src/foxbit.js +0 -6
- package/js/src/gate.d.ts +6 -0
- package/js/src/gate.js +8 -8
- package/js/src/gateio.js +0 -6
- package/js/src/gemini.js +12 -13
- package/js/src/hashkey.js +0 -6
- package/js/src/hibachi.js +0 -6
- package/js/src/hitbtc.js +0 -6
- package/js/src/hollaex.js +0 -6
- package/js/src/htx.js +0 -6
- package/js/src/huobi.js +0 -6
- package/js/src/hyperliquid.js +3 -6
- package/js/src/independentreserve.js +0 -6
- package/js/src/indodax.js +0 -6
- package/js/src/kraken.d.ts +1 -1
- package/js/src/kraken.js +6 -8
- package/js/src/krakenfutures.js +1 -7
- package/js/src/kucoin.js +1 -8
- package/js/src/kucoinfutures.d.ts +14 -1
- package/js/src/kucoinfutures.js +51 -9
- package/js/src/latoken.js +0 -6
- package/js/src/lbank.js +0 -6
- package/js/src/luno.js +4 -7
- package/js/src/mercado.js +0 -6
- package/js/src/mexc.js +4 -7
- package/js/src/modetrade.js +0 -6
- package/js/src/myokx.js +0 -6
- package/js/src/ndax.js +0 -6
- package/js/src/novadax.js +0 -6
- package/js/src/oceanex.js +0 -6
- package/js/src/okcoin.js +4 -7
- package/js/src/okx.js +58 -23
- package/js/src/okxus.js +0 -6
- package/js/src/onetrading.d.ts +1 -0
- package/js/src/onetrading.js +160 -71
- package/js/src/oxfun.js +0 -6
- package/js/src/p2b.js +0 -6
- package/js/src/paradex.js +0 -6
- package/js/src/paymium.js +0 -6
- package/js/src/phemex.d.ts +3 -3
- package/js/src/phemex.js +16 -16
- package/js/src/poloniex.js +0 -6
- package/js/src/pro/alpaca.js +0 -6
- package/js/src/pro/apex.js +1 -6
- package/js/src/pro/ascendex.js +0 -6
- package/js/src/pro/backpack.d.ts +264 -0
- package/js/src/pro/backpack.js +1318 -0
- package/js/src/pro/bequant.js +0 -6
- package/js/src/pro/binance.d.ts +24 -0
- package/js/src/pro/binance.js +159 -25
- package/js/src/pro/binancecoinm.js +0 -6
- package/js/src/pro/binanceus.js +0 -6
- package/js/src/pro/binanceusdm.js +0 -6
- package/js/src/pro/bingx.js +0 -6
- package/js/src/pro/bitfinex.js +0 -6
- package/js/src/pro/bitget.d.ts +12 -0
- package/js/src/pro/bitget.js +372 -93
- package/js/src/pro/bithumb.js +0 -6
- package/js/src/pro/bitmart.js +0 -6
- package/js/src/pro/bitmex.js +0 -6
- package/js/src/pro/bitopro.js +0 -6
- package/js/src/pro/bitrue.js +0 -6
- package/js/src/pro/bitstamp.js +0 -6
- package/js/src/pro/bittrade.js +0 -6
- package/js/src/pro/bitvavo.js +0 -6
- package/js/src/pro/blockchaincom.js +0 -6
- package/js/src/pro/blofin.js +0 -6
- package/js/src/pro/bybit.js +3 -6
- package/js/src/pro/cex.js +1 -6
- package/js/src/pro/coinbase.d.ts +85 -0
- package/js/src/pro/coinbase.js +226 -6
- package/js/src/pro/coinbaseadvanced.js +0 -6
- package/js/src/pro/coinbaseexchange.js +0 -6
- package/js/src/pro/coinbaseinternational.js +0 -6
- package/js/src/pro/coincatch.js +0 -6
- package/js/src/pro/coincheck.js +0 -6
- package/js/src/pro/coinex.js +0 -6
- package/js/src/pro/coinone.js +0 -6
- package/js/src/pro/cryptocom.js +0 -6
- package/js/src/pro/defx.js +0 -6
- package/js/src/pro/deribit.js +0 -6
- package/js/src/pro/derive.js +0 -6
- package/js/src/pro/exmo.js +0 -6
- package/js/src/pro/gate.js +0 -6
- package/js/src/pro/gateio.js +0 -6
- package/js/src/pro/gemini.js +0 -6
- package/js/src/pro/hashkey.js +0 -6
- package/js/src/pro/hitbtc.js +0 -6
- package/js/src/pro/hollaex.js +0 -6
- package/js/src/pro/htx.js +0 -6
- package/js/src/pro/huobi.js +0 -6
- package/js/src/pro/hyperliquid.js +0 -6
- package/js/src/pro/independentreserve.js +1 -6
- package/js/src/pro/kraken.js +0 -6
- package/js/src/pro/krakenfutures.js +0 -6
- package/js/src/pro/kucoin.js +0 -6
- package/js/src/pro/kucoinfutures.js +0 -6
- package/js/src/pro/lbank.js +0 -6
- package/js/src/pro/luno.js +0 -6
- package/js/src/pro/mexc.js +23 -29
- package/js/src/pro/modetrade.js +0 -6
- package/js/src/pro/myokx.js +0 -6
- package/js/src/pro/ndax.js +0 -6
- package/js/src/pro/okcoin.js +0 -6
- package/js/src/pro/okx.d.ts +7 -1
- package/js/src/pro/okx.js +46 -16
- package/js/src/pro/okxus.js +0 -6
- package/js/src/pro/onetrading.js +0 -6
- package/js/src/pro/oxfun.js +0 -6
- package/js/src/pro/p2b.js +0 -6
- package/js/src/pro/paradex.js +0 -6
- package/js/src/pro/phemex.js +0 -6
- package/js/src/pro/poloniex.js +0 -6
- package/js/src/pro/probit.js +0 -6
- package/js/src/pro/toobit.d.ts +174 -0
- package/js/src/pro/toobit.js +1162 -0
- package/js/src/pro/upbit.js +0 -6
- package/js/src/pro/whitebit.js +0 -6
- package/js/src/pro/woo.js +0 -6
- package/js/src/pro/woofipro.js +0 -6
- package/js/src/pro/xt.js +0 -6
- package/js/src/probit.js +0 -6
- package/js/src/protobuf/mexc/compiled.cjs +0 -6
- package/js/src/static_dependencies/ethers/abi-coder.js +0 -6
- package/js/src/static_dependencies/ethers/address/address.js +0 -6
- package/js/src/static_dependencies/ethers/address/checks.js +0 -6
- package/js/src/static_dependencies/ethers/address/contract-address.js +0 -6
- package/js/src/static_dependencies/ethers/address/index.js +0 -6
- package/js/src/static_dependencies/ethers/bytes32.js +0 -6
- package/js/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
- package/js/src/static_dependencies/ethers/coders/address.js +0 -6
- package/js/src/static_dependencies/ethers/coders/anonymous.js +0 -6
- package/js/src/static_dependencies/ethers/coders/array.js +0 -6
- package/js/src/static_dependencies/ethers/coders/boolean.js +0 -6
- package/js/src/static_dependencies/ethers/coders/bytes.js +0 -6
- package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -6
- package/js/src/static_dependencies/ethers/coders/null.js +0 -6
- package/js/src/static_dependencies/ethers/coders/number.js +0 -6
- package/js/src/static_dependencies/ethers/coders/string.js +0 -6
- package/js/src/static_dependencies/ethers/coders/tuple.js +0 -6
- package/js/src/static_dependencies/ethers/fragments.js +0 -6
- package/js/src/static_dependencies/ethers/hash/index.js +0 -6
- package/js/src/static_dependencies/ethers/hash/solidity.js +0 -6
- package/js/src/static_dependencies/ethers/hash/typed-data.js +0 -6
- package/js/src/static_dependencies/ethers/index.js +0 -6
- package/js/src/static_dependencies/ethers/interface.js +0 -6
- package/js/src/static_dependencies/ethers/typed.js +0 -6
- package/js/src/static_dependencies/ethers/utils/base58.js +0 -6
- package/js/src/static_dependencies/ethers/utils/base64-browser.js +0 -6
- package/js/src/static_dependencies/ethers/utils/base64.js +0 -6
- package/js/src/static_dependencies/ethers/utils/data.js +0 -6
- package/js/src/static_dependencies/ethers/utils/errors.js +0 -6
- package/js/src/static_dependencies/ethers/utils/events.js +0 -6
- package/js/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
- package/js/src/static_dependencies/ethers/utils/index.js +0 -6
- package/js/src/static_dependencies/ethers/utils/maths.js +0 -6
- package/js/src/static_dependencies/ethers/utils/properties.js +0 -6
- package/js/src/static_dependencies/ethers/utils/rlp-decode.js +0 -6
- package/js/src/static_dependencies/ethers/utils/rlp-encode.js +0 -6
- package/js/src/static_dependencies/ethers/utils/rlp.js +0 -6
- package/js/src/static_dependencies/ethers/utils/units.js +0 -6
- package/js/src/static_dependencies/ethers/utils/utf8.js +0 -6
- package/js/src/static_dependencies/ethers/utils/uuid.js +0 -6
- package/js/src/static_dependencies/fflake/browser.js +0 -6
- package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -6
- package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -6
- package/js/src/static_dependencies/jsencrypt/index.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -6
- package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
- package/js/src/static_dependencies/messagepack/msgpack.js +0 -6
- package/js/src/static_dependencies/noble-curves/_shortw_utils.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/curve.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/edwards.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/modular.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
- package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +0 -6
- package/js/src/static_dependencies/noble-curves/bn.js +0 -6
- package/js/src/static_dependencies/noble-curves/ed25519.js +0 -6
- package/js/src/static_dependencies/noble-curves/ed448.js +0 -6
- package/js/src/static_dependencies/noble-curves/index.js +0 -6
- package/js/src/static_dependencies/noble-curves/jubjub.js +0 -6
- package/js/src/static_dependencies/noble-curves/p256.js +0 -6
- package/js/src/static_dependencies/noble-curves/p384.js +0 -6
- package/js/src/static_dependencies/noble-curves/p521.js +0 -6
- package/js/src/static_dependencies/noble-curves/pasta.js +0 -6
- package/js/src/static_dependencies/noble-curves/secp256k1.js +0 -6
- package/js/src/static_dependencies/noble-hashes/_assert.js +0 -6
- package/js/src/static_dependencies/noble-hashes/_blake2.js +0 -6
- package/js/src/static_dependencies/noble-hashes/_sha2.js +0 -6
- package/js/src/static_dependencies/noble-hashes/_u64.js +0 -6
- package/js/src/static_dependencies/noble-hashes/argon2.js +0 -6
- package/js/src/static_dependencies/noble-hashes/blake2b.js +0 -6
- package/js/src/static_dependencies/noble-hashes/blake2s.js +0 -6
- package/js/src/static_dependencies/noble-hashes/blake3.js +0 -6
- package/js/src/static_dependencies/noble-hashes/crypto.js +0 -6
- package/js/src/static_dependencies/noble-hashes/cryptoNode.js +0 -6
- package/js/src/static_dependencies/noble-hashes/eskdf.js +0 -6
- package/js/src/static_dependencies/noble-hashes/hkdf.js +0 -6
- package/js/src/static_dependencies/noble-hashes/hmac.js +0 -6
- package/js/src/static_dependencies/noble-hashes/index.js +0 -6
- package/js/src/static_dependencies/noble-hashes/md5.js +0 -6
- package/js/src/static_dependencies/noble-hashes/pbkdf2.js +0 -6
- package/js/src/static_dependencies/noble-hashes/ripemd160.js +0 -6
- package/js/src/static_dependencies/noble-hashes/scrypt.js +0 -6
- package/js/src/static_dependencies/noble-hashes/sha1.js +0 -6
- package/js/src/static_dependencies/noble-hashes/sha256.js +0 -6
- package/js/src/static_dependencies/noble-hashes/sha3-addons.js +0 -6
- package/js/src/static_dependencies/noble-hashes/sha3.js +0 -6
- package/js/src/static_dependencies/noble-hashes/sha512.js +0 -6
- package/js/src/static_dependencies/noble-hashes/utils.js +0 -6
- package/js/src/static_dependencies/node-fetch/body.js +0 -6
- package/js/src/static_dependencies/node-fetch/errors/abort-error.js +0 -6
- package/js/src/static_dependencies/node-fetch/errors/base.js +0 -6
- package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -6
- package/js/src/static_dependencies/node-fetch/headers.js +0 -6
- package/js/src/static_dependencies/node-fetch/index.js +0 -6
- package/js/src/static_dependencies/node-fetch/request.js +0 -6
- package/js/src/static_dependencies/node-fetch/response.js +0 -6
- package/js/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
- package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
- package/js/src/static_dependencies/node-fetch/utils/is.js +0 -6
- package/js/src/static_dependencies/node-fetch/utils/referrer.js +0 -6
- package/js/src/static_dependencies/proxies/agent-base/helpers.js +0 -6
- package/js/src/static_dependencies/proxies/agent-base/index.js +0 -6
- package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -6
- package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -6
- package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
- package/js/src/static_dependencies/qs/formats.cjs +0 -6
- package/js/src/static_dependencies/qs/index.cjs +0 -6
- package/js/src/static_dependencies/qs/parse.cjs +0 -6
- package/js/src/static_dependencies/qs/stringify.cjs +0 -6
- package/js/src/static_dependencies/qs/utils.cjs +0 -6
- package/js/src/static_dependencies/scure-base/index.js +0 -6
- package/js/src/static_dependencies/scure-starknet/index.js +0 -6
- package/js/src/static_dependencies/starknet/constants.js +0 -6
- package/js/src/static_dependencies/starknet/index.js +0 -6
- package/js/src/static_dependencies/starknet/types/cairoEnum.js +0 -6
- package/js/src/static_dependencies/starknet/types/calldata.js +0 -6
- package/js/src/static_dependencies/starknet/types/index.js +0 -6
- package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
- package/js/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
- package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +0 -6
- package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +0 -6
- package/js/src/static_dependencies/starknet/types/lib/index.js +0 -6
- package/js/src/static_dependencies/starknet/types/typedData.js +0 -6
- package/js/src/static_dependencies/starknet/utils/address.js +0 -6
- package/js/src/static_dependencies/starknet/utils/assert.js +0 -6
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +0 -6
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +0 -6
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/index.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/validate.js +0 -6
- package/js/src/static_dependencies/starknet/utils/encode.js +0 -6
- package/js/src/static_dependencies/starknet/utils/hash/classHash.js +0 -6
- package/js/src/static_dependencies/starknet/utils/hash/index.js +0 -6
- package/js/src/static_dependencies/starknet/utils/merkle.js +0 -6
- package/js/src/static_dependencies/starknet/utils/num.js +0 -6
- package/js/src/static_dependencies/starknet/utils/selector.js +0 -6
- package/js/src/static_dependencies/starknet/utils/shortString.js +0 -6
- package/js/src/static_dependencies/starknet/utils/starknetId.js +0 -6
- package/js/src/static_dependencies/starknet/utils/typedData.js +0 -6
- package/js/src/static_dependencies/starknet/utils/uint256.js +0 -6
- package/js/src/static_dependencies/starknet/utils/url.js +0 -6
- package/js/src/static_dependencies/watchable/src/index.js +0 -6
- package/js/src/static_dependencies/watchable/src/types.js +0 -6
- package/js/src/static_dependencies/watchable/src/unpromise.js +0 -6
- package/js/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
- package/js/src/timex.js +0 -6
- package/js/src/tokocrypto.js +0 -6
- package/js/src/toobit.d.ts +456 -0
- package/js/src/toobit.js +2992 -0
- package/js/src/upbit.js +0 -6
- package/js/src/wavesexchange.js +0 -6
- package/js/src/whitebit.js +0 -6
- package/js/src/woo.js +0 -6
- package/js/src/woofipro.js +0 -6
- package/js/src/xt.d.ts +1 -0
- package/js/src/xt.js +9 -6
- package/js/src/yobit.js +9 -6
- package/js/src/zaif.js +0 -6
- package/js/src/zonda.js +0 -6
- package/package.json +1 -1
- package/dist/373.ccxt.browser.js +0 -7630
- package/dist/373.ccxt.browser.min.js +0 -1
- package/js/src/abstract/tradeogre.d.ts +0 -21
- package/js/src/abstract/tradeogre.js +0 -11
- package/js/src/pro/tradeogre.d.ts +0 -49
- package/js/src/pro/tradeogre.js +0 -284
- package/js/src/tradeogre.d.ts +0 -149
- package/js/src/tradeogre.js +0 -878
package/js/src/pro/bitget.js
CHANGED
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
// ----------------------------------------------------------------------------
|
|
2
|
-
|
|
3
|
-
// PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
|
|
4
|
-
// https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
|
|
5
|
-
// EDIT THE CORRESPONDENT .ts FILE INSTEAD
|
|
6
|
-
|
|
7
1
|
// ---------------------------------------------------------------------------
|
|
8
2
|
import bitgetRest from '../bitget.js';
|
|
9
3
|
import { AuthenticationError, BadRequest, ArgumentsRequired, ChecksumError, ExchangeError, RateLimitExceeded, UnsubscribeError } from '../base/errors.js';
|
|
@@ -514,7 +508,7 @@ export default class bitget extends bitgetRest {
|
|
|
514
508
|
args['topic'] = 'kline';
|
|
515
509
|
args['symbol'] = market['id'];
|
|
516
510
|
args['interval'] = interval;
|
|
517
|
-
params
|
|
511
|
+
params = this.extend(params, { 'uta': true });
|
|
518
512
|
messageHash = 'kline:' + symbol;
|
|
519
513
|
}
|
|
520
514
|
else {
|
|
@@ -563,7 +557,7 @@ export default class bitget extends bitgetRest {
|
|
|
563
557
|
args['topic'] = channel;
|
|
564
558
|
args['symbol'] = market['id'];
|
|
565
559
|
args['interval'] = interval;
|
|
566
|
-
params
|
|
560
|
+
params = this.extend(params, { 'uta': true });
|
|
567
561
|
params['interval'] = interval;
|
|
568
562
|
messageHash = channel + symbol;
|
|
569
563
|
}
|
|
@@ -713,9 +707,11 @@ export default class bitget extends bitgetRest {
|
|
|
713
707
|
* @description watches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
|
|
714
708
|
* @see https://www.bitget.com/api-doc/spot/websocket/public/Depth-Channel
|
|
715
709
|
* @see https://www.bitget.com/api-doc/contract/websocket/public/Order-Book-Channel
|
|
710
|
+
* @see https://www.bitget.com/api-doc/uta/websocket/public/Order-Book-Channel
|
|
716
711
|
* @param {string} symbol unified symbol of the market to fetch the order book for
|
|
717
712
|
* @param {int} [limit] the maximum amount of order book entries to return
|
|
718
713
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
714
|
+
* @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
|
|
719
715
|
* @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
|
|
720
716
|
*/
|
|
721
717
|
async watchOrderBook(symbol, limit = undefined, params = {}) {
|
|
@@ -727,16 +723,18 @@ export default class bitget extends bitgetRest {
|
|
|
727
723
|
* @description unsubscribe from the orderbook channel
|
|
728
724
|
* @see https://www.bitget.com/api-doc/spot/websocket/public/Depth-Channel
|
|
729
725
|
* @see https://www.bitget.com/api-doc/contract/websocket/public/Order-Book-Channel
|
|
726
|
+
* @see https://www.bitget.com/api-doc/uta/websocket/public/Order-Book-Channel
|
|
730
727
|
* @param {string} symbol unified symbol of the market to fetch the order book for
|
|
731
728
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
732
729
|
* @param {int} [params.limit] orderbook limit, default is undefined
|
|
730
|
+
* @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
|
|
733
731
|
* @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
|
|
734
732
|
*/
|
|
735
733
|
async unWatchOrderBook(symbol, params = {}) {
|
|
736
734
|
await this.loadMarkets();
|
|
737
735
|
let channel = 'books';
|
|
738
736
|
const limit = this.safeInteger(params, 'limit');
|
|
739
|
-
if ((limit === 1) || (limit === 5) || (limit === 15)) {
|
|
737
|
+
if ((limit === 1) || (limit === 5) || (limit === 15) || (limit === 50)) {
|
|
740
738
|
params = this.omit(params, 'limit');
|
|
741
739
|
channel += limit.toString();
|
|
742
740
|
}
|
|
@@ -757,7 +755,7 @@ export default class bitget extends bitgetRest {
|
|
|
757
755
|
args['topic'] = channel;
|
|
758
756
|
args['symbol'] = market['id'];
|
|
759
757
|
args['interval'] = this.safeString(params, 'interval', '1m');
|
|
760
|
-
params
|
|
758
|
+
params = this.extend(params, { 'uta': true });
|
|
761
759
|
params = this.omit(params, 'interval');
|
|
762
760
|
}
|
|
763
761
|
else {
|
|
@@ -772,9 +770,11 @@ export default class bitget extends bitgetRest {
|
|
|
772
770
|
* @description watches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
|
|
773
771
|
* @see https://www.bitget.com/api-doc/spot/websocket/public/Depth-Channel
|
|
774
772
|
* @see https://www.bitget.com/api-doc/contract/websocket/public/Order-Book-Channel
|
|
773
|
+
* @see https://www.bitget.com/api-doc/uta/websocket/public/Order-Book-Channel
|
|
775
774
|
* @param {string[]} symbols unified array of symbols
|
|
776
775
|
* @param {int} [limit] the maximum amount of order book entries to return
|
|
777
776
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
777
|
+
* @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
|
|
778
778
|
* @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
|
|
779
779
|
*/
|
|
780
780
|
async watchOrderBookForSymbols(symbols, limit = undefined, params = {}) {
|
|
@@ -782,25 +782,32 @@ export default class bitget extends bitgetRest {
|
|
|
782
782
|
symbols = this.marketSymbols(symbols);
|
|
783
783
|
let channel = 'books';
|
|
784
784
|
let incrementalFeed = true;
|
|
785
|
-
if ((limit === 1) || (limit === 5) || (limit === 15)) {
|
|
785
|
+
if ((limit === 1) || (limit === 5) || (limit === 15) || (limit === 50)) {
|
|
786
786
|
channel += limit.toString();
|
|
787
787
|
incrementalFeed = false;
|
|
788
788
|
}
|
|
789
789
|
const topics = [];
|
|
790
790
|
const messageHashes = [];
|
|
791
|
+
let uta = undefined;
|
|
792
|
+
[uta, params] = this.handleOptionAndParams(params, 'watchOrderBookForSymbols', 'uta', false);
|
|
791
793
|
for (let i = 0; i < symbols.length; i++) {
|
|
792
794
|
const symbol = symbols[i];
|
|
793
795
|
const market = this.market(symbol);
|
|
794
796
|
let instType = undefined;
|
|
795
|
-
[instType, params] = this.getInstType(market,
|
|
797
|
+
[instType, params] = this.getInstType(market, uta, params);
|
|
796
798
|
const args = {
|
|
797
799
|
'instType': instType,
|
|
798
|
-
'channel': channel,
|
|
799
|
-
'instId': market['id'],
|
|
800
800
|
};
|
|
801
|
+
const topicOrChannel = uta ? 'topic' : 'channel';
|
|
802
|
+
const symbolOrInstId = uta ? 'symbol' : 'instId';
|
|
803
|
+
args[topicOrChannel] = channel;
|
|
804
|
+
args[symbolOrInstId] = market['id'];
|
|
801
805
|
topics.push(args);
|
|
802
806
|
messageHashes.push('orderbook:' + symbol);
|
|
803
807
|
}
|
|
808
|
+
if (uta) {
|
|
809
|
+
params['uta'] = true;
|
|
810
|
+
}
|
|
804
811
|
const orderbook = await this.watchPublicMultiple(messageHashes, topics, params);
|
|
805
812
|
if (incrementalFeed) {
|
|
806
813
|
return orderbook.limit();
|
|
@@ -840,11 +847,27 @@ export default class bitget extends bitgetRest {
|
|
|
840
847
|
// ]
|
|
841
848
|
// }
|
|
842
849
|
//
|
|
850
|
+
// {
|
|
851
|
+
// "action": "snapshot",
|
|
852
|
+
// "arg": { "instType": "usdt-futures", "topic": "books", "symbol": "BTCUSDT" },
|
|
853
|
+
// "data": [
|
|
854
|
+
// {
|
|
855
|
+
// "a": [Array],
|
|
856
|
+
// "b": [Array],
|
|
857
|
+
// "checksum": 0,
|
|
858
|
+
// "pseq": 0,
|
|
859
|
+
// "seq": "1343064377779269632",
|
|
860
|
+
// "ts": "1755937421270"
|
|
861
|
+
// }
|
|
862
|
+
// ],
|
|
863
|
+
// "ts": 1755937421337
|
|
864
|
+
// }
|
|
865
|
+
//
|
|
843
866
|
const arg = this.safeValue(message, 'arg');
|
|
844
|
-
const channel = this.
|
|
845
|
-
const instType = this.
|
|
846
|
-
const marketType = (instType === '
|
|
847
|
-
const marketId = this.
|
|
867
|
+
const channel = this.safeString2(arg, 'channel', 'topic');
|
|
868
|
+
const instType = this.safeStringLower(arg, 'instType');
|
|
869
|
+
const marketType = (instType === 'spot') ? 'spot' : 'contract';
|
|
870
|
+
const marketId = this.safeString2(arg, 'instId', 'symbol');
|
|
848
871
|
const market = this.safeMarket(marketId, undefined, undefined, marketType);
|
|
849
872
|
const symbol = market['symbol'];
|
|
850
873
|
const messageHash = 'orderbook:' + symbol;
|
|
@@ -861,8 +884,8 @@ export default class bitget extends bitgetRest {
|
|
|
861
884
|
this.orderbooks[symbol] = ob;
|
|
862
885
|
}
|
|
863
886
|
const storedOrderBook = this.orderbooks[symbol];
|
|
864
|
-
const asks = this.
|
|
865
|
-
const bids = this.
|
|
887
|
+
const asks = this.safeList2(rawOrderBook, 'asks', 'a', []);
|
|
888
|
+
const bids = this.safeList2(rawOrderBook, 'bids', 'b', []);
|
|
866
889
|
this.handleDeltas(storedOrderBook['asks'], asks);
|
|
867
890
|
this.handleDeltas(storedOrderBook['bids'], bids);
|
|
868
891
|
storedOrderBook['timestamp'] = timestamp;
|
|
@@ -981,7 +1004,7 @@ export default class bitget extends bitgetRest {
|
|
|
981
1004
|
messageHashes.push('trade:' + symbol);
|
|
982
1005
|
}
|
|
983
1006
|
if (uta) {
|
|
984
|
-
params
|
|
1007
|
+
params = this.extend(params, { 'uta': true });
|
|
985
1008
|
}
|
|
986
1009
|
const trades = await this.watchPublicMultiple(messageHashes, topics, params);
|
|
987
1010
|
if (this.newUpdates) {
|
|
@@ -1215,11 +1238,13 @@ export default class bitget extends bitgetRest {
|
|
|
1215
1238
|
* @name bitget#watchPositions
|
|
1216
1239
|
* @description watch all open positions
|
|
1217
1240
|
* @see https://www.bitget.com/api-doc/contract/websocket/private/Positions-Channel
|
|
1241
|
+
* @see https://www.bitget.com/api-doc/uta/websocket/private/Positions-Channel
|
|
1218
1242
|
* @param {string[]|undefined} symbols list of unified market symbols
|
|
1219
1243
|
* @param {int} [since] the earliest time in ms to fetch positions for
|
|
1220
1244
|
* @param {int} [limit] the maximum number of positions to retrieve
|
|
1221
1245
|
* @param {object} params extra parameters specific to the exchange API endpoint
|
|
1222
1246
|
* @param {string} [params.instType] one of 'USDT-FUTURES', 'USDC-FUTURES', 'COIN-FUTURES', 'SUSDT-FUTURES', 'SUSDC-FUTURES' or 'SCOIN-FUTURES', default is 'USDT-FUTURES'
|
|
1247
|
+
* @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
|
|
1223
1248
|
* @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/en/latest/manual.html#position-structure}
|
|
1224
1249
|
*/
|
|
1225
1250
|
async watchPositions(symbols = undefined, since = undefined, limit = undefined, params = {}) {
|
|
@@ -1228,17 +1253,29 @@ export default class bitget extends bitgetRest {
|
|
|
1228
1253
|
let messageHash = '';
|
|
1229
1254
|
const subscriptionHash = 'positions';
|
|
1230
1255
|
let instType = 'USDT-FUTURES';
|
|
1256
|
+
let uta = undefined;
|
|
1257
|
+
[uta, params] = this.handleOptionAndParams(params, 'watchPositions', 'uta', false);
|
|
1231
1258
|
symbols = this.marketSymbols(symbols);
|
|
1232
1259
|
if (!this.isEmpty(symbols)) {
|
|
1233
1260
|
market = this.getMarketFromSymbols(symbols);
|
|
1234
|
-
[instType, params] = this.getInstType(market,
|
|
1261
|
+
[instType, params] = this.getInstType(market, uta, params);
|
|
1262
|
+
}
|
|
1263
|
+
if (uta) {
|
|
1264
|
+
instType = 'UTA';
|
|
1235
1265
|
}
|
|
1236
1266
|
messageHash = instType + ':positions' + messageHash;
|
|
1237
1267
|
const args = {
|
|
1238
1268
|
'instType': instType,
|
|
1239
|
-
'channel': 'positions',
|
|
1240
|
-
'instId': 'default',
|
|
1241
1269
|
};
|
|
1270
|
+
const topicOrChannel = uta ? 'topic' : 'channel';
|
|
1271
|
+
const channel = uta ? 'position' : 'positions';
|
|
1272
|
+
args[topicOrChannel] = channel;
|
|
1273
|
+
if (!uta) {
|
|
1274
|
+
args['instId'] = 'default';
|
|
1275
|
+
}
|
|
1276
|
+
else {
|
|
1277
|
+
params = this.extend(params, { 'uta': true });
|
|
1278
|
+
}
|
|
1242
1279
|
const newPositions = await this.watchPrivate(messageHash, subscriptionHash, args, params);
|
|
1243
1280
|
if (this.newUpdates) {
|
|
1244
1281
|
return newPositions;
|
|
@@ -1283,7 +1320,46 @@ export default class bitget extends bitgetRest {
|
|
|
1283
1320
|
// "ts": 1701913043767
|
|
1284
1321
|
// }
|
|
1285
1322
|
//
|
|
1286
|
-
|
|
1323
|
+
// uta
|
|
1324
|
+
//
|
|
1325
|
+
// {
|
|
1326
|
+
// "data": [
|
|
1327
|
+
// {
|
|
1328
|
+
// "symbol": "BTCUSDT",
|
|
1329
|
+
// "leverage": "20",
|
|
1330
|
+
// "openFeeTotal": "",
|
|
1331
|
+
// "mmr": "",
|
|
1332
|
+
// "breakEvenPrice": "",
|
|
1333
|
+
// "available": "0",
|
|
1334
|
+
// "liqPrice": "",
|
|
1335
|
+
// "marginMode": "crossed",
|
|
1336
|
+
// "unrealisedPnl": "0",
|
|
1337
|
+
// "markPrice": "94987.1",
|
|
1338
|
+
// "createdTime": "1736378720620",
|
|
1339
|
+
// "avgPrice": "0",
|
|
1340
|
+
// "totalFundingFee": "0",
|
|
1341
|
+
// "updatedTime": "1736378720620",
|
|
1342
|
+
// "marginCoin": "USDT",
|
|
1343
|
+
// "frozen": "0",
|
|
1344
|
+
// "profitRate": "",
|
|
1345
|
+
// "closeFeeTotal": "",
|
|
1346
|
+
// "marginSize": "0",
|
|
1347
|
+
// "curRealisedPnl": "0",
|
|
1348
|
+
// "size": "0",
|
|
1349
|
+
// "positionStatus": "ended",
|
|
1350
|
+
// "posSide": "long",
|
|
1351
|
+
// "holdMode": "hedge_mode"
|
|
1352
|
+
// }
|
|
1353
|
+
// ],
|
|
1354
|
+
// "arg": {
|
|
1355
|
+
// "instType": "UTA",
|
|
1356
|
+
// "topic": "position"
|
|
1357
|
+
// },
|
|
1358
|
+
// "action": "snapshot",
|
|
1359
|
+
// "ts": 1730711666652
|
|
1360
|
+
// }
|
|
1361
|
+
//
|
|
1362
|
+
const arg = this.safeDict(message, 'arg', {});
|
|
1287
1363
|
const instType = this.safeString(arg, 'instType', '');
|
|
1288
1364
|
if (this.positions === undefined) {
|
|
1289
1365
|
this.positions = {};
|
|
@@ -1293,11 +1369,11 @@ export default class bitget extends bitgetRest {
|
|
|
1293
1369
|
this.positions[instType] = new ArrayCacheBySymbolBySide();
|
|
1294
1370
|
}
|
|
1295
1371
|
const cache = this.positions[instType];
|
|
1296
|
-
const rawPositions = this.
|
|
1372
|
+
const rawPositions = this.safeList(message, 'data', []);
|
|
1297
1373
|
const newPositions = [];
|
|
1298
1374
|
for (let i = 0; i < rawPositions.length; i++) {
|
|
1299
1375
|
const rawPosition = rawPositions[i];
|
|
1300
|
-
const marketId = this.
|
|
1376
|
+
const marketId = this.safeString2(rawPosition, 'instId', 'symbol');
|
|
1301
1377
|
const market = this.safeMarket(marketId, undefined, undefined, 'contract');
|
|
1302
1378
|
const position = this.parseWsPosition(rawPosition, market);
|
|
1303
1379
|
newPositions.push(position);
|
|
@@ -1342,16 +1418,45 @@ export default class bitget extends bitgetRest {
|
|
|
1342
1418
|
// "autoMargin": "off"
|
|
1343
1419
|
// }
|
|
1344
1420
|
//
|
|
1345
|
-
|
|
1421
|
+
// uta
|
|
1422
|
+
//
|
|
1423
|
+
// {
|
|
1424
|
+
// "symbol": "BTCUSDT",
|
|
1425
|
+
// "leverage": "20",
|
|
1426
|
+
// "openFeeTotal": "",
|
|
1427
|
+
// "mmr": "",
|
|
1428
|
+
// "breakEvenPrice": "",
|
|
1429
|
+
// "available": "0",
|
|
1430
|
+
// "liqPrice": "",
|
|
1431
|
+
// "marginMode": "crossed",
|
|
1432
|
+
// "unrealisedPnl": "0",
|
|
1433
|
+
// "markPrice": "94987.1",
|
|
1434
|
+
// "createdTime": "1736378720620",
|
|
1435
|
+
// "avgPrice": "0",
|
|
1436
|
+
// "totalFundingFee": "0",
|
|
1437
|
+
// "updatedTime": "1736378720620",
|
|
1438
|
+
// "marginCoin": "USDT",
|
|
1439
|
+
// "frozen": "0",
|
|
1440
|
+
// "profitRate": "",
|
|
1441
|
+
// "closeFeeTotal": "",
|
|
1442
|
+
// "marginSize": "0",
|
|
1443
|
+
// "curRealisedPnl": "0",
|
|
1444
|
+
// "size": "0",
|
|
1445
|
+
// "positionStatus": "ended",
|
|
1446
|
+
// "posSide": "long",
|
|
1447
|
+
// "holdMode": "hedge_mode"
|
|
1448
|
+
// }
|
|
1449
|
+
//
|
|
1450
|
+
const marketId = this.safeString2(position, 'instId', 'symbol');
|
|
1346
1451
|
const marginModeId = this.safeString(position, 'marginMode');
|
|
1347
1452
|
const marginMode = this.getSupportedMapping(marginModeId, {
|
|
1348
1453
|
'crossed': 'cross',
|
|
1349
1454
|
'isolated': 'isolated',
|
|
1350
1455
|
});
|
|
1351
|
-
const hedgedId = this.
|
|
1456
|
+
const hedgedId = this.safeString2(position, 'posMode', 'holdMode');
|
|
1352
1457
|
const hedged = (hedgedId === 'hedge_mode') ? true : false;
|
|
1353
|
-
const timestamp = this.
|
|
1354
|
-
const percentageDecimal = this.
|
|
1458
|
+
const timestamp = this.safeIntegerN(position, ['updatedTime', 'uTime', 'cTime', 'createdTime']);
|
|
1459
|
+
const percentageDecimal = this.safeString2(position, 'unrealizedPLR', 'profitRate');
|
|
1355
1460
|
const percentage = Precise.stringMul(percentageDecimal, '100');
|
|
1356
1461
|
let contractSize = undefined;
|
|
1357
1462
|
if (market !== undefined) {
|
|
@@ -1363,21 +1468,21 @@ export default class bitget extends bitgetRest {
|
|
|
1363
1468
|
'symbol': this.safeSymbol(marketId, market, undefined, 'contract'),
|
|
1364
1469
|
'notional': undefined,
|
|
1365
1470
|
'marginMode': marginMode,
|
|
1366
|
-
'liquidationPrice': this.
|
|
1367
|
-
'entryPrice': this.
|
|
1368
|
-
'unrealizedPnl': this.
|
|
1471
|
+
'liquidationPrice': this.safeNumber2(position, 'liquidationPrice', 'liqPrice'),
|
|
1472
|
+
'entryPrice': this.safeNumber2(position, 'openPriceAvg', 'avgPrice'),
|
|
1473
|
+
'unrealizedPnl': this.safeNumber2(position, 'unrealizedPL', 'unrealisedPnl'),
|
|
1369
1474
|
'percentage': this.parseNumber(percentage),
|
|
1370
|
-
'contracts': this.
|
|
1475
|
+
'contracts': this.safeNumber2(position, 'total', 'size'),
|
|
1371
1476
|
'contractSize': contractSize,
|
|
1372
|
-
'markPrice':
|
|
1373
|
-
'side': this.
|
|
1477
|
+
'markPrice': this.safeNumber(position, 'markPrice'),
|
|
1478
|
+
'side': this.safeString2(position, 'holdSide', 'posSide'),
|
|
1374
1479
|
'hedged': hedged,
|
|
1375
1480
|
'timestamp': timestamp,
|
|
1376
1481
|
'datetime': this.iso8601(timestamp),
|
|
1377
1482
|
'maintenanceMargin': undefined,
|
|
1378
|
-
'maintenanceMarginPercentage': this.
|
|
1379
|
-
'collateral':
|
|
1380
|
-
'initialMargin':
|
|
1483
|
+
'maintenanceMarginPercentage': this.safeNumber2(position, 'keepMarginRate', 'mmr'),
|
|
1484
|
+
'collateral': this.safeNumber(position, 'available'),
|
|
1485
|
+
'initialMargin': this.safeNumber(position, 'marginSize'),
|
|
1381
1486
|
'initialMarginPercentage': undefined,
|
|
1382
1487
|
'leverage': this.safeNumber(position, 'leverage'),
|
|
1383
1488
|
'marginRatio': this.safeNumber(position, 'marginRate'),
|
|
@@ -1392,6 +1497,7 @@ export default class bitget extends bitgetRest {
|
|
|
1392
1497
|
* @see https://www.bitget.com/api-doc/contract/websocket/private/Plan-Order-Channel
|
|
1393
1498
|
* @see https://www.bitget.com/api-doc/margin/cross/websocket/private/Cross-Orders
|
|
1394
1499
|
* @see https://www.bitget.com/api-doc/margin/isolated/websocket/private/Isolate-Orders
|
|
1500
|
+
* @see https://www.bitget.com/api-doc/uta/websocket/private/Order-Channel
|
|
1395
1501
|
* @param {string} symbol unified market symbol of the market orders were made in
|
|
1396
1502
|
* @param {int} [since] the earliest time in ms to fetch orders for
|
|
1397
1503
|
* @param {int} [limit] the maximum number of order structures to retrieve
|
|
@@ -1400,6 +1506,7 @@ export default class bitget extends bitgetRest {
|
|
|
1400
1506
|
* @param {string} [params.marginMode] 'isolated' or 'cross' for watching spot margin orders]
|
|
1401
1507
|
* @param {string} [params.type] 'spot', 'swap'
|
|
1402
1508
|
* @param {string} [params.subType] 'linear', 'inverse'
|
|
1509
|
+
* @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
|
|
1403
1510
|
* @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1404
1511
|
*/
|
|
1405
1512
|
async watchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
@@ -1416,6 +1523,8 @@ export default class bitget extends bitgetRest {
|
|
|
1416
1523
|
marketId = market['id'];
|
|
1417
1524
|
messageHash = messageHash + ':' + symbol;
|
|
1418
1525
|
}
|
|
1526
|
+
let uta = undefined;
|
|
1527
|
+
[uta, params] = this.handleOptionAndParams(params, 'watchOrders', 'uta', false);
|
|
1419
1528
|
const productType = this.safeString(params, 'productType');
|
|
1420
1529
|
let type = undefined;
|
|
1421
1530
|
[type, params] = this.handleMarketTypeAndParams('watchOrders', market, params);
|
|
@@ -1441,7 +1550,7 @@ export default class bitget extends bitgetRest {
|
|
|
1441
1550
|
instType = 'SPOT';
|
|
1442
1551
|
}
|
|
1443
1552
|
else {
|
|
1444
|
-
[instType, params] = this.getInstType(market,
|
|
1553
|
+
[instType, params] = this.getInstType(market, uta, params);
|
|
1445
1554
|
}
|
|
1446
1555
|
if (type === 'spot' && (symbol !== undefined)) {
|
|
1447
1556
|
subscriptionHash = subscriptionHash + ':' + symbol;
|
|
@@ -1463,12 +1572,22 @@ export default class bitget extends bitgetRest {
|
|
|
1463
1572
|
channel = 'orders-crossed';
|
|
1464
1573
|
}
|
|
1465
1574
|
}
|
|
1575
|
+
if (uta) {
|
|
1576
|
+
instType = 'UTA';
|
|
1577
|
+
channel = 'order';
|
|
1578
|
+
}
|
|
1466
1579
|
subscriptionHash = subscriptionHash + ':' + instType;
|
|
1467
1580
|
const args = {
|
|
1468
1581
|
'instType': instType,
|
|
1469
|
-
'channel': channel,
|
|
1470
|
-
'instId': instId,
|
|
1471
1582
|
};
|
|
1583
|
+
const topicOrChannel = uta ? 'topic' : 'channel';
|
|
1584
|
+
args[topicOrChannel] = channel;
|
|
1585
|
+
if (!uta) {
|
|
1586
|
+
args['instId'] = instId;
|
|
1587
|
+
}
|
|
1588
|
+
else {
|
|
1589
|
+
params = this.extend(params, { 'uta': true });
|
|
1590
|
+
}
|
|
1472
1591
|
const orders = await this.watchPrivate(messageHash, subscriptionHash, args, params);
|
|
1473
1592
|
if (this.newUpdates) {
|
|
1474
1593
|
limit = orders.getLimit(symbol, limit);
|
|
@@ -1510,24 +1629,73 @@ export default class bitget extends bitgetRest {
|
|
|
1510
1629
|
// "ts": 1701923982497
|
|
1511
1630
|
// }
|
|
1512
1631
|
//
|
|
1632
|
+
// uta
|
|
1633
|
+
//
|
|
1634
|
+
// {
|
|
1635
|
+
// "action": "snapshot",
|
|
1636
|
+
// "arg": {
|
|
1637
|
+
// "instType": "UTA",
|
|
1638
|
+
// "topic": "order"
|
|
1639
|
+
// },
|
|
1640
|
+
// "data": [
|
|
1641
|
+
// {
|
|
1642
|
+
// "category": "usdt-futures",
|
|
1643
|
+
// "symbol": "BTCUSDT",
|
|
1644
|
+
// "orderId": "xxx",
|
|
1645
|
+
// "clientOid": "xxx",
|
|
1646
|
+
// "price": "",
|
|
1647
|
+
// "qty": "0.001",
|
|
1648
|
+
// "amount": "1000",
|
|
1649
|
+
// "holdMode": "hedge_mode",
|
|
1650
|
+
// "holdSide": "long",
|
|
1651
|
+
// "tradeSide": "open",
|
|
1652
|
+
// "orderType": "market",
|
|
1653
|
+
// "timeInForce": "gtc",
|
|
1654
|
+
// "side": "buy",
|
|
1655
|
+
// "marginMode": "crossed",
|
|
1656
|
+
// "marginCoin": "USDT",
|
|
1657
|
+
// "reduceOnly": "no",
|
|
1658
|
+
// "cumExecQty": "0.001",
|
|
1659
|
+
// "cumExecValue": "83.1315",
|
|
1660
|
+
// "avgPrice": "83131.5",
|
|
1661
|
+
// "totalProfit": "0",
|
|
1662
|
+
// "orderStatus": "filled",
|
|
1663
|
+
// "cancelReason": "",
|
|
1664
|
+
// "leverage": "20",
|
|
1665
|
+
// "feeDetail": [
|
|
1666
|
+
// {
|
|
1667
|
+
// "feeCoin": "USDT",
|
|
1668
|
+
// "fee": "0.0332526"
|
|
1669
|
+
// }
|
|
1670
|
+
// ],
|
|
1671
|
+
// "createdTime": "1742367838101",
|
|
1672
|
+
// "updatedTime": "1742367838115",
|
|
1673
|
+
// "stpMode": "none"
|
|
1674
|
+
// }
|
|
1675
|
+
// ],
|
|
1676
|
+
// "ts": 1742367838124
|
|
1677
|
+
// }
|
|
1678
|
+
//
|
|
1513
1679
|
const arg = this.safeDict(message, 'arg', {});
|
|
1514
|
-
const channel = this.
|
|
1515
|
-
const instType = this.
|
|
1680
|
+
const channel = this.safeString2(arg, 'channel', 'topic');
|
|
1681
|
+
const instType = this.safeStringLower(arg, 'instType');
|
|
1516
1682
|
const argInstId = this.safeString(arg, 'instId');
|
|
1517
1683
|
let marketType = undefined;
|
|
1518
|
-
if (instType === '
|
|
1684
|
+
if (instType === 'spot') {
|
|
1519
1685
|
marketType = 'spot';
|
|
1520
1686
|
}
|
|
1521
|
-
else if (instType === '
|
|
1687
|
+
else if (instType === 'margin') {
|
|
1522
1688
|
marketType = 'spot';
|
|
1523
1689
|
}
|
|
1524
1690
|
else {
|
|
1525
1691
|
marketType = 'contract';
|
|
1526
1692
|
}
|
|
1527
|
-
const
|
|
1528
|
-
const
|
|
1529
|
-
const
|
|
1530
|
-
const
|
|
1693
|
+
const data = this.safeList(message, 'data', []);
|
|
1694
|
+
const first = this.safeDict(data, 0, {});
|
|
1695
|
+
const category = this.safeStringLower(first, 'category', instType);
|
|
1696
|
+
const isLinearSwap = (category === 'usdt-futures');
|
|
1697
|
+
const isInverseSwap = (category === 'coin-futures');
|
|
1698
|
+
const isUSDCFutures = (category === 'usdc-futures');
|
|
1531
1699
|
if (this.orders === undefined) {
|
|
1532
1700
|
const limit = this.safeInteger(this.options, 'ordersLimit', 1000);
|
|
1533
1701
|
this.orders = new ArrayCacheBySymbolById(limit);
|
|
@@ -1539,7 +1707,7 @@ export default class bitget extends bitgetRest {
|
|
|
1539
1707
|
const marketSymbols = {};
|
|
1540
1708
|
for (let i = 0; i < data.length; i++) {
|
|
1541
1709
|
const order = data[i];
|
|
1542
|
-
const marketId = this.
|
|
1710
|
+
const marketId = this.safeString2(order, 'instId', 'symbol', argInstId);
|
|
1543
1711
|
const market = this.safeMarket(marketId, undefined, undefined, marketType);
|
|
1544
1712
|
const parsed = this.parseWsOrder(order, market);
|
|
1545
1713
|
stored.append(parsed);
|
|
@@ -1687,13 +1855,57 @@ export default class bitget extends bitgetRest {
|
|
|
1687
1855
|
// orderId: "1183419084588060673",
|
|
1688
1856
|
// }
|
|
1689
1857
|
//
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1858
|
+
// uta
|
|
1859
|
+
//
|
|
1860
|
+
// {
|
|
1861
|
+
// "category": "usdt-futures",
|
|
1862
|
+
// "symbol": "BTCUSDT",
|
|
1863
|
+
// "orderId": "xxx",
|
|
1864
|
+
// "clientOid": "xxx",
|
|
1865
|
+
// "price": "",
|
|
1866
|
+
// "qty": "0.001",
|
|
1867
|
+
// "amount": "1000",
|
|
1868
|
+
// "holdMode": "hedge_mode",
|
|
1869
|
+
// "holdSide": "long",
|
|
1870
|
+
// "tradeSide": "open",
|
|
1871
|
+
// "orderType": "market",
|
|
1872
|
+
// "timeInForce": "gtc",
|
|
1873
|
+
// "side": "buy",
|
|
1874
|
+
// "marginMode": "crossed",
|
|
1875
|
+
// "marginCoin": "USDT",
|
|
1876
|
+
// "reduceOnly": "no",
|
|
1877
|
+
// "cumExecQty": "0.001",
|
|
1878
|
+
// "cumExecValue": "83.1315",
|
|
1879
|
+
// "avgPrice": "83131.5",
|
|
1880
|
+
// "totalProfit": "0",
|
|
1881
|
+
// "orderStatus": "filled",
|
|
1882
|
+
// "cancelReason": "",
|
|
1883
|
+
// "leverage": "20",
|
|
1884
|
+
// "feeDetail": [
|
|
1885
|
+
// {
|
|
1886
|
+
// "feeCoin": "USDT",
|
|
1887
|
+
// "fee": "0.0332526"
|
|
1888
|
+
// }
|
|
1889
|
+
// ],
|
|
1890
|
+
// "createdTime": "1742367838101",
|
|
1891
|
+
// "updatedTime": "1742367838115",
|
|
1892
|
+
// "stpMode": "none"
|
|
1893
|
+
// }
|
|
1894
|
+
//
|
|
1895
|
+
let isSpot = !('posMode' in order);
|
|
1896
|
+
let isMargin = ('loanType' in order);
|
|
1897
|
+
const category = this.safeStringLower(order, 'category');
|
|
1898
|
+
if (category === 'spot') {
|
|
1899
|
+
isSpot = true;
|
|
1900
|
+
}
|
|
1901
|
+
if (category === 'margin') {
|
|
1902
|
+
isMargin = true;
|
|
1903
|
+
}
|
|
1904
|
+
const marketId = this.safeString2(order, 'instId', 'symbol');
|
|
1693
1905
|
market = this.safeMarket(marketId, market);
|
|
1694
|
-
const timestamp = this.
|
|
1906
|
+
const timestamp = this.safeInteger2(order, 'cTime', 'createdTime');
|
|
1695
1907
|
const symbol = market['symbol'];
|
|
1696
|
-
const rawStatus = this.
|
|
1908
|
+
const rawStatus = this.safeString2(order, 'status', 'orderStatus');
|
|
1697
1909
|
const orderFee = this.safeValue(order, 'feeDetail', []);
|
|
1698
1910
|
const fee = this.safeValue(orderFee, 0);
|
|
1699
1911
|
const feeAmount = this.safeString(fee, 'fee');
|
|
@@ -1715,23 +1927,23 @@ export default class bitget extends bitgetRest {
|
|
|
1715
1927
|
// for spot trigger order, limit price is this
|
|
1716
1928
|
price = this.safeNumber(order, 'executePrice');
|
|
1717
1929
|
}
|
|
1718
|
-
const avgPrice = this.omitZero(this.
|
|
1930
|
+
const avgPrice = this.omitZero(this.safeStringLowerN(order, ['priceAvg', 'fillPrice', 'avgPrice']));
|
|
1719
1931
|
const side = this.safeString(order, 'side');
|
|
1720
1932
|
const type = this.safeString(order, 'orderType');
|
|
1721
|
-
const accBaseVolume = this.omitZero(this.
|
|
1722
|
-
const newSizeValue = this.omitZero(this.
|
|
1933
|
+
const accBaseVolume = this.omitZero(this.safeString2(order, 'accBaseVolume', 'cumExecQty'));
|
|
1934
|
+
const newSizeValue = this.omitZero(this.safeString2(order, 'newSize', 'cumExecValue'));
|
|
1723
1935
|
const isMarketOrder = (type === 'market');
|
|
1724
1936
|
const isBuy = (side === 'buy');
|
|
1725
1937
|
let totalAmount = undefined;
|
|
1726
1938
|
let filledAmount = undefined;
|
|
1727
1939
|
let cost = undefined;
|
|
1728
1940
|
let remaining = undefined;
|
|
1729
|
-
let totalFilled = this.
|
|
1941
|
+
let totalFilled = this.safeString2(order, 'accBaseVolume', 'cumExecQty');
|
|
1730
1942
|
if (isSpot) {
|
|
1731
1943
|
if (isMargin) {
|
|
1732
|
-
totalAmount = this.
|
|
1733
|
-
totalFilled = this.
|
|
1734
|
-
cost = this.
|
|
1944
|
+
totalAmount = this.safeString2(order, 'baseSize', 'qty');
|
|
1945
|
+
totalFilled = this.safeString2(order, 'baseVolume', 'cumExecQty');
|
|
1946
|
+
cost = this.safeString2(order, 'fillTotalAmount', 'cumExecValue');
|
|
1735
1947
|
}
|
|
1736
1948
|
else {
|
|
1737
1949
|
const partialFillAmount = this.safeString(order, 'baseVolume');
|
|
@@ -1752,16 +1964,16 @@ export default class bitget extends bitgetRest {
|
|
|
1752
1964
|
}
|
|
1753
1965
|
}
|
|
1754
1966
|
else {
|
|
1755
|
-
totalAmount = this.
|
|
1967
|
+
totalAmount = this.safeString2(order, 'newSize', 'qty');
|
|
1756
1968
|
// we don't have cost for limit order
|
|
1757
1969
|
}
|
|
1758
1970
|
}
|
|
1759
1971
|
}
|
|
1760
1972
|
else {
|
|
1761
1973
|
// baseVolume should not be used for "amount" for contracts !
|
|
1762
|
-
filledAmount = this.
|
|
1763
|
-
totalAmount = this.
|
|
1764
|
-
cost = this.
|
|
1974
|
+
filledAmount = this.safeString2(order, 'baseVolume', 'cumExecQty');
|
|
1975
|
+
totalAmount = this.safeString2(order, 'size', 'qty');
|
|
1976
|
+
cost = this.safeString2(order, 'fillNotionalUsd', 'cumExecValue');
|
|
1765
1977
|
}
|
|
1766
1978
|
remaining = Precise.stringSub(totalAmount, totalFilled);
|
|
1767
1979
|
return this.safeOrder({
|
|
@@ -1771,9 +1983,9 @@ export default class bitget extends bitgetRest {
|
|
|
1771
1983
|
'clientOrderId': this.safeString(order, 'clientOid'),
|
|
1772
1984
|
'timestamp': timestamp,
|
|
1773
1985
|
'datetime': this.iso8601(timestamp),
|
|
1774
|
-
'lastTradeTimestamp': this.
|
|
1986
|
+
'lastTradeTimestamp': this.safeInteger2(order, 'uTime', 'updatedTime'),
|
|
1775
1987
|
'type': type,
|
|
1776
|
-
'timeInForce': this.
|
|
1988
|
+
'timeInForce': this.safeStringUpper2(order, 'force', 'timeInForce'),
|
|
1777
1989
|
'postOnly': undefined,
|
|
1778
1990
|
'side': side,
|
|
1779
1991
|
'price': price,
|
|
@@ -1844,7 +2056,7 @@ export default class bitget extends bitgetRest {
|
|
|
1844
2056
|
args['instId'] = 'default';
|
|
1845
2057
|
}
|
|
1846
2058
|
else {
|
|
1847
|
-
params
|
|
2059
|
+
params = this.extend(params, { 'uta': true });
|
|
1848
2060
|
}
|
|
1849
2061
|
const trades = await this.watchPrivate(messageHash, subscriptionHash, args, params);
|
|
1850
2062
|
if (this.newUpdates) {
|
|
@@ -1988,13 +2200,17 @@ export default class bitget extends bitgetRest {
|
|
|
1988
2200
|
* @see https://www.bitget.com/api-doc/contract/websocket/private/Account-Channel
|
|
1989
2201
|
* @see https://www.bitget.com/api-doc/margin/cross/websocket/private/Margin-Cross-Account-Assets
|
|
1990
2202
|
* @see https://www.bitget.com/api-doc/margin/isolated/websocket/private/Margin-isolated-account-assets
|
|
2203
|
+
* @see https://www.bitget.com/api-doc/uta/websocket/private/Account-Channel
|
|
1991
2204
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1992
2205
|
* @param {str} [params.type] spot or contract if not provided this.options['defaultType'] is used
|
|
1993
2206
|
* @param {string} [params.instType] one of 'SPOT', 'MARGIN', 'USDT-FUTURES', 'USDC-FUTURES', 'COIN-FUTURES', 'SUSDT-FUTURES', 'SUSDC-FUTURES' or 'SCOIN-FUTURES'
|
|
1994
2207
|
* @param {string} [params.marginMode] 'isolated' or 'cross' for watching spot margin balances
|
|
2208
|
+
* @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
|
|
1995
2209
|
* @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
|
|
1996
2210
|
*/
|
|
1997
2211
|
async watchBalance(params = {}) {
|
|
2212
|
+
let uta = undefined;
|
|
2213
|
+
[uta, params] = this.handleOptionAndParams(params, 'watchBalance', 'uta', false);
|
|
1998
2214
|
let type = undefined;
|
|
1999
2215
|
[type, params] = this.handleMarketTypeAndParams('watchBalance', undefined, params);
|
|
2000
2216
|
let marginMode = undefined;
|
|
@@ -2006,22 +2222,33 @@ export default class bitget extends bitgetRest {
|
|
|
2006
2222
|
}
|
|
2007
2223
|
else if (marginMode !== undefined) {
|
|
2008
2224
|
instType = 'MARGIN';
|
|
2009
|
-
if (
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
|
|
2225
|
+
if (!uta) {
|
|
2226
|
+
if (marginMode === 'isolated') {
|
|
2227
|
+
channel = 'account-isolated';
|
|
2228
|
+
}
|
|
2229
|
+
else {
|
|
2230
|
+
channel = 'account-crossed';
|
|
2231
|
+
}
|
|
2014
2232
|
}
|
|
2015
2233
|
}
|
|
2016
|
-
else {
|
|
2234
|
+
else if (!uta) {
|
|
2017
2235
|
instType = 'SPOT';
|
|
2018
2236
|
}
|
|
2019
2237
|
[instType, params] = this.handleOptionAndParams(params, 'watchBalance', 'instType', instType);
|
|
2238
|
+
if (uta) {
|
|
2239
|
+
instType = 'UTA';
|
|
2240
|
+
}
|
|
2020
2241
|
const args = {
|
|
2021
2242
|
'instType': instType,
|
|
2022
|
-
'channel': channel,
|
|
2023
|
-
'coin': 'default',
|
|
2024
2243
|
};
|
|
2244
|
+
const topicOrChannel = uta ? 'topic' : 'channel';
|
|
2245
|
+
args[topicOrChannel] = channel;
|
|
2246
|
+
if (!uta) {
|
|
2247
|
+
args['coin'] = 'default';
|
|
2248
|
+
}
|
|
2249
|
+
else {
|
|
2250
|
+
params = this.extend(params, { 'uta': true });
|
|
2251
|
+
}
|
|
2025
2252
|
const messageHash = 'balance:' + instType.toLowerCase();
|
|
2026
2253
|
return await this.watchPrivate(messageHash, messageHash, args, params);
|
|
2027
2254
|
}
|
|
@@ -2084,26 +2311,76 @@ export default class bitget extends bitgetRest {
|
|
|
2084
2311
|
// "ts": 1701933110544
|
|
2085
2312
|
// }
|
|
2086
2313
|
//
|
|
2314
|
+
// uta
|
|
2315
|
+
//
|
|
2316
|
+
// {
|
|
2317
|
+
// "data": [{
|
|
2318
|
+
// "unrealisedPnL": "-10116.55",
|
|
2319
|
+
// "totalEquity": "4976919.05",
|
|
2320
|
+
// "positionMgnRatio": "0",
|
|
2321
|
+
// "mmr": "408.08",
|
|
2322
|
+
// "effEquity": "4847952.35",
|
|
2323
|
+
// "imr": "17795.97",
|
|
2324
|
+
// "mgnRatio": "0",
|
|
2325
|
+
// "coin": [{
|
|
2326
|
+
// "debts": "0",
|
|
2327
|
+
// "balance": "0.9992",
|
|
2328
|
+
// "available": "0.9992",
|
|
2329
|
+
// "borrow": "0",
|
|
2330
|
+
// "locked": "0",
|
|
2331
|
+
// "equity": "0.9992",
|
|
2332
|
+
// "coin": "ETH",
|
|
2333
|
+
// "usdValue": "2488.667472"
|
|
2334
|
+
// }]
|
|
2335
|
+
// }],
|
|
2336
|
+
// "arg": {
|
|
2337
|
+
// "instType": "UTA",
|
|
2338
|
+
// "topic": "account"
|
|
2339
|
+
// },
|
|
2340
|
+
// "action": "snapshot",
|
|
2341
|
+
// "ts": 1740546523244
|
|
2342
|
+
// }
|
|
2343
|
+
//
|
|
2344
|
+
const arg = this.safeDict(message, 'arg', {});
|
|
2345
|
+
const instType = this.safeStringLower(arg, 'instType');
|
|
2087
2346
|
const data = this.safeValue(message, 'data', []);
|
|
2088
2347
|
for (let i = 0; i < data.length; i++) {
|
|
2089
2348
|
const rawBalance = data[i];
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2349
|
+
if (instType === 'uta') {
|
|
2350
|
+
const coins = this.safeList(rawBalance, 'coin', []);
|
|
2351
|
+
for (let j = 0; j < coins.length; j++) {
|
|
2352
|
+
const entry = coins[j];
|
|
2353
|
+
const currencyId = this.safeString(entry, 'coin');
|
|
2354
|
+
const code = this.safeCurrencyCode(currencyId);
|
|
2355
|
+
const account = (code in this.balance) ? this.balance[code] : this.account();
|
|
2356
|
+
const borrow = this.safeString(entry, 'borrow');
|
|
2357
|
+
const debts = this.safeString(entry, 'debts');
|
|
2358
|
+
if ((borrow !== undefined) || (debts !== undefined)) {
|
|
2359
|
+
account['debt'] = Precise.stringAdd(borrow, debts);
|
|
2360
|
+
}
|
|
2361
|
+
account['free'] = this.safeString(entry, 'available');
|
|
2362
|
+
account['used'] = this.safeString(entry, 'locked');
|
|
2363
|
+
account['total'] = this.safeString(entry, 'balance');
|
|
2364
|
+
this.balance[code] = account;
|
|
2365
|
+
}
|
|
2366
|
+
}
|
|
2367
|
+
else {
|
|
2368
|
+
const currencyId = this.safeString2(rawBalance, 'coin', 'marginCoin');
|
|
2369
|
+
const code = this.safeCurrencyCode(currencyId);
|
|
2370
|
+
const account = (code in this.balance) ? this.balance[code] : this.account();
|
|
2371
|
+
const borrow = this.safeString(rawBalance, 'borrow');
|
|
2372
|
+
if (borrow !== undefined) {
|
|
2373
|
+
const interest = this.safeString(rawBalance, 'interest');
|
|
2374
|
+
account['debt'] = Precise.stringAdd(borrow, interest);
|
|
2375
|
+
}
|
|
2376
|
+
const freeQuery = ('maxTransferOut' in rawBalance) ? 'maxTransferOut' : 'available';
|
|
2377
|
+
account['free'] = this.safeString(rawBalance, freeQuery);
|
|
2378
|
+
account['total'] = this.safeString(rawBalance, 'equity');
|
|
2379
|
+
account['used'] = this.safeString(rawBalance, 'frozen');
|
|
2380
|
+
this.balance[code] = account;
|
|
2097
2381
|
}
|
|
2098
|
-
const freeQuery = ('maxTransferOut' in rawBalance) ? 'maxTransferOut' : 'available';
|
|
2099
|
-
account['free'] = this.safeString(rawBalance, freeQuery);
|
|
2100
|
-
account['total'] = this.safeString(rawBalance, 'equity');
|
|
2101
|
-
account['used'] = this.safeString(rawBalance, 'frozen');
|
|
2102
|
-
this.balance[code] = account;
|
|
2103
2382
|
}
|
|
2104
2383
|
this.balance = this.safeBalance(this.balance);
|
|
2105
|
-
const arg = this.safeValue(message, 'arg');
|
|
2106
|
-
const instType = this.safeStringLower(arg, 'instType');
|
|
2107
2384
|
const messageHash = 'balance:' + instType;
|
|
2108
2385
|
client.resolve(this.balance, messageHash);
|
|
2109
2386
|
}
|
|
@@ -2403,12 +2680,14 @@ export default class bitget extends bitgetRest {
|
|
|
2403
2680
|
'trade': this.handleTrades,
|
|
2404
2681
|
'publicTrade': this.handleTrades,
|
|
2405
2682
|
'fill': this.handleMyTrades,
|
|
2683
|
+
'order': this.handleOrder,
|
|
2406
2684
|
'orders': this.handleOrder,
|
|
2407
2685
|
'ordersAlgo': this.handleOrder,
|
|
2408
2686
|
'orders-algo': this.handleOrder,
|
|
2409
2687
|
'orders-crossed': this.handleOrder,
|
|
2410
2688
|
'orders-isolated': this.handleOrder,
|
|
2411
2689
|
'account': this.handleBalance,
|
|
2690
|
+
'position': this.handlePositions,
|
|
2412
2691
|
'positions': this.handlePositions,
|
|
2413
2692
|
'account-isolated': this.handleBalance,
|
|
2414
2693
|
'account-crossed': this.handleBalance,
|