ccxt 4.5.53 → 4.5.55
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 +142 -142
- package/dist/ccxt.browser.min.js +8 -8
- package/dist/cjs/ccxt.js +6 -4
- package/dist/cjs/src/abstract/aftermath.js +1 -1
- package/dist/cjs/src/abstract/alpaca.js +1 -1
- package/dist/cjs/src/abstract/apex.js +1 -1
- package/dist/cjs/src/abstract/arkham.js +1 -1
- package/dist/cjs/src/abstract/ascendex.js +1 -1
- package/dist/cjs/src/abstract/aster.js +1 -1
- package/dist/cjs/src/abstract/backpack.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/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/bullish.js +1 -1
- package/dist/cjs/src/abstract/bybit.js +1 -1
- package/dist/cjs/src/abstract/bydfi.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/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/deepcoin.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/dydx.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/grvt.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/latoken.js +1 -1
- package/dist/cjs/src/abstract/lbank.js +1 -1
- package/dist/cjs/src/abstract/lighter.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/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/pacifica.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/tokocrypto.js +1 -1
- package/dist/cjs/src/abstract/toobit.js +1 -1
- package/dist/cjs/src/abstract/upbit.js +1 -1
- package/dist/cjs/src/abstract/wavesexchange.js +1 -1
- package/dist/cjs/src/abstract/weex.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/zebpay.js +1 -1
- package/dist/cjs/src/aftermath.js +0 -1
- package/dist/cjs/src/alpaca.js +1 -1
- package/dist/cjs/src/apex.js +71 -69
- package/dist/cjs/src/arkham.js +1 -1
- package/dist/cjs/src/ascendex.js +48 -50
- package/dist/cjs/src/aster.js +34 -43
- package/dist/cjs/src/backpack.js +59 -61
- package/dist/cjs/src/base/Exchange.js +114 -58
- 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/io.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 +72 -74
- package/dist/cjs/src/binance.js +1 -1
- package/dist/cjs/src/binancecoinm.js +1 -1
- package/dist/cjs/src/binanceus.js +2 -1
- package/dist/cjs/src/binanceusdm.js +1 -1
- package/dist/cjs/src/bingx.js +91 -104
- 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 +67 -68
- package/dist/cjs/src/bithumb.js +1 -1
- package/dist/cjs/src/bitmart.js +1 -1
- package/dist/cjs/src/bitmex.js +76 -78
- package/dist/cjs/src/bitopro.js +27 -33
- package/dist/cjs/src/bitrue.js +44 -46
- package/dist/cjs/src/bitso.js +1 -1
- package/dist/cjs/src/bitstamp.js +27 -22
- package/dist/cjs/src/bitteam.js +75 -73
- package/dist/cjs/src/bittrade.js +43 -45
- package/dist/cjs/src/bitvavo.js +51 -56
- package/dist/cjs/src/blockchaincom.js +1 -1
- package/dist/cjs/src/blofin.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/bullish.js +25 -27
- package/dist/cjs/src/bybit.js +1 -1
- package/dist/cjs/src/bybiteu.js +63 -0
- package/dist/cjs/src/bydfi.js +2 -2
- package/dist/cjs/src/cex.js +1 -1
- package/dist/cjs/src/coinbase.js +1 -1
- package/dist/cjs/src/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/coinbaseexchange.js +48 -50
- package/dist/cjs/src/coinbaseinternational.js +0 -38
- package/dist/cjs/src/coincheck.js +1 -1
- package/dist/cjs/src/coinex.js +2 -2
- package/dist/cjs/src/coinmate.js +1 -1
- package/dist/cjs/src/coinmetro.js +49 -55
- package/dist/cjs/src/coinone.js +31 -33
- package/dist/cjs/src/coinsph.js +46 -49
- package/dist/cjs/src/coinspot.js +1 -1
- package/dist/cjs/src/cryptocom.js +1 -1
- package/dist/cjs/src/cryptomus.js +1 -1
- package/dist/cjs/src/deepcoin.js +2 -2
- package/dist/cjs/src/delta.js +1 -1
- package/dist/cjs/src/deribit.js +1 -1
- package/dist/cjs/src/derive.js +1 -1
- package/dist/cjs/src/digifinex.js +1 -1
- package/dist/cjs/src/dydx.js +2 -2
- 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 +1 -1
- package/dist/cjs/src/gateio.js +1 -1
- package/dist/cjs/src/gemini.js +1 -1
- package/dist/cjs/src/grvt.js +1 -1
- package/dist/cjs/src/hashkey.js +1 -1
- package/dist/cjs/src/hibachi.js +1 -1
- package/dist/cjs/src/hitbtc.js +55 -46
- package/dist/cjs/src/hollaex.js +3 -7
- package/dist/cjs/src/htx.js +1 -1
- package/dist/cjs/src/huobi.js +1 -1
- package/dist/cjs/src/hyperliquid.js +9 -2
- package/dist/cjs/src/independentreserve.js +1 -1
- package/dist/cjs/src/indodax.js +1 -1
- package/dist/cjs/src/kraken.js +1 -1
- 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/lighter.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 +1 -1
- package/dist/cjs/src/modetrade.js +2 -2
- 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/okx.js +7 -2
- 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/pacifica.js +43 -45
- package/dist/cjs/src/paradex.js +670 -73
- package/dist/cjs/src/paymium.js +1 -1
- package/dist/cjs/src/poloniex.js +71 -136
- package/dist/cjs/src/pro/alpaca.js +1 -1
- package/dist/cjs/src/pro/apex.js +53 -22
- package/dist/cjs/src/pro/arkham.js +1 -1
- package/dist/cjs/src/pro/ascendex.js +1 -1
- package/dist/cjs/src/pro/aster.js +1 -1
- package/dist/cjs/src/pro/backpack.js +13 -4
- package/dist/cjs/src/pro/bequant.js +1 -1
- package/dist/cjs/src/pro/binance.js +7 -2
- package/dist/cjs/src/pro/binancecoinm.js +1 -1
- package/dist/cjs/src/pro/binanceus.js +1 -2
- 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 +417 -12
- 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/bullish.js +1 -1
- package/dist/cjs/src/pro/bybit.js +7 -3
- package/dist/cjs/src/pro/bybiteu.js +86 -0
- package/dist/cjs/src/pro/bydfi.js +1 -1
- package/dist/cjs/src/pro/cex.js +1 -1
- package/dist/cjs/src/pro/coinbase.js +1 -1
- package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
- package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
- package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
- package/dist/cjs/src/pro/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/deepcoin.js +1 -1
- package/dist/cjs/src/pro/deribit.js +1 -1
- package/dist/cjs/src/pro/dydx.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/grvt.js +1 -1
- package/dist/cjs/src/pro/hashkey.js +8 -5
- 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 +5 -1
- package/dist/cjs/src/pro/independentreserve.js +1 -1
- package/dist/cjs/src/pro/kraken.js +1 -1
- package/dist/cjs/src/pro/krakenfutures.js +28 -13
- package/dist/cjs/src/pro/kucoin.js +4 -4
- package/dist/cjs/src/pro/kucoinfutures.js +1 -1
- package/dist/cjs/src/pro/lbank.js +0 -1
- package/dist/cjs/src/pro/lighter.js +1 -1
- package/dist/cjs/src/pro/luno.js +1 -1
- package/dist/cjs/src/pro/mexc.js +1 -1
- package/dist/cjs/src/pro/modetrade.js +5 -2
- package/dist/cjs/src/pro/myokx.js +1 -1
- package/dist/cjs/src/pro/ndax.js +1 -1
- package/dist/cjs/src/pro/okx.js +12 -34
- 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/pacifica.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/toobit.js +3 -3
- package/dist/cjs/src/pro/upbit.js +1 -1
- package/dist/cjs/src/pro/weex.js +8 -6
- package/dist/cjs/src/pro/whitebit.js +1 -1
- package/dist/cjs/src/pro/woo.js +5 -2
- package/dist/cjs/src/pro/woofipro.js +5 -2
- package/dist/cjs/src/pro/xt.js +1 -1
- package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +1 -0
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/helpers.js +0 -6
- package/dist/cjs/src/static_dependencies/dydx-v4-client/onboarding.js +0 -1
- package/dist/cjs/src/static_dependencies/dydx-v4-client/registry.js +0 -1
- 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/pbkdf2.js +0 -1
- package/dist/cjs/src/static_dependencies/noble-hashes/ripemd160.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/qs/formats.js +0 -6
- package/dist/cjs/src/static_dependencies/qs/index.js +0 -1
- package/dist/cjs/src/static_dependencies/qs/parse.js +0 -1
- package/dist/cjs/src/static_dependencies/qs/stringify.js +0 -1
- package/dist/cjs/src/static_dependencies/qs/utils.js +0 -6
- package/dist/cjs/src/static_dependencies/scure-base/index.js +0 -6
- package/dist/cjs/src/static_dependencies/scure-bip32/index.js +19 -1
- package/dist/cjs/src/static_dependencies/scure-bip39/index.js +1 -1
- package/dist/cjs/src/static_dependencies/scure-bip39/wordlists/english.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/tokocrypto.js +1 -1
- package/dist/cjs/src/toobit.js +1 -1
- package/dist/cjs/src/upbit.js +1 -1
- package/dist/cjs/src/wavesexchange.js +1 -1
- package/dist/cjs/src/weex.js +10 -7
- package/dist/cjs/src/whitebit.js +1 -1
- package/dist/cjs/src/woo.js +2 -2
- package/dist/cjs/src/woofipro.js +2 -2
- package/dist/cjs/src/xt.js +3 -3
- package/dist/cjs/src/yobit.js +1 -1
- package/dist/cjs/src/zaif.js +1 -1
- package/dist/cjs/src/zebpay.js +1 -1
- package/js/ccxt.d.ts +8 -5
- package/js/ccxt.js +6 -10
- package/js/src/abstract/aftermath.js +0 -6
- package/js/src/abstract/alpaca.js +0 -6
- package/js/src/abstract/apex.js +0 -6
- package/js/src/abstract/arkham.js +0 -6
- package/js/src/abstract/ascendex.js +0 -6
- package/js/src/abstract/aster.js +0 -6
- package/js/src/abstract/backpack.js +0 -6
- 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/btcbox.js +0 -6
- package/js/src/abstract/btcmarkets.js +0 -6
- package/js/src/abstract/btcturk.js +0 -6
- package/js/src/abstract/bullish.js +0 -6
- package/js/src/abstract/bybit.js +0 -6
- package/js/src/abstract/bybiteu.d.ts +371 -0
- package/js/src/abstract/bybiteu.js +5 -0
- package/js/src/abstract/bydfi.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/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/deepcoin.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/dydx.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/grvt.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.js +0 -6
- package/js/src/abstract/latoken.js +0 -6
- package/js/src/abstract/lbank.js +0 -6
- package/js/src/abstract/lighter.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.js +0 -6
- package/js/src/abstract/ndax.js +0 -6
- package/js/src/abstract/novadax.js +0 -6
- package/js/src/abstract/okx.js +0 -6
- 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/pacifica.js +0 -6
- package/js/src/abstract/paradex.d.ts +58 -8
- package/js/src/abstract/paradex.js +0 -6
- package/js/src/abstract/paymium.js +0 -6
- package/js/src/abstract/phemex.js +0 -6
- package/js/src/abstract/poloniex.js +0 -6
- package/js/src/abstract/tokocrypto.js +0 -6
- package/js/src/abstract/toobit.js +0 -6
- package/js/src/abstract/upbit.js +0 -6
- package/js/src/abstract/wavesexchange.js +0 -6
- package/js/src/abstract/weex.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/zebpay.js +0 -6
- package/js/src/aftermath.js +0 -6
- package/js/src/alpaca.js +0 -6
- package/js/src/apex.d.ts +1 -0
- package/js/src/apex.js +70 -74
- package/js/src/arkham.js +0 -6
- package/js/src/ascendex.d.ts +1 -0
- package/js/src/ascendex.js +47 -55
- package/js/src/aster.d.ts +1 -0
- package/js/src/aster.js +33 -48
- package/js/src/backpack.d.ts +1 -0
- package/js/src/backpack.js +58 -66
- package/js/src/base/Exchange.d.ts +39 -9
- package/js/src/base/Exchange.js +114 -64
- 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/io.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.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.d.ts +1 -0
- package/js/src/bigone.js +71 -79
- package/js/src/binance.js +0 -6
- package/js/src/binancecoinm.js +0 -6
- package/js/src/binanceus.js +1 -6
- package/js/src/binanceusdm.js +0 -6
- package/js/src/bingx.d.ts +1 -0
- package/js/src/bingx.js +90 -109
- package/js/src/bit2c.js +0 -6
- package/js/src/bitbank.js +0 -6
- 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 +1 -0
- package/js/src/bitget.js +66 -73
- package/js/src/bithumb.js +0 -6
- package/js/src/bitmart.js +0 -6
- package/js/src/bitmex.d.ts +1 -0
- package/js/src/bitmex.js +75 -83
- package/js/src/bitopro.d.ts +1 -0
- package/js/src/bitopro.js +26 -38
- package/js/src/bitrue.d.ts +1 -0
- package/js/src/bitrue.js +43 -51
- package/js/src/bitso.js +0 -6
- package/js/src/bitstamp.d.ts +1 -0
- package/js/src/bitstamp.js +26 -27
- package/js/src/bitteam.d.ts +1 -0
- package/js/src/bitteam.js +74 -78
- package/js/src/bittrade.d.ts +1 -0
- package/js/src/bittrade.js +42 -50
- package/js/src/bitvavo.d.ts +1 -1
- package/js/src/bitvavo.js +51 -62
- package/js/src/blockchaincom.js +0 -6
- package/js/src/blofin.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/bullish.d.ts +1 -0
- package/js/src/bullish.js +24 -32
- package/js/src/bybit.js +0 -6
- package/js/src/bybiteu.d.ts +4 -0
- package/js/src/bybiteu.js +56 -0
- package/js/src/bydfi.js +1 -7
- package/js/src/cex.js +0 -6
- package/js/src/coinbase.js +1 -7
- package/js/src/coinbaseadvanced.js +0 -6
- package/js/src/coinbaseexchange.d.ts +2 -1
- package/js/src/coinbaseexchange.js +48 -56
- package/js/src/coinbaseinternational.d.ts +0 -21
- package/js/src/coinbaseinternational.js +0 -44
- package/js/src/coincheck.js +0 -6
- package/js/src/coinex.js +1 -7
- package/js/src/coinmate.js +0 -6
- package/js/src/coinmetro.d.ts +1 -0
- package/js/src/coinmetro.js +48 -60
- package/js/src/coinone.d.ts +2 -1
- package/js/src/coinone.js +30 -38
- package/js/src/coinsph.d.ts +1 -0
- package/js/src/coinsph.js +46 -54
- package/js/src/coinspot.js +0 -6
- package/js/src/cryptocom.js +0 -6
- package/js/src/cryptomus.js +0 -6
- package/js/src/deepcoin.js +1 -7
- 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/dydx.js +1 -7
- 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.js +0 -6
- package/js/src/gateio.js +0 -6
- package/js/src/gemini.js +0 -6
- package/js/src/grvt.js +0 -6
- package/js/src/hashkey.js +0 -6
- package/js/src/hibachi.js +0 -6
- package/js/src/hitbtc.d.ts +2 -0
- package/js/src/hitbtc.js +55 -51
- package/js/src/hollaex.js +2 -12
- package/js/src/htx.js +0 -6
- package/js/src/huobi.js +0 -6
- package/js/src/hyperliquid.js +9 -8
- package/js/src/independentreserve.js +0 -6
- package/js/src/indodax.js +0 -6
- package/js/src/kraken.js +0 -6
- package/js/src/krakenfutures.js +0 -6
- package/js/src/kucoin.js +0 -6
- package/js/src/kucoinfutures.js +0 -6
- package/js/src/latoken.js +0 -6
- package/js/src/lbank.js +0 -6
- package/js/src/lighter.js +0 -6
- package/js/src/luno.js +0 -6
- package/js/src/mercado.js +0 -6
- package/js/src/mexc.js +0 -6
- package/js/src/modetrade.js +1 -7
- package/js/src/myokx.js +0 -6
- package/js/src/ndax.js +0 -6
- package/js/src/novadax.js +0 -6
- package/js/src/okx.js +6 -7
- package/js/src/okxus.js +0 -6
- package/js/src/onetrading.js +0 -6
- package/js/src/oxfun.js +0 -6
- package/js/src/p2b.js +0 -6
- package/js/src/pacifica.js +42 -50
- package/js/src/paradex.d.ts +111 -11
- package/js/src/paradex.js +669 -78
- package/js/src/paymium.js +0 -6
- package/js/src/phemex.js +0 -6
- package/js/src/poloniex.d.ts +2 -1
- package/js/src/poloniex.js +70 -141
- package/js/src/pro/aftermath.js +0 -6
- package/js/src/pro/alpaca.js +0 -6
- package/js/src/pro/apex.d.ts +2 -0
- package/js/src/pro/apex.js +52 -27
- package/js/src/pro/arkham.js +0 -6
- package/js/src/pro/ascendex.js +0 -6
- package/js/src/pro/aster.js +0 -6
- package/js/src/pro/backpack.js +12 -9
- package/js/src/pro/bequant.js +0 -6
- package/js/src/pro/binance.d.ts +1 -1
- package/js/src/pro/binance.js +7 -8
- package/js/src/pro/binancecoinm.js +0 -6
- package/js/src/pro/binanceus.js +0 -7
- 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.js +0 -6
- 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.d.ts +45 -1
- package/js/src/pro/bitrue.js +417 -18
- 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/bullish.js +0 -6
- package/js/src/pro/bybit.d.ts +1 -0
- package/js/src/pro/bybit.js +6 -8
- package/js/src/pro/bybiteu.d.ts +4 -0
- package/js/src/pro/bybiteu.js +79 -0
- package/js/src/pro/bydfi.js +0 -6
- package/js/src/pro/cex.js +0 -6
- package/js/src/pro/coinbase.js +0 -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/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/deepcoin.js +0 -6
- package/js/src/pro/deribit.js +0 -6
- package/js/src/pro/derive.js +0 -6
- package/js/src/pro/dydx.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/grvt.js +0 -6
- package/js/src/pro/hashkey.js +7 -10
- 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 +4 -6
- package/js/src/pro/independentreserve.js +0 -6
- package/js/src/pro/kraken.js +0 -6
- package/js/src/pro/krakenfutures.js +27 -18
- package/js/src/pro/kucoin.js +3 -9
- package/js/src/pro/kucoinfutures.js +0 -6
- package/js/src/pro/lbank.js +0 -6
- package/js/src/pro/lighter.js +0 -6
- package/js/src/pro/luno.js +0 -6
- package/js/src/pro/mexc.js +0 -6
- package/js/src/pro/modetrade.d.ts +2 -3
- package/js/src/pro/modetrade.js +5 -8
- package/js/src/pro/myokx.js +0 -6
- package/js/src/pro/ndax.js +0 -6
- package/js/src/pro/okx.js +12 -40
- 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/pacifica.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/toobit.js +2 -8
- package/js/src/pro/upbit.js +0 -6
- package/js/src/pro/weex.d.ts +1 -0
- package/js/src/pro/weex.js +7 -11
- package/js/src/pro/whitebit.js +0 -6
- package/js/src/pro/woo.d.ts +2 -3
- package/js/src/pro/woo.js +5 -8
- package/js/src/pro/woofipro.d.ts +2 -3
- package/js/src/pro/woofipro.js +5 -8
- package/js/src/pro/xt.js +0 -6
- package/js/src/protobuf/mexc/compiled.cjs +0 -6
- package/js/src/protobuf/mexc/compiled.d.cts +0 -6
- package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/helpers.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/long/index.cjs +0 -6
- package/js/src/static_dependencies/dydx-v4-client/long/index.d.cts +0 -6
- package/js/src/static_dependencies/dydx-v4-client/onboarding.js +0 -6
- package/js/src/static_dependencies/dydx-v4-client/registry.js +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.d.ts +5 -5
- 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.d.ts +0 -1
- 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.js +0 -6
- package/js/src/static_dependencies/qs/index.js +0 -6
- package/js/src/static_dependencies/qs/parse.js +0 -6
- package/js/src/static_dependencies/qs/stringify.js +0 -6
- package/js/src/static_dependencies/qs/utils.js +0 -6
- package/js/src/static_dependencies/scure-base/index.js +0 -6
- package/js/src/static_dependencies/scure-bip32/index.js +0 -6
- package/js/src/static_dependencies/scure-bip39/index.js +0 -6
- package/js/src/static_dependencies/scure-bip39/wordlists/english.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/tokocrypto.js +0 -6
- package/js/src/toobit.js +0 -6
- package/js/src/upbit.js +0 -6
- package/js/src/wavesexchange.js +0 -6
- package/js/src/weex.js +9 -12
- package/js/src/whitebit.js +0 -6
- package/js/src/woo.js +1 -7
- package/js/src/woofipro.js +1 -7
- package/js/src/xt.js +2 -8
- package/js/src/yobit.js +0 -6
- package/js/src/zaif.js +0 -6
- package/js/src/zebpay.js +0 -6
- package/package.json +3 -3
- package/dist/cjs/src/abstract/zonda.js +0 -11
- package/dist/cjs/src/zonda.js +0 -1998
- package/js/src/abstract/zonda.d.ts +0 -56
- package/js/src/abstract/zonda.js +0 -11
- package/js/src/zonda.d.ts +0 -214
- package/js/src/zonda.js +0 -1997
package/js/src/paradex.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 { Precise } from './base/Precise.js';
|
|
9
3
|
import Exchange from './abstract/paradex.js';
|
|
@@ -42,8 +36,8 @@ export default class paradex extends Exchange {
|
|
|
42
36
|
'borrowIsolatedMargin': false,
|
|
43
37
|
'cancelAllOrders': true,
|
|
44
38
|
'cancelAllOrdersAfter': false,
|
|
45
|
-
'cancelOrder':
|
|
46
|
-
'cancelOrders':
|
|
39
|
+
'cancelOrder': true,
|
|
40
|
+
'cancelOrders': true,
|
|
47
41
|
'cancelOrdersForSymbols': false,
|
|
48
42
|
'closeAllPositions': false,
|
|
49
43
|
'closePosition': false,
|
|
@@ -51,11 +45,11 @@ export default class paradex extends Exchange {
|
|
|
51
45
|
'createMarketOrderWithCost': false,
|
|
52
46
|
'createMarketSellOrderWithCost': false,
|
|
53
47
|
'createOrder': true,
|
|
54
|
-
'createOrders':
|
|
48
|
+
'createOrders': true,
|
|
55
49
|
'createReduceOnlyOrder': false,
|
|
56
50
|
'createStopOrder': true,
|
|
57
51
|
'createTriggerOrder': true,
|
|
58
|
-
'editOrder':
|
|
52
|
+
'editOrder': true,
|
|
59
53
|
'fetchAccounts': false,
|
|
60
54
|
'fetchAllGreeks': true,
|
|
61
55
|
'fetchBalance': true,
|
|
@@ -77,18 +71,18 @@ export default class paradex extends Exchange {
|
|
|
77
71
|
'fetchFundingRateHistory': true,
|
|
78
72
|
'fetchFundingRates': false,
|
|
79
73
|
'fetchGreeks': true,
|
|
80
|
-
'fetchIndexOHLCV':
|
|
74
|
+
'fetchIndexOHLCV': true,
|
|
81
75
|
'fetchIsolatedBorrowRate': false,
|
|
82
76
|
'fetchIsolatedBorrowRates': false,
|
|
83
77
|
'fetchLedger': false,
|
|
84
78
|
'fetchLeverage': true,
|
|
85
79
|
'fetchLeverageTiers': false,
|
|
86
|
-
'fetchLiquidations':
|
|
80
|
+
'fetchLiquidations': false,
|
|
87
81
|
'fetchMarginMode': true,
|
|
88
82
|
'fetchMarketLeverageTiers': false,
|
|
89
83
|
'fetchMarkets': true,
|
|
90
|
-
'fetchMarkOHLCV':
|
|
91
|
-
'fetchMyLiquidations':
|
|
84
|
+
'fetchMarkOHLCV': true,
|
|
85
|
+
'fetchMyLiquidations': true,
|
|
92
86
|
'fetchMyTrades': true,
|
|
93
87
|
'fetchOHLCV': true,
|
|
94
88
|
'fetchOpenInterest': true,
|
|
@@ -108,10 +102,10 @@ export default class paradex extends Exchange {
|
|
|
108
102
|
'fetchTickers': true,
|
|
109
103
|
'fetchTime': true,
|
|
110
104
|
'fetchTrades': true,
|
|
111
|
-
'fetchTradingFee':
|
|
112
|
-
'fetchTradingFees':
|
|
105
|
+
'fetchTradingFee': true,
|
|
106
|
+
'fetchTradingFees': true,
|
|
113
107
|
'fetchTransfer': false,
|
|
114
|
-
'fetchTransfers':
|
|
108
|
+
'fetchTransfers': true,
|
|
115
109
|
'fetchWithdrawal': false,
|
|
116
110
|
'fetchWithdrawals': true,
|
|
117
111
|
'reduceMargin': false,
|
|
@@ -137,9 +131,11 @@ export default class paradex extends Exchange {
|
|
|
137
131
|
'logo': 'https://github.com/user-attachments/assets/84628770-784e-4ec4-a759-ec2fbb2244ea',
|
|
138
132
|
'api': {
|
|
139
133
|
'v1': 'https://api.prod.{hostname}/v1',
|
|
134
|
+
'v2': 'https://api.prod.{hostname}/v2',
|
|
140
135
|
},
|
|
141
136
|
'test': {
|
|
142
137
|
'v1': 'https://api.testnet.{hostname}/v1',
|
|
138
|
+
'v2': 'https://api.testnet.{hostname}/v2',
|
|
143
139
|
},
|
|
144
140
|
'www': 'https://www.paradex.trade/',
|
|
145
141
|
'doc': 'https://docs.api.testnet.paradex.trade/',
|
|
@@ -150,16 +146,25 @@ export default class paradex extends Exchange {
|
|
|
150
146
|
'public': {
|
|
151
147
|
'get': {
|
|
152
148
|
'bbo/{market}': 1,
|
|
149
|
+
'bbo/{market}/interactive': 1,
|
|
153
150
|
'funding/data': 1,
|
|
154
151
|
'markets': 1,
|
|
155
152
|
'markets/klines': 1,
|
|
156
153
|
'markets/summary': 1,
|
|
157
154
|
'orderbook/{market}': 1,
|
|
155
|
+
'orderbook/{market}/impact-price': 1,
|
|
156
|
+
'orderbook/{market}/interactive': 1,
|
|
158
157
|
'insurance': 1,
|
|
158
|
+
'jwks.json': 1,
|
|
159
|
+
'onboarding': 1,
|
|
159
160
|
'referrals/config': 1,
|
|
161
|
+
'staking/config': 1,
|
|
162
|
+
'system/announcements': 1,
|
|
160
163
|
'system/config': 1,
|
|
164
|
+
'system/portfolio-margin-config': 1,
|
|
161
165
|
'system/state': 1,
|
|
162
166
|
'system/time': 1,
|
|
167
|
+
'system/volume-tiers': 1,
|
|
163
168
|
'trades': 1,
|
|
164
169
|
'vaults': 1,
|
|
165
170
|
'vaults/balance': 1,
|
|
@@ -168,56 +173,99 @@ export default class paradex extends Exchange {
|
|
|
168
173
|
'vaults/positions': 1,
|
|
169
174
|
'vaults/summary': 1,
|
|
170
175
|
'vaults/transfers': 1,
|
|
176
|
+
'xp/fee-config': 1,
|
|
177
|
+
'xp/public-transfers': 1,
|
|
178
|
+
'xp/transfer/{transfer_id}': 1,
|
|
171
179
|
},
|
|
172
180
|
},
|
|
173
181
|
'private': {
|
|
174
182
|
'get': {
|
|
175
183
|
'account': 1,
|
|
176
|
-
'account/
|
|
184
|
+
'account/compliance': 1,
|
|
177
185
|
'account/history': 1,
|
|
186
|
+
'account/info': 1,
|
|
178
187
|
'account/margin': 1,
|
|
179
188
|
'account/profile': 1,
|
|
189
|
+
'account/settings': 1,
|
|
180
190
|
'account/subaccounts': 1,
|
|
191
|
+
'account/summary': 1,
|
|
181
192
|
'balance': 1,
|
|
182
193
|
'fills': 1,
|
|
183
194
|
'funding/payments': 1,
|
|
184
195
|
'positions': 1,
|
|
185
196
|
'tradebusts': 1,
|
|
186
197
|
'transactions': 1,
|
|
198
|
+
'account/keys/subkeys': 1,
|
|
199
|
+
'account/keys/subkeys/{public_key}': 1,
|
|
200
|
+
'account/tokens': 1,
|
|
201
|
+
'algo/orders': 1,
|
|
202
|
+
'algo/orders-history': 1,
|
|
203
|
+
'algo/orders/{algo_id}': 1,
|
|
204
|
+
'block-trades': 1,
|
|
205
|
+
'block-trades/{block_trade_id}': 1,
|
|
206
|
+
'block-trades/{block_trade_id}/offers': 1,
|
|
207
|
+
'block-trades/{block_trade_id}/offers/{offer_id}': 1,
|
|
187
208
|
'liquidations': 1,
|
|
188
209
|
'orders': 1,
|
|
189
210
|
'orders-history': 1,
|
|
190
211
|
'orders/by_client_id/{client_id}': 1,
|
|
191
212
|
'orders/{order_id}': 1,
|
|
192
|
-
'points_data/{market}/{program}': 1,
|
|
193
213
|
'referrals/qr-code': 1,
|
|
194
214
|
'referrals/summary': 1,
|
|
215
|
+
'staking/history': 1,
|
|
216
|
+
'staking/summary': 1,
|
|
195
217
|
'transfers': 1,
|
|
196
|
-
'algo/orders': 1,
|
|
197
|
-
'algo/orders-history': 1,
|
|
198
|
-
'algo/orders/{algo_id}': 1,
|
|
199
218
|
'vaults/account-summary': 1,
|
|
219
|
+
'vaults/mine': 1,
|
|
220
|
+
'xp/account-balance': 1,
|
|
221
|
+
'xp/transfers': 1,
|
|
222
|
+
// 'points_data/{market}/{program}': 1,
|
|
200
223
|
},
|
|
201
224
|
'post': {
|
|
225
|
+
'account/compliance': 1,
|
|
202
226
|
'account/margin/{market}': 1,
|
|
203
|
-
'account/profile/
|
|
227
|
+
'account/profile/market_max_slippage/{market}': 1,
|
|
228
|
+
'account/profile/notifications': 1,
|
|
229
|
+
'account/profile/notifications/last_seen': 1,
|
|
204
230
|
'account/profile/referral_code': 1,
|
|
231
|
+
'account/profile/refresh_inventory': 1,
|
|
232
|
+
'account/profile/size_currency_display': 1,
|
|
205
233
|
'account/profile/username': 1,
|
|
234
|
+
'account/referrer': 1,
|
|
235
|
+
'account/settings/trading_value_display': 1,
|
|
236
|
+
'account/keys/subkeys/activate': 1,
|
|
237
|
+
'account/keys/subkeys': 1,
|
|
238
|
+
'account/tokens': 1,
|
|
239
|
+
'algo/orders': 1,
|
|
206
240
|
'auth': 1,
|
|
241
|
+
'block-trades': 1,
|
|
242
|
+
'block-trades/{block_trade_id}/execute': 1,
|
|
243
|
+
'block-trades/{block_trade_id}/offers': 1,
|
|
244
|
+
'block-trades/{block_trade_id}/offers/{offer_id}/execute': 1,
|
|
207
245
|
'onboarding': 1,
|
|
208
246
|
'orders': 1,
|
|
209
247
|
'orders/batch': 1,
|
|
210
|
-
'
|
|
248
|
+
'v2/auth': 1,
|
|
249
|
+
'v2/onboarding': 1,
|
|
211
250
|
'vaults': 1,
|
|
251
|
+
'xp/transfer': 1,
|
|
252
|
+
// 'account/profile/max_slippage': 1,
|
|
212
253
|
},
|
|
213
254
|
'put': {
|
|
255
|
+
'account/profile': 1,
|
|
256
|
+
'account/keys/subkeys/{public_key}': 1,
|
|
214
257
|
'orders/{order_id}': 1,
|
|
215
258
|
},
|
|
216
259
|
'delete': {
|
|
260
|
+
'account/keys/subkeys/{public_key}': 1,
|
|
261
|
+
'account/tokens/{lookup_id}': 1,
|
|
262
|
+
'algo/orders/{algo_id}': 1,
|
|
263
|
+
'block-trades/{block_trade_id}': 1,
|
|
264
|
+
'block-trades/{block_trade_id}/offers/{offer_id}': 1,
|
|
217
265
|
'orders': 1,
|
|
266
|
+
'orders/batch': 1,
|
|
218
267
|
'orders/by_client_id/{client_id}': 1,
|
|
219
268
|
'orders/{order_id}': 1,
|
|
220
|
-
'algo/orders/{algo_id}': 1,
|
|
221
269
|
},
|
|
222
270
|
},
|
|
223
271
|
},
|
|
@@ -332,7 +380,9 @@ export default class paradex extends Exchange {
|
|
|
332
380
|
'selfTradePrevention': true,
|
|
333
381
|
'iceberg': false,
|
|
334
382
|
},
|
|
335
|
-
'createOrders':
|
|
383
|
+
'createOrders': {
|
|
384
|
+
'max': 10,
|
|
385
|
+
},
|
|
336
386
|
'fetchMyTrades': {
|
|
337
387
|
'marginMode': false,
|
|
338
388
|
'limit': 100,
|
|
@@ -424,7 +474,7 @@ export default class paradex extends Exchange {
|
|
|
424
474
|
/**
|
|
425
475
|
* @method
|
|
426
476
|
* @name paradex#fetchMarkets
|
|
427
|
-
* @description retrieves data on all markets for
|
|
477
|
+
* @description retrieves data on all markets for paradex
|
|
428
478
|
* @see https://docs.paradex.trade/api/prod/markets/get-markets
|
|
429
479
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
430
480
|
* @returns {object[]} an array of objects representing market data
|
|
@@ -624,6 +674,122 @@ export default class paradex extends Exchange {
|
|
|
624
674
|
'info': market,
|
|
625
675
|
});
|
|
626
676
|
}
|
|
677
|
+
parseTradingFee(fee, market = undefined) {
|
|
678
|
+
//
|
|
679
|
+
// {
|
|
680
|
+
// "symbol": "BTC-USD-PERP",
|
|
681
|
+
// "fee_config": {
|
|
682
|
+
// "api_fee": {
|
|
683
|
+
// "maker_fee": {
|
|
684
|
+
// "fee": "0.000075",
|
|
685
|
+
// "fee_cap": "0.125",
|
|
686
|
+
// "fee_floor": "-0.125"
|
|
687
|
+
// },
|
|
688
|
+
// "taker_fee": {
|
|
689
|
+
// "fee": "0.000125",
|
|
690
|
+
// "fee_cap": "0.125",
|
|
691
|
+
// "fee_floor": "-0.125"
|
|
692
|
+
// }
|
|
693
|
+
// }
|
|
694
|
+
// }
|
|
695
|
+
// }
|
|
696
|
+
//
|
|
697
|
+
const marketId = this.safeString(fee, 'symbol');
|
|
698
|
+
market = this.safeMarket(marketId, market);
|
|
699
|
+
const feeConfig = this.safeDict(fee, 'fee_config', {});
|
|
700
|
+
const apiFee = this.safeDict(feeConfig, 'api_fee', {});
|
|
701
|
+
const makerFee = this.safeDict(apiFee, 'maker_fee', {});
|
|
702
|
+
const takerFee = this.safeDict(apiFee, 'taker_fee', {});
|
|
703
|
+
return {
|
|
704
|
+
'info': fee,
|
|
705
|
+
'symbol': market['symbol'],
|
|
706
|
+
'maker': this.safeNumber(makerFee, 'fee', this.safeNumber(market, 'maker')),
|
|
707
|
+
'taker': this.safeNumber(takerFee, 'fee', this.safeNumber(market, 'taker')),
|
|
708
|
+
'percentage': true,
|
|
709
|
+
'tierBased': false,
|
|
710
|
+
};
|
|
711
|
+
}
|
|
712
|
+
/**
|
|
713
|
+
* @method
|
|
714
|
+
* @name paradex#fetchTradingFee
|
|
715
|
+
* @description fetch the trading fees for a market
|
|
716
|
+
* @see https://docs.paradex.trade/api/prod/markets/get-markets
|
|
717
|
+
* @param {string} symbol unified market symbol
|
|
718
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
719
|
+
* @returns {object} a [fee structure]{@link https://docs.ccxt.com/?id=fee-structure}
|
|
720
|
+
*/
|
|
721
|
+
async fetchTradingFee(symbol, params = {}) {
|
|
722
|
+
if (symbol === undefined) {
|
|
723
|
+
throw new ArgumentsRequired(this.id + ' fetchTradingFee() requires a symbol argument');
|
|
724
|
+
}
|
|
725
|
+
await this.loadMarkets();
|
|
726
|
+
const market = this.market(symbol);
|
|
727
|
+
const request = {
|
|
728
|
+
'market': market['id'],
|
|
729
|
+
};
|
|
730
|
+
const response = await this.publicGetMarkets(this.extend(request, params));
|
|
731
|
+
//
|
|
732
|
+
// {
|
|
733
|
+
// "results": [
|
|
734
|
+
// {
|
|
735
|
+
// "symbol": "BTC-USD-PERP",
|
|
736
|
+
// "fee_config": {
|
|
737
|
+
// "api_fee": {
|
|
738
|
+
// "maker_fee": {
|
|
739
|
+
// "fee": "0.000075"
|
|
740
|
+
// },
|
|
741
|
+
// "taker_fee": {
|
|
742
|
+
// "fee": "0.000125"
|
|
743
|
+
// }
|
|
744
|
+
// }
|
|
745
|
+
// }
|
|
746
|
+
// }
|
|
747
|
+
// ]
|
|
748
|
+
// }
|
|
749
|
+
//
|
|
750
|
+
const data = this.safeList(response, 'results', []);
|
|
751
|
+
const first = this.safeDict(data, 0, {});
|
|
752
|
+
return this.parseTradingFee(first, market);
|
|
753
|
+
}
|
|
754
|
+
/**
|
|
755
|
+
* @method
|
|
756
|
+
* @name paradex#fetchTradingFees
|
|
757
|
+
* @description fetch the trading fees for multiple markets
|
|
758
|
+
* @see https://docs.paradex.trade/api/prod/markets/get-markets
|
|
759
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
760
|
+
* @returns {object} a dictionary of [fee structures]{@link https://docs.ccxt.com/?id=fee-structure} indexed by market symbols
|
|
761
|
+
*/
|
|
762
|
+
async fetchTradingFees(params = {}) {
|
|
763
|
+
await this.loadMarkets();
|
|
764
|
+
const response = await this.publicGetMarkets(params);
|
|
765
|
+
//
|
|
766
|
+
// {
|
|
767
|
+
// "results": [
|
|
768
|
+
// {
|
|
769
|
+
// "symbol": "BTC-USD-PERP",
|
|
770
|
+
// "fee_config": {
|
|
771
|
+
// "api_fee": {
|
|
772
|
+
// "maker_fee": {
|
|
773
|
+
// "fee": "0.000075"
|
|
774
|
+
// },
|
|
775
|
+
// "taker_fee": {
|
|
776
|
+
// "fee": "0.000125"
|
|
777
|
+
// }
|
|
778
|
+
// }
|
|
779
|
+
// }
|
|
780
|
+
// }
|
|
781
|
+
// ]
|
|
782
|
+
// }
|
|
783
|
+
//
|
|
784
|
+
const fees = this.safeList(response, 'results', []);
|
|
785
|
+
const result = {};
|
|
786
|
+
for (let i = 0; i < fees.length; i++) {
|
|
787
|
+
const fee = this.parseTradingFee(fees[i]);
|
|
788
|
+
const symbol = fee['symbol'];
|
|
789
|
+
result[symbol] = fee;
|
|
790
|
+
}
|
|
791
|
+
return result;
|
|
792
|
+
}
|
|
627
793
|
/**
|
|
628
794
|
* @method
|
|
629
795
|
* @name paradex#fetchOHLCV
|
|
@@ -908,7 +1074,7 @@ export default class paradex extends Exchange {
|
|
|
908
1074
|
'market': market['id'],
|
|
909
1075
|
};
|
|
910
1076
|
if (limit !== undefined) {
|
|
911
|
-
request['page_size'] = limit;
|
|
1077
|
+
request['page_size'] = Math.min(limit, 1000);
|
|
912
1078
|
}
|
|
913
1079
|
if (since !== undefined) {
|
|
914
1080
|
request['start_at'] = since;
|
|
@@ -1351,30 +1517,7 @@ export default class paradex extends Exchange {
|
|
|
1351
1517
|
scaleNumber(num) {
|
|
1352
1518
|
return Precise.stringMul(num, '100000000');
|
|
1353
1519
|
}
|
|
1354
|
-
|
|
1355
|
-
* @method
|
|
1356
|
-
* @name paradex#createOrder
|
|
1357
|
-
* @description create a trade order
|
|
1358
|
-
* @see https://docs.paradex.trade/api/prod/orders/new
|
|
1359
|
-
* @param {string} symbol unified symbol of the market to create an order in
|
|
1360
|
-
* @param {string} type 'market' or 'limit'
|
|
1361
|
-
* @param {string} side 'buy' or 'sell'
|
|
1362
|
-
* @param {float} amount how much of currency you want to trade in units of base currency
|
|
1363
|
-
* @param {float} [price] the price at which the order is to be fullfilled, in units of the quote currency, ignored in market orders
|
|
1364
|
-
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1365
|
-
* @param {float} [params.stopPrice] alias for triggerPrice
|
|
1366
|
-
* @param {float} [params.triggerPrice] The price a trigger order is triggered at
|
|
1367
|
-
* @param {float} [params.stopLossPrice] the price that a stop loss order is triggered at
|
|
1368
|
-
* @param {float} [params.takeProfitPrice] the price that a take profit order is triggered at
|
|
1369
|
-
* @param {string} [params.timeInForce] "GTC", "IOC", or "POST_ONLY"
|
|
1370
|
-
* @param {bool} [params.postOnly] true or false
|
|
1371
|
-
* @param {bool} [params.reduceOnly] Ensures that the executed order does not flip the opened position.
|
|
1372
|
-
* @param {string} [params.clientOrderId] a unique id for the order
|
|
1373
|
-
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
1374
|
-
*/
|
|
1375
|
-
async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
|
|
1376
|
-
await this.authenticateRest();
|
|
1377
|
-
await this.loadMarkets();
|
|
1520
|
+
createOrderRequest(symbol, type, side, amount, price = undefined, params = {}) {
|
|
1378
1521
|
const market = this.market(symbol);
|
|
1379
1522
|
let reduceOnly = this.safeBool2(params, 'reduceOnly', 'reduce_only');
|
|
1380
1523
|
const orderType = type.toUpperCase();
|
|
@@ -1382,7 +1525,8 @@ export default class paradex extends Exchange {
|
|
|
1382
1525
|
const request = {
|
|
1383
1526
|
'market': market['id'],
|
|
1384
1527
|
'side': orderSide,
|
|
1385
|
-
'type': orderType,
|
|
1528
|
+
'type': orderType,
|
|
1529
|
+
'instruction': 'GTC',
|
|
1386
1530
|
};
|
|
1387
1531
|
const triggerPrice = this.safeString2(params, 'triggerPrice', 'stopPrice');
|
|
1388
1532
|
const stopLossPrice = this.safeString(params, 'stopLossPrice');
|
|
@@ -1397,7 +1541,7 @@ export default class paradex extends Exchange {
|
|
|
1397
1541
|
if (postOnly) {
|
|
1398
1542
|
request['instruction'] = 'POST_ONLY';
|
|
1399
1543
|
}
|
|
1400
|
-
else if (timeInForce === '
|
|
1544
|
+
else if (timeInForce === 'IOC') {
|
|
1401
1545
|
request['instruction'] = 'IOC';
|
|
1402
1546
|
}
|
|
1403
1547
|
}
|
|
@@ -1460,32 +1604,77 @@ export default class paradex extends Exchange {
|
|
|
1460
1604
|
];
|
|
1461
1605
|
}
|
|
1462
1606
|
params = this.omit(params, ['reduceOnly', 'reduce_only', 'clOrdID', 'clientOrderId', 'client_order_id', 'postOnly', 'timeInForce', 'stopPrice', 'triggerPrice', 'stopLossPrice', 'takeProfitPrice']);
|
|
1607
|
+
return this.extend(request, params);
|
|
1608
|
+
}
|
|
1609
|
+
async signOrderRequest(request, modify = false) {
|
|
1463
1610
|
const account = await this.retrieveAccount();
|
|
1464
1611
|
const now = this.nonce();
|
|
1612
|
+
const orderType = this.safeString(request, 'type');
|
|
1613
|
+
const isMarket = (orderType.indexOf('MARKET') >= 0);
|
|
1465
1614
|
const orderReq = {
|
|
1466
1615
|
'timestamp': now * 1000,
|
|
1467
1616
|
'market': this.stringToBase16(request['market']),
|
|
1468
|
-
'side': (
|
|
1617
|
+
'side': (request['side'] === 'BUY') ? '1' : '2',
|
|
1469
1618
|
'orderType': this.stringToBase16(request['type']),
|
|
1470
1619
|
'size': this.scaleNumber(request['size']),
|
|
1471
1620
|
'price': (isMarket) ? '0' : this.scaleNumber(request['price']),
|
|
1472
1621
|
};
|
|
1622
|
+
const orderFields = [
|
|
1623
|
+
{ 'name': 'timestamp', 'type': 'felt' },
|
|
1624
|
+
{ 'name': 'market', 'type': 'felt' },
|
|
1625
|
+
{ 'name': 'side', 'type': 'felt' },
|
|
1626
|
+
{ 'name': 'orderType', 'type': 'felt' },
|
|
1627
|
+
{ 'name': 'size', 'type': 'felt' },
|
|
1628
|
+
{ 'name': 'price', 'type': 'felt' },
|
|
1629
|
+
];
|
|
1630
|
+
let messageTypes = {};
|
|
1631
|
+
if (modify) {
|
|
1632
|
+
orderReq['id'] = request['id'];
|
|
1633
|
+
orderFields.push({ 'name': 'id', 'type': 'felt' });
|
|
1634
|
+
messageTypes = {
|
|
1635
|
+
'ModifyOrder': orderFields,
|
|
1636
|
+
};
|
|
1637
|
+
}
|
|
1638
|
+
else {
|
|
1639
|
+
messageTypes = {
|
|
1640
|
+
'Order': orderFields,
|
|
1641
|
+
};
|
|
1642
|
+
}
|
|
1473
1643
|
const domain = await this.prepareParadexDomain();
|
|
1474
|
-
const messageTypes = {
|
|
1475
|
-
'Order': [
|
|
1476
|
-
{ 'name': 'timestamp', 'type': 'felt' },
|
|
1477
|
-
{ 'name': 'market', 'type': 'felt' },
|
|
1478
|
-
{ 'name': 'side', 'type': 'felt' },
|
|
1479
|
-
{ 'name': 'orderType', 'type': 'felt' },
|
|
1480
|
-
{ 'name': 'size', 'type': 'felt' },
|
|
1481
|
-
{ 'name': 'price', 'type': 'felt' },
|
|
1482
|
-
],
|
|
1483
|
-
};
|
|
1484
1644
|
const msg = this.starknetEncodeStructuredData(domain, messageTypes, orderReq, account['address']);
|
|
1485
1645
|
const signature = this.starknetSign(msg, account['privateKey']);
|
|
1486
1646
|
request['signature'] = signature;
|
|
1487
1647
|
request['signature_timestamp'] = orderReq['timestamp'];
|
|
1488
|
-
|
|
1648
|
+
return request;
|
|
1649
|
+
}
|
|
1650
|
+
/**
|
|
1651
|
+
* @method
|
|
1652
|
+
* @name paradex#createOrder
|
|
1653
|
+
* @description create a trade order
|
|
1654
|
+
* @see https://docs.paradex.trade/api/prod/orders/new
|
|
1655
|
+
* @param {string} symbol unified symbol of the market to create an order in
|
|
1656
|
+
* @param {string} type 'market' or 'limit'
|
|
1657
|
+
* @param {string} side 'buy' or 'sell'
|
|
1658
|
+
* @param {float} amount how much of currency you want to trade in units of base currency
|
|
1659
|
+
* @param {float} [price] the price at which the order is to be fullfilled, in units of the quote currency, ignored in market orders
|
|
1660
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1661
|
+
* @param {float} [params.stopPrice] alias for triggerPrice
|
|
1662
|
+
* @param {float} [params.triggerPrice] The price a trigger order is triggered at
|
|
1663
|
+
* @param {float} [params.stopLossPrice] the price that a stop loss order is triggered at
|
|
1664
|
+
* @param {float} [params.takeProfitPrice] the price that a take profit order is triggered at
|
|
1665
|
+
* @param {string} [params.timeInForce] "GTC", "IOC", or "POST_ONLY"
|
|
1666
|
+
* @param {bool} [params.postOnly] true or false
|
|
1667
|
+
* @param {bool} [params.reduceOnly] Ensures that the executed order does not flip the opened position.
|
|
1668
|
+
* @param {string} [params.clientOrderId] a unique id for the order
|
|
1669
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
1670
|
+
*/
|
|
1671
|
+
async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
|
|
1672
|
+
await this.authenticateRest();
|
|
1673
|
+
await this.loadMarkets();
|
|
1674
|
+
const market = this.market(symbol);
|
|
1675
|
+
let request = this.createOrderRequest(symbol, type, side, amount, price, params);
|
|
1676
|
+
request = await this.signOrderRequest(request);
|
|
1677
|
+
const response = await this.privatePostOrders(request);
|
|
1489
1678
|
//
|
|
1490
1679
|
// {
|
|
1491
1680
|
// "account": "0x4638e3041366aa71720be63e32e53e1223316c7f0d56f7aa617542ed1e7512x",
|
|
@@ -1517,6 +1706,134 @@ export default class paradex extends Exchange {
|
|
|
1517
1706
|
const order = this.parseOrder(response, market);
|
|
1518
1707
|
return order;
|
|
1519
1708
|
}
|
|
1709
|
+
/**
|
|
1710
|
+
* @method
|
|
1711
|
+
* @name paradex#editOrder
|
|
1712
|
+
* @description edit an open limit order or TPSL order
|
|
1713
|
+
* @see https://docs.paradex.trade/api-reference/prod/orders/modify
|
|
1714
|
+
* @param {string} id order id
|
|
1715
|
+
* @param {string} symbol unified symbol of the market to edit an order in
|
|
1716
|
+
* @param {string} type 'limit' or a TPSL order type
|
|
1717
|
+
* @param {string} side 'buy' or 'sell'
|
|
1718
|
+
* @param {float} amount how much of the currency you want to trade in units of the base currency
|
|
1719
|
+
* @param {float} price the price at which the order is to be fulfilled, in units of the quote currency
|
|
1720
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1721
|
+
* @param {float} [params.stopPrice] alias for triggerPrice
|
|
1722
|
+
* @param {float} [params.triggerPrice] The price a trigger order is triggered at
|
|
1723
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
1724
|
+
*/
|
|
1725
|
+
async editOrder(id, symbol, type, side, amount = undefined, price = undefined, params = {}) {
|
|
1726
|
+
if (amount === undefined) {
|
|
1727
|
+
throw new ArgumentsRequired(this.id + ' editOrder() requires an amount argument');
|
|
1728
|
+
}
|
|
1729
|
+
if (price === undefined) {
|
|
1730
|
+
throw new ArgumentsRequired(this.id + ' editOrder() requires a price argument');
|
|
1731
|
+
}
|
|
1732
|
+
await this.authenticateRest();
|
|
1733
|
+
await this.loadMarkets();
|
|
1734
|
+
const market = this.market(symbol);
|
|
1735
|
+
let request = this.createOrderRequest(symbol, type, side, amount, price, params);
|
|
1736
|
+
request = this.omit(request, ['instruction', 'client_id', 'flags']);
|
|
1737
|
+
request['order_id'] = id;
|
|
1738
|
+
request['id'] = id;
|
|
1739
|
+
request = await this.signOrderRequest(request, true);
|
|
1740
|
+
const response = await this.privatePutOrdersOrderId(request);
|
|
1741
|
+
//
|
|
1742
|
+
// {
|
|
1743
|
+
// "account": "0x4638e3041366aa71720be63e32e53e1223316c7f0d56f7aa617542ed1e7512x",
|
|
1744
|
+
// "avg_fill_price": "26000",
|
|
1745
|
+
// "cancel_reason": "NOT_ENOUGH_MARGIN",
|
|
1746
|
+
// "client_id": "x1234",
|
|
1747
|
+
// "created_at": 1681493746016,
|
|
1748
|
+
// "flags": [
|
|
1749
|
+
// "REDUCE_ONLY"
|
|
1750
|
+
// ],
|
|
1751
|
+
// "id": "123456",
|
|
1752
|
+
// "instruction": "GTC",
|
|
1753
|
+
// "last_updated_at": 1681493746016,
|
|
1754
|
+
// "market": "BTC-USD-PERP",
|
|
1755
|
+
// "price": "26000",
|
|
1756
|
+
// "published_at": 1681493746016,
|
|
1757
|
+
// "received_at": 1681493746016,
|
|
1758
|
+
// "remaining_size": "0",
|
|
1759
|
+
// "request_info": {
|
|
1760
|
+
// "id": "string",
|
|
1761
|
+
// "message": "string",
|
|
1762
|
+
// "request_type": "string",
|
|
1763
|
+
// "status": "string"
|
|
1764
|
+
// },
|
|
1765
|
+
// "seq_no": 1681471234972000000,
|
|
1766
|
+
// "side": "BUY",
|
|
1767
|
+
// "size": "0.05",
|
|
1768
|
+
// "status": "NEW",
|
|
1769
|
+
// "stp": "EXPIRE_MAKER",
|
|
1770
|
+
// "timestamp": 1681493746016,
|
|
1771
|
+
// "trigger_price": "26000",
|
|
1772
|
+
// "type": "MARKET"
|
|
1773
|
+
// }
|
|
1774
|
+
//
|
|
1775
|
+
return this.parseOrder(response, market);
|
|
1776
|
+
}
|
|
1777
|
+
/**
|
|
1778
|
+
* @method
|
|
1779
|
+
* @name paradex#createOrders
|
|
1780
|
+
* @description create a list of trade orders
|
|
1781
|
+
* @see https://docs.paradex.trade/api/prod/orders/batch
|
|
1782
|
+
* @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
|
|
1783
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1784
|
+
* @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
|
|
1785
|
+
*/
|
|
1786
|
+
async createOrders(orders, params = {}) {
|
|
1787
|
+
await this.authenticateRest();
|
|
1788
|
+
await this.loadMarkets();
|
|
1789
|
+
const ordersRequests = [];
|
|
1790
|
+
for (let i = 0; i < orders.length; i++) {
|
|
1791
|
+
const rawOrder = orders[i];
|
|
1792
|
+
const symbol = this.safeString(rawOrder, 'symbol');
|
|
1793
|
+
const type = this.safeString(rawOrder, 'type');
|
|
1794
|
+
const side = this.safeString(rawOrder, 'side');
|
|
1795
|
+
const amount = this.safeNumber(rawOrder, 'amount');
|
|
1796
|
+
const price = this.safeNumber(rawOrder, 'price');
|
|
1797
|
+
const orderParams = this.safeDict(rawOrder, 'params', {});
|
|
1798
|
+
const extendedParams = this.extend(params, orderParams);
|
|
1799
|
+
let orderRequest = this.createOrderRequest(symbol, type, side, amount, price, extendedParams);
|
|
1800
|
+
orderRequest = await this.signOrderRequest(orderRequest);
|
|
1801
|
+
ordersRequests.push(orderRequest);
|
|
1802
|
+
}
|
|
1803
|
+
const response = await this.privatePostOrdersBatch(ordersRequests);
|
|
1804
|
+
//
|
|
1805
|
+
// {
|
|
1806
|
+
// "errors": [
|
|
1807
|
+
// {
|
|
1808
|
+
// "error": "VALIDATION_ERROR",
|
|
1809
|
+
// "message": "Invalid order"
|
|
1810
|
+
// }
|
|
1811
|
+
// ],
|
|
1812
|
+
// "orders": [
|
|
1813
|
+
// {
|
|
1814
|
+
// "id": "123456",
|
|
1815
|
+
// "market": "BTC-USD-PERP",
|
|
1816
|
+
// "side": "BUY",
|
|
1817
|
+
// "type": "LIMIT",
|
|
1818
|
+
// "price": "26000",
|
|
1819
|
+
// "size": "0.05",
|
|
1820
|
+
// "status": "NEW"
|
|
1821
|
+
// }
|
|
1822
|
+
// ]
|
|
1823
|
+
// }
|
|
1824
|
+
//
|
|
1825
|
+
const responseOrders = this.safeList(response, 'orders', []);
|
|
1826
|
+
const parsedOrders = this.parseOrders(responseOrders);
|
|
1827
|
+
const errors = this.safeList(response, 'errors', []);
|
|
1828
|
+
for (let i = 0; i < errors.length; i++) {
|
|
1829
|
+
const error = errors[i];
|
|
1830
|
+
parsedOrders.push(this.safeOrder({
|
|
1831
|
+
'info': error,
|
|
1832
|
+
'status': 'rejected',
|
|
1833
|
+
}));
|
|
1834
|
+
}
|
|
1835
|
+
return parsedOrders;
|
|
1836
|
+
}
|
|
1520
1837
|
/**
|
|
1521
1838
|
* @method
|
|
1522
1839
|
* @name paradex#cancelOrder
|
|
@@ -1548,6 +1865,86 @@ export default class paradex extends Exchange {
|
|
|
1548
1865
|
//
|
|
1549
1866
|
return this.parseOrder(response);
|
|
1550
1867
|
}
|
|
1868
|
+
/**
|
|
1869
|
+
* @method
|
|
1870
|
+
* @name paradex#cancelOrders
|
|
1871
|
+
* @description cancel multiple orders
|
|
1872
|
+
* @see https://docs.paradex.trade/api/prod/orders/cancel-batch
|
|
1873
|
+
* @param {string[]} ids order ids
|
|
1874
|
+
* @param {string} [symbol] unified market symbol, not used by paradex cancelOrders()
|
|
1875
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1876
|
+
* @param {string[]} [params.clientOrderIds] client order ids
|
|
1877
|
+
* @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
|
|
1878
|
+
*/
|
|
1879
|
+
async cancelOrders(ids, symbol = undefined, params = {}) {
|
|
1880
|
+
await this.authenticateRest();
|
|
1881
|
+
await this.loadMarkets();
|
|
1882
|
+
const clientOrderIds = this.safeListN(params, ['clOrdIDs', 'clientOrderIds', 'client_order_ids']);
|
|
1883
|
+
params = this.omit(params, ['clOrdIDs', 'clientOrderIds', 'client_order_ids']);
|
|
1884
|
+
const hasOrderIds = (ids !== undefined) && (Array.isArray(ids));
|
|
1885
|
+
const hasClientOrderIds = (clientOrderIds !== undefined) && (Array.isArray(clientOrderIds));
|
|
1886
|
+
if (!hasOrderIds && !hasClientOrderIds) {
|
|
1887
|
+
throw new ArgumentsRequired(this.id + ' cancelOrders() requires a non-empty ids argument or a non-empty clientOrderIds parameter');
|
|
1888
|
+
}
|
|
1889
|
+
const request = {};
|
|
1890
|
+
if (hasOrderIds) {
|
|
1891
|
+
request['order_ids'] = ids;
|
|
1892
|
+
}
|
|
1893
|
+
if (hasClientOrderIds) {
|
|
1894
|
+
request['client_order_ids'] = clientOrderIds;
|
|
1895
|
+
}
|
|
1896
|
+
const response = await this.privateDeleteOrdersBatch(this.extend(request, params));
|
|
1897
|
+
//
|
|
1898
|
+
// {
|
|
1899
|
+
// "results": [
|
|
1900
|
+
// {
|
|
1901
|
+
// "id": "order-id-1",
|
|
1902
|
+
// "client_id": "client-id-X",
|
|
1903
|
+
// "account": "account-1",
|
|
1904
|
+
// "market": "BTC-USD-PERP",
|
|
1905
|
+
// "status": "QUEUED_FOR_CANCELLATION"
|
|
1906
|
+
// },
|
|
1907
|
+
// {
|
|
1908
|
+
// "id": "order-id-2",
|
|
1909
|
+
// "client_id": "client-id-Y",
|
|
1910
|
+
// "account": "account-1",
|
|
1911
|
+
// "market": "ETH-USD-PERP",
|
|
1912
|
+
// "status": "ALREADY_CLOSED"
|
|
1913
|
+
// },
|
|
1914
|
+
// {
|
|
1915
|
+
// "client_id": "client-id-2",
|
|
1916
|
+
// "status": "NOT_FOUND"
|
|
1917
|
+
// }
|
|
1918
|
+
// ]
|
|
1919
|
+
// }
|
|
1920
|
+
//
|
|
1921
|
+
const results = this.safeList(response, 'results', []);
|
|
1922
|
+
const orders = [];
|
|
1923
|
+
for (let i = 0; i < results.length; i++) {
|
|
1924
|
+
const result = results[i];
|
|
1925
|
+
const marketId = this.safeString(result, 'market');
|
|
1926
|
+
const market = this.safeMarket(marketId, undefined);
|
|
1927
|
+
const status = this.safeString(result, 'status');
|
|
1928
|
+
let orderStatus = undefined;
|
|
1929
|
+
if (status === 'QUEUED_FOR_CANCELLATION') {
|
|
1930
|
+
orderStatus = 'canceled';
|
|
1931
|
+
}
|
|
1932
|
+
else if (status === 'ALREADY_CLOSED') {
|
|
1933
|
+
orderStatus = 'closed';
|
|
1934
|
+
}
|
|
1935
|
+
else if (status === 'NOT_FOUND') {
|
|
1936
|
+
orderStatus = 'rejected';
|
|
1937
|
+
}
|
|
1938
|
+
orders.push(this.safeOrder({
|
|
1939
|
+
'info': result,
|
|
1940
|
+
'id': this.safeString(result, 'id'),
|
|
1941
|
+
'clientOrderId': this.safeString(result, 'client_id'),
|
|
1942
|
+
'status': orderStatus,
|
|
1943
|
+
'symbol': market['symbol'],
|
|
1944
|
+
}, market));
|
|
1945
|
+
}
|
|
1946
|
+
return orders;
|
|
1947
|
+
}
|
|
1551
1948
|
/**
|
|
1552
1949
|
* @method
|
|
1553
1950
|
* @name paradex#cancelAllOrders
|
|
@@ -1983,18 +2380,19 @@ export default class paradex extends Exchange {
|
|
|
1983
2380
|
}
|
|
1984
2381
|
/**
|
|
1985
2382
|
* @method
|
|
1986
|
-
* @name paradex#
|
|
1987
|
-
* @description retrieves the
|
|
2383
|
+
* @name paradex#fetchMyLiquidations
|
|
2384
|
+
* @description retrieves the users liquidated positions
|
|
1988
2385
|
* @see https://docs.paradex.trade/api/prod/liquidations/get-liquidations
|
|
1989
|
-
* @param {string} symbol unified CCXT market symbol
|
|
2386
|
+
* @param {string} [symbol] unified CCXT market symbol
|
|
1990
2387
|
* @param {int} [since] the earliest time in ms to fetch liquidations for
|
|
1991
2388
|
* @param {int} [limit] the maximum number of liquidation structures to retrieve
|
|
1992
|
-
* @param {object} [params] exchange specific parameters
|
|
2389
|
+
* @param {object} [params] exchange specific parameters
|
|
1993
2390
|
* @param {int} [params.until] timestamp in ms of the latest liquidation
|
|
1994
2391
|
* @returns {object} an array of [liquidation structures]{@link https://docs.ccxt.com/?id=liquidation-structure}
|
|
1995
2392
|
*/
|
|
1996
|
-
async
|
|
2393
|
+
async fetchMyLiquidations(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
1997
2394
|
await this.authenticateRest();
|
|
2395
|
+
await this.loadMarkets();
|
|
1998
2396
|
let request = {};
|
|
1999
2397
|
if (since !== undefined) {
|
|
2000
2398
|
request['from'] = since;
|
|
@@ -2002,7 +2400,10 @@ export default class paradex extends Exchange {
|
|
|
2002
2400
|
else {
|
|
2003
2401
|
request['from'] = 1;
|
|
2004
2402
|
}
|
|
2005
|
-
|
|
2403
|
+
let market = undefined;
|
|
2404
|
+
if (symbol !== undefined) {
|
|
2405
|
+
market = this.market(symbol);
|
|
2406
|
+
}
|
|
2006
2407
|
[request, params] = this.handleUntilOption('to', request, params);
|
|
2007
2408
|
const response = await this.privateGetLiquidations(this.extend(request, params));
|
|
2008
2409
|
//
|
|
@@ -2028,7 +2429,7 @@ export default class paradex extends Exchange {
|
|
|
2028
2429
|
const timestamp = this.safeInteger(liquidation, 'created_at');
|
|
2029
2430
|
return this.safeLiquidation({
|
|
2030
2431
|
'info': liquidation,
|
|
2031
|
-
'symbol':
|
|
2432
|
+
'symbol': this.safeString(market, 'symbol'),
|
|
2032
2433
|
'contracts': undefined,
|
|
2033
2434
|
'contractSize': undefined,
|
|
2034
2435
|
'price': undefined,
|
|
@@ -2041,7 +2442,7 @@ export default class paradex extends Exchange {
|
|
|
2041
2442
|
}
|
|
2042
2443
|
/**
|
|
2043
2444
|
* @method
|
|
2044
|
-
* @name paradex#
|
|
2445
|
+
* @name paradex#fetchDeposits
|
|
2045
2446
|
* @description fetch all deposits made to an account
|
|
2046
2447
|
* @see https://docs.paradex.trade/api/prod/transfers/get
|
|
2047
2448
|
* @param {string} code unified currency code
|
|
@@ -2049,7 +2450,7 @@ export default class paradex extends Exchange {
|
|
|
2049
2450
|
* @param {int} [limit] the maximum number of deposits structures to retrieve
|
|
2050
2451
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2051
2452
|
* @param {int} [params.until] the latest time in ms to fetch entries for
|
|
2052
|
-
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [
|
|
2453
|
+
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
2053
2454
|
* @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
|
|
2054
2455
|
*/
|
|
2055
2456
|
async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
|
|
@@ -2110,7 +2511,7 @@ export default class paradex extends Exchange {
|
|
|
2110
2511
|
* @param {int} [limit] the maximum number of withdrawals structures to retrieve
|
|
2111
2512
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2112
2513
|
* @param {int} [params.until] the latest time in ms to fetch withdrawals for
|
|
2113
|
-
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [
|
|
2514
|
+
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
2114
2515
|
* @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
|
|
2115
2516
|
*/
|
|
2116
2517
|
async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
|
|
@@ -2161,6 +2562,106 @@ export default class paradex extends Exchange {
|
|
|
2161
2562
|
}
|
|
2162
2563
|
return this.parseTransactions(deposits, undefined, since, limit);
|
|
2163
2564
|
}
|
|
2565
|
+
/**
|
|
2566
|
+
* @method
|
|
2567
|
+
* @name paradex#fetchTransfers
|
|
2568
|
+
* @description fetch a history of transfers made on an account
|
|
2569
|
+
* @see https://docs.paradex.trade/api/prod/transfers/get
|
|
2570
|
+
* @param {string} code unified currency code
|
|
2571
|
+
* @param {int} [since] the earliest time in ms to fetch transfers for
|
|
2572
|
+
* @param {int} [limit] the maximum number of transfer structures to retrieve
|
|
2573
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2574
|
+
* @param {int} [params.until] the latest time in ms to fetch entries for
|
|
2575
|
+
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
2576
|
+
* @returns {object[]} a list of [transfer structures]{@link https://docs.ccxt.com/?id=transfer-structure}
|
|
2577
|
+
*/
|
|
2578
|
+
async fetchTransfers(code = undefined, since = undefined, limit = undefined, params = {}) {
|
|
2579
|
+
await this.authenticateRest();
|
|
2580
|
+
await this.loadMarkets();
|
|
2581
|
+
let paginate = false;
|
|
2582
|
+
[paginate, params] = this.handleOptionAndParams(params, 'fetchTransfers', 'paginate');
|
|
2583
|
+
if (paginate) {
|
|
2584
|
+
return await this.fetchPaginatedCallCursor('fetchTransfers', code, since, limit, params, 'next', 'cursor', undefined, 100);
|
|
2585
|
+
}
|
|
2586
|
+
let request = {};
|
|
2587
|
+
let currency = undefined;
|
|
2588
|
+
if (code !== undefined) {
|
|
2589
|
+
currency = this.safeCurrency(code);
|
|
2590
|
+
}
|
|
2591
|
+
if (limit !== undefined) {
|
|
2592
|
+
request['page_size'] = limit;
|
|
2593
|
+
}
|
|
2594
|
+
if (since !== undefined) {
|
|
2595
|
+
request['start_at'] = since;
|
|
2596
|
+
}
|
|
2597
|
+
[request, params] = this.handleUntilOption('end_at', request, params);
|
|
2598
|
+
const response = await this.privateGetTransfers(this.extend(request, params));
|
|
2599
|
+
//
|
|
2600
|
+
// {
|
|
2601
|
+
// "next": null,
|
|
2602
|
+
// "prev": null,
|
|
2603
|
+
// "results": [
|
|
2604
|
+
// {
|
|
2605
|
+
// "id": "1718940471200201703989430000",
|
|
2606
|
+
// "account": "0x49ddd7a564c978f6e4089ff8355b56a42b7e2d48ba282cb5aad60f04bea0ec3",
|
|
2607
|
+
// "kind": "DEPOSIT",
|
|
2608
|
+
// "status": "COMPLETED",
|
|
2609
|
+
// "amount": "100000",
|
|
2610
|
+
// "token": "USDC",
|
|
2611
|
+
// "created_at": 1718940471208,
|
|
2612
|
+
// "last_updated_at": 1718941455546,
|
|
2613
|
+
// "txn_hash": "0x73a415ca558a97bbdcd1c43e52b45f1e0486a0a84b3bb4958035ad6c59cb866",
|
|
2614
|
+
// "external_txn_hash": "",
|
|
2615
|
+
// "socialized_loss_factor": ""
|
|
2616
|
+
// }
|
|
2617
|
+
// ]
|
|
2618
|
+
// }
|
|
2619
|
+
//
|
|
2620
|
+
const rows = this.safeList(response, 'results', []);
|
|
2621
|
+
return this.parseTransfers(rows, currency, since, limit);
|
|
2622
|
+
}
|
|
2623
|
+
parseTransfer(transfer, currency = undefined) {
|
|
2624
|
+
//
|
|
2625
|
+
// {
|
|
2626
|
+
// "id": "1718940471200201703989430000",
|
|
2627
|
+
// "account": "0x49ddd7a564c978f6e4089ff8355b56a42b7e2d48ba282cb5aad60f04bea0ec3",
|
|
2628
|
+
// "kind": "DEPOSIT",
|
|
2629
|
+
// "status": "COMPLETED",
|
|
2630
|
+
// "amount": "100000",
|
|
2631
|
+
// "token": "USDC",
|
|
2632
|
+
// "created_at": 1718940471208,
|
|
2633
|
+
// "last_updated_at": 1718941455546,
|
|
2634
|
+
// "txn_hash": "0x73a415ca558a97bbdcd1c43e52b45f1e0486a0a84b3bb4958035ad6c59cb866",
|
|
2635
|
+
// "external_txn_hash": "",
|
|
2636
|
+
// "socialized_loss_factor": ""
|
|
2637
|
+
// }
|
|
2638
|
+
//
|
|
2639
|
+
const currencyId = this.safeString(transfer, 'token');
|
|
2640
|
+
const code = this.safeCurrencyCode(currencyId, currency);
|
|
2641
|
+
const timestamp = this.safeInteger(transfer, 'created_at');
|
|
2642
|
+
const kind = this.safeString(transfer, 'kind');
|
|
2643
|
+
let fromAccount = undefined;
|
|
2644
|
+
let toAccount = undefined;
|
|
2645
|
+
if (kind === 'DEPOSIT') {
|
|
2646
|
+
fromAccount = 'external';
|
|
2647
|
+
toAccount = 'account';
|
|
2648
|
+
}
|
|
2649
|
+
else if (kind === 'WITHDRAWAL') {
|
|
2650
|
+
fromAccount = 'account';
|
|
2651
|
+
toAccount = 'external';
|
|
2652
|
+
}
|
|
2653
|
+
return {
|
|
2654
|
+
'info': transfer,
|
|
2655
|
+
'id': this.safeString(transfer, 'id'),
|
|
2656
|
+
'timestamp': timestamp,
|
|
2657
|
+
'datetime': this.iso8601(timestamp),
|
|
2658
|
+
'currency': code,
|
|
2659
|
+
'amount': this.safeNumber(transfer, 'amount'),
|
|
2660
|
+
'fromAccount': fromAccount,
|
|
2661
|
+
'toAccount': toAccount,
|
|
2662
|
+
'status': this.parseTransactionStatus(this.safeString(transfer, 'status')),
|
|
2663
|
+
};
|
|
2664
|
+
}
|
|
2164
2665
|
parseTransaction(transaction, currency = undefined) {
|
|
2165
2666
|
//
|
|
2166
2667
|
// fetchDeposits & fetchWithdrawals
|
|
@@ -2532,6 +3033,91 @@ export default class paradex extends Exchange {
|
|
|
2532
3033
|
'info': greeks,
|
|
2533
3034
|
};
|
|
2534
3035
|
}
|
|
3036
|
+
/**
|
|
3037
|
+
* @method
|
|
3038
|
+
* @name paradex#fetchFundingHistory
|
|
3039
|
+
* @description fetch the history of funding payments paid and received on this account
|
|
3040
|
+
* @see https://docs.paradex.trade/api/prod/account/get-funding
|
|
3041
|
+
* @param {string} symbol unified market symbol
|
|
3042
|
+
* @param {int} [since] the earliest time in ms to fetch funding history for
|
|
3043
|
+
* @param {int} [limit] the maximum number of funding history structures to retrieve
|
|
3044
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
3045
|
+
* @param {string} [params.cursor] returns the next paginated page
|
|
3046
|
+
* @param {int} [params.until] the latest time in ms to fetch entries for
|
|
3047
|
+
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
3048
|
+
* @returns {object[]} a list of [funding history structures]{@link https://docs.ccxt.com/?id=funding-history-structure}
|
|
3049
|
+
*/
|
|
3050
|
+
async fetchFundingHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
3051
|
+
if (symbol === undefined) {
|
|
3052
|
+
throw new ArgumentsRequired(this.id + ' fetchFundingHistory() requires a symbol argument');
|
|
3053
|
+
}
|
|
3054
|
+
await this.authenticateRest();
|
|
3055
|
+
await this.loadMarkets();
|
|
3056
|
+
let paginate = false;
|
|
3057
|
+
[paginate, params] = this.handleOptionAndParams(params, 'fetchFundingHistory', 'paginate');
|
|
3058
|
+
if (paginate) {
|
|
3059
|
+
return await this.fetchPaginatedCallCursor('fetchFundingHistory', symbol, since, limit, params, 'next', 'cursor', undefined, 100);
|
|
3060
|
+
}
|
|
3061
|
+
const market = this.market(symbol);
|
|
3062
|
+
let request = {
|
|
3063
|
+
'market': market['id'],
|
|
3064
|
+
};
|
|
3065
|
+
if (limit !== undefined) {
|
|
3066
|
+
request['page_size'] = Math.min(limit, 5000);
|
|
3067
|
+
}
|
|
3068
|
+
else {
|
|
3069
|
+
request['page_size'] = 100;
|
|
3070
|
+
}
|
|
3071
|
+
if (since !== undefined) {
|
|
3072
|
+
request['start_at'] = since;
|
|
3073
|
+
}
|
|
3074
|
+
[request, params] = this.handleUntilOption('end_at', request, params);
|
|
3075
|
+
const response = await this.privateGetFundingPayments(this.extend(request, params));
|
|
3076
|
+
//
|
|
3077
|
+
// {
|
|
3078
|
+
// "next": "eyJmaWx0ZXIiMsIm1hcmtlciI6eyJtYXJrZXIiOiIxNjc1NjUwMDE3NDMxMTAxNjk5N=",
|
|
3079
|
+
// "prev": "eyJmaWx0ZXIiOnsiTGltaXQiOjkwfSwidGltZSI6MTY4MTY3OTgzNzk3MTMwOTk1MywibWFya2VyIjp7Im1zMjExMD==",
|
|
3080
|
+
// "results": [
|
|
3081
|
+
// {
|
|
3082
|
+
// "account": "string",
|
|
3083
|
+
// "created_at": 1681375481000,
|
|
3084
|
+
// "fill_id": "8615262148007718462",
|
|
3085
|
+
// "id": "1681375578221101699352320000",
|
|
3086
|
+
// "index": "-2819.53434361",
|
|
3087
|
+
// "market": "BTC-USD-PERP",
|
|
3088
|
+
// "payment": "34.4490622"
|
|
3089
|
+
// }
|
|
3090
|
+
// ]
|
|
3091
|
+
// }
|
|
3092
|
+
//
|
|
3093
|
+
const results = this.safeList(response, 'results', []);
|
|
3094
|
+
return this.parseIncomes(results, market, since, limit);
|
|
3095
|
+
}
|
|
3096
|
+
parseIncome(income, market = undefined) {
|
|
3097
|
+
//
|
|
3098
|
+
// {
|
|
3099
|
+
// "account": "string",
|
|
3100
|
+
// "created_at": 1681375481000,
|
|
3101
|
+
// "fill_id": "8615262148007718462",
|
|
3102
|
+
// "id": "1681375578221101699352320000",
|
|
3103
|
+
// "index": "-2819.53434361",
|
|
3104
|
+
// "market": "BTC-USD-PERP",
|
|
3105
|
+
// "payment": "34.4490622"
|
|
3106
|
+
// }
|
|
3107
|
+
//
|
|
3108
|
+
const marketId = this.safeString(income, 'market');
|
|
3109
|
+
market = this.safeMarket(marketId, market);
|
|
3110
|
+
const timestamp = this.safeInteger(income, 'created_at');
|
|
3111
|
+
return {
|
|
3112
|
+
'info': income,
|
|
3113
|
+
'symbol': market['symbol'],
|
|
3114
|
+
'code': market['settle'],
|
|
3115
|
+
'timestamp': timestamp,
|
|
3116
|
+
'datetime': this.iso8601(timestamp),
|
|
3117
|
+
'id': this.safeString(income, 'id'),
|
|
3118
|
+
'amount': this.safeNumber(income, 'payment'),
|
|
3119
|
+
};
|
|
3120
|
+
}
|
|
2535
3121
|
/**
|
|
2536
3122
|
* @method
|
|
2537
3123
|
* @name paradex#fetchFundingRateHistory
|
|
@@ -2603,7 +3189,12 @@ export default class paradex extends Exchange {
|
|
|
2603
3189
|
return this.filterBySymbolSinceLimit(sorted, market['symbol'], since, limit);
|
|
2604
3190
|
}
|
|
2605
3191
|
sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
|
|
2606
|
-
let
|
|
3192
|
+
let version = this.version;
|
|
3193
|
+
if (path.indexOf('v2/') === 0) {
|
|
3194
|
+
version = 'v2';
|
|
3195
|
+
path = path.replace('v2/', '');
|
|
3196
|
+
}
|
|
3197
|
+
let url = this.implodeHostname(this.urls['api'][version]) + '/' + this.implodeParams(path, params);
|
|
2607
3198
|
const query = this.omit(params, this.extractParams(path));
|
|
2608
3199
|
if (api === 'public') {
|
|
2609
3200
|
if (Object.keys(query).length) {
|
|
@@ -2635,7 +3226,7 @@ export default class paradex extends Exchange {
|
|
|
2635
3226
|
else {
|
|
2636
3227
|
const token = this.options['authToken'];
|
|
2637
3228
|
headers['Authorization'] = 'Bearer ' + token;
|
|
2638
|
-
if (method === 'POST') {
|
|
3229
|
+
if ((method === 'POST') || (method === 'PUT') || ((method === 'DELETE') && (path === 'orders/batch'))) {
|
|
2639
3230
|
headers['Content-Type'] = 'application/json';
|
|
2640
3231
|
body = this.json(query);
|
|
2641
3232
|
}
|