ccxt 4.4.89 → 4.4.91
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 +15 -17
- package/dist/ccxt.browser.min.js +3 -3
- package/dist/cjs/ccxt.js +1 -4
- 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/coinlist.js +1 -1
- package/dist/cjs/src/abstract/coinmate.js +1 -1
- package/dist/cjs/src/abstract/coinmetro.js +1 -1
- package/dist/cjs/src/abstract/coinone.js +1 -1
- package/dist/cjs/src/abstract/coinsph.js +1 -1
- package/dist/cjs/src/abstract/coinspot.js +1 -1
- package/dist/cjs/src/abstract/cryptocom.js +1 -1
- package/dist/cjs/src/abstract/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/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 +1 -1
- package/dist/cjs/src/ascendex.js +1 -1
- package/dist/cjs/src/base/Exchange.js +11 -12
- 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 +2 -2
- package/dist/cjs/src/base/functions/generic.js +6 -0
- package/dist/cjs/src/base/functions/misc.js +1 -0
- package/dist/cjs/src/base/functions/number.js +6 -0
- package/dist/cjs/src/base/functions/platform.js +6 -0
- package/dist/cjs/src/base/functions/rsa.js +1 -0
- package/dist/cjs/src/base/functions/string.js +6 -0
- package/dist/cjs/src/base/functions/throttle.js +1 -1
- package/dist/cjs/src/base/functions/time.js +6 -0
- package/dist/cjs/src/base/functions/totp.js +1 -0
- package/dist/cjs/src/base/functions/type.js +6 -0
- package/dist/cjs/src/base/functions.js +2 -1
- package/dist/cjs/src/base/ws/Cache.js +6 -0
- package/dist/cjs/src/base/ws/Client.js +5 -34
- 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 +3 -3
- 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 +14 -12
- 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 +494 -155
- package/dist/cjs/src/bithumb.js +1 -1
- package/dist/cjs/src/bitmart.js +1 -1
- package/dist/cjs/src/bitmex.js +3 -2
- package/dist/cjs/src/bitopro.js +1 -1
- package/dist/cjs/src/bitrue.js +73 -67
- 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 +36 -1
- package/dist/cjs/src/btcmarkets.js +36 -1
- package/dist/cjs/src/btcturk.js +36 -1
- package/dist/cjs/src/bybit.js +10 -4
- package/dist/cjs/src/cex.js +62 -1
- package/dist/cjs/src/coinbase.js +1 -4
- package/dist/cjs/src/coinbaseadvanced.js +1 -1
- 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/coinlist.js +1 -0
- 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 +1 -1
- package/dist/cjs/src/cryptocom.js +22 -3
- package/dist/cjs/src/cryptomus.js +2 -2
- package/dist/cjs/src/defx.js +1 -1
- package/dist/cjs/src/delta.js +3 -3
- 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/ellipx.js +1 -1
- package/dist/cjs/src/exmo.js +15 -8
- package/dist/cjs/src/fmfwio.js +2 -2
- package/dist/cjs/src/gate.js +3 -3
- package/dist/cjs/src/gateio.js +1 -1
- package/dist/cjs/src/gemini.js +1 -1
- package/dist/cjs/src/hashkey.js +1 -1
- package/dist/cjs/src/hitbtc.js +1 -0
- package/dist/cjs/src/hollaex.js +29 -25
- package/dist/cjs/src/htx.js +1 -1
- package/dist/cjs/src/huobi.js +1 -1
- package/dist/cjs/src/hyperliquid.js +116 -60
- package/dist/cjs/src/independentreserve.js +1 -1
- package/dist/cjs/src/indodax.js +1 -1
- package/dist/cjs/src/kraken.js +30 -2
- package/dist/cjs/src/krakenfutures.js +1 -1
- package/dist/cjs/src/kucoin.js +1 -1
- package/dist/cjs/src/kucoinfutures.js +1 -1
- package/dist/cjs/src/latoken.js +1 -1
- package/dist/cjs/src/lbank.js +1 -1
- package/dist/cjs/src/luno.js +1 -1
- package/dist/cjs/src/mercado.js +1 -1
- package/dist/cjs/src/mexc.js +2 -1
- package/dist/cjs/src/modetrade.js +3 -3
- package/dist/cjs/src/myokx.js +1 -1
- package/dist/cjs/src/ndax.js +1 -1
- package/dist/cjs/src/novadax.js +1 -1
- package/dist/cjs/src/oceanex.js +1 -1
- package/dist/cjs/src/okcoin.js +1 -1
- package/dist/cjs/src/okx.js +1 -1
- package/dist/cjs/src/okxus.js +1 -1
- package/dist/cjs/src/onetrading.js +1 -1
- package/dist/cjs/src/oxfun.js +1 -1
- package/dist/cjs/src/p2b.js +1 -1
- package/dist/cjs/src/paradex.js +2 -2
- package/dist/cjs/src/paymium.js +1 -1
- 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 +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 +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 +2 -2
- 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 +7 -144
- 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 +252 -265
- 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 -2
- 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 +4 -4
- package/dist/cjs/src/upbit.js +1 -1
- package/dist/cjs/src/vertex.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 +2 -2
- 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 +2 -5
- package/js/ccxt.js +8 -4
- package/js/src/abstract/alpaca.js +6 -0
- package/js/src/abstract/apex.js +6 -0
- package/js/src/abstract/ascendex.js +6 -0
- package/js/src/abstract/bequant.js +6 -0
- package/js/src/abstract/bigone.js +6 -0
- package/js/src/abstract/binance.js +6 -0
- package/js/src/abstract/binancecoinm.js +6 -0
- package/js/src/abstract/binanceus.js +6 -0
- package/js/src/abstract/binanceusdm.js +6 -0
- package/js/src/abstract/bingx.js +6 -0
- package/js/src/abstract/bit2c.js +6 -0
- package/js/src/abstract/bitbank.js +6 -0
- package/js/src/abstract/bitbns.js +6 -0
- package/js/src/abstract/bitfinex.js +6 -0
- package/js/src/abstract/bitflyer.js +6 -0
- package/js/src/abstract/bitget.d.ts +58 -0
- package/js/src/abstract/bitget.js +6 -0
- package/js/src/abstract/bithumb.js +6 -0
- package/js/src/abstract/bitmart.js +6 -0
- package/js/src/abstract/bitmex.js +6 -0
- package/js/src/abstract/bitopro.js +6 -0
- package/js/src/abstract/bitrue.js +6 -0
- package/js/src/abstract/bitso.js +6 -0
- package/js/src/abstract/bitstamp.js +6 -0
- package/js/src/abstract/bitteam.js +6 -0
- package/js/src/abstract/bittrade.js +6 -0
- package/js/src/abstract/bitvavo.js +6 -0
- package/js/src/abstract/blockchaincom.js +6 -0
- package/js/src/abstract/blofin.js +6 -0
- package/js/src/abstract/btcalpha.js +6 -0
- package/js/src/abstract/btcbox.js +6 -0
- package/js/src/abstract/btcmarkets.js +6 -0
- package/js/src/abstract/btcturk.js +6 -0
- package/js/src/abstract/bybit.js +6 -0
- package/js/src/abstract/cex.js +6 -0
- package/js/src/abstract/coinbase.js +6 -0
- package/js/src/abstract/coinbaseadvanced.js +6 -0
- package/js/src/abstract/coinbaseexchange.js +6 -0
- package/js/src/abstract/coinbaseinternational.js +6 -0
- package/js/src/abstract/coincatch.js +6 -0
- package/js/src/abstract/coincheck.js +6 -0
- package/js/src/abstract/coinex.js +6 -0
- package/js/src/abstract/coinmate.js +6 -0
- package/js/src/abstract/coinmetro.js +6 -0
- package/js/src/abstract/coinone.js +6 -0
- package/js/src/abstract/coinsph.js +6 -0
- package/js/src/abstract/coinspot.js +6 -0
- package/js/src/abstract/cryptocom.js +6 -0
- package/js/src/abstract/cryptomus.js +6 -0
- package/js/src/abstract/defx.js +6 -0
- package/js/src/abstract/delta.js +6 -0
- package/js/src/abstract/deribit.js +6 -0
- package/js/src/abstract/derive.js +6 -0
- package/js/src/abstract/digifinex.js +6 -0
- package/js/src/abstract/ellipx.js +6 -0
- package/js/src/abstract/exmo.js +6 -0
- package/js/src/abstract/fmfwio.js +6 -0
- package/js/src/abstract/gate.js +6 -0
- package/js/src/abstract/gateio.js +6 -0
- package/js/src/abstract/gemini.js +6 -0
- package/js/src/abstract/hashkey.js +6 -0
- package/js/src/abstract/hitbtc.js +6 -0
- package/js/src/abstract/hollaex.js +6 -0
- package/js/src/abstract/htx.js +6 -0
- package/js/src/abstract/huobi.js +6 -0
- package/js/src/abstract/hyperliquid.js +6 -0
- package/js/src/abstract/independentreserve.js +6 -0
- package/js/src/abstract/indodax.js +6 -0
- package/js/src/abstract/kraken.js +6 -0
- package/js/src/abstract/krakenfutures.js +6 -0
- package/js/src/abstract/kucoin.js +6 -0
- package/js/src/abstract/kucoinfutures.js +6 -0
- package/js/src/abstract/latoken.js +6 -0
- package/js/src/abstract/lbank.js +6 -0
- package/js/src/abstract/luno.js +6 -0
- package/js/src/abstract/mercado.js +6 -0
- package/js/src/abstract/mexc.js +6 -0
- package/js/src/abstract/modetrade.js +6 -0
- package/js/src/abstract/myokx.js +6 -0
- package/js/src/abstract/ndax.js +6 -0
- package/js/src/abstract/novadax.js +6 -0
- package/js/src/abstract/oceanex.js +6 -0
- package/js/src/abstract/okcoin.js +6 -0
- package/js/src/abstract/okx.js +6 -0
- package/js/src/abstract/okxus.js +6 -0
- package/js/src/abstract/onetrading.js +6 -0
- package/js/src/abstract/oxfun.js +6 -0
- package/js/src/abstract/p2b.js +6 -0
- package/js/src/abstract/paradex.js +6 -0
- package/js/src/abstract/paymium.js +6 -0
- package/js/src/abstract/phemex.js +6 -0
- package/js/src/abstract/poloniex.js +6 -0
- package/js/src/abstract/probit.js +6 -0
- package/js/src/abstract/timex.js +6 -0
- package/js/src/abstract/tokocrypto.js +6 -0
- package/js/src/abstract/tradeogre.js +6 -0
- package/js/src/abstract/upbit.js +6 -0
- package/js/src/abstract/vertex.js +6 -0
- package/js/src/abstract/wavesexchange.js +6 -0
- package/js/src/abstract/whitebit.js +6 -0
- package/js/src/abstract/woo.js +6 -0
- package/js/src/abstract/woofipro.js +6 -0
- package/js/src/abstract/xt.js +6 -0
- package/js/src/abstract/yobit.js +6 -0
- package/js/src/abstract/zaif.js +6 -0
- package/js/src/abstract/zonda.js +6 -0
- package/js/src/alpaca.js +6 -0
- package/js/src/apex.js +6 -0
- package/js/src/ascendex.js +6 -0
- package/js/src/base/Exchange.d.ts +6 -4
- package/js/src/base/Exchange.js +18 -13
- package/js/src/base/Precise.js +6 -0
- package/js/src/base/errorHierarchy.js +6 -0
- package/js/src/base/errors.js +6 -0
- package/js/src/base/functions/crypto.js +6 -0
- package/js/src/base/functions/encode.d.ts +1 -1
- package/js/src/base/functions/encode.js +7 -1
- package/js/src/base/functions/generic.d.ts +2 -1
- package/js/src/base/functions/generic.js +12 -1
- package/js/src/base/functions/misc.js +6 -0
- package/js/src/base/functions/number.js +6 -0
- package/js/src/base/functions/platform.js +6 -0
- package/js/src/base/functions/rsa.js +6 -0
- package/js/src/base/functions/string.js +6 -0
- package/js/src/base/functions/throttle.js +6 -0
- package/js/src/base/functions/time.js +6 -0
- package/js/src/base/functions/totp.js +6 -0
- package/js/src/base/functions/type.js +6 -0
- package/js/src/base/functions.js +6 -0
- package/js/src/base/types.js +6 -0
- package/js/src/base/ws/Cache.js +6 -0
- package/js/src/base/ws/Client.d.ts +0 -2
- package/js/src/base/ws/Client.js +10 -34
- package/js/src/base/ws/Future.js +6 -0
- package/js/src/base/ws/OrderBook.js +6 -0
- package/js/src/base/ws/OrderBookSide.js +6 -0
- package/js/src/base/ws/WsClient.js +6 -0
- package/js/src/base/ws/functions.js +6 -0
- package/js/src/bequant.js +6 -0
- package/js/src/bigone.js +6 -0
- package/js/src/binance.js +8 -2
- package/js/src/binancecoinm.js +6 -0
- package/js/src/binanceus.js +6 -0
- package/js/src/binanceusdm.js +6 -0
- package/js/src/bingx.d.ts +1 -1
- package/js/src/bingx.js +19 -11
- package/js/src/bit2c.js +6 -0
- package/js/src/bitbank.js +6 -0
- package/js/src/bitbns.js +6 -0
- package/js/src/bitfinex.js +6 -0
- package/js/src/bitflyer.js +6 -0
- package/js/src/bitget.d.ts +4 -1
- package/js/src/bitget.js +499 -154
- package/js/src/bithumb.js +6 -0
- package/js/src/bitmart.js +6 -0
- package/js/src/bitmex.js +8 -1
- package/js/src/bitopro.js +6 -0
- package/js/src/bitrue.js +78 -66
- package/js/src/bitso.js +6 -0
- package/js/src/bitstamp.js +6 -0
- package/js/src/bitteam.js +6 -0
- package/js/src/bittrade.js +6 -0
- package/js/src/bitvavo.js +6 -0
- package/js/src/blockchaincom.js +6 -0
- package/js/src/blofin.js +6 -0
- package/js/src/btcalpha.js +6 -0
- package/js/src/btcbox.js +41 -0
- package/js/src/btcmarkets.js +41 -0
- package/js/src/btcturk.js +41 -0
- package/js/src/bybit.js +15 -3
- package/js/src/cex.js +67 -0
- package/js/src/coinbase.d.ts +1 -1
- package/js/src/coinbase.js +7 -4
- package/js/src/coinbaseadvanced.js +6 -0
- package/js/src/coinbaseexchange.d.ts +1 -1
- package/js/src/coinbaseexchange.js +6 -0
- package/js/src/coinbaseinternational.js +6 -0
- package/js/src/coincatch.js +6 -0
- package/js/src/coincheck.js +6 -0
- package/js/src/coinex.js +6 -0
- package/js/src/coinmate.js +6 -0
- package/js/src/coinmetro.js +6 -0
- package/js/src/coinone.js +6 -0
- package/js/src/coinsph.js +6 -0
- package/js/src/coinspot.js +6 -0
- package/js/src/cryptocom.js +27 -2
- package/js/src/cryptomus.js +7 -1
- package/js/src/defx.js +6 -0
- package/js/src/delta.js +8 -2
- package/js/src/deribit.js +6 -0
- package/js/src/derive.js +6 -0
- package/js/src/digifinex.js +6 -0
- package/js/src/ellipx.js +6 -0
- package/js/src/exmo.js +20 -7
- package/js/src/fmfwio.js +8 -2
- package/js/src/gate.js +8 -2
- package/js/src/gateio.js +6 -0
- package/js/src/gemini.js +6 -0
- package/js/src/hashkey.js +6 -0
- package/js/src/hitbtc.js +6 -0
- package/js/src/hollaex.d.ts +1 -2
- package/js/src/hollaex.js +35 -25
- package/js/src/htx.js +6 -0
- package/js/src/huobi.js +6 -0
- package/js/src/hyperliquid.d.ts +1 -0
- package/js/src/hyperliquid.js +121 -59
- package/js/src/independentreserve.js +6 -0
- package/js/src/indodax.js +6 -0
- package/js/src/kraken.js +35 -1
- package/js/src/krakenfutures.js +6 -0
- package/js/src/kucoin.js +6 -0
- package/js/src/kucoinfutures.js +6 -0
- package/js/src/latoken.js +6 -0
- package/js/src/lbank.js +6 -0
- package/js/src/luno.js +6 -0
- package/js/src/mercado.js +6 -0
- package/js/src/mexc.js +7 -0
- package/js/src/modetrade.js +8 -2
- package/js/src/myokx.js +6 -0
- package/js/src/ndax.js +6 -0
- package/js/src/novadax.js +6 -0
- package/js/src/oceanex.js +6 -0
- package/js/src/okcoin.js +6 -0
- package/js/src/okx.js +6 -0
- package/js/src/okxus.js +6 -0
- package/js/src/onetrading.js +6 -0
- package/js/src/oxfun.js +6 -0
- package/js/src/p2b.d.ts +1 -2
- package/js/src/p2b.js +6 -0
- package/js/src/paradex.js +7 -1
- package/js/src/paymium.js +6 -0
- package/js/src/phemex.js +6 -0
- package/js/src/poloniex.js +6 -0
- package/js/src/pro/alpaca.js +6 -0
- package/js/src/pro/apex.js +6 -0
- package/js/src/pro/ascendex.js +6 -0
- package/js/src/pro/bequant.js +6 -0
- package/js/src/pro/binance.js +6 -0
- package/js/src/pro/binancecoinm.js +6 -0
- package/js/src/pro/binanceus.js +6 -0
- package/js/src/pro/binanceusdm.js +6 -0
- package/js/src/pro/bingx.js +6 -0
- package/js/src/pro/bitfinex.js +6 -0
- package/js/src/pro/bitget.js +6 -0
- package/js/src/pro/bithumb.js +6 -0
- package/js/src/pro/bitmart.js +6 -0
- package/js/src/pro/bitmex.js +6 -0
- package/js/src/pro/bitopro.js +6 -0
- package/js/src/pro/bitrue.js +6 -0
- package/js/src/pro/bitstamp.js +7 -1
- package/js/src/pro/bittrade.js +6 -0
- package/js/src/pro/bitvavo.js +6 -0
- package/js/src/pro/blockchaincom.js +6 -0
- package/js/src/pro/blofin.js +6 -0
- package/js/src/pro/bybit.d.ts +0 -1
- package/js/src/pro/bybit.js +12 -143
- package/js/src/pro/cex.js +6 -0
- package/js/src/pro/coinbase.js +6 -0
- package/js/src/pro/coinbaseadvanced.js +6 -0
- package/js/src/pro/coinbaseexchange.js +6 -0
- package/js/src/pro/coinbaseinternational.js +6 -0
- package/js/src/pro/coincatch.js +6 -0
- package/js/src/pro/coincheck.js +6 -0
- package/js/src/pro/coinex.js +6 -0
- package/js/src/pro/coinone.js +6 -0
- package/js/src/pro/cryptocom.js +6 -0
- package/js/src/pro/defx.js +6 -0
- package/js/src/pro/deribit.js +6 -0
- package/js/src/pro/derive.js +6 -0
- package/js/src/pro/exmo.js +6 -0
- package/js/src/pro/gate.js +6 -0
- package/js/src/pro/gateio.js +6 -0
- package/js/src/pro/gemini.js +6 -0
- package/js/src/pro/hashkey.js +6 -0
- package/js/src/pro/hitbtc.js +6 -0
- package/js/src/pro/hollaex.js +6 -0
- package/js/src/pro/htx.js +6 -0
- package/js/src/pro/huobi.js +6 -0
- package/js/src/pro/hyperliquid.js +6 -0
- package/js/src/pro/independentreserve.js +6 -0
- package/js/src/pro/kraken.d.ts +17 -17
- package/js/src/pro/kraken.js +257 -264
- package/js/src/pro/krakenfutures.js +6 -0
- package/js/src/pro/kucoin.js +6 -0
- package/js/src/pro/kucoinfutures.js +6 -0
- package/js/src/pro/lbank.js +6 -0
- package/js/src/pro/luno.js +6 -0
- package/js/src/pro/mexc.js +6 -1
- package/js/src/pro/modetrade.js +6 -0
- package/js/src/pro/myokx.js +6 -0
- package/js/src/pro/ndax.js +6 -0
- package/js/src/pro/okcoin.js +6 -0
- package/js/src/pro/okx.js +6 -0
- package/js/src/pro/okxus.js +6 -0
- package/js/src/pro/onetrading.js +6 -0
- package/js/src/pro/oxfun.js +6 -0
- package/js/src/pro/p2b.js +6 -0
- package/js/src/pro/paradex.js +6 -0
- package/js/src/pro/phemex.js +6 -0
- package/js/src/pro/poloniex.js +6 -0
- package/js/src/pro/probit.js +6 -0
- package/js/src/pro/tradeogre.js +6 -0
- package/js/src/pro/upbit.js +6 -0
- package/js/src/pro/vertex.js +6 -0
- package/js/src/pro/whitebit.js +6 -0
- package/js/src/pro/woo.js +6 -0
- package/js/src/pro/woofipro.js +6 -0
- package/js/src/pro/xt.js +6 -0
- package/js/src/probit.js +6 -0
- package/js/src/static_dependencies/ethers/abi-coder.js +6 -0
- package/js/src/static_dependencies/ethers/address/address.js +6 -0
- package/js/src/static_dependencies/ethers/address/checks.js +6 -0
- package/js/src/static_dependencies/ethers/address/contract-address.js +6 -0
- package/js/src/static_dependencies/ethers/address/index.js +6 -0
- package/js/src/static_dependencies/ethers/bytes32.js +6 -0
- package/js/src/static_dependencies/ethers/coders/abstract-coder.js +6 -0
- package/js/src/static_dependencies/ethers/coders/address.js +6 -0
- package/js/src/static_dependencies/ethers/coders/anonymous.js +6 -0
- package/js/src/static_dependencies/ethers/coders/array.js +6 -0
- package/js/src/static_dependencies/ethers/coders/boolean.js +6 -0
- package/js/src/static_dependencies/ethers/coders/bytes.js +6 -0
- package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +6 -0
- package/js/src/static_dependencies/ethers/coders/null.js +6 -0
- package/js/src/static_dependencies/ethers/coders/number.js +6 -0
- package/js/src/static_dependencies/ethers/coders/string.js +6 -0
- package/js/src/static_dependencies/ethers/coders/tuple.js +6 -0
- package/js/src/static_dependencies/ethers/fragments.js +6 -0
- package/js/src/static_dependencies/ethers/hash/index.js +6 -0
- package/js/src/static_dependencies/ethers/hash/solidity.js +6 -0
- package/js/src/static_dependencies/ethers/hash/typed-data.js +6 -0
- package/js/src/static_dependencies/ethers/index.js +6 -0
- package/js/src/static_dependencies/ethers/interface.js +6 -0
- package/js/src/static_dependencies/ethers/typed.js +6 -0
- package/js/src/static_dependencies/ethers/utils/base58.js +6 -0
- package/js/src/static_dependencies/ethers/utils/base64-browser.js +6 -0
- package/js/src/static_dependencies/ethers/utils/base64.js +6 -0
- package/js/src/static_dependencies/ethers/utils/data.js +6 -0
- package/js/src/static_dependencies/ethers/utils/errors.js +6 -0
- package/js/src/static_dependencies/ethers/utils/events.js +6 -0
- package/js/src/static_dependencies/ethers/utils/fixednumber.js +6 -0
- package/js/src/static_dependencies/ethers/utils/index.js +6 -0
- package/js/src/static_dependencies/ethers/utils/maths.js +6 -0
- package/js/src/static_dependencies/ethers/utils/properties.js +6 -0
- package/js/src/static_dependencies/ethers/utils/rlp-decode.js +6 -0
- package/js/src/static_dependencies/ethers/utils/rlp-encode.js +6 -0
- package/js/src/static_dependencies/ethers/utils/rlp.js +6 -0
- package/js/src/static_dependencies/ethers/utils/units.js +6 -0
- package/js/src/static_dependencies/ethers/utils/utf8.js +6 -0
- package/js/src/static_dependencies/ethers/utils/uuid.js +6 -0
- package/js/src/static_dependencies/fflake/browser.d.ts +5 -5
- package/js/src/static_dependencies/fflake/browser.js +6 -0
- package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +6 -0
- package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +6 -0
- package/js/src/static_dependencies/jsencrypt/index.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +1 -1
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +6 -0
- package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
- package/js/src/static_dependencies/messagepack/msgpack.js +6 -0
- package/js/src/static_dependencies/noble-curves/_shortw_utils.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/curve.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/edwards.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/modular.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/utils.js +6 -0
- package/js/src/static_dependencies/noble-curves/abstract/weierstrass.d.ts +0 -1
- package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +6 -0
- package/js/src/static_dependencies/noble-curves/bn.js +6 -0
- package/js/src/static_dependencies/noble-curves/ed25519.js +6 -0
- package/js/src/static_dependencies/noble-curves/ed448.js +6 -0
- package/js/src/static_dependencies/noble-curves/index.js +6 -0
- package/js/src/static_dependencies/noble-curves/jubjub.js +6 -0
- package/js/src/static_dependencies/noble-curves/p256.js +6 -0
- package/js/src/static_dependencies/noble-curves/p384.js +6 -0
- package/js/src/static_dependencies/noble-curves/p521.js +6 -0
- package/js/src/static_dependencies/noble-curves/pasta.js +6 -0
- package/js/src/static_dependencies/noble-curves/secp256k1.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_assert.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_blake2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_sha2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/_u64.js +6 -0
- package/js/src/static_dependencies/noble-hashes/argon2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/blake2b.js +6 -0
- package/js/src/static_dependencies/noble-hashes/blake2s.js +6 -0
- package/js/src/static_dependencies/noble-hashes/blake3.js +6 -0
- package/js/src/static_dependencies/noble-hashes/crypto.js +6 -0
- package/js/src/static_dependencies/noble-hashes/cryptoNode.js +6 -0
- package/js/src/static_dependencies/noble-hashes/eskdf.js +6 -0
- package/js/src/static_dependencies/noble-hashes/hkdf.js +6 -0
- package/js/src/static_dependencies/noble-hashes/hmac.js +6 -0
- package/js/src/static_dependencies/noble-hashes/index.js +6 -0
- package/js/src/static_dependencies/noble-hashes/md5.js +6 -0
- package/js/src/static_dependencies/noble-hashes/pbkdf2.js +6 -0
- package/js/src/static_dependencies/noble-hashes/ripemd160.js +6 -0
- package/js/src/static_dependencies/noble-hashes/scrypt.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha1.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha256.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha3-addons.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha3.js +6 -0
- package/js/src/static_dependencies/noble-hashes/sha512.js +6 -0
- package/js/src/static_dependencies/noble-hashes/utils.js +6 -0
- package/js/src/static_dependencies/node-fetch/body.js +6 -0
- package/js/src/static_dependencies/node-fetch/errors/abort-error.js +6 -0
- package/js/src/static_dependencies/node-fetch/errors/base.js +6 -0
- package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +6 -0
- package/js/src/static_dependencies/node-fetch/headers.js +6 -0
- package/js/src/static_dependencies/node-fetch/index.js +6 -0
- package/js/src/static_dependencies/node-fetch/request.js +6 -0
- package/js/src/static_dependencies/node-fetch/response.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/is.js +6 -0
- package/js/src/static_dependencies/node-fetch/utils/referrer.js +6 -0
- package/js/src/static_dependencies/proxies/agent-base/helpers.js +6 -0
- package/js/src/static_dependencies/proxies/agent-base/index.js +6 -0
- package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +6 -0
- package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +6 -0
- package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
- package/js/src/static_dependencies/qs/formats.cjs +6 -0
- package/js/src/static_dependencies/qs/index.cjs +6 -0
- package/js/src/static_dependencies/qs/parse.cjs +6 -0
- package/js/src/static_dependencies/qs/stringify.cjs +6 -0
- package/js/src/static_dependencies/qs/utils.cjs +6 -0
- package/js/src/static_dependencies/scure-base/index.js +6 -0
- package/js/src/static_dependencies/scure-starknet/index.js +6 -0
- package/js/src/static_dependencies/starknet/constants.js +6 -0
- package/js/src/static_dependencies/starknet/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/cairoEnum.js +6 -0
- package/js/src/static_dependencies/starknet/types/calldata.js +6 -0
- package/js/src/static_dependencies/starknet/types/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +6 -0
- package/js/src/static_dependencies/starknet/types/lib/index.js +6 -0
- package/js/src/static_dependencies/starknet/types/typedData.js +6 -0
- package/js/src/static_dependencies/starknet/utils/address.js +6 -0
- package/js/src/static_dependencies/starknet/utils/assert.js +6 -0
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +6 -0
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +6 -0
- package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/index.d.ts +1 -1
- package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +6 -0
- package/js/src/static_dependencies/starknet/utils/calldata/validate.js +6 -0
- package/js/src/static_dependencies/starknet/utils/encode.js +6 -0
- package/js/src/static_dependencies/starknet/utils/hash/classHash.js +6 -0
- package/js/src/static_dependencies/starknet/utils/hash/index.js +6 -0
- package/js/src/static_dependencies/starknet/utils/merkle.js +6 -0
- package/js/src/static_dependencies/starknet/utils/num.js +6 -0
- package/js/src/static_dependencies/starknet/utils/selector.js +6 -0
- package/js/src/static_dependencies/starknet/utils/shortString.js +6 -0
- package/js/src/static_dependencies/starknet/utils/starknetId.js +6 -0
- package/js/src/static_dependencies/starknet/utils/typedData.js +6 -0
- package/js/src/static_dependencies/starknet/utils/uint256.js +6 -0
- package/js/src/static_dependencies/starknet/utils/url.js +6 -0
- package/js/src/static_dependencies/watchable/src/index.js +6 -0
- package/js/src/static_dependencies/watchable/src/types.js +6 -0
- package/js/src/static_dependencies/watchable/src/unpromise.js +6 -0
- package/js/src/static_dependencies/zklink/zklink-sdk-web.js +6 -0
- package/js/src/timex.js +6 -0
- package/js/src/tokocrypto.js +6 -0
- package/js/src/tradeogre.d.ts +1 -2
- package/js/src/tradeogre.js +9 -3
- package/js/src/upbit.js +6 -0
- package/js/src/vertex.js +6 -0
- package/js/src/wavesexchange.js +6 -0
- package/js/src/whitebit.js +6 -0
- package/js/src/woo.js +6 -0
- package/js/src/woofipro.js +6 -0
- package/js/src/xt.js +7 -1
- package/js/src/yobit.js +6 -0
- package/js/src/zaif.js +6 -0
- package/js/src/zonda.js +6 -0
- package/package.json +1 -1
- package/js/src/abstract/coinlist.d.ts +0 -60
- package/js/src/abstract/coinlist.js +0 -5
- package/js/src/coinlist.d.ts +0 -384
- package/js/src/coinlist.js +0 -2604
package/js/src/pro/kraken.js
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
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
|
+
|
|
1
7
|
// ---------------------------------------------------------------------------
|
|
2
8
|
import krakenRest from '../kraken.js';
|
|
3
9
|
import { ExchangeError, BadSymbol, PermissionDenied, AccountSuspended, BadRequest, InsufficientFunds, InvalidOrder, OrderNotFound, NotSupported, RateLimitExceeded, ExchangeNotAvailable, ChecksumError, AuthenticationError, ArgumentsRequired } from '../base/errors.js';
|
|
@@ -34,6 +40,7 @@ export default class kraken extends krakenRest {
|
|
|
34
40
|
'public': 'wss://ws.kraken.com',
|
|
35
41
|
'private': 'wss://ws-auth.kraken.com',
|
|
36
42
|
'privateV2': 'wss://ws-auth.kraken.com/v2',
|
|
43
|
+
'publicV2': 'wss://ws.kraken.com/v2',
|
|
37
44
|
'beta': 'wss://beta-ws.kraken.com',
|
|
38
45
|
'beta-private': 'wss://beta-ws-auth.kraken.com',
|
|
39
46
|
},
|
|
@@ -48,9 +55,13 @@ export default class kraken extends krakenRest {
|
|
|
48
55
|
'ordersLimit': 1000,
|
|
49
56
|
'symbolsByOrderId': {},
|
|
50
57
|
'watchOrderBook': {
|
|
51
|
-
'checksum':
|
|
58
|
+
'checksum': false,
|
|
52
59
|
},
|
|
53
60
|
},
|
|
61
|
+
'streaming': {
|
|
62
|
+
'ping': this.ping,
|
|
63
|
+
'keepAlive': 6000,
|
|
64
|
+
},
|
|
54
65
|
'exceptions': {
|
|
55
66
|
'ws': {
|
|
56
67
|
'exact': {
|
|
@@ -101,6 +112,7 @@ export default class kraken extends krakenRest {
|
|
|
101
112
|
'EService:Market in post_only mode': NotSupported,
|
|
102
113
|
'EService:Unavailable': ExchangeNotAvailable,
|
|
103
114
|
'ETrade:Invalid request': BadRequest,
|
|
115
|
+
'ESession:Invalid session': AuthenticationError,
|
|
104
116
|
},
|
|
105
117
|
},
|
|
106
118
|
},
|
|
@@ -368,8 +380,8 @@ export default class kraken extends krakenRest {
|
|
|
368
380
|
/**
|
|
369
381
|
* @method
|
|
370
382
|
* @name kraken#cancelOrdersWs
|
|
371
|
-
* @see https://docs.kraken.com/api/docs/websocket-v1/cancelorder
|
|
372
383
|
* @description cancel multiple orders
|
|
384
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/cancel_order
|
|
373
385
|
* @param {string[]} ids order ids
|
|
374
386
|
* @param {string} [symbol] unified market symbol, default is undefined
|
|
375
387
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
@@ -397,8 +409,8 @@ export default class kraken extends krakenRest {
|
|
|
397
409
|
/**
|
|
398
410
|
* @method
|
|
399
411
|
* @name kraken#cancelOrderWs
|
|
400
|
-
* @see https://docs.kraken.com/api/docs/websocket-v1/cancelorder
|
|
401
412
|
* @description cancels an open order
|
|
413
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/cancel_order
|
|
402
414
|
* @param {string} id order id
|
|
403
415
|
* @param {string} [symbol] unified symbol of the market the order was made in
|
|
404
416
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
@@ -442,8 +454,8 @@ export default class kraken extends krakenRest {
|
|
|
442
454
|
/**
|
|
443
455
|
* @method
|
|
444
456
|
* @name kraken#cancelAllOrdersWs
|
|
445
|
-
* @see https://docs.kraken.com/api/docs/websocket-v1/cancelall
|
|
446
457
|
* @description cancel all open orders
|
|
458
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/cancel_all
|
|
447
459
|
* @param {string} [symbol] unified market symbol, only orders in the market of this symbol are cancelled when symbol is not undefined
|
|
448
460
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
449
461
|
* @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
@@ -482,54 +494,57 @@ export default class kraken extends krakenRest {
|
|
|
482
494
|
const reqId = this.safeValue(message, 'req_id');
|
|
483
495
|
client.resolve(message, reqId);
|
|
484
496
|
}
|
|
485
|
-
handleTicker(client, message
|
|
497
|
+
handleTicker(client, message) {
|
|
486
498
|
//
|
|
487
|
-
//
|
|
488
|
-
//
|
|
489
|
-
//
|
|
490
|
-
//
|
|
491
|
-
//
|
|
492
|
-
//
|
|
493
|
-
//
|
|
494
|
-
//
|
|
495
|
-
//
|
|
496
|
-
//
|
|
497
|
-
//
|
|
498
|
-
//
|
|
499
|
-
//
|
|
500
|
-
//
|
|
501
|
-
//
|
|
502
|
-
//
|
|
499
|
+
// {
|
|
500
|
+
// "channel": "ticker",
|
|
501
|
+
// "type": "snapshot",
|
|
502
|
+
// "data": [
|
|
503
|
+
// {
|
|
504
|
+
// "symbol": "BTC/USD",
|
|
505
|
+
// "bid": 108359.8,
|
|
506
|
+
// "bid_qty": 0.01362603,
|
|
507
|
+
// "ask": 108359.9,
|
|
508
|
+
// "ask_qty": 17.17988863,
|
|
509
|
+
// "last": 108359.8,
|
|
510
|
+
// "volume": 2158.32346723,
|
|
511
|
+
// "vwap": 108894.5,
|
|
512
|
+
// "low": 106824,
|
|
513
|
+
// "high": 111300,
|
|
514
|
+
// "change": -2679.9,
|
|
515
|
+
// "change_pct": -2.41
|
|
516
|
+
// }
|
|
517
|
+
// ]
|
|
518
|
+
// }
|
|
503
519
|
//
|
|
504
|
-
const
|
|
505
|
-
const
|
|
506
|
-
const symbol =
|
|
520
|
+
const data = this.safeList(message, 'data', []);
|
|
521
|
+
const ticker = data[0];
|
|
522
|
+
const symbol = this.safeString(ticker, 'symbol');
|
|
507
523
|
const messageHash = this.getMessageHash('ticker', undefined, symbol);
|
|
508
|
-
const
|
|
509
|
-
const vwap = this.safeString(ticker['p'], 0);
|
|
524
|
+
const vwap = this.safeString(ticker, 'vwap');
|
|
510
525
|
let quoteVolume = undefined;
|
|
511
|
-
const baseVolume = this.safeString(ticker
|
|
526
|
+
const baseVolume = this.safeString(ticker, 'volume');
|
|
512
527
|
if (baseVolume !== undefined && vwap !== undefined) {
|
|
513
528
|
quoteVolume = Precise.stringMul(baseVolume, vwap);
|
|
514
529
|
}
|
|
515
|
-
const last = this.safeString(ticker
|
|
530
|
+
const last = this.safeString(ticker, 'last');
|
|
516
531
|
const result = this.safeTicker({
|
|
517
532
|
'symbol': symbol,
|
|
518
533
|
'timestamp': undefined,
|
|
519
534
|
'datetime': undefined,
|
|
520
|
-
'high': this.safeString(ticker
|
|
521
|
-
'low': this.safeString(ticker
|
|
522
|
-
'bid': this.safeString(ticker
|
|
523
|
-
'bidVolume': this.safeString(ticker
|
|
524
|
-
'ask': this.safeString(ticker
|
|
525
|
-
'askVolume': this.safeString(ticker
|
|
535
|
+
'high': this.safeString(ticker, 'high'),
|
|
536
|
+
'low': this.safeString(ticker, 'low'),
|
|
537
|
+
'bid': this.safeString(ticker, 'bid'),
|
|
538
|
+
'bidVolume': this.safeString(ticker, 'bid_qty'),
|
|
539
|
+
'ask': this.safeString(ticker, 'ask'),
|
|
540
|
+
'askVolume': this.safeString(ticker, 'ask_qty'),
|
|
526
541
|
'vwap': vwap,
|
|
527
|
-
'open':
|
|
542
|
+
'open': undefined,
|
|
528
543
|
'close': last,
|
|
529
544
|
'last': last,
|
|
530
545
|
'previousClose': undefined,
|
|
531
|
-
'change':
|
|
532
|
-
'percentage':
|
|
546
|
+
'change': this.safeString(ticker, 'change'),
|
|
547
|
+
'percentage': this.safeString(ticker, 'change_pct'),
|
|
533
548
|
'average': undefined,
|
|
534
549
|
'baseVolume': baseVolume,
|
|
535
550
|
'quoteVolume': quoteVolume,
|
|
@@ -538,31 +553,36 @@ export default class kraken extends krakenRest {
|
|
|
538
553
|
this.tickers[symbol] = result;
|
|
539
554
|
client.resolve(result, messageHash);
|
|
540
555
|
}
|
|
541
|
-
handleTrades(client, message
|
|
556
|
+
handleTrades(client, message) {
|
|
542
557
|
//
|
|
543
|
-
//
|
|
544
|
-
//
|
|
545
|
-
//
|
|
546
|
-
//
|
|
547
|
-
//
|
|
548
|
-
//
|
|
549
|
-
//
|
|
550
|
-
//
|
|
551
|
-
//
|
|
558
|
+
// {
|
|
559
|
+
// "channel": "trade",
|
|
560
|
+
// "type": "update",
|
|
561
|
+
// "data": [
|
|
562
|
+
// {
|
|
563
|
+
// "symbol": "MATIC/USD",
|
|
564
|
+
// "side": "sell",
|
|
565
|
+
// "price": 0.5117,
|
|
566
|
+
// "qty": 40.0,
|
|
567
|
+
// "ord_type": "market",
|
|
568
|
+
// "trade_id": 4665906,
|
|
569
|
+
// "timestamp": "2023-09-25T07:49:37.708706Z"
|
|
570
|
+
// }
|
|
571
|
+
// ]
|
|
572
|
+
// }
|
|
552
573
|
//
|
|
553
|
-
const
|
|
554
|
-
const
|
|
555
|
-
const
|
|
556
|
-
const
|
|
557
|
-
const messageHash = this.getMessageHash(name, undefined, symbol);
|
|
574
|
+
const data = this.safeList(message, 'data', []);
|
|
575
|
+
const trade = data[0];
|
|
576
|
+
const symbol = this.safeString(trade, 'symbol');
|
|
577
|
+
const messageHash = this.getMessageHash('trade', undefined, symbol);
|
|
558
578
|
let stored = this.safeValue(this.trades, symbol);
|
|
559
579
|
if (stored === undefined) {
|
|
560
580
|
const limit = this.safeInteger(this.options, 'tradesLimit', 1000);
|
|
561
581
|
stored = new ArrayCache(limit);
|
|
562
582
|
this.trades[symbol] = stored;
|
|
563
583
|
}
|
|
564
|
-
const
|
|
565
|
-
const parsed = this.parseTrades(
|
|
584
|
+
const market = this.market(symbol);
|
|
585
|
+
const parsed = this.parseTrades(data, market);
|
|
566
586
|
for (let i = 0; i < parsed.length; i++) {
|
|
567
587
|
stored.append(parsed[i]);
|
|
568
588
|
}
|
|
@@ -650,7 +670,7 @@ export default class kraken extends krakenRest {
|
|
|
650
670
|
* @method
|
|
651
671
|
* @name kraken#watchTicker
|
|
652
672
|
* @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
653
|
-
* @see https://docs.kraken.com/api/docs/websocket-
|
|
673
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/ticker
|
|
654
674
|
* @param {string} symbol unified symbol of the market to fetch the ticker for
|
|
655
675
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
656
676
|
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
@@ -665,7 +685,7 @@ export default class kraken extends krakenRest {
|
|
|
665
685
|
* @method
|
|
666
686
|
* @name kraken#watchTickers
|
|
667
687
|
* @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
668
|
-
* @see https://docs.kraken.com/api/docs/websocket-
|
|
688
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/ticker
|
|
669
689
|
* @param {string[]} symbols
|
|
670
690
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
671
691
|
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
@@ -684,8 +704,8 @@ export default class kraken extends krakenRest {
|
|
|
684
704
|
/**
|
|
685
705
|
* @method
|
|
686
706
|
* @name kraken#watchBidsAsks
|
|
687
|
-
* @see https://docs.kraken.com/api/docs/websocket-v1/spread
|
|
688
707
|
* @description watches best bid & ask for symbols
|
|
708
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/ticker
|
|
689
709
|
* @param {string[]} symbols unified symbol of the market to fetch the ticker for
|
|
690
710
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
691
711
|
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
@@ -693,7 +713,8 @@ export default class kraken extends krakenRest {
|
|
|
693
713
|
async watchBidsAsks(symbols = undefined, params = {}) {
|
|
694
714
|
await this.loadMarkets();
|
|
695
715
|
symbols = this.marketSymbols(symbols, undefined, false);
|
|
696
|
-
|
|
716
|
+
params['event_trigger'] = 'bbo';
|
|
717
|
+
const ticker = await this.watchMultiHelper('bidask', 'ticker', symbols, undefined, params);
|
|
697
718
|
if (this.newUpdates) {
|
|
698
719
|
const result = {};
|
|
699
720
|
result[ticker['symbol']] = ticker;
|
|
@@ -701,49 +722,11 @@ export default class kraken extends krakenRest {
|
|
|
701
722
|
}
|
|
702
723
|
return this.filterByArray(this.bidsasks, 'symbol', symbols);
|
|
703
724
|
}
|
|
704
|
-
handleBidAsk(client, message, subscription) {
|
|
705
|
-
//
|
|
706
|
-
// [
|
|
707
|
-
// 7208974, // channelID
|
|
708
|
-
// [
|
|
709
|
-
// "63758.60000", // bid
|
|
710
|
-
// "63759.10000", // ask
|
|
711
|
-
// "1726814731.089778", // timestamp
|
|
712
|
-
// "0.00057917", // bid_volume
|
|
713
|
-
// "0.15681688" // ask_volume
|
|
714
|
-
// ],
|
|
715
|
-
// "spread",
|
|
716
|
-
// "XBT/USDT"
|
|
717
|
-
// ]
|
|
718
|
-
//
|
|
719
|
-
const parsedTicker = this.parseWsBidAsk(message);
|
|
720
|
-
const symbol = parsedTicker['symbol'];
|
|
721
|
-
this.bidsasks[symbol] = parsedTicker;
|
|
722
|
-
const messageHash = this.getMessageHash('bidask', undefined, symbol);
|
|
723
|
-
client.resolve(parsedTicker, messageHash);
|
|
724
|
-
}
|
|
725
|
-
parseWsBidAsk(ticker, market = undefined) {
|
|
726
|
-
const data = this.safeList(ticker, 1, []);
|
|
727
|
-
const marketId = this.safeString(ticker, 3);
|
|
728
|
-
market = this.safeValue(this.options['marketsByWsName'], marketId);
|
|
729
|
-
const symbol = this.safeString(market, 'symbol');
|
|
730
|
-
const timestamp = this.parseToInt(this.safeInteger(data, 2)) * 1000;
|
|
731
|
-
return this.safeTicker({
|
|
732
|
-
'symbol': symbol,
|
|
733
|
-
'timestamp': timestamp,
|
|
734
|
-
'datetime': this.iso8601(timestamp),
|
|
735
|
-
'ask': this.safeString(data, 1),
|
|
736
|
-
'askVolume': this.safeString(data, 4),
|
|
737
|
-
'bid': this.safeString(data, 0),
|
|
738
|
-
'bidVolume': this.safeString(data, 3),
|
|
739
|
-
'info': ticker,
|
|
740
|
-
}, market);
|
|
741
|
-
}
|
|
742
725
|
/**
|
|
743
726
|
* @method
|
|
744
727
|
* @name kraken#watchTrades
|
|
745
728
|
* @description get the list of most recent trades for a particular symbol
|
|
746
|
-
* @see https://docs.kraken.com/api/docs/websocket-
|
|
729
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/trade
|
|
747
730
|
* @param {string} symbol unified symbol of the market to fetch trades for
|
|
748
731
|
* @param {int} [since] timestamp in ms of the earliest trade to fetch
|
|
749
732
|
* @param {int} [limit] the maximum amount of trades to fetch
|
|
@@ -756,8 +739,8 @@ export default class kraken extends krakenRest {
|
|
|
756
739
|
/**
|
|
757
740
|
* @method
|
|
758
741
|
* @name kraken#watchTradesForSymbols
|
|
759
|
-
* @see https://docs.kraken.com/api/docs/websocket-v1/trade
|
|
760
742
|
* @description get the list of most recent trades for a list of symbols
|
|
743
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/trade
|
|
761
744
|
* @param {string[]} symbols unified symbol of the market to fetch trades for
|
|
762
745
|
* @param {int} [since] timestamp in ms of the earliest trade to fetch
|
|
763
746
|
* @param {int} [limit] the maximum amount of trades to fetch
|
|
@@ -777,7 +760,7 @@ export default class kraken extends krakenRest {
|
|
|
777
760
|
* @method
|
|
778
761
|
* @name kraken#watchOrderBook
|
|
779
762
|
* @description watches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
|
|
780
|
-
* @see https://docs.kraken.com/api/docs/websocket-
|
|
763
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/book
|
|
781
764
|
* @param {string} symbol unified symbol of the market to fetch the order book for
|
|
782
765
|
* @param {int} [limit] the maximum amount of order book entries to return
|
|
783
766
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
@@ -790,7 +773,7 @@ export default class kraken extends krakenRest {
|
|
|
790
773
|
* @method
|
|
791
774
|
* @name kraken#watchOrderBookForSymbols
|
|
792
775
|
* @description watches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
|
|
793
|
-
* @see https://docs.kraken.com/api/docs/websocket-
|
|
776
|
+
* @see https://docs.kraken.com/api/docs/websocket-v2/book
|
|
794
777
|
* @param {string[]} symbols unified array of symbols
|
|
795
778
|
* @param {int} [limit] the maximum amount of order book entries to return
|
|
796
779
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
@@ -800,7 +783,7 @@ export default class kraken extends krakenRest {
|
|
|
800
783
|
const request = {};
|
|
801
784
|
if (limit !== undefined) {
|
|
802
785
|
if (this.inArray(limit, [10, 25, 100, 500, 1000])) {
|
|
803
|
-
request['
|
|
786
|
+
request['params'] = {
|
|
804
787
|
'depth': limit, // default 10, valid options 10, 25, 100, 500, 1000
|
|
805
788
|
};
|
|
806
789
|
}
|
|
@@ -866,6 +849,21 @@ export default class kraken extends krakenRest {
|
|
|
866
849
|
}
|
|
867
850
|
return markets;
|
|
868
851
|
}
|
|
852
|
+
ping(client) {
|
|
853
|
+
const url = client.url;
|
|
854
|
+
const request = {};
|
|
855
|
+
if (url.indexOf('v2') >= 0) {
|
|
856
|
+
request['method'] = 'ping';
|
|
857
|
+
}
|
|
858
|
+
else {
|
|
859
|
+
request['event'] = 'ping';
|
|
860
|
+
}
|
|
861
|
+
return request;
|
|
862
|
+
}
|
|
863
|
+
handlePong(client, message) {
|
|
864
|
+
client.lastPong = this.milliseconds();
|
|
865
|
+
return message;
|
|
866
|
+
}
|
|
869
867
|
async watchHeartbeat(params = {}) {
|
|
870
868
|
await this.loadMarkets();
|
|
871
869
|
const event = 'heartbeat';
|
|
@@ -881,175 +879,165 @@ export default class kraken extends krakenRest {
|
|
|
881
879
|
const event = this.safeString(message, 'event');
|
|
882
880
|
client.resolve(message, event);
|
|
883
881
|
}
|
|
884
|
-
handleOrderBook(client, message
|
|
882
|
+
handleOrderBook(client, message) {
|
|
885
883
|
//
|
|
886
884
|
// first message (snapshot)
|
|
887
885
|
//
|
|
888
|
-
//
|
|
889
|
-
//
|
|
890
|
-
//
|
|
891
|
-
//
|
|
892
|
-
//
|
|
893
|
-
//
|
|
894
|
-
//
|
|
895
|
-
//
|
|
896
|
-
//
|
|
897
|
-
//
|
|
898
|
-
//
|
|
899
|
-
//
|
|
900
|
-
//
|
|
901
|
-
//
|
|
902
|
-
//
|
|
903
|
-
//
|
|
904
|
-
//
|
|
886
|
+
// {
|
|
887
|
+
// "channel": "book",
|
|
888
|
+
// "type": "snapshot",
|
|
889
|
+
// "data": [
|
|
890
|
+
// {
|
|
891
|
+
// "symbol": "MATIC/USD",
|
|
892
|
+
// "bids": [
|
|
893
|
+
// {
|
|
894
|
+
// "price": 0.5666,
|
|
895
|
+
// "qty": 4831.75496356
|
|
896
|
+
// },
|
|
897
|
+
// {
|
|
898
|
+
// "price": 0.5665,
|
|
899
|
+
// "qty": 6658.22734739
|
|
900
|
+
// }
|
|
901
|
+
// ],
|
|
902
|
+
// "asks": [
|
|
903
|
+
// {
|
|
904
|
+
// "price": 0.5668,
|
|
905
|
+
// "qty": 4410.79769741
|
|
906
|
+
// },
|
|
907
|
+
// {
|
|
908
|
+
// "price": 0.5669,
|
|
909
|
+
// "qty": 4655.40412487
|
|
910
|
+
// }
|
|
911
|
+
// ],
|
|
912
|
+
// "checksum": 2439117997
|
|
913
|
+
// }
|
|
914
|
+
// ]
|
|
915
|
+
// }
|
|
905
916
|
//
|
|
906
917
|
// subsequent updates
|
|
907
918
|
//
|
|
908
|
-
//
|
|
909
|
-
//
|
|
910
|
-
//
|
|
911
|
-
//
|
|
912
|
-
//
|
|
913
|
-
//
|
|
914
|
-
//
|
|
915
|
-
//
|
|
916
|
-
//
|
|
917
|
-
//
|
|
918
|
-
//
|
|
919
|
-
//
|
|
920
|
-
//
|
|
921
|
-
//
|
|
922
|
-
//
|
|
923
|
-
//
|
|
919
|
+
// {
|
|
920
|
+
// "channel": "book",
|
|
921
|
+
// "type": "update",
|
|
922
|
+
// "data": [
|
|
923
|
+
// {
|
|
924
|
+
// "symbol": "MATIC/USD",
|
|
925
|
+
// "bids": [
|
|
926
|
+
// {
|
|
927
|
+
// "price": 0.5657,
|
|
928
|
+
// "qty": 1098.3947558
|
|
929
|
+
// }
|
|
930
|
+
// ],
|
|
931
|
+
// "asks": [],
|
|
932
|
+
// "checksum": 2114181697,
|
|
933
|
+
// "timestamp": "2023-10-06T17:35:55.440295Z"
|
|
934
|
+
// }
|
|
935
|
+
// ]
|
|
936
|
+
// }
|
|
924
937
|
//
|
|
925
|
-
const
|
|
926
|
-
const
|
|
927
|
-
const
|
|
928
|
-
const
|
|
929
|
-
const
|
|
930
|
-
const
|
|
931
|
-
const
|
|
932
|
-
let timestamp = undefined;
|
|
938
|
+
const type = this.safeString(message, 'type');
|
|
939
|
+
const data = this.safeList(message, 'data', []);
|
|
940
|
+
const first = this.safeDict(data, 0, {});
|
|
941
|
+
const symbol = this.safeString(first, 'symbol');
|
|
942
|
+
const a = this.safeValue(first, 'asks', []);
|
|
943
|
+
const b = this.safeValue(first, 'bids', []);
|
|
944
|
+
const c = this.safeInteger(first, 'checksum');
|
|
933
945
|
const messageHash = this.getMessageHash('orderbook', undefined, symbol);
|
|
934
|
-
|
|
935
|
-
if ('
|
|
936
|
-
|
|
946
|
+
let orderbook = undefined;
|
|
947
|
+
if (type === 'update') {
|
|
948
|
+
orderbook = this.orderbooks[symbol];
|
|
949
|
+
const storedAsks = orderbook['asks'];
|
|
950
|
+
const storedBids = orderbook['bids'];
|
|
951
|
+
if (a !== undefined) {
|
|
952
|
+
this.customHandleDeltas(storedAsks, a);
|
|
953
|
+
}
|
|
954
|
+
if (b !== undefined) {
|
|
955
|
+
this.customHandleDeltas(storedBids, b);
|
|
956
|
+
}
|
|
957
|
+
const datetime = this.safeString(first, 'timestamp');
|
|
958
|
+
orderbook['symbol'] = symbol;
|
|
959
|
+
orderbook['timestamp'] = this.parse8601(datetime);
|
|
960
|
+
orderbook['datetime'] = datetime;
|
|
961
|
+
}
|
|
962
|
+
else {
|
|
963
|
+
// snapshot
|
|
964
|
+
const depth = a.length;
|
|
937
965
|
this.orderbooks[symbol] = this.orderBook({}, depth);
|
|
938
|
-
|
|
939
|
-
const
|
|
940
|
-
'as': 'asks',
|
|
941
|
-
'bs': 'bids',
|
|
942
|
-
};
|
|
943
|
-
const keys = Object.keys(sides);
|
|
966
|
+
orderbook = this.orderbooks[symbol];
|
|
967
|
+
const keys = ['asks', 'bids'];
|
|
944
968
|
for (let i = 0; i < keys.length; i++) {
|
|
945
969
|
const key = keys[i];
|
|
946
|
-
const
|
|
947
|
-
const
|
|
948
|
-
|
|
949
|
-
|
|
970
|
+
const bookside = orderbook[key];
|
|
971
|
+
const deltas = this.safeValue(first, key, []);
|
|
972
|
+
if (deltas.length > 0) {
|
|
973
|
+
this.customHandleDeltas(bookside, deltas);
|
|
974
|
+
}
|
|
950
975
|
}
|
|
951
976
|
orderbook['symbol'] = symbol;
|
|
952
|
-
orderbook['timestamp'] = timestamp;
|
|
953
|
-
orderbook['datetime'] = this.iso8601(timestamp);
|
|
954
|
-
client.resolve(orderbook, messageHash);
|
|
955
977
|
}
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
if ('a' in message[1]) {
|
|
971
|
-
a = this.safeValue(message[1], 'a', []);
|
|
978
|
+
orderbook.limit();
|
|
979
|
+
// checksum temporarily disabled because the exchange checksum was not reliable
|
|
980
|
+
const checksum = this.handleOption('watchOrderBook', 'checksum', false);
|
|
981
|
+
if (checksum) {
|
|
982
|
+
const payloadArray = [];
|
|
983
|
+
if (c !== undefined) {
|
|
984
|
+
const checkAsks = orderbook['asks'];
|
|
985
|
+
const checkBids = orderbook['bids'];
|
|
986
|
+
// const checkAsks = asks.map ((elem) => [ elem['price'], elem['qty'] ]);
|
|
987
|
+
// const checkBids = bids.map ((elem) => [ elem['price'], elem['qty'] ]);
|
|
988
|
+
for (let i = 0; i < 10; i++) {
|
|
989
|
+
const currentAsk = this.safeValue(checkAsks, i, {});
|
|
990
|
+
const formattedAsk = this.formatNumber(currentAsk[0]) + this.formatNumber(currentAsk[1]);
|
|
991
|
+
payloadArray.push(formattedAsk);
|
|
972
992
|
}
|
|
973
|
-
|
|
974
|
-
|
|
993
|
+
for (let i = 0; i < 10; i++) {
|
|
994
|
+
const currentBid = this.safeValue(checkBids, i, {});
|
|
995
|
+
const formattedBid = this.formatNumber(currentBid[0]) + this.formatNumber(currentBid[1]);
|
|
996
|
+
payloadArray.push(formattedBid);
|
|
975
997
|
}
|
|
976
998
|
}
|
|
977
|
-
const
|
|
978
|
-
const
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
timestamp = this.customHandleDeltas(storedBids, b, timestamp);
|
|
986
|
-
example = this.safeValue(b, 0);
|
|
987
|
-
}
|
|
988
|
-
// don't remove this line or I will poop on your face
|
|
989
|
-
orderbook.limit();
|
|
990
|
-
const checksum = this.handleOption('watchOrderBook', 'checksum', true);
|
|
991
|
-
if (checksum) {
|
|
992
|
-
const priceString = this.safeString(example, 0);
|
|
993
|
-
const amountString = this.safeString(example, 1);
|
|
994
|
-
const priceParts = priceString.split('.');
|
|
995
|
-
const amountParts = amountString.split('.');
|
|
996
|
-
const priceLength = priceParts[1].length - 0;
|
|
997
|
-
const amountLength = amountParts[1].length - 0;
|
|
998
|
-
const payloadArray = [];
|
|
999
|
-
if (c !== undefined) {
|
|
1000
|
-
for (let i = 0; i < 10; i++) {
|
|
1001
|
-
const formatted = this.formatNumber(storedAsks[i][0], priceLength) + this.formatNumber(storedAsks[i][1], amountLength);
|
|
1002
|
-
payloadArray.push(formatted);
|
|
1003
|
-
}
|
|
1004
|
-
for (let i = 0; i < 10; i++) {
|
|
1005
|
-
const formatted = this.formatNumber(storedBids[i][0], priceLength) + this.formatNumber(storedBids[i][1], amountLength);
|
|
1006
|
-
payloadArray.push(formatted);
|
|
1007
|
-
}
|
|
1008
|
-
}
|
|
1009
|
-
const payload = payloadArray.join('');
|
|
1010
|
-
const localChecksum = this.crc32(payload, false);
|
|
1011
|
-
if (localChecksum !== c) {
|
|
1012
|
-
const error = new ChecksumError(this.id + ' ' + this.orderbookChecksumMessage(symbol));
|
|
1013
|
-
delete client.subscriptions[messageHash];
|
|
1014
|
-
delete this.orderbooks[symbol];
|
|
1015
|
-
client.reject(error, messageHash);
|
|
1016
|
-
return;
|
|
1017
|
-
}
|
|
999
|
+
const payload = payloadArray.join('');
|
|
1000
|
+
const localChecksum = this.crc32(payload, false);
|
|
1001
|
+
if (localChecksum !== c) {
|
|
1002
|
+
const error = new ChecksumError(this.id + ' ' + this.orderbookChecksumMessage(symbol));
|
|
1003
|
+
delete client.subscriptions[messageHash];
|
|
1004
|
+
delete this.orderbooks[symbol];
|
|
1005
|
+
client.reject(error, messageHash);
|
|
1006
|
+
return;
|
|
1018
1007
|
}
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1008
|
+
}
|
|
1009
|
+
client.resolve(orderbook, messageHash);
|
|
1010
|
+
}
|
|
1011
|
+
customHandleDeltas(bookside, deltas) {
|
|
1012
|
+
// const sortOrder = (key === 'bids') ? true : false;
|
|
1013
|
+
for (let j = 0; j < deltas.length; j++) {
|
|
1014
|
+
const delta = deltas[j];
|
|
1015
|
+
const price = this.safeNumber(delta, 'price');
|
|
1016
|
+
const amount = this.safeNumber(delta, 'qty');
|
|
1017
|
+
bookside.store(price, amount);
|
|
1018
|
+
// if (amount === 0) {
|
|
1019
|
+
// const index = bookside.findIndex ((x: Int) => x[0] === price);
|
|
1020
|
+
// bookside.splice (index, 1);
|
|
1021
|
+
// } else {
|
|
1022
|
+
// bookside.store (price, amount);
|
|
1023
|
+
// }
|
|
1024
|
+
// bookside = this.sortBy (bookside, 0, sortOrder);
|
|
1025
|
+
// bookside.slice (0, 9);
|
|
1023
1026
|
}
|
|
1024
1027
|
}
|
|
1025
|
-
formatNumber(
|
|
1026
|
-
const
|
|
1027
|
-
const parts = stringNumber.split('.');
|
|
1028
|
+
formatNumber(data) {
|
|
1029
|
+
const parts = data.split('.');
|
|
1028
1030
|
const integer = this.safeString(parts, 0);
|
|
1029
1031
|
const decimals = this.safeString(parts, 1, '');
|
|
1030
|
-
|
|
1031
|
-
const joined = integer + paddedDecimals;
|
|
1032
|
+
let joinedResult = integer + decimals;
|
|
1032
1033
|
let i = 0;
|
|
1033
|
-
while (
|
|
1034
|
+
while (joinedResult[i] === '0') {
|
|
1034
1035
|
i += 1;
|
|
1035
1036
|
}
|
|
1036
1037
|
if (i > 0) {
|
|
1037
|
-
|
|
1038
|
+
joinedResult = joinedResult.slice(i);
|
|
1038
1039
|
}
|
|
1039
|
-
|
|
1040
|
-
return joined;
|
|
1041
|
-
}
|
|
1042
|
-
}
|
|
1043
|
-
customHandleDeltas(bookside, deltas, timestamp = undefined) {
|
|
1044
|
-
for (let j = 0; j < deltas.length; j++) {
|
|
1045
|
-
const delta = deltas[j];
|
|
1046
|
-
const price = this.parseNumber(delta[0]);
|
|
1047
|
-
const amount = this.parseNumber(delta[1]);
|
|
1048
|
-
const oldTimestamp = timestamp ? timestamp : 0;
|
|
1049
|
-
timestamp = Math.max(oldTimestamp, this.parseToInt(parseFloat(delta[2]) * 1000));
|
|
1050
|
-
bookside.store(price, amount);
|
|
1051
|
-
}
|
|
1052
|
-
return timestamp;
|
|
1040
|
+
return joinedResult;
|
|
1053
1041
|
}
|
|
1054
1042
|
handleSystemStatus(client, message) {
|
|
1055
1043
|
//
|
|
@@ -1085,7 +1073,11 @@ export default class kraken extends krakenRest {
|
|
|
1085
1073
|
const client = this.client(url);
|
|
1086
1074
|
const authenticated = 'authenticated';
|
|
1087
1075
|
let subscription = this.safeValue(client.subscriptions, authenticated);
|
|
1088
|
-
|
|
1076
|
+
const now = this.seconds();
|
|
1077
|
+
const start = this.safeInteger(subscription, 'start');
|
|
1078
|
+
const expires = this.safeInteger(subscription, 'expires');
|
|
1079
|
+
if ((subscription === undefined) || ((subscription !== undefined) && (start + expires) <= now)) {
|
|
1080
|
+
// https://docs.kraken.com/api/docs/rest-api/get-websockets-token
|
|
1089
1081
|
const response = await this.privatePostGetWebSocketsToken(params);
|
|
1090
1082
|
//
|
|
1091
1083
|
// {
|
|
@@ -1096,7 +1088,8 @@ export default class kraken extends krakenRest {
|
|
|
1096
1088
|
// }
|
|
1097
1089
|
// }
|
|
1098
1090
|
//
|
|
1099
|
-
subscription = this.
|
|
1091
|
+
subscription = this.safeDict(response, 'result');
|
|
1092
|
+
subscription['start'] = now;
|
|
1100
1093
|
client.subscriptions[authenticated] = subscription;
|
|
1101
1094
|
}
|
|
1102
1095
|
return this.safeString(subscription, 'token');
|
|
@@ -1562,25 +1555,25 @@ export default class kraken extends krakenRest {
|
|
|
1562
1555
|
symbols = this.marketSymbols(symbols, undefined, false, true, false);
|
|
1563
1556
|
const messageHashes = [];
|
|
1564
1557
|
for (let i = 0; i < symbols.length; i++) {
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
wsMarketIds.push(wsMarketId);
|
|
1558
|
+
const eventTrigger = this.safeString(params, 'event_trigger');
|
|
1559
|
+
if (eventTrigger !== undefined) {
|
|
1560
|
+
messageHashes.push(this.getMessageHash(channelName, undefined, this.symbol(symbols[i])));
|
|
1561
|
+
}
|
|
1562
|
+
else {
|
|
1563
|
+
messageHashes.push(this.getMessageHash(unifiedName, undefined, this.symbol(symbols[i])));
|
|
1564
|
+
}
|
|
1573
1565
|
}
|
|
1574
1566
|
const request = {
|
|
1575
|
-
'
|
|
1576
|
-
'
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
'name': channelName,
|
|
1567
|
+
'method': 'subscribe',
|
|
1568
|
+
'params': {
|
|
1569
|
+
'channel': channelName,
|
|
1570
|
+
'symbol': symbols,
|
|
1580
1571
|
},
|
|
1572
|
+
'req_id': this.requestId(),
|
|
1581
1573
|
};
|
|
1582
|
-
|
|
1583
|
-
|
|
1574
|
+
request['params'] = this.deepExtend(request['params'], params);
|
|
1575
|
+
const url = this.urls['api']['ws']['publicV2'];
|
|
1576
|
+
return await this.watchMultiple(url, messageHashes, request, messageHashes, subscriptionArgs);
|
|
1584
1577
|
}
|
|
1585
1578
|
/**
|
|
1586
1579
|
* @method
|
|
@@ -1745,11 +1738,7 @@ export default class kraken extends krakenRest {
|
|
|
1745
1738
|
const name = this.safeString(info, 'name');
|
|
1746
1739
|
const methods = {
|
|
1747
1740
|
// public
|
|
1748
|
-
'book': this.handleOrderBook,
|
|
1749
1741
|
'ohlc': this.handleOHLCV,
|
|
1750
|
-
'ticker': this.handleTicker,
|
|
1751
|
-
'spread': this.handleBidAsk,
|
|
1752
|
-
'trade': this.handleTrades,
|
|
1753
1742
|
// private
|
|
1754
1743
|
'openOrders': this.handleOrders,
|
|
1755
1744
|
'ownTrades': this.handleMyTrades,
|
|
@@ -1764,6 +1753,9 @@ export default class kraken extends krakenRest {
|
|
|
1764
1753
|
if (channel !== undefined) {
|
|
1765
1754
|
const methods = {
|
|
1766
1755
|
'balances': this.handleBalance,
|
|
1756
|
+
'book': this.handleOrderBook,
|
|
1757
|
+
'ticker': this.handleTicker,
|
|
1758
|
+
'trade': this.handleTrades,
|
|
1767
1759
|
};
|
|
1768
1760
|
const method = this.safeValue(methods, channel);
|
|
1769
1761
|
if (method !== undefined) {
|
|
@@ -1780,6 +1772,7 @@ export default class kraken extends krakenRest {
|
|
|
1780
1772
|
'amend_order': this.handleCreateEditOrder,
|
|
1781
1773
|
'cancel_order': this.handleCancelOrder,
|
|
1782
1774
|
'cancel_all': this.handleCancelAllOrders,
|
|
1775
|
+
'pong': this.handlePong,
|
|
1783
1776
|
};
|
|
1784
1777
|
const method = this.safeValue(methods, event);
|
|
1785
1778
|
if (method !== undefined) {
|