ccxt 4.5.35 → 4.5.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/ccxt.browser.min.js +18 -20
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/base/Exchange.js +7 -4
- package/dist/cjs/src/base/functions/generic.js +27 -10
- package/dist/cjs/src/base/functions/time.js +0 -2
- package/dist/cjs/src/base/functions.js +0 -1
- package/dist/cjs/src/bybit.js +10 -4
- package/dist/cjs/src/coinbase.js +18 -7
- package/dist/cjs/src/coinex.js +2 -0
- package/dist/cjs/src/htx.js +67 -12
- package/dist/cjs/src/hyperliquid.js +245 -1
- package/dist/cjs/src/krakenfutures.js +6 -6
- package/dist/cjs/src/kucoin.js +43 -4
- package/dist/cjs/src/mexc.js +2 -2
- package/dist/cjs/src/pro/aster.js +27 -24
- package/dist/cjs/src/pro/binance.js +9 -12
- package/dist/cjs/src/pro/bitmex.js +5 -8
- package/dist/cjs/src/pro/bybit.js +8 -12
- package/dist/cjs/src/pro/bydfi.js +20 -43
- package/dist/cjs/src/pro/gate.js +7 -8
- package/dist/cjs/src/pro/okx.js +8 -12
- package/dist/cjs/src/whitebit.js +1 -1
- package/dist/cjs/src/woo.js +1 -1
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -7
- package/js/src/abstract/alp.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.d.ts +1 -0
- package/js/src/abstract/bybit.js +0 -6
- 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/coincatch.js +0 -6
- package/js/src/abstract/coincheck.js +0 -6
- package/js/src/abstract/coinex.d.ts +2 -0
- 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/defx.js +0 -6
- package/js/src/abstract/delta.js +0 -6
- package/js/src/abstract/deribit.js +0 -6
- package/js/src/abstract/derive.js +0 -6
- package/js/src/abstract/digifinex.js +0 -6
- package/js/src/abstract/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/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.d.ts +33 -1
- package/js/src/abstract/kucoin.js +0 -6
- package/js/src/abstract/kucoinfutures.d.ts +33 -1
- package/js/src/abstract/kucoinfutures.js +0 -6
- package/js/src/abstract/latoken.js +0 -6
- package/js/src/abstract/lbank.js +0 -6
- package/js/src/abstract/luno.js +0 -6
- package/js/src/abstract/mercado.js +0 -6
- package/js/src/abstract/mexc.js +0 -6
- package/js/src/abstract/modetrade.js +0 -6
- package/js/src/abstract/myokx.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/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/probit.js +0 -6
- package/js/src/abstract/timex.js +0 -6
- package/js/src/abstract/tokocrypto.js +0 -6
- package/js/src/abstract/toobit.js +0 -6
- package/js/src/abstract/upbit.js +0 -6
- package/js/src/abstract/wavesexchange.js +0 -6
- package/js/src/abstract/whitebit.js +0 -6
- package/js/src/abstract/woo.js +0 -6
- package/js/src/abstract/woofipro.js +0 -6
- package/js/src/abstract/xt.js +0 -6
- package/js/src/abstract/yobit.js +0 -6
- package/js/src/abstract/zaif.js +0 -6
- package/js/src/abstract/zebpay.js +0 -6
- package/js/src/abstract/zonda.js +0 -6
- package/js/src/alp.js +0 -6
- package/js/src/alpaca.js +0 -6
- package/js/src/apex.js +0 -6
- package/js/src/arkham.js +0 -6
- package/js/src/ascendex.js +0 -6
- package/js/src/aster.js +0 -6
- package/js/src/backpack.js +0 -6
- package/js/src/base/Exchange.d.ts +7 -6
- package/js/src/base/Exchange.js +7 -10
- 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.d.ts +1 -1
- package/js/src/base/functions/generic.js +28 -17
- 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.d.ts +1 -2
- package/js/src/base/functions/time.js +1 -8
- 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.js +0 -6
- package/js/src/binance.js +0 -6
- package/js/src/binancecoinm.js +0 -6
- package/js/src/binanceus.js +0 -6
- package/js/src/binanceusdm.js +0 -6
- package/js/src/bingx.js +0 -6
- 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.js +0 -6
- package/js/src/bithumb.js +0 -6
- package/js/src/bitmart.js +0 -6
- package/js/src/bitmex.js +0 -6
- package/js/src/bitopro.js +0 -6
- package/js/src/bitrue.js +0 -6
- package/js/src/bitso.js +0 -6
- package/js/src/bitstamp.js +0 -6
- package/js/src/bitteam.js +0 -6
- package/js/src/bittrade.js +0 -6
- package/js/src/bitvavo.js +0 -6
- package/js/src/blockchaincom.js +0 -6
- package/js/src/blofin.js +0 -6
- package/js/src/btcbox.js +0 -6
- package/js/src/btcmarkets.js +0 -6
- package/js/src/btcturk.js +0 -6
- package/js/src/bullish.js +0 -6
- package/js/src/bybit.js +10 -10
- package/js/src/bydfi.js +0 -6
- package/js/src/cex.js +0 -6
- package/js/src/coinbase.d.ts +2 -0
- package/js/src/coinbase.js +18 -13
- package/js/src/coinbaseadvanced.js +0 -6
- package/js/src/coinbaseexchange.d.ts +1 -1
- package/js/src/coinbaseexchange.js +0 -6
- package/js/src/coinbaseinternational.js +0 -6
- package/js/src/coincatch.js +0 -6
- package/js/src/coincheck.js +0 -6
- package/js/src/coinex.js +2 -6
- package/js/src/coinmate.js +0 -6
- package/js/src/coinmetro.js +0 -6
- package/js/src/coinone.js +0 -6
- package/js/src/coinsph.js +0 -6
- 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 +0 -6
- package/js/src/defx.js +0 -6
- package/js/src/delta.js +0 -6
- package/js/src/deribit.js +0 -6
- package/js/src/derive.js +0 -6
- package/js/src/digifinex.js +0 -6
- package/js/src/dydx.js +0 -6
- package/js/src/exmo.js +0 -6
- package/js/src/fmfwio.js +0 -6
- package/js/src/foxbit.js +0 -6
- package/js/src/gate.js +0 -6
- package/js/src/gateio.js +0 -6
- package/js/src/gemini.js +0 -6
- package/js/src/hashkey.js +0 -6
- package/js/src/hibachi.js +0 -6
- package/js/src/hitbtc.js +0 -6
- package/js/src/hollaex.js +0 -6
- package/js/src/htx.d.ts +5 -2
- package/js/src/htx.js +67 -18
- package/js/src/huobi.js +0 -6
- package/js/src/hyperliquid.d.ts +64 -0
- package/js/src/hyperliquid.js +246 -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 +6 -12
- package/js/src/kucoin.js +43 -10
- package/js/src/kucoinfutures.js +0 -6
- package/js/src/latoken.js +0 -6
- package/js/src/lbank.js +0 -6
- package/js/src/luno.js +0 -6
- package/js/src/mercado.js +0 -6
- package/js/src/mexc.js +2 -8
- package/js/src/modetrade.js +0 -6
- package/js/src/myokx.js +0 -6
- package/js/src/ndax.js +0 -6
- package/js/src/novadax.js +0 -6
- package/js/src/okx.js +0 -6
- 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/paradex.js +0 -6
- package/js/src/paymium.js +0 -6
- package/js/src/phemex.js +0 -6
- package/js/src/poloniex.js +0 -6
- package/js/src/pro/alpaca.js +0 -6
- package/js/src/pro/apex.js +0 -6
- package/js/src/pro/arkham.js +0 -6
- package/js/src/pro/ascendex.js +0 -6
- package/js/src/pro/aster.js +27 -30
- package/js/src/pro/backpack.js +0 -6
- package/js/src/pro/bequant.js +0 -6
- package/js/src/pro/binance.js +9 -18
- package/js/src/pro/binancecoinm.js +0 -6
- package/js/src/pro/binanceus.js +0 -6
- package/js/src/pro/binanceusdm.js +0 -6
- package/js/src/pro/bingx.js +0 -6
- package/js/src/pro/bitfinex.js +0 -6
- package/js/src/pro/bitget.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 +5 -14
- package/js/src/pro/bitopro.js +0 -6
- package/js/src/pro/bitrue.js +0 -6
- package/js/src/pro/bitstamp.js +0 -6
- package/js/src/pro/bittrade.js +0 -6
- package/js/src/pro/bitvavo.js +0 -6
- package/js/src/pro/blockchaincom.js +0 -6
- package/js/src/pro/blofin.js +0 -6
- package/js/src/pro/bullish.js +0 -6
- package/js/src/pro/bybit.js +8 -18
- package/js/src/pro/bydfi.js +20 -49
- 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/coincatch.js +0 -6
- package/js/src/pro/coincheck.js +0 -6
- package/js/src/pro/coinex.js +0 -6
- package/js/src/pro/coinone.js +0 -6
- package/js/src/pro/cryptocom.js +0 -6
- package/js/src/pro/deepcoin.js +0 -6
- package/js/src/pro/defx.js +0 -6
- package/js/src/pro/deribit.js +0 -6
- package/js/src/pro/derive.js +0 -6
- package/js/src/pro/dydx.js +0 -6
- package/js/src/pro/exmo.js +0 -6
- package/js/src/pro/gate.js +7 -14
- package/js/src/pro/gateio.js +0 -6
- package/js/src/pro/gemini.js +0 -6
- package/js/src/pro/hashkey.js +0 -6
- package/js/src/pro/hitbtc.js +0 -6
- package/js/src/pro/hollaex.js +0 -6
- package/js/src/pro/htx.js +0 -6
- package/js/src/pro/huobi.js +0 -6
- package/js/src/pro/hyperliquid.js +0 -6
- package/js/src/pro/independentreserve.js +0 -6
- package/js/src/pro/kraken.js +0 -6
- package/js/src/pro/krakenfutures.js +0 -6
- package/js/src/pro/kucoin.js +0 -6
- package/js/src/pro/kucoinfutures.js +0 -6
- package/js/src/pro/lbank.js +0 -6
- package/js/src/pro/luno.js +0 -6
- package/js/src/pro/mexc.js +0 -6
- package/js/src/pro/modetrade.js +0 -6
- package/js/src/pro/myokx.js +0 -6
- package/js/src/pro/ndax.js +0 -6
- package/js/src/pro/okx.js +8 -18
- package/js/src/pro/okxus.js +0 -6
- package/js/src/pro/onetrading.js +0 -6
- package/js/src/pro/oxfun.js +0 -6
- package/js/src/pro/p2b.js +0 -6
- package/js/src/pro/paradex.js +0 -6
- package/js/src/pro/phemex.js +0 -6
- package/js/src/pro/poloniex.js +0 -6
- package/js/src/pro/probit.js +0 -6
- package/js/src/pro/toobit.js +0 -6
- package/js/src/pro/upbit.js +0 -6
- package/js/src/pro/whitebit.js +0 -6
- package/js/src/pro/woo.js +0 -6
- package/js/src/pro/woofipro.js +0 -6
- package/js/src/pro/xt.js +0 -6
- package/js/src/probit.js +0 -6
- package/js/src/protobuf/mexc/compiled.cjs +0 -6
- package/js/src/static_dependencies/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/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.d.ts +1 -1
- 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 +1 -0
- 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.d.ts +1 -1
- package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +0 -6
- package/js/src/static_dependencies/starknet/utils/calldata/validate.js +0 -6
- package/js/src/static_dependencies/starknet/utils/encode.js +0 -6
- package/js/src/static_dependencies/starknet/utils/hash/classHash.js +0 -6
- package/js/src/static_dependencies/starknet/utils/hash/index.js +0 -6
- package/js/src/static_dependencies/starknet/utils/merkle.js +0 -6
- package/js/src/static_dependencies/starknet/utils/num.js +0 -6
- package/js/src/static_dependencies/starknet/utils/selector.js +0 -6
- package/js/src/static_dependencies/starknet/utils/shortString.js +0 -6
- package/js/src/static_dependencies/starknet/utils/starknetId.js +0 -6
- package/js/src/static_dependencies/starknet/utils/typedData.js +0 -6
- package/js/src/static_dependencies/starknet/utils/uint256.js +0 -6
- package/js/src/static_dependencies/starknet/utils/url.js +0 -6
- package/js/src/static_dependencies/watchable/src/index.js +0 -6
- package/js/src/static_dependencies/watchable/src/types.js +0 -6
- package/js/src/static_dependencies/watchable/src/unpromise.js +0 -6
- package/js/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
- package/js/src/timex.js +0 -6
- package/js/src/tokocrypto.js +0 -6
- package/js/src/toobit.js +0 -6
- package/js/src/upbit.js +0 -6
- package/js/src/wavesexchange.js +0 -6
- package/js/src/whitebit.js +1 -7
- package/js/src/woo.js +1 -7
- package/js/src/woofipro.js +0 -6
- package/js/src/xt.js +0 -6
- package/js/src/yobit.js +0 -6
- package/js/src/zaif.js +0 -6
- package/js/src/zebpay.js +0 -6
- package/js/src/zonda.js +0 -6
- package/package.json +1 -1
package/js/src/hyperliquid.d.ts
CHANGED
|
@@ -216,6 +216,11 @@ export default class hyperliquid extends Exchange {
|
|
|
216
216
|
s: string;
|
|
217
217
|
v: any;
|
|
218
218
|
};
|
|
219
|
+
buildUserAbstractionSig(message: any): {
|
|
220
|
+
r: string;
|
|
221
|
+
s: string;
|
|
222
|
+
v: any;
|
|
223
|
+
};
|
|
219
224
|
buildApproveBuilderFeeSig(message: any): {
|
|
220
225
|
r: string;
|
|
221
226
|
s: string;
|
|
@@ -225,7 +230,36 @@ export default class hyperliquid extends Exchange {
|
|
|
225
230
|
approveBuilderFee(builder: string, maxFeeRate: string): Promise<any>;
|
|
226
231
|
initializeClient(): Promise<boolean>;
|
|
227
232
|
handleBuilderFeeApproval(): Promise<boolean>;
|
|
233
|
+
/**
|
|
234
|
+
* @method
|
|
235
|
+
* @name hyperliquid#setUserAbstraction
|
|
236
|
+
* @description set user abstraction mode
|
|
237
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#set-user-abstraction
|
|
238
|
+
* @param {string} abstraction one of the strings ["disabled", "unifiedAccount", "portfolioMargin"],
|
|
239
|
+
* @param {object} [params]
|
|
240
|
+
* @param {string} [params.type] 'userSetAbstraction' or 'agentSetAbstraction' default is 'userSetAbstraction'
|
|
241
|
+
* @returns dictionary response from the exchange
|
|
242
|
+
*/
|
|
243
|
+
setUserAbstraction(abstraction: string, params?: {}): Promise<any>;
|
|
244
|
+
/**
|
|
245
|
+
* @method
|
|
246
|
+
* @name hyperliquid#enableUserDexAbstraction
|
|
247
|
+
* @description If set, actions on HIP-3 perps will automatically transfer collateral from validator-operated USDC perps balance for HIP-3 DEXs where USDC is the collateral token, and spot otherwise
|
|
248
|
+
* @param enabled
|
|
249
|
+
* @param params
|
|
250
|
+
* @param {string} [params.type] 'userDexAbstraction' or 'agentEnableDexAbstraction' default is 'userDexAbstraction'
|
|
251
|
+
* @returns dictionary response from the exchange
|
|
252
|
+
*/
|
|
228
253
|
enableUserDexAbstraction(enabled: boolean, params?: {}): Promise<any>;
|
|
254
|
+
/**
|
|
255
|
+
* @method
|
|
256
|
+
* @name hyperliquid#setAgentAbstraction
|
|
257
|
+
* @description set agent abstraction mode
|
|
258
|
+
* @param {string} abstraction one of the strings ["i", "u", "p"] where "i" is "disabled", "u" is "unifiedAccount", and "p" is "portfolioMargin"
|
|
259
|
+
* @param {object} [params]
|
|
260
|
+
* @returns dictionary response from the exchange
|
|
261
|
+
*/
|
|
262
|
+
setAgentAbstraction(abstraction: string, params?: {}): Promise<any>;
|
|
229
263
|
/**
|
|
230
264
|
* @method
|
|
231
265
|
* @name hyperliquid#createOrder
|
|
@@ -248,6 +282,22 @@ export default class hyperliquid extends Exchange {
|
|
|
248
282
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
249
283
|
*/
|
|
250
284
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?: {}): Promise<Order>;
|
|
285
|
+
/**
|
|
286
|
+
* @method
|
|
287
|
+
* @name hyperliquid#createTwapOrder
|
|
288
|
+
* @description create a trade order that is executed as a TWAP order over a specified duration.
|
|
289
|
+
* @param {string} symbol unified symbol of the market to create an order in
|
|
290
|
+
* @param {string} side 'buy' or 'sell'
|
|
291
|
+
* @param {float} amount how much of currency you want to trade in units of base currency
|
|
292
|
+
* @param {int} duration the duration of the TWAP order in milliseconds
|
|
293
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
294
|
+
* @param {bool} [params.randomize] whether to randomize the time intervals of the TWAP order slices (default is false, meaning equal intervals)
|
|
295
|
+
* @param {bool} [params.reduceOnly] true or false whether the order is reduce-only
|
|
296
|
+
* @param {int} [params.expiresAfter] time in ms after which the twap order expires
|
|
297
|
+
* @param {string} [params.vaultAddress] the vault address for order
|
|
298
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
299
|
+
*/
|
|
300
|
+
createTwapOrder(symbol: string, side: OrderSide, amount: number, duration: number, params?: {}): Promise<Order>;
|
|
251
301
|
/**
|
|
252
302
|
* @method
|
|
253
303
|
* @name hyperliquid#createOrders
|
|
@@ -272,6 +322,7 @@ export default class hyperliquid extends Exchange {
|
|
|
272
322
|
* @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
|
273
323
|
* @param {string} [params.vaultAddress] the vault address for order
|
|
274
324
|
* @param {string} [params.subAccountAddress] sub account user address
|
|
325
|
+
* @param {boolean} [params.twap] whether the order to cancel is a twap order, (default is false)
|
|
275
326
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
276
327
|
*/
|
|
277
328
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
@@ -290,6 +341,19 @@ export default class hyperliquid extends Exchange {
|
|
|
290
341
|
* @returns {object} an list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
|
|
291
342
|
*/
|
|
292
343
|
cancelOrders(ids: string[], symbol?: Str, params?: {}): Promise<Order[]>;
|
|
344
|
+
/**
|
|
345
|
+
* @method
|
|
346
|
+
* @name hyperliquid#cancelTwapOrder
|
|
347
|
+
* @description cancels a running twap order
|
|
348
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#cancel-a-twap-order
|
|
349
|
+
* @param {string} id order id
|
|
350
|
+
* @param {string} symbol unified symbol of the market the order was made in
|
|
351
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
352
|
+
* @param {int} [params.expiresAfter] time in ms after which the twap order expires
|
|
353
|
+
* @param {string} [params.vaultAddress] the vault address for order
|
|
354
|
+
* @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
355
|
+
*/
|
|
356
|
+
cancelTwapOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
293
357
|
cancelOrdersRequest(ids: string[], symbol?: Str, params?: {}): Dict;
|
|
294
358
|
/**
|
|
295
359
|
* @method
|
package/js/src/hyperliquid.js
CHANGED
|
@@ -1,12 +1,6 @@
|
|
|
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 Exchange from './abstract/hyperliquid.js';
|
|
9
|
-
import { ExchangeError, ArgumentsRequired, NotSupported, InvalidOrder, OrderNotFound, BadRequest, InsufficientFunds } from './base/errors.js';
|
|
3
|
+
import { ExchangeError, ArgumentsRequired, NotSupported, InvalidOrder, OrderNotFound, BadRequest, InsufficientFunds, RateLimitExceeded } from './base/errors.js';
|
|
10
4
|
import { Precise } from './base/Precise.js';
|
|
11
5
|
import { ROUND, SIGNIFICANT_DIGITS, DECIMAL_PLACES, TICK_SIZE } from './base/functions/number.js';
|
|
12
6
|
import { keccak_256 as keccak } from './static_dependencies/noble-hashes/sha3.js';
|
|
@@ -214,6 +208,9 @@ export default class hyperliquid extends Exchange {
|
|
|
214
208
|
'Insufficient spot balance asset': InsufficientFunds,
|
|
215
209
|
'Insufficient balance for withdrawal': InsufficientFunds,
|
|
216
210
|
'Insufficient balance for token transfer': InsufficientFunds,
|
|
211
|
+
'TWAP order value too small. Min is $1200, which is $10 per minute.': InvalidOrder,
|
|
212
|
+
'TWAP was never placed, already canceled, or filled.': OrderNotFound,
|
|
213
|
+
'Too many cumulative requests sent': RateLimitExceeded, // {"status":"err","response":"Too many cumulative requests sent (37986 > 10436) for cumulative volume traded $437.92. Place taker orders to free up 1 request per USDC traded."}
|
|
217
214
|
},
|
|
218
215
|
},
|
|
219
216
|
'precisionMode': TICK_SIZE,
|
|
@@ -1709,6 +1706,17 @@ export default class hyperliquid extends Exchange {
|
|
|
1709
1706
|
};
|
|
1710
1707
|
return this.signUserSignedAction(messageTypes, message);
|
|
1711
1708
|
}
|
|
1709
|
+
buildUserAbstractionSig(message) {
|
|
1710
|
+
const messageTypes = {
|
|
1711
|
+
'HyperliquidTransaction:UserSetAbstraction': [
|
|
1712
|
+
{ 'name': 'hyperliquidChain', 'type': 'string' },
|
|
1713
|
+
{ 'name': 'user', 'type': 'address' },
|
|
1714
|
+
{ 'name': 'abstraction', 'type': 'string' },
|
|
1715
|
+
{ 'name': 'nonce', 'type': 'uint64' },
|
|
1716
|
+
],
|
|
1717
|
+
};
|
|
1718
|
+
return this.signUserSignedAction(messageTypes, message);
|
|
1719
|
+
}
|
|
1712
1720
|
buildApproveBuilderFeeSig(message) {
|
|
1713
1721
|
const messageTypes = {
|
|
1714
1722
|
'HyperliquidTransaction:ApproveBuilderFee': [
|
|
@@ -1809,11 +1817,70 @@ export default class hyperliquid extends Exchange {
|
|
|
1809
1817
|
}
|
|
1810
1818
|
return true;
|
|
1811
1819
|
}
|
|
1820
|
+
/**
|
|
1821
|
+
* @method
|
|
1822
|
+
* @name hyperliquid#setUserAbstraction
|
|
1823
|
+
* @description set user abstraction mode
|
|
1824
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#set-user-abstraction
|
|
1825
|
+
* @param {string} abstraction one of the strings ["disabled", "unifiedAccount", "portfolioMargin"],
|
|
1826
|
+
* @param {object} [params]
|
|
1827
|
+
* @param {string} [params.type] 'userSetAbstraction' or 'agentSetAbstraction' default is 'userSetAbstraction'
|
|
1828
|
+
* @returns dictionary response from the exchange
|
|
1829
|
+
*/
|
|
1830
|
+
async setUserAbstraction(abstraction, params = {}) {
|
|
1831
|
+
let userAddress = undefined;
|
|
1832
|
+
[userAddress, params] = this.handlePublicAddress('setUserAbstraction', params);
|
|
1833
|
+
const nonce = this.milliseconds();
|
|
1834
|
+
const isSandboxMode = this.safeBool(this.options, 'sandboxMode', false);
|
|
1835
|
+
const type = this.safeString(params, 'type', 'userSetAbstraction');
|
|
1836
|
+
params = this.omit(params, 'type');
|
|
1837
|
+
const payload = {
|
|
1838
|
+
'hyperliquidChain': isSandboxMode ? 'Testnet' : 'Mainnet',
|
|
1839
|
+
'user': userAddress,
|
|
1840
|
+
'abstraction': abstraction,
|
|
1841
|
+
'nonce': nonce,
|
|
1842
|
+
};
|
|
1843
|
+
const sig = this.buildUserAbstractionSig(payload);
|
|
1844
|
+
const action = {
|
|
1845
|
+
'hyperliquidChain': payload['hyperliquidChain'],
|
|
1846
|
+
'signatureChainId': '0x66eee',
|
|
1847
|
+
'abstraction': payload['abstraction'],
|
|
1848
|
+
'user': payload['user'],
|
|
1849
|
+
'nonce': nonce,
|
|
1850
|
+
'type': type,
|
|
1851
|
+
};
|
|
1852
|
+
const request = {
|
|
1853
|
+
'action': action,
|
|
1854
|
+
'nonce': nonce,
|
|
1855
|
+
'signature': sig,
|
|
1856
|
+
'vaultAddress': undefined,
|
|
1857
|
+
};
|
|
1858
|
+
//
|
|
1859
|
+
// {
|
|
1860
|
+
// "status": "ok",
|
|
1861
|
+
// "response": {
|
|
1862
|
+
// "type": "default"
|
|
1863
|
+
// }
|
|
1864
|
+
// }
|
|
1865
|
+
//
|
|
1866
|
+
return await this.privatePostExchange(request);
|
|
1867
|
+
}
|
|
1868
|
+
/**
|
|
1869
|
+
* @method
|
|
1870
|
+
* @name hyperliquid#enableUserDexAbstraction
|
|
1871
|
+
* @description If set, actions on HIP-3 perps will automatically transfer collateral from validator-operated USDC perps balance for HIP-3 DEXs where USDC is the collateral token, and spot otherwise
|
|
1872
|
+
* @param enabled
|
|
1873
|
+
* @param params
|
|
1874
|
+
* @param {string} [params.type] 'userDexAbstraction' or 'agentEnableDexAbstraction' default is 'userDexAbstraction'
|
|
1875
|
+
* @returns dictionary response from the exchange
|
|
1876
|
+
*/
|
|
1812
1877
|
async enableUserDexAbstraction(enabled, params = {}) {
|
|
1813
1878
|
let userAddress = undefined;
|
|
1814
1879
|
[userAddress, params] = this.handlePublicAddress('enableUserDexAbstraction', params);
|
|
1815
1880
|
const nonce = this.milliseconds();
|
|
1816
1881
|
const isSandboxMode = this.safeBool(this.options, 'sandboxMode', false);
|
|
1882
|
+
const type = this.safeString(params, 'type', 'userDexAbstraction');
|
|
1883
|
+
params = this.omit(params, 'type');
|
|
1817
1884
|
const payload = {
|
|
1818
1885
|
'hyperliquidChain': isSandboxMode ? 'Testnet' : 'Mainnet',
|
|
1819
1886
|
'user': userAddress,
|
|
@@ -1827,7 +1894,7 @@ export default class hyperliquid extends Exchange {
|
|
|
1827
1894
|
'enabled': payload['enabled'],
|
|
1828
1895
|
'user': payload['user'],
|
|
1829
1896
|
'nonce': nonce,
|
|
1830
|
-
'type':
|
|
1897
|
+
'type': type,
|
|
1831
1898
|
};
|
|
1832
1899
|
const request = {
|
|
1833
1900
|
'action': action,
|
|
@@ -1845,6 +1912,29 @@ export default class hyperliquid extends Exchange {
|
|
|
1845
1912
|
//
|
|
1846
1913
|
return await this.privatePostExchange(request);
|
|
1847
1914
|
}
|
|
1915
|
+
/**
|
|
1916
|
+
* @method
|
|
1917
|
+
* @name hyperliquid#setAgentAbstraction
|
|
1918
|
+
* @description set agent abstraction mode
|
|
1919
|
+
* @param {string} abstraction one of the strings ["i", "u", "p"] where "i" is "disabled", "u" is "unifiedAccount", and "p" is "portfolioMargin"
|
|
1920
|
+
* @param {object} [params]
|
|
1921
|
+
* @returns dictionary response from the exchange
|
|
1922
|
+
*/
|
|
1923
|
+
async setAgentAbstraction(abstraction, params = {}) {
|
|
1924
|
+
const nonce = this.milliseconds();
|
|
1925
|
+
const request = {
|
|
1926
|
+
'nonce': nonce,
|
|
1927
|
+
};
|
|
1928
|
+
const action = {
|
|
1929
|
+
'type': 'agentSetAbstraction',
|
|
1930
|
+
'abstraction': abstraction,
|
|
1931
|
+
};
|
|
1932
|
+
const signature = this.signL1Action(action, nonce);
|
|
1933
|
+
request['action'] = action;
|
|
1934
|
+
request['signature'] = signature;
|
|
1935
|
+
const response = await this.privatePostExchange(this.extend(request, params));
|
|
1936
|
+
return response;
|
|
1937
|
+
}
|
|
1848
1938
|
/**
|
|
1849
1939
|
* @method
|
|
1850
1940
|
* @name hyperliquid#createOrder
|
|
@@ -1872,6 +1962,82 @@ export default class hyperliquid extends Exchange {
|
|
|
1872
1962
|
const orders = await this.createOrders([order], globalParams);
|
|
1873
1963
|
return orders[0];
|
|
1874
1964
|
}
|
|
1965
|
+
/**
|
|
1966
|
+
* @method
|
|
1967
|
+
* @name hyperliquid#createTwapOrder
|
|
1968
|
+
* @description create a trade order that is executed as a TWAP order over a specified duration.
|
|
1969
|
+
* @param {string} symbol unified symbol of the market to create an order in
|
|
1970
|
+
* @param {string} side 'buy' or 'sell'
|
|
1971
|
+
* @param {float} amount how much of currency you want to trade in units of base currency
|
|
1972
|
+
* @param {int} duration the duration of the TWAP order in milliseconds
|
|
1973
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1974
|
+
* @param {bool} [params.randomize] whether to randomize the time intervals of the TWAP order slices (default is false, meaning equal intervals)
|
|
1975
|
+
* @param {bool} [params.reduceOnly] true or false whether the order is reduce-only
|
|
1976
|
+
* @param {int} [params.expiresAfter] time in ms after which the twap order expires
|
|
1977
|
+
* @param {string} [params.vaultAddress] the vault address for order
|
|
1978
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
1979
|
+
*/
|
|
1980
|
+
async createTwapOrder(symbol, side, amount, duration, params = {}) {
|
|
1981
|
+
await this.loadMarkets();
|
|
1982
|
+
await this.initializeClient();
|
|
1983
|
+
const market = this.market(symbol);
|
|
1984
|
+
const nonce = this.milliseconds();
|
|
1985
|
+
const isBuy = (side === 'BUY');
|
|
1986
|
+
let vaultAddress = undefined;
|
|
1987
|
+
const randomize = this.safeBool(params, 'randomize', false);
|
|
1988
|
+
params = this.omit(params, 'randomize');
|
|
1989
|
+
[vaultAddress, params] = this.handleOptionAndParams(params, 'createOrder', 'vaultAddress');
|
|
1990
|
+
vaultAddress = this.formatVaultAddress(vaultAddress);
|
|
1991
|
+
const durationMins = Math.floor(duration / 1000 / 60); // convert from ms to minutes
|
|
1992
|
+
const orderObj = {
|
|
1993
|
+
'a': this.parseToInt(market['baseId']),
|
|
1994
|
+
'b': isBuy,
|
|
1995
|
+
's': this.amountToPrecision(symbol, amount),
|
|
1996
|
+
'r': this.safeBool(params, 'reduceOnly', false),
|
|
1997
|
+
'm': durationMins,
|
|
1998
|
+
't': randomize,
|
|
1999
|
+
};
|
|
2000
|
+
const orderAction = {
|
|
2001
|
+
'type': 'twapOrder',
|
|
2002
|
+
'twap': orderObj,
|
|
2003
|
+
};
|
|
2004
|
+
const signature = this.signL1Action(orderAction, nonce, vaultAddress);
|
|
2005
|
+
const request = {
|
|
2006
|
+
'action': orderAction,
|
|
2007
|
+
'nonce': nonce,
|
|
2008
|
+
'signature': signature,
|
|
2009
|
+
// 'vaultAddress': vaultAddress,
|
|
2010
|
+
};
|
|
2011
|
+
if (vaultAddress !== undefined) {
|
|
2012
|
+
params = this.omit(params, 'vaultAddress');
|
|
2013
|
+
request['vaultAddress'] = vaultAddress;
|
|
2014
|
+
}
|
|
2015
|
+
const expiresAfter = this.safeInteger(params, 'expiresAfter');
|
|
2016
|
+
if (expiresAfter !== undefined) {
|
|
2017
|
+
request['expiresAfter'] = expiresAfter;
|
|
2018
|
+
params = this.omit(params, 'expiresAfter');
|
|
2019
|
+
}
|
|
2020
|
+
const response = await this.privatePostExchange(request);
|
|
2021
|
+
// {
|
|
2022
|
+
// "status":"ok",
|
|
2023
|
+
// "response":{
|
|
2024
|
+
// "type":"twapOrder",
|
|
2025
|
+
// "data":{
|
|
2026
|
+
// "status": {
|
|
2027
|
+
// "running":{
|
|
2028
|
+
// "twapId":77738308
|
|
2029
|
+
// }
|
|
2030
|
+
// }
|
|
2031
|
+
// }
|
|
2032
|
+
// }
|
|
2033
|
+
// }
|
|
2034
|
+
const responseObj = this.safeDict(response, 'response', {});
|
|
2035
|
+
const data = this.safeDict(responseObj, 'data', {});
|
|
2036
|
+
const status = this.safeDict(data, 'status', {});
|
|
2037
|
+
const running = this.safeDict(status, 'running', {});
|
|
2038
|
+
const orderId = this.safeString(running, 'twapId');
|
|
2039
|
+
return this.parseOrder({ 'status': 'running', 'oid': orderId }, market);
|
|
2040
|
+
}
|
|
1875
2041
|
/**
|
|
1876
2042
|
* @method
|
|
1877
2043
|
* @name hyperliquid#createOrders
|
|
@@ -2110,9 +2276,14 @@ export default class hyperliquid extends Exchange {
|
|
|
2110
2276
|
* @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
|
2111
2277
|
* @param {string} [params.vaultAddress] the vault address for order
|
|
2112
2278
|
* @param {string} [params.subAccountAddress] sub account user address
|
|
2279
|
+
* @param {boolean} [params.twap] whether the order to cancel is a twap order, (default is false)
|
|
2113
2280
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
2114
2281
|
*/
|
|
2115
2282
|
async cancelOrder(id, symbol = undefined, params = {}) {
|
|
2283
|
+
if (this.safeBool(params, 'twap', false)) {
|
|
2284
|
+
params = this.omit(params, 'twap');
|
|
2285
|
+
return await this.cancelTwapOrder(id, symbol, params);
|
|
2286
|
+
}
|
|
2116
2287
|
const orders = await this.cancelOrders([id], symbol, params);
|
|
2117
2288
|
return this.safeDict(orders, 0);
|
|
2118
2289
|
}
|
|
@@ -2165,6 +2336,66 @@ export default class hyperliquid extends Exchange {
|
|
|
2165
2336
|
}
|
|
2166
2337
|
return orders;
|
|
2167
2338
|
}
|
|
2339
|
+
/**
|
|
2340
|
+
* @method
|
|
2341
|
+
* @name hyperliquid#cancelTwapOrder
|
|
2342
|
+
* @description cancels a running twap order
|
|
2343
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#cancel-a-twap-order
|
|
2344
|
+
* @param {string} id order id
|
|
2345
|
+
* @param {string} symbol unified symbol of the market the order was made in
|
|
2346
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2347
|
+
* @param {int} [params.expiresAfter] time in ms after which the twap order expires
|
|
2348
|
+
* @param {string} [params.vaultAddress] the vault address for order
|
|
2349
|
+
* @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
2350
|
+
*/
|
|
2351
|
+
async cancelTwapOrder(id, symbol = undefined, params = {}) {
|
|
2352
|
+
await this.loadMarkets();
|
|
2353
|
+
if (symbol === undefined) {
|
|
2354
|
+
throw new ArgumentsRequired(this.id + ' cancelTwapOrder() requires a symbol argument');
|
|
2355
|
+
}
|
|
2356
|
+
const market = this.market(symbol);
|
|
2357
|
+
let vaultAddress = undefined;
|
|
2358
|
+
[vaultAddress, params] = this.handleOptionAndParams(params, 'cancelTwapOrder', 'vaultAddress');
|
|
2359
|
+
vaultAddress = this.formatVaultAddress(vaultAddress);
|
|
2360
|
+
const action = {
|
|
2361
|
+
'type': 'twapCancel',
|
|
2362
|
+
'a': this.parseToInt(market['baseId']),
|
|
2363
|
+
't': this.parseToNumeric(id),
|
|
2364
|
+
};
|
|
2365
|
+
const nonce = this.milliseconds();
|
|
2366
|
+
const signature = this.signL1Action(action, nonce, vaultAddress);
|
|
2367
|
+
const request = {
|
|
2368
|
+
'action': action,
|
|
2369
|
+
'nonce': nonce,
|
|
2370
|
+
'signature': signature,
|
|
2371
|
+
// 'vaultAddress': vaultAddress,
|
|
2372
|
+
};
|
|
2373
|
+
if (vaultAddress !== undefined) {
|
|
2374
|
+
params = this.omit(params, 'vaultAddress');
|
|
2375
|
+
request['vaultAddress'] = vaultAddress;
|
|
2376
|
+
}
|
|
2377
|
+
const expiresAfter = this.safeInteger(params, 'expiresAfter');
|
|
2378
|
+
if (expiresAfter !== undefined) {
|
|
2379
|
+
request['expiresAfter'] = expiresAfter;
|
|
2380
|
+
params = this.omit(params, 'expiresAfter');
|
|
2381
|
+
}
|
|
2382
|
+
const response = await this.privatePostExchange(request);
|
|
2383
|
+
//
|
|
2384
|
+
// {
|
|
2385
|
+
// "status":"ok",
|
|
2386
|
+
// "response":{
|
|
2387
|
+
// "type":"twapCancel",
|
|
2388
|
+
// "data":{
|
|
2389
|
+
// "status": "success"
|
|
2390
|
+
// }
|
|
2391
|
+
// }
|
|
2392
|
+
// }
|
|
2393
|
+
//
|
|
2394
|
+
const responseObj = this.safeDict(response, 'response', {});
|
|
2395
|
+
const data = this.safeDict(responseObj, 'data', {});
|
|
2396
|
+
const status = this.safeString(data, 'status');
|
|
2397
|
+
return this.parseOrder({ 'status': status, 'oid': id }, market);
|
|
2398
|
+
}
|
|
2168
2399
|
cancelOrdersRequest(ids, symbol = undefined, params = {}) {
|
|
2169
2400
|
/**
|
|
2170
2401
|
* @method
|
|
@@ -4445,6 +4676,13 @@ export default class hyperliquid extends Exchange {
|
|
|
4445
4676
|
break;
|
|
4446
4677
|
}
|
|
4447
4678
|
}
|
|
4679
|
+
if ('status' in data) {
|
|
4680
|
+
const errorStatus = this.safeDict(data, 'status', {});
|
|
4681
|
+
const errorMsg = this.safeString(errorStatus, 'error');
|
|
4682
|
+
if (errorStatus !== undefined) {
|
|
4683
|
+
message = errorMsg;
|
|
4684
|
+
}
|
|
4685
|
+
}
|
|
4448
4686
|
}
|
|
4449
4687
|
const feedback = this.id + ' ' + body;
|
|
4450
4688
|
const nonEmptyMessage = ((message !== undefined) && (message !== ''));
|
|
@@ -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 Exchange from './abstract/independentreserve.js';
|
|
9
3
|
import { Precise } from './base/Precise.js';
|
package/js/src/indodax.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 Exchange from './abstract/indodax.js';
|
|
9
3
|
import { ExchangeError, ArgumentsRequired, InsufficientFunds, InvalidOrder, OrderNotFound, AuthenticationError, BadSymbol } from './base/errors.js';
|
package/js/src/kraken.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 Exchange from './abstract/kraken.js';
|
|
9
3
|
import { AccountSuspended, BadSymbol, BadRequest, ExchangeNotAvailable, ArgumentsRequired, PermissionDenied, AuthenticationError, ExchangeError, OrderNotFound, DDoSProtection, InvalidNonce, InsufficientFunds, CancelPending, InvalidOrder, InvalidAddress, RateLimitExceeded, OnMaintenance, NotSupported } from './base/errors.js';
|
package/js/src/krakenfutures.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 Exchange from './abstract/krakenfutures.js';
|
|
9
3
|
import { TICK_SIZE } from './base/functions/number.js';
|
|
@@ -2390,7 +2384,7 @@ export default class krakenfutures extends Exchange {
|
|
|
2390
2384
|
// "fundingRate": -0.000000756414717067,
|
|
2391
2385
|
// "fundingRatePrediction": 0.000000195218676,
|
|
2392
2386
|
// "suspended": false,
|
|
2393
|
-
// "indexPrice": 0.
|
|
2387
|
+
// "indexPrice": 0.043391,
|
|
2394
2388
|
// "postOnly": false,
|
|
2395
2389
|
// "change24h": -0.46
|
|
2396
2390
|
// }
|
|
@@ -2403,16 +2397,16 @@ export default class krakenfutures extends Exchange {
|
|
|
2403
2397
|
let fundingRateResult = Precise.stringDiv(fundingRateString, markPriceString);
|
|
2404
2398
|
const nextFundingRateString = this.safeString(ticker, 'fundingRatePrediction');
|
|
2405
2399
|
let nextFundingRateResult = Precise.stringDiv(nextFundingRateString, markPriceString);
|
|
2406
|
-
if (fundingRateResult
|
|
2400
|
+
if (Precise.stringGt(fundingRateResult, '0.25')) {
|
|
2407
2401
|
fundingRateResult = '0.25';
|
|
2408
2402
|
}
|
|
2409
|
-
else if (fundingRateResult
|
|
2403
|
+
else if (Precise.stringLt(fundingRateResult, '-0.25')) {
|
|
2410
2404
|
fundingRateResult = '-0.25';
|
|
2411
2405
|
}
|
|
2412
|
-
if (nextFundingRateResult
|
|
2406
|
+
if (Precise.stringGt(nextFundingRateResult, '0.25')) {
|
|
2413
2407
|
nextFundingRateResult = '0.25';
|
|
2414
2408
|
}
|
|
2415
|
-
else if (nextFundingRateResult
|
|
2409
|
+
else if (Precise.stringLt(nextFundingRateResult, '-0.25')) {
|
|
2416
2410
|
nextFundingRateResult = '-0.25';
|
|
2417
2411
|
}
|
|
2418
2412
|
return {
|
|
@@ -2693,7 +2687,7 @@ export default class krakenfutures extends Exchange {
|
|
|
2693
2687
|
for (let i = 0; i < marginLevels.length; i++) {
|
|
2694
2688
|
const tier = marginLevels[i];
|
|
2695
2689
|
const initialMargin = this.safeString(tier, 'initialMargin');
|
|
2696
|
-
const minNotional = this.
|
|
2690
|
+
const minNotional = this.safeNumber2(tier, 'numNonContractUnits', 'contracts');
|
|
2697
2691
|
if (i !== 0) {
|
|
2698
2692
|
const tiersLength = tiers.length;
|
|
2699
2693
|
const previousTier = tiers[tiersLength - 1];
|
package/js/src/kucoin.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 Exchange from './abstract/kucoin.js';
|
|
9
3
|
import { ExchangeError, ExchangeNotAvailable, InsufficientFunds, OrderNotFound, InvalidOrder, AccountSuspended, InvalidNonce, NotSupported, BadRequest, AuthenticationError, BadSymbol, RateLimitExceeded, PermissionDenied, InvalidAddress, ArgumentsRequired, RestrictedLocation } from './base/errors.js';
|
|
@@ -129,6 +123,7 @@ export default class kucoin extends Exchange {
|
|
|
129
123
|
'broker': 'https://api-broker.kucoin.com',
|
|
130
124
|
'earn': 'https://api.kucoin.com',
|
|
131
125
|
'uta': 'https://api.kucoin.com',
|
|
126
|
+
'utaPrivate': 'https://api.kucoin.com',
|
|
132
127
|
},
|
|
133
128
|
'www': 'https://www.kucoin.com',
|
|
134
129
|
'doc': [
|
|
@@ -485,17 +480,55 @@ export default class kucoin extends Exchange {
|
|
|
485
480
|
'get': {
|
|
486
481
|
'market/announcement': 20,
|
|
487
482
|
'market/currency': 3,
|
|
483
|
+
'market/currencies': 3,
|
|
488
484
|
'market/instrument': 4,
|
|
489
485
|
'market/ticker': 15,
|
|
490
|
-
'market/orderbook': 3,
|
|
491
486
|
'market/trade': 3,
|
|
492
487
|
'market/kline': 3,
|
|
493
488
|
'market/funding-rate': 2,
|
|
494
489
|
'market/funding-rate-history': 5,
|
|
495
490
|
'market/cross-config': 25,
|
|
491
|
+
'market/collateral-discount-ratio': 10,
|
|
492
|
+
'market/index-price': 20,
|
|
493
|
+
'market/position-tiers': 20,
|
|
494
|
+
'market/open-interest': 10,
|
|
496
495
|
'server/status': 3,
|
|
497
496
|
},
|
|
498
497
|
},
|
|
498
|
+
'utaPrivate': {
|
|
499
|
+
'get': {
|
|
500
|
+
'market/orderbook': 3,
|
|
501
|
+
'account/balance': 5,
|
|
502
|
+
'account/transfer-quota': 20,
|
|
503
|
+
'account/mode': 30,
|
|
504
|
+
'account/ledger': 2,
|
|
505
|
+
'account/interest-history': 15,
|
|
506
|
+
'account/deposit/address': 5,
|
|
507
|
+
'{accountMode}/account/balance': 5,
|
|
508
|
+
'{accountMode}/account/overview': 5,
|
|
509
|
+
'{accountMode}/order/detail': 4,
|
|
510
|
+
'{accountMode}/order/open-list': 4,
|
|
511
|
+
'{accountMode}/order/history': 4,
|
|
512
|
+
'{accountMode}/order/execution': 4,
|
|
513
|
+
'{accountMode}/position/open-list': 3,
|
|
514
|
+
'{accountMode}/position/history': 2,
|
|
515
|
+
'{accountMode}/position/tiers': 20,
|
|
516
|
+
'sub-account/balance': 5,
|
|
517
|
+
'user/fee-rate': 3,
|
|
518
|
+
'dcp/query': 2,
|
|
519
|
+
},
|
|
520
|
+
'post': {
|
|
521
|
+
'account/transfer': 4,
|
|
522
|
+
'account/mode': 30,
|
|
523
|
+
'{accountMode}/account/modify-leverage': 20,
|
|
524
|
+
'{accountMode}/order/place': 1,
|
|
525
|
+
'{accountMode}/order/place-batch': 4,
|
|
526
|
+
'{accountMode}/order/cancel': 1,
|
|
527
|
+
'{accountMode}/order/cancel-batch': 4,
|
|
528
|
+
'sub-account/canTransferOut': 5,
|
|
529
|
+
'dcp/set': 2,
|
|
530
|
+
},
|
|
531
|
+
},
|
|
499
532
|
},
|
|
500
533
|
'timeframes': {
|
|
501
534
|
'1m': '1min',
|
|
@@ -2580,7 +2613,7 @@ export default class kucoin extends Exchange {
|
|
|
2580
2613
|
else {
|
|
2581
2614
|
request['tradeType'] = 'FUTURES';
|
|
2582
2615
|
}
|
|
2583
|
-
response = await this.
|
|
2616
|
+
response = await this.utaPrivateGetMarketOrderbook(this.extend(request, params));
|
|
2584
2617
|
//
|
|
2585
2618
|
// {
|
|
2586
2619
|
// "code": "200000",
|
|
@@ -5758,9 +5791,9 @@ export default class kucoin extends Exchange {
|
|
|
5758
5791
|
endpoint = '/api/v1/' + this.implodeParams(path, params);
|
|
5759
5792
|
}
|
|
5760
5793
|
let isUtaPrivate = false;
|
|
5761
|
-
if (api === 'uta') {
|
|
5794
|
+
if ((api === 'uta') || (api === 'utaPrivate')) {
|
|
5762
5795
|
endpoint = '/api/ua/v1/' + this.implodeParams(path, params);
|
|
5763
|
-
if (
|
|
5796
|
+
if (api === 'utaPrivate') {
|
|
5764
5797
|
isUtaPrivate = true;
|
|
5765
5798
|
}
|
|
5766
5799
|
}
|
package/js/src/kucoinfutures.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 { ArgumentsRequired, ExchangeNotAvailable, InvalidOrder, InsufficientFunds, AccountSuspended, InvalidNonce, NotSupported, OrderNotFound, BadRequest, AuthenticationError, RateLimitExceeded, PermissionDenied } from './base/errors.js';
|
|
9
3
|
import { Precise } from './base/Precise.js';
|
package/js/src/latoken.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 Exchange from './abstract/latoken.js';
|
|
9
3
|
import { ExchangeError, AuthenticationError, InvalidNonce, BadRequest, ExchangeNotAvailable, PermissionDenied, AccountSuspended, RateLimitExceeded, InsufficientFunds, BadSymbol, InvalidOrder, ArgumentsRequired, NotSupported } from './base/errors.js';
|
package/js/src/lbank.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 Exchange from './abstract/lbank.js';
|
|
9
3
|
import { ExchangeError, InvalidAddress, DuplicateOrderId, InsufficientFunds, InvalidOrder, InvalidNonce, AuthenticationError, RateLimitExceeded, PermissionDenied, BadRequest, BadSymbol, ArgumentsRequired, NotSupported } from './base/errors.js';
|
package/js/src/luno.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 Exchange from './abstract/luno.js';
|
|
9
3
|
import { ExchangeError, ArgumentsRequired } from './base/errors.js';
|
package/js/src/mercado.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 Exchange from './abstract/mercado.js';
|
|
9
3
|
import { ExchangeError, ArgumentsRequired, InvalidOrder } from './base/errors.js';
|