ccxt 4.2.18 → 4.2.20
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 +100 -100
- package/dist/ccxt.browser.js +34240 -33297
- package/dist/ccxt.browser.min.js +2 -2
- package/dist/cjs/ccxt.js +12 -1
- package/dist/cjs/src/alpaca.js +18 -18
- package/dist/cjs/src/ascendex.js +13 -6
- package/dist/cjs/src/base/Exchange.js +276 -27
- package/dist/cjs/src/bigone.js +434 -168
- package/dist/cjs/src/binance.js +165 -35
- package/dist/cjs/src/binanceus.js +25 -0
- package/dist/cjs/src/bingx.js +185 -42
- package/dist/cjs/src/bitfinex.js +2 -3
- package/dist/cjs/src/bitget.js +84 -47
- package/dist/cjs/src/bitmart.js +5 -5
- package/dist/cjs/src/bitmex.js +4 -6
- package/dist/cjs/src/bitpanda.js +5 -1991
- package/dist/cjs/src/bitstamp.js +8 -0
- package/dist/cjs/src/bitteam.js +1 -1
- package/dist/cjs/src/bybit.js +27 -75
- package/dist/cjs/src/coinbase.js +176 -26
- package/dist/cjs/src/coincheck.js +1 -0
- package/dist/cjs/src/coinex.js +3 -0
- package/dist/cjs/src/coinlist.js +13 -6
- package/dist/cjs/src/coinone.js +2 -2
- package/dist/cjs/src/coinsph.js +4 -5
- package/dist/cjs/src/delta.js +7 -19
- package/dist/cjs/src/deribit.js +17 -4
- package/dist/cjs/src/gate.js +151 -194
- package/dist/cjs/src/gemini.js +1 -1
- package/dist/cjs/src/hitbtc.js +2 -3
- package/dist/cjs/src/htx.js +157 -7
- package/dist/cjs/src/huobijp.js +2 -3
- package/dist/cjs/src/independentreserve.js +7 -5
- package/dist/cjs/src/kraken.js +86 -54
- package/dist/cjs/src/kucoin.js +5 -0
- package/dist/cjs/src/kucoinfutures.js +140 -86
- package/dist/cjs/src/lbank.js +60 -33
- package/dist/cjs/src/luno.js +84 -2
- package/dist/cjs/src/mexc.js +3 -3
- package/dist/cjs/src/oceanex.js +1 -1
- package/dist/cjs/src/okx.js +23 -29
- package/dist/cjs/{js/src/bitpanda.js → src/onetrading.js} +39 -39
- package/dist/cjs/src/phemex.js +37 -27
- package/dist/cjs/src/poloniexfutures.js +1 -0
- package/dist/cjs/src/pro/binance.js +66 -25
- package/dist/cjs/src/pro/bitget.js +1 -1
- package/dist/cjs/src/pro/bitpanda.js +5 -1330
- package/dist/cjs/src/pro/coinbase.js +4 -1
- package/dist/cjs/src/pro/hitbtc.js +5 -4
- package/dist/cjs/src/pro/htx.js +6 -1
- package/dist/cjs/src/pro/kraken.js +1 -1
- package/dist/cjs/src/pro/krakenfutures.js +7 -1
- package/dist/cjs/src/pro/kucoin.js +46 -36
- package/dist/cjs/src/pro/kucoinfutures.js +45 -37
- package/dist/cjs/src/pro/lbank.js +881 -0
- package/dist/cjs/src/pro/okx.js +52 -2
- package/dist/cjs/{js/src/pro/bitpanda.js → src/pro/onetrading.js} +4 -7
- package/dist/cjs/src/pro/poloniex.js +2 -2
- package/dist/cjs/src/pro/poloniexfutures.js +43 -35
- package/dist/cjs/src/pro/woo.js +126 -0
- package/dist/cjs/src/probit.js +4 -2
- package/dist/cjs/src/upbit.js +12 -12
- package/dist/cjs/src/wavesexchange.js +1 -1
- package/dist/cjs/src/whitebit.js +1 -0
- package/dist/cjs/src/woo.js +56 -0
- package/js/ccxt.d.ts +11 -2
- package/js/ccxt.js +8 -2
- package/js/src/abstract/binance.d.ts +1 -0
- package/js/src/abstract/binancecoinm.d.ts +1 -0
- package/js/src/abstract/binanceus.d.ts +1 -0
- package/js/src/abstract/binanceusdm.d.ts +1 -0
- package/js/src/abstract/bitpanda.d.ts +4 -4
- package/js/src/abstract/bitpanda.js +3 -3
- package/js/src/abstract/bitstamp.d.ts +8 -0
- package/js/src/abstract/gate.d.ts +1 -0
- package/js/src/abstract/gateio.d.ts +1 -0
- package/js/src/abstract/htx.d.ts +3 -0
- package/js/src/abstract/huobi.d.ts +3 -0
- package/js/src/abstract/luno.d.ts +1 -0
- package/js/src/abstract/onetrading.d.ts +38 -0
- package/js/src/abstract/onetrading.js +11 -0
- package/js/src/ascendex.js +2 -0
- package/js/src/base/Exchange.d.ts +3 -0
- package/js/src/base/Exchange.js +10 -0
- package/js/src/binance.js +2 -1
- package/js/src/binanceus.js +17 -0
- package/js/src/bingx.js +3 -2
- package/js/src/bitget.d.ts +1 -1
- package/js/src/bitget.js +47 -34
- package/js/src/bitpanda.d.ts +2 -72
- package/js/src/bitpanda.js +5 -1991
- package/js/src/bitstamp.js +8 -0
- package/js/src/bitteam.js +1 -1
- package/js/src/bybit.d.ts +0 -1
- package/js/src/bybit.js +1 -29
- package/js/src/delta.d.ts +0 -1
- package/js/src/delta.js +0 -18
- package/js/src/deribit.js +11 -3
- package/js/src/gate.d.ts +1 -1
- package/js/src/gate.js +50 -135
- package/js/src/htx.js +3 -0
- package/js/src/kraken.d.ts +1 -0
- package/js/src/kraken.js +39 -38
- package/js/src/kucoinfutures.d.ts +6 -6
- package/js/src/kucoinfutures.js +9 -9
- package/js/src/lbank.js +1 -0
- package/js/src/luno.d.ts +3 -1
- package/js/src/luno.js +84 -2
- package/js/src/mexc.js +1 -2
- package/js/src/okx.d.ts +0 -1
- package/js/src/okx.js +0 -18
- package/js/src/onetrading.d.ts +74 -0
- package/js/src/onetrading.js +2003 -0
- package/js/src/poloniexfutures.js +1 -0
- package/js/src/pro/binance.js +6 -1
- package/js/src/pro/bitpanda.d.ts +2 -34
- package/js/src/pro/bitpanda.js +5 -1330
- package/js/src/pro/lbank.d.ts +29 -0
- package/js/src/pro/lbank.js +882 -0
- package/js/src/pro/onetrading.d.ts +36 -0
- package/js/src/pro/onetrading.js +1339 -0
- package/package.json +2 -2
- package/rollup.config.js +2 -0
- package/skip-tests.json +4 -2
- package/test-commonjs.cjs +25 -1
- package/dist/cjs/js/ccxt.js +0 -478
- package/dist/cjs/js/src/abstract/alpaca.js +0 -9
- package/dist/cjs/js/src/abstract/ascendex.js +0 -9
- package/dist/cjs/js/src/abstract/bigone.js +0 -9
- package/dist/cjs/js/src/abstract/binance.js +0 -9
- package/dist/cjs/js/src/abstract/bingx.js +0 -9
- package/dist/cjs/js/src/abstract/bit2c.js +0 -9
- package/dist/cjs/js/src/abstract/bitbank.js +0 -9
- package/dist/cjs/js/src/abstract/bitbns.js +0 -9
- package/dist/cjs/js/src/abstract/bitfinex.js +0 -9
- package/dist/cjs/js/src/abstract/bitfinex2.js +0 -9
- package/dist/cjs/js/src/abstract/bitflyer.js +0 -9
- package/dist/cjs/js/src/abstract/bitforex.js +0 -9
- package/dist/cjs/js/src/abstract/bitget.js +0 -9
- package/dist/cjs/js/src/abstract/bithumb.js +0 -9
- package/dist/cjs/js/src/abstract/bitmart.js +0 -9
- package/dist/cjs/js/src/abstract/bitmex.js +0 -9
- package/dist/cjs/js/src/abstract/bitopro.js +0 -9
- package/dist/cjs/js/src/abstract/bitpanda.js +0 -9
- package/dist/cjs/js/src/abstract/bitrue.js +0 -9
- package/dist/cjs/js/src/abstract/bitso.js +0 -9
- package/dist/cjs/js/src/abstract/bitstamp.js +0 -9
- package/dist/cjs/js/src/abstract/bitteam.js +0 -9
- package/dist/cjs/js/src/abstract/bitvavo.js +0 -9
- package/dist/cjs/js/src/abstract/bl3p.js +0 -9
- package/dist/cjs/js/src/abstract/blockchaincom.js +0 -9
- package/dist/cjs/js/src/abstract/btcalpha.js +0 -9
- package/dist/cjs/js/src/abstract/btcbox.js +0 -9
- package/dist/cjs/js/src/abstract/btcmarkets.js +0 -9
- package/dist/cjs/js/src/abstract/btcturk.js +0 -9
- package/dist/cjs/js/src/abstract/bybit.js +0 -9
- package/dist/cjs/js/src/abstract/cex.js +0 -9
- package/dist/cjs/js/src/abstract/coinbase.js +0 -9
- package/dist/cjs/js/src/abstract/coinbasepro.js +0 -9
- package/dist/cjs/js/src/abstract/coincheck.js +0 -9
- package/dist/cjs/js/src/abstract/coinex.js +0 -9
- package/dist/cjs/js/src/abstract/coinlist.js +0 -9
- package/dist/cjs/js/src/abstract/coinmate.js +0 -9
- package/dist/cjs/js/src/abstract/coinone.js +0 -9
- package/dist/cjs/js/src/abstract/coinsph.js +0 -9
- package/dist/cjs/js/src/abstract/coinspot.js +0 -9
- package/dist/cjs/js/src/abstract/cryptocom.js +0 -9
- package/dist/cjs/js/src/abstract/currencycom.js +0 -9
- package/dist/cjs/js/src/abstract/delta.js +0 -9
- package/dist/cjs/js/src/abstract/deribit.js +0 -9
- package/dist/cjs/js/src/abstract/digifinex.js +0 -9
- package/dist/cjs/js/src/abstract/exmo.js +0 -9
- package/dist/cjs/js/src/abstract/gate.js +0 -9
- package/dist/cjs/js/src/abstract/gemini.js +0 -9
- package/dist/cjs/js/src/abstract/hitbtc.js +0 -9
- package/dist/cjs/js/src/abstract/hollaex.js +0 -9
- package/dist/cjs/js/src/abstract/htx.js +0 -9
- package/dist/cjs/js/src/abstract/huobijp.js +0 -9
- package/dist/cjs/js/src/abstract/idex.js +0 -9
- package/dist/cjs/js/src/abstract/independentreserve.js +0 -9
- package/dist/cjs/js/src/abstract/indodax.js +0 -9
- package/dist/cjs/js/src/abstract/kraken.js +0 -9
- package/dist/cjs/js/src/abstract/krakenfutures.js +0 -9
- package/dist/cjs/js/src/abstract/kucoin.js +0 -9
- package/dist/cjs/js/src/abstract/kucoinfutures.js +0 -9
- package/dist/cjs/js/src/abstract/kuna.js +0 -9
- package/dist/cjs/js/src/abstract/latoken.js +0 -9
- package/dist/cjs/js/src/abstract/lbank.js +0 -9
- package/dist/cjs/js/src/abstract/luno.js +0 -9
- package/dist/cjs/js/src/abstract/lykke.js +0 -9
- package/dist/cjs/js/src/abstract/mercado.js +0 -9
- package/dist/cjs/js/src/abstract/mexc.js +0 -9
- package/dist/cjs/js/src/abstract/ndax.js +0 -9
- package/dist/cjs/js/src/abstract/novadax.js +0 -9
- package/dist/cjs/js/src/abstract/oceanex.js +0 -9
- package/dist/cjs/js/src/abstract/okcoin.js +0 -9
- package/dist/cjs/js/src/abstract/okx.js +0 -9
- package/dist/cjs/js/src/abstract/p2b.js +0 -9
- package/dist/cjs/js/src/abstract/paymium.js +0 -9
- package/dist/cjs/js/src/abstract/phemex.js +0 -9
- package/dist/cjs/js/src/abstract/poloniex.js +0 -9
- package/dist/cjs/js/src/abstract/poloniexfutures.js +0 -9
- package/dist/cjs/js/src/abstract/probit.js +0 -9
- package/dist/cjs/js/src/abstract/timex.js +0 -9
- package/dist/cjs/js/src/abstract/tokocrypto.js +0 -9
- package/dist/cjs/js/src/abstract/upbit.js +0 -9
- package/dist/cjs/js/src/abstract/wavesexchange.js +0 -9
- package/dist/cjs/js/src/abstract/wazirx.js +0 -9
- package/dist/cjs/js/src/abstract/whitebit.js +0 -9
- package/dist/cjs/js/src/abstract/woo.js +0 -9
- package/dist/cjs/js/src/abstract/yobit.js +0 -9
- package/dist/cjs/js/src/abstract/zaif.js +0 -9
- package/dist/cjs/js/src/abstract/zonda.js +0 -9
- package/dist/cjs/js/src/ace.js +0 -1058
- package/dist/cjs/js/src/alpaca.js +0 -1125
- package/dist/cjs/js/src/ascendex.js +0 -3365
- package/dist/cjs/js/src/base/Exchange.js +0 -5260
- package/dist/cjs/js/src/base/Precise.js +0 -263
- package/dist/cjs/js/src/base/errors.js +0 -299
- package/dist/cjs/js/src/base/functions/crypto.js +0 -78
- package/dist/cjs/js/src/base/functions/encode.js +0 -44
- package/dist/cjs/js/src/base/functions/generic.js +0 -193
- package/dist/cjs/js/src/base/functions/misc.js +0 -96
- package/dist/cjs/js/src/base/functions/number.js +0 -297
- package/dist/cjs/js/src/base/functions/platform.js +0 -28
- package/dist/cjs/js/src/base/functions/rsa.js +0 -34
- package/dist/cjs/js/src/base/functions/string.js +0 -48
- package/dist/cjs/js/src/base/functions/throttle.js +0 -66
- package/dist/cjs/js/src/base/functions/time.js +0 -187
- package/dist/cjs/js/src/base/functions/totp.js +0 -24
- package/dist/cjs/js/src/base/functions/type.js +0 -162
- package/dist/cjs/js/src/base/functions.js +0 -157
- package/dist/cjs/js/src/base/ws/Cache.js +0 -254
- package/dist/cjs/js/src/base/ws/Client.js +0 -299
- package/dist/cjs/js/src/base/ws/Future.js +0 -34
- package/dist/cjs/js/src/base/ws/OrderBook.js +0 -107
- package/dist/cjs/js/src/base/ws/OrderBookSide.js +0 -281
- package/dist/cjs/js/src/base/ws/WsClient.js +0 -69
- package/dist/cjs/js/src/bequant.js +0 -33
- package/dist/cjs/js/src/bigone.js +0 -2213
- package/dist/cjs/js/src/binance.js +0 -9851
- package/dist/cjs/js/src/binancecoinm.js +0 -45
- package/dist/cjs/js/src/binanceus.js +0 -92
- package/dist/cjs/js/src/binanceusdm.js +0 -58
- package/dist/cjs/js/src/bingx.js +0 -3872
- package/dist/cjs/js/src/bit2c.js +0 -916
- package/dist/cjs/js/src/bitbank.js +0 -1000
- package/dist/cjs/js/src/bitbay.js +0 -17
- package/dist/cjs/js/src/bitbns.js +0 -1220
- package/dist/cjs/js/src/bitcoincom.js +0 -17
- package/dist/cjs/js/src/bitfinex.js +0 -1670
- package/dist/cjs/js/src/bitfinex2.js +0 -2990
- package/dist/cjs/js/src/bitflyer.js +0 -1045
- package/dist/cjs/js/src/bitforex.js +0 -852
- package/dist/cjs/js/src/bitget.js +0 -8295
- package/dist/cjs/js/src/bithumb.js +0 -1090
- package/dist/cjs/js/src/bitmart.js +0 -4454
- package/dist/cjs/js/src/bitmex.js +0 -2881
- package/dist/cjs/js/src/bitopro.js +0 -1724
- package/dist/cjs/js/src/bitrue.js +0 -3253
- package/dist/cjs/js/src/bitso.js +0 -1753
- package/dist/cjs/js/src/bitstamp.js +0 -2188
- package/dist/cjs/js/src/bitteam.js +0 -2309
- package/dist/cjs/js/src/bitvavo.js +0 -1968
- package/dist/cjs/js/src/bl3p.js +0 -447
- package/dist/cjs/js/src/blockchaincom.js +0 -1160
- package/dist/cjs/js/src/btcalpha.js +0 -929
- package/dist/cjs/js/src/btcbox.js +0 -565
- package/dist/cjs/js/src/btcmarkets.js +0 -1237
- package/dist/cjs/js/src/btcturk.js +0 -929
- package/dist/cjs/js/src/bybit.js +0 -7624
- package/dist/cjs/js/src/cex.js +0 -1693
- package/dist/cjs/js/src/coinbase.js +0 -3424
- package/dist/cjs/js/src/coinbasepro.js +0 -1866
- package/dist/cjs/js/src/coincheck.js +0 -844
- package/dist/cjs/js/src/coinex.js +0 -5417
- package/dist/cjs/js/src/coinlist.js +0 -2337
- package/dist/cjs/js/src/coinmate.js +0 -989
- package/dist/cjs/js/src/coinone.js +0 -1185
- package/dist/cjs/js/src/coinsph.js +0 -1933
- package/dist/cjs/js/src/coinspot.js +0 -548
- package/dist/cjs/js/src/cryptocom.js +0 -3007
- package/dist/cjs/js/src/currencycom.js +0 -2015
- package/dist/cjs/js/src/delta.js +0 -3262
- package/dist/cjs/js/src/deribit.js +0 -3310
- package/dist/cjs/js/src/digifinex.js +0 -4307
- package/dist/cjs/js/src/exmo.js +0 -2645
- package/dist/cjs/js/src/fmfwio.js +0 -34
- package/dist/cjs/js/src/gate.js +0 -7077
- package/dist/cjs/js/src/gateio.js +0 -16
- package/dist/cjs/js/src/gemini.js +0 -1801
- package/dist/cjs/js/src/hitbtc.js +0 -3660
- package/dist/cjs/js/src/hitbtc3.js +0 -19
- package/dist/cjs/js/src/hollaex.js +0 -1882
- package/dist/cjs/js/src/htx.js +0 -9174
- package/dist/cjs/js/src/huobi.js +0 -16
- package/dist/cjs/js/src/huobijp.js +0 -1918
- package/dist/cjs/js/src/idex.js +0 -1770
- package/dist/cjs/js/src/independentreserve.js +0 -761
- package/dist/cjs/js/src/indodax.js +0 -1069
- package/dist/cjs/js/src/kraken.js +0 -2891
- package/dist/cjs/js/src/krakenfutures.js +0 -2407
- package/dist/cjs/js/src/kucoin.js +0 -4494
- package/dist/cjs/js/src/kucoinfutures.js +0 -2529
- package/dist/cjs/js/src/kuna.js +0 -1949
- package/dist/cjs/js/src/latoken.js +0 -1729
- package/dist/cjs/js/src/lbank.js +0 -2851
- package/dist/cjs/js/src/luno.js +0 -1044
- package/dist/cjs/js/src/lykke.js +0 -1303
- package/dist/cjs/js/src/mercado.js +0 -897
- package/dist/cjs/js/src/mexc.js +0 -5407
- package/dist/cjs/js/src/ndax.js +0 -2450
- package/dist/cjs/js/src/novadax.js +0 -1556
- package/dist/cjs/js/src/oceanex.js +0 -964
- package/dist/cjs/js/src/okcoin.js +0 -3115
- package/dist/cjs/js/src/okx.js +0 -7331
- package/dist/cjs/js/src/p2b.js +0 -1243
- package/dist/cjs/js/src/paymium.js +0 -597
- package/dist/cjs/js/src/phemex.js +0 -4725
- package/dist/cjs/js/src/poloniex.js +0 -2356
- package/dist/cjs/js/src/poloniexfutures.js +0 -1794
- package/dist/cjs/js/src/pro/alpaca.js +0 -714
- package/dist/cjs/js/src/pro/ascendex.js +0 -957
- package/dist/cjs/js/src/pro/bequant.js +0 -33
- package/dist/cjs/js/src/pro/binance.js +0 -2796
- package/dist/cjs/js/src/pro/binancecoinm.js +0 -23
- package/dist/cjs/js/src/pro/binanceus.js +0 -51
- package/dist/cjs/js/src/pro/binanceusdm.js +0 -32
- package/dist/cjs/js/src/pro/bingx.js +0 -944
- package/dist/cjs/js/src/pro/bitcoincom.js +0 -29
- package/dist/cjs/js/src/pro/bitfinex.js +0 -672
- package/dist/cjs/js/src/pro/bitfinex2.js +0 -1159
- package/dist/cjs/js/src/pro/bitget.js +0 -1733
- package/dist/cjs/js/src/pro/bitmart.js +0 -1486
- package/dist/cjs/js/src/pro/bitmex.js +0 -1576
- package/dist/cjs/js/src/pro/bitopro.js +0 -327
- package/dist/cjs/js/src/pro/bitrue.js +0 -462
- package/dist/cjs/js/src/pro/bitstamp.js +0 -547
- package/dist/cjs/js/src/pro/bitvavo.js +0 -704
- package/dist/cjs/js/src/pro/blockchaincom.js +0 -794
- package/dist/cjs/js/src/pro/bybit.js +0 -1843
- package/dist/cjs/js/src/pro/cex.js +0 -1510
- package/dist/cjs/js/src/pro/coinbase.js +0 -561
- package/dist/cjs/js/src/pro/coinbasepro.js +0 -968
- package/dist/cjs/js/src/pro/coinex.js +0 -1095
- package/dist/cjs/js/src/pro/cryptocom.js +0 -1020
- package/dist/cjs/js/src/pro/currencycom.js +0 -563
- package/dist/cjs/js/src/pro/deribit.js +0 -825
- package/dist/cjs/js/src/pro/exmo.js +0 -658
- package/dist/cjs/js/src/pro/gate.js +0 -1316
- package/dist/cjs/js/src/pro/gateio.js +0 -16
- package/dist/cjs/js/src/pro/gemini.js +0 -649
- package/dist/cjs/js/src/pro/hitbtc.js +0 -1294
- package/dist/cjs/js/src/pro/hollaex.js +0 -597
- package/dist/cjs/js/src/pro/htx.js +0 -2388
- package/dist/cjs/js/src/pro/huobi.js +0 -16
- package/dist/cjs/js/src/pro/huobijp.js +0 -606
- package/dist/cjs/js/src/pro/idex.js +0 -714
- package/dist/cjs/js/src/pro/independentreserve.js +0 -280
- package/dist/cjs/js/src/pro/kraken.js +0 -1364
- package/dist/cjs/js/src/pro/krakenfutures.js +0 -1506
- package/dist/cjs/js/src/pro/kucoin.js +0 -1062
- package/dist/cjs/js/src/pro/kucoinfutures.js +0 -989
- package/dist/cjs/js/src/pro/luno.js +0 -322
- package/dist/cjs/js/src/pro/mexc.js +0 -1170
- package/dist/cjs/js/src/pro/ndax.js +0 -545
- package/dist/cjs/js/src/pro/okcoin.js +0 -760
- package/dist/cjs/js/src/pro/okx.js +0 -1608
- package/dist/cjs/js/src/pro/phemex.js +0 -1511
- package/dist/cjs/js/src/pro/poloniex.js +0 -1253
- package/dist/cjs/js/src/pro/poloniexfutures.js +0 -1022
- package/dist/cjs/js/src/pro/probit.js +0 -586
- package/dist/cjs/js/src/pro/upbit.js +0 -234
- package/dist/cjs/js/src/pro/wazirx.js +0 -776
- package/dist/cjs/js/src/pro/whitebit.js +0 -927
- package/dist/cjs/js/src/pro/woo.js +0 -895
- package/dist/cjs/js/src/probit.js +0 -1867
- package/dist/cjs/js/src/static_dependencies/fflake/browser.js +0 -401
- package/dist/cjs/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -195
- package/dist/cjs/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -308
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -554
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -94
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -70
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -91
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -16
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -1760
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -52
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -81
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -376
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -70
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -1580
- package/dist/cjs/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -74
- package/dist/cjs/js/src/static_dependencies/noble-curves/_shortw_utils.js +0 -24
- package/dist/cjs/js/src/static_dependencies/noble-curves/abstract/curve.js +0 -158
- package/dist/cjs/js/src/static_dependencies/noble-curves/abstract/edwards.js +0 -429
- package/dist/cjs/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -176
- package/dist/cjs/js/src/static_dependencies/noble-curves/abstract/modular.js +0 -324
- package/dist/cjs/js/src/static_dependencies/noble-curves/abstract/montgomery.js +0 -163
- package/dist/cjs/js/src/static_dependencies/noble-curves/abstract/utils.js +0 -245
- package/dist/cjs/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +0 -1018
- package/dist/cjs/js/src/static_dependencies/noble-curves/ed25519.js +0 -383
- package/dist/cjs/js/src/static_dependencies/noble-curves/secp256k1.js +0 -258
- package/dist/cjs/js/src/static_dependencies/noble-hashes/_assert.js +0 -53
- package/dist/cjs/js/src/static_dependencies/noble-hashes/_sha2.js +0 -120
- package/dist/cjs/js/src/static_dependencies/noble-hashes/_u64.js +0 -69
- package/dist/cjs/js/src/static_dependencies/noble-hashes/crypto.js +0 -7
- package/dist/cjs/js/src/static_dependencies/noble-hashes/hmac.js +0 -83
- package/dist/cjs/js/src/static_dependencies/noble-hashes/md5.js +0 -240
- package/dist/cjs/js/src/static_dependencies/noble-hashes/sha1.js +0 -91
- package/dist/cjs/js/src/static_dependencies/noble-hashes/sha256.js +0 -130
- package/dist/cjs/js/src/static_dependencies/noble-hashes/sha3.js +0 -214
- package/dist/cjs/js/src/static_dependencies/noble-hashes/sha512.js +0 -239
- package/dist/cjs/js/src/static_dependencies/noble-hashes/utils.js +0 -93
- package/dist/cjs/js/src/static_dependencies/node-fetch/body.js +0 -354
- package/dist/cjs/js/src/static_dependencies/node-fetch/errors/abort-error.js +0 -16
- package/dist/cjs/js/src/static_dependencies/node-fetch/errors/base.js +0 -20
- package/dist/cjs/js/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -30
- package/dist/cjs/js/src/static_dependencies/node-fetch/headers.js +0 -239
- package/dist/cjs/js/src/static_dependencies/node-fetch/index.js +0 -372
- package/dist/cjs/js/src/static_dependencies/node-fetch/request.js +0 -273
- package/dist/cjs/js/src/static_dependencies/node-fetch/response.js +0 -139
- package/dist/cjs/js/src/static_dependencies/node-fetch/utils/get-search.js +0 -14
- package/dist/cjs/js/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -16
- package/dist/cjs/js/src/static_dependencies/node-fetch/utils/is.js +0 -81
- package/dist/cjs/js/src/static_dependencies/node-fetch/utils/referrer.js +0 -292
- package/dist/cjs/js/src/static_dependencies/proxies/agent-base/index.js +0 -103
- package/dist/cjs/js/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -140
- package/dist/cjs/js/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -175
- package/dist/cjs/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -95
- package/dist/cjs/js/src/static_dependencies/qs/index.cjs.js +0 -7
- package/dist/cjs/js/src/static_dependencies/scure-base/index.js +0 -383
- package/dist/cjs/js/src/timex.js +0 -1562
- package/dist/cjs/js/src/tokocrypto.js +0 -2542
- package/dist/cjs/js/src/upbit.js +0 -1844
- package/dist/cjs/js/src/wavesexchange.js +0 -2607
- package/dist/cjs/js/src/wazirx.js +0 -953
- package/dist/cjs/js/src/whitebit.js +0 -2310
- package/dist/cjs/js/src/woo.js +0 -2769
- package/dist/cjs/js/src/yobit.js +0 -1314
- package/dist/cjs/js/src/zaif.js +0 -736
- package/dist/cjs/js/src/zonda.js +0 -1883
- package/dist/cjs/src/abstract/bitpanda.js +0 -9
- package/test.ts +0 -0
- /package/dist/cjs/{js/src/abstract/ace.js → src/abstract/onetrading.js} +0 -0
- /package/dist/cjs/{js/src → src}/pro/coincheck.js +0 -0
- /package/dist/cjs/{js/src → src}/pro/coinone.js +0 -0
|
@@ -33,10 +33,14 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
33
33
|
'closePositions': false,
|
|
34
34
|
'createDepositAddress': true,
|
|
35
35
|
'createOrder': true,
|
|
36
|
+
'createOrders': true,
|
|
36
37
|
'createReduceOnlyOrder': true,
|
|
37
38
|
'createStopLimitOrder': true,
|
|
39
|
+
'createStopLossOrder': true,
|
|
38
40
|
'createStopMarketOrder': true,
|
|
39
41
|
'createStopOrder': true,
|
|
42
|
+
'createTakeProfitOrder': true,
|
|
43
|
+
'createTriggerOrder': true,
|
|
40
44
|
'fetchAccounts': true,
|
|
41
45
|
'fetchBalance': true,
|
|
42
46
|
'fetchBorrowRateHistories': false,
|
|
@@ -51,7 +55,7 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
51
55
|
'fetchDepositWithdrawFees': false,
|
|
52
56
|
'fetchFundingHistory': true,
|
|
53
57
|
'fetchFundingRate': true,
|
|
54
|
-
'fetchFundingRateHistory':
|
|
58
|
+
'fetchFundingRateHistory': true,
|
|
55
59
|
'fetchIndexOHLCV': false,
|
|
56
60
|
'fetchIsolatedBorrowRate': false,
|
|
57
61
|
'fetchIsolatedBorrowRates': false,
|
|
@@ -1112,6 +1116,78 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
1112
1116
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1113
1117
|
*/
|
|
1114
1118
|
await this.loadMarkets();
|
|
1119
|
+
const market = this.market(symbol);
|
|
1120
|
+
const testOrder = this.safeValue(params, 'test', false);
|
|
1121
|
+
params = this.omit(params, 'test');
|
|
1122
|
+
const orderRequest = this.createContractOrderRequest(symbol, type, side, amount, price, params);
|
|
1123
|
+
let response = undefined;
|
|
1124
|
+
if (testOrder) {
|
|
1125
|
+
response = await this.futuresPrivatePostOrdersTest(orderRequest);
|
|
1126
|
+
}
|
|
1127
|
+
else {
|
|
1128
|
+
response = await this.futuresPrivatePostOrders(orderRequest);
|
|
1129
|
+
}
|
|
1130
|
+
//
|
|
1131
|
+
// {
|
|
1132
|
+
// "code": "200000",
|
|
1133
|
+
// "data": {
|
|
1134
|
+
// "orderId": "619717484f1d010001510cde",
|
|
1135
|
+
// },
|
|
1136
|
+
// }
|
|
1137
|
+
//
|
|
1138
|
+
const data = this.safeValue(response, 'data', {});
|
|
1139
|
+
return this.parseOrder(data, market);
|
|
1140
|
+
}
|
|
1141
|
+
async createOrders(orders, params = {}) {
|
|
1142
|
+
/**
|
|
1143
|
+
* @method
|
|
1144
|
+
* @name kucoinfutures#createOrders
|
|
1145
|
+
* @description create a list of trade orders
|
|
1146
|
+
* @see https://www.kucoin.com/docs/rest/futures-trading/orders/place-multiple-orders
|
|
1147
|
+
* @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
|
|
1148
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1149
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1150
|
+
*/
|
|
1151
|
+
await this.loadMarkets();
|
|
1152
|
+
const ordersRequests = [];
|
|
1153
|
+
for (let i = 0; i < orders.length; i++) {
|
|
1154
|
+
const rawOrder = orders[i];
|
|
1155
|
+
const symbol = this.safeString(rawOrder, 'symbol');
|
|
1156
|
+
const market = this.market(symbol);
|
|
1157
|
+
const type = this.safeString(rawOrder, 'type');
|
|
1158
|
+
const side = this.safeString(rawOrder, 'side');
|
|
1159
|
+
const amount = this.safeValue(rawOrder, 'amount');
|
|
1160
|
+
const price = this.safeValue(rawOrder, 'price');
|
|
1161
|
+
const orderParams = this.safeValue(rawOrder, 'params', {});
|
|
1162
|
+
const orderRequest = this.createContractOrderRequest(market['id'], type, side, amount, price, orderParams);
|
|
1163
|
+
ordersRequests.push(orderRequest);
|
|
1164
|
+
}
|
|
1165
|
+
const response = await this.futuresPrivatePostOrdersMulti(ordersRequests);
|
|
1166
|
+
//
|
|
1167
|
+
// {
|
|
1168
|
+
// "code": "200000",
|
|
1169
|
+
// "data": [
|
|
1170
|
+
// {
|
|
1171
|
+
// "orderId": "135241412609331200",
|
|
1172
|
+
// "clientOid": "3d8fcc13-0b13-447f-ad30-4b3441e05213",
|
|
1173
|
+
// "symbol": "LTCUSDTM",
|
|
1174
|
+
// "code": "200000",
|
|
1175
|
+
// "msg": "success"
|
|
1176
|
+
// },
|
|
1177
|
+
// {
|
|
1178
|
+
// "orderId": "135241412747743234",
|
|
1179
|
+
// "clientOid": "b878c7ee-ae3e-4d63-a20b-038acbb7306f",
|
|
1180
|
+
// "symbol": "LTCUSDTM",
|
|
1181
|
+
// "code": "200000",
|
|
1182
|
+
// "msg": "success"
|
|
1183
|
+
// }
|
|
1184
|
+
// ]
|
|
1185
|
+
// }
|
|
1186
|
+
//
|
|
1187
|
+
const data = this.safeValue(response, 'data', []);
|
|
1188
|
+
return this.parseOrders(data);
|
|
1189
|
+
}
|
|
1190
|
+
createContractOrderRequest(symbol, type, side, amount, price = undefined, params = {}) {
|
|
1115
1191
|
const market = this.market(symbol);
|
|
1116
1192
|
// required param, cannot be used twice
|
|
1117
1193
|
const clientOrderId = this.safeString2(params, 'clientOid', 'clientOrderId', this.uuid());
|
|
@@ -1184,48 +1260,7 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
1184
1260
|
}
|
|
1185
1261
|
}
|
|
1186
1262
|
params = this.omit(params, ['timeInForce', 'stopPrice', 'triggerPrice', 'stopLossPrice', 'takeProfitPrice']); // Time in force only valid for limit orders, exchange error when gtc for market orders
|
|
1187
|
-
|
|
1188
|
-
const testOrder = this.safeValue(params, 'test', false);
|
|
1189
|
-
params = this.omit(params, 'test');
|
|
1190
|
-
if (testOrder) {
|
|
1191
|
-
response = await this.futuresPrivatePostOrdersTest(this.extend(request, params));
|
|
1192
|
-
}
|
|
1193
|
-
else {
|
|
1194
|
-
response = await this.futuresPrivatePostOrders(this.extend(request, params));
|
|
1195
|
-
}
|
|
1196
|
-
//
|
|
1197
|
-
// {
|
|
1198
|
-
// "code": "200000",
|
|
1199
|
-
// "data": {
|
|
1200
|
-
// "orderId": "619717484f1d010001510cde",
|
|
1201
|
-
// },
|
|
1202
|
-
// }
|
|
1203
|
-
//
|
|
1204
|
-
const data = this.safeValue(response, 'data', {});
|
|
1205
|
-
return this.safeOrder({
|
|
1206
|
-
'id': this.safeString(data, 'orderId'),
|
|
1207
|
-
'clientOrderId': undefined,
|
|
1208
|
-
'timestamp': undefined,
|
|
1209
|
-
'datetime': undefined,
|
|
1210
|
-
'lastTradeTimestamp': undefined,
|
|
1211
|
-
'symbol': undefined,
|
|
1212
|
-
'type': undefined,
|
|
1213
|
-
'side': undefined,
|
|
1214
|
-
'price': undefined,
|
|
1215
|
-
'amount': undefined,
|
|
1216
|
-
'cost': undefined,
|
|
1217
|
-
'average': undefined,
|
|
1218
|
-
'filled': undefined,
|
|
1219
|
-
'remaining': undefined,
|
|
1220
|
-
'status': undefined,
|
|
1221
|
-
'fee': undefined,
|
|
1222
|
-
'trades': undefined,
|
|
1223
|
-
'timeInForce': undefined,
|
|
1224
|
-
'postOnly': undefined,
|
|
1225
|
-
'stopPrice': undefined,
|
|
1226
|
-
'triggerPrice': undefined,
|
|
1227
|
-
'info': response,
|
|
1228
|
-
}, market);
|
|
1263
|
+
return this.extend(request, params);
|
|
1229
1264
|
}
|
|
1230
1265
|
async cancelOrder(id, symbol = undefined, params = {}) {
|
|
1231
1266
|
/**
|
|
@@ -1698,10 +1733,26 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
1698
1733
|
// "reduceOnly": false
|
|
1699
1734
|
// }
|
|
1700
1735
|
//
|
|
1736
|
+
// createOrder
|
|
1737
|
+
//
|
|
1738
|
+
// {
|
|
1739
|
+
// "orderId": "619717484f1d010001510cde"
|
|
1740
|
+
// }
|
|
1741
|
+
//
|
|
1742
|
+
// createOrders
|
|
1743
|
+
//
|
|
1744
|
+
// {
|
|
1745
|
+
// "orderId": "80465574458560512",
|
|
1746
|
+
// "clientOid": "5c52e11203aa677f33e491",
|
|
1747
|
+
// "symbol": "ETHUSDTM",
|
|
1748
|
+
// "code": "200000",
|
|
1749
|
+
// "msg": "success"
|
|
1750
|
+
// }
|
|
1751
|
+
//
|
|
1701
1752
|
const marketId = this.safeString(order, 'symbol');
|
|
1702
1753
|
market = this.safeMarket(marketId, market);
|
|
1703
1754
|
const symbol = market['symbol'];
|
|
1704
|
-
const orderId = this.
|
|
1755
|
+
const orderId = this.safeString2(order, 'id', 'orderId');
|
|
1705
1756
|
const type = this.safeString(order, 'type');
|
|
1706
1757
|
const timestamp = this.safeInteger(order, 'createdAt');
|
|
1707
1758
|
const datetime = this.iso8601(timestamp);
|
|
@@ -1728,9 +1779,12 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
1728
1779
|
// precision reported by their api is 8 d.p.
|
|
1729
1780
|
// const average = Precise.stringDiv (cost, Precise.stringMul (filled, market['contractSize']));
|
|
1730
1781
|
// bool
|
|
1731
|
-
const isActive = this.safeValue(order, 'isActive'
|
|
1782
|
+
const isActive = this.safeValue(order, 'isActive');
|
|
1732
1783
|
const cancelExist = this.safeValue(order, 'cancelExist', false);
|
|
1733
|
-
let status =
|
|
1784
|
+
let status = undefined;
|
|
1785
|
+
if (isActive !== undefined) {
|
|
1786
|
+
status = isActive ? 'open' : 'closed';
|
|
1787
|
+
}
|
|
1734
1788
|
status = cancelExist ? 'canceled' : status;
|
|
1735
1789
|
let fee = undefined;
|
|
1736
1790
|
if (feeCost !== undefined) {
|
|
@@ -1777,7 +1831,7 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
1777
1831
|
* @method
|
|
1778
1832
|
* @name kucoinfutures#fetchFundingRate
|
|
1779
1833
|
* @description fetch the current funding rate
|
|
1780
|
-
* @see https://www.kucoin.com/docs/rest/futures-trading/
|
|
1834
|
+
* @see https://www.kucoin.com/docs/rest/futures-trading/funding-fees/get-current-funding-rate
|
|
1781
1835
|
* @param {string} symbol unified market symbol
|
|
1782
1836
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1783
1837
|
* @returns {object} a [funding rate structure]{@link https://docs.ccxt.com/#/?id=funding-rate-structure}
|
|
@@ -1801,7 +1855,7 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
1801
1855
|
// }
|
|
1802
1856
|
//
|
|
1803
1857
|
const data = this.safeValue(response, 'data');
|
|
1804
|
-
const fundingTimestamp = this.
|
|
1858
|
+
const fundingTimestamp = this.safeInteger(data, 'timePoint');
|
|
1805
1859
|
// the website displayes the previous funding rate as "funding rate"
|
|
1806
1860
|
return {
|
|
1807
1861
|
'info': data,
|
|
@@ -1812,15 +1866,15 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
1812
1866
|
'estimatedSettlePrice': undefined,
|
|
1813
1867
|
'timestamp': undefined,
|
|
1814
1868
|
'datetime': undefined,
|
|
1815
|
-
'fundingRate': this.safeNumber(data, '
|
|
1816
|
-
'fundingTimestamp':
|
|
1817
|
-
'fundingDatetime':
|
|
1818
|
-
'nextFundingRate':
|
|
1869
|
+
'fundingRate': this.safeNumber(data, 'value'),
|
|
1870
|
+
'fundingTimestamp': fundingTimestamp,
|
|
1871
|
+
'fundingDatetime': this.iso8601(fundingTimestamp),
|
|
1872
|
+
'nextFundingRate': this.safeNumber(data, 'predictedValue'),
|
|
1819
1873
|
'nextFundingTimestamp': undefined,
|
|
1820
1874
|
'nextFundingDatetime': undefined,
|
|
1821
|
-
'previousFundingRate':
|
|
1822
|
-
'previousFundingTimestamp':
|
|
1823
|
-
'previousFundingDatetime':
|
|
1875
|
+
'previousFundingRate': undefined,
|
|
1876
|
+
'previousFundingTimestamp': undefined,
|
|
1877
|
+
'previousFundingDatetime': undefined,
|
|
1824
1878
|
};
|
|
1825
1879
|
}
|
|
1826
1880
|
parseBalance(response) {
|
|
@@ -2375,62 +2429,62 @@ class kucoinfutures extends kucoinfutures$1 {
|
|
|
2375
2429
|
/**
|
|
2376
2430
|
* @method
|
|
2377
2431
|
* @name kucoinfutures#fetchFundingRateHistory
|
|
2432
|
+
* @see https://www.kucoin.com/docs/rest/futures-trading/funding-fees/get-public-funding-history#request-url
|
|
2378
2433
|
* @description fetches historical funding rate prices
|
|
2379
2434
|
* @param {string} symbol unified symbol of the market to fetch the funding rate history for
|
|
2380
2435
|
* @param {int} [since] not used by kucuoinfutures
|
|
2381
2436
|
* @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure} to fetch
|
|
2382
2437
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
2383
|
-
* @param {
|
|
2438
|
+
* @param {int} [params.until] end time in ms
|
|
2384
2439
|
* @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure}
|
|
2385
2440
|
*/
|
|
2386
2441
|
if (symbol === undefined) {
|
|
2387
2442
|
throw new errors.ArgumentsRequired(this.id + ' fetchFundingRateHistory() requires a symbol argument');
|
|
2388
2443
|
}
|
|
2389
2444
|
await this.loadMarkets();
|
|
2390
|
-
let paginate = false;
|
|
2391
|
-
[paginate, params] = this.handleOptionAndParams(params, 'fetchFundingRateHistory', 'paginate');
|
|
2392
|
-
if (paginate) {
|
|
2393
|
-
return await this.fetchPaginatedCallDeterministic('fetchFundingRateHistory', symbol, since, limit, '8h', params);
|
|
2394
|
-
}
|
|
2395
2445
|
const market = this.market(symbol);
|
|
2396
2446
|
const request = {
|
|
2397
2447
|
'symbol': market['id'],
|
|
2448
|
+
'from': 0,
|
|
2449
|
+
'to': this.milliseconds(),
|
|
2398
2450
|
};
|
|
2399
|
-
|
|
2400
|
-
|
|
2451
|
+
const until = this.safeInteger2(params, 'until', 'till');
|
|
2452
|
+
params = this.omit(params, ['until', 'till']);
|
|
2453
|
+
if (since !== undefined) {
|
|
2454
|
+
request['from'] = since;
|
|
2455
|
+
if (until === undefined) {
|
|
2456
|
+
request['to'] = since + 1000 * 8 * 60 * 60 * 100;
|
|
2457
|
+
}
|
|
2458
|
+
}
|
|
2459
|
+
if (until !== undefined) {
|
|
2460
|
+
request['to'] = until;
|
|
2461
|
+
if (since === undefined) {
|
|
2462
|
+
request['to'] = until - 1000 * 8 * 60 * 60 * 100;
|
|
2463
|
+
}
|
|
2401
2464
|
}
|
|
2402
|
-
const response = await this.
|
|
2465
|
+
const response = await this.futuresPublicGetContractFundingRates(this.extend(request, params));
|
|
2403
2466
|
//
|
|
2404
|
-
//
|
|
2405
|
-
//
|
|
2406
|
-
//
|
|
2407
|
-
//
|
|
2408
|
-
//
|
|
2409
|
-
//
|
|
2410
|
-
//
|
|
2411
|
-
//
|
|
2412
|
-
//
|
|
2413
|
-
//
|
|
2414
|
-
// "timePoint": 1675108800000,
|
|
2415
|
-
// "value": 0.0001
|
|
2416
|
-
// },
|
|
2417
|
-
// ...
|
|
2418
|
-
// ],
|
|
2419
|
-
// "hasMore": true
|
|
2420
|
-
// }
|
|
2421
|
-
// }
|
|
2467
|
+
// {
|
|
2468
|
+
// "code": "200000",
|
|
2469
|
+
// "data": [
|
|
2470
|
+
// {
|
|
2471
|
+
// "symbol": "IDUSDTM",
|
|
2472
|
+
// "fundingRate": 2.26E-4,
|
|
2473
|
+
// "timepoint": 1702296000000
|
|
2474
|
+
// }
|
|
2475
|
+
// ]
|
|
2476
|
+
// }
|
|
2422
2477
|
//
|
|
2423
2478
|
const data = this.safeValue(response, 'data');
|
|
2424
|
-
|
|
2425
|
-
return this.parseFundingRateHistories(dataList, market, since, limit);
|
|
2479
|
+
return this.parseFundingRateHistories(data, market, since, limit);
|
|
2426
2480
|
}
|
|
2427
2481
|
parseFundingRateHistory(info, market = undefined) {
|
|
2428
|
-
const timestamp = this.safeInteger(info, '
|
|
2482
|
+
const timestamp = this.safeInteger(info, 'timepoint');
|
|
2429
2483
|
const marketId = this.safeString(info, 'symbol');
|
|
2430
2484
|
return {
|
|
2431
2485
|
'info': info,
|
|
2432
2486
|
'symbol': this.safeSymbol(marketId, market),
|
|
2433
|
-
'fundingRate': this.safeNumber(info, '
|
|
2487
|
+
'fundingRate': this.safeNumber(info, 'fundingRate'),
|
|
2434
2488
|
'timestamp': timestamp,
|
|
2435
2489
|
'datetime': this.iso8601(timestamp),
|
|
2436
2490
|
};
|
package/dist/cjs/src/lbank.js
CHANGED
|
@@ -24,6 +24,7 @@ class lbank extends lbank$1 {
|
|
|
24
24
|
// 50 per second for making and cancelling orders 1000ms / 50 = 20
|
|
25
25
|
// 20 per second for all other requests, cost = 50 / 20 = 2.5
|
|
26
26
|
'rateLimit': 20,
|
|
27
|
+
'pro': true,
|
|
27
28
|
'has': {
|
|
28
29
|
'CORS': false,
|
|
29
30
|
'spot': true,
|
|
@@ -929,13 +930,17 @@ class lbank extends lbank$1 {
|
|
|
929
930
|
else {
|
|
930
931
|
request['size'] = 600; // max
|
|
931
932
|
}
|
|
932
|
-
|
|
933
|
+
const options = this.safeValue(this.options, 'fetchTrades', {});
|
|
934
|
+
const defaultMethod = this.safeString(options, 'method', 'spotPublicGetTrades');
|
|
935
|
+
const method = this.safeString(params, 'method', defaultMethod);
|
|
933
936
|
params = this.omit(params, 'method');
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
+
let response = undefined;
|
|
938
|
+
if (method === 'spotPublicGetSupplementTrades') {
|
|
939
|
+
response = await this.spotPublicGetSupplementTrades(this.extend(request, params));
|
|
940
|
+
}
|
|
941
|
+
else {
|
|
942
|
+
response = await this.spotPublicGetTrades(this.extend(request, params));
|
|
937
943
|
}
|
|
938
|
-
const response = await this[method](this.extend(request, params));
|
|
939
944
|
//
|
|
940
945
|
// {
|
|
941
946
|
// "result":"true",
|
|
@@ -1172,12 +1177,19 @@ class lbank extends lbank$1 {
|
|
|
1172
1177
|
* @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
|
|
1173
1178
|
*/
|
|
1174
1179
|
await this.loadMarkets();
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1180
|
+
const options = this.safeValue(this.options, 'fetchBalance', {});
|
|
1181
|
+
const defaultMethod = this.safeString(options, 'method', 'spotPrivatePostSupplementUserInfo');
|
|
1182
|
+
const method = this.safeString(params, 'method', defaultMethod);
|
|
1183
|
+
let response = undefined;
|
|
1184
|
+
if (method === 'spotPrivatePostSupplementUserInfoAccount') {
|
|
1185
|
+
response = await this.spotPrivatePostSupplementUserInfoAccount();
|
|
1186
|
+
}
|
|
1187
|
+
else if (method === 'spotPrivatePostUserInfo') {
|
|
1188
|
+
response = await this.spotPrivatePostUserInfo();
|
|
1189
|
+
}
|
|
1190
|
+
else {
|
|
1191
|
+
response = await this.spotPrivatePostSupplementUserInfo();
|
|
1179
1192
|
}
|
|
1180
|
-
const response = await this[method]();
|
|
1181
1193
|
//
|
|
1182
1194
|
// {
|
|
1183
1195
|
// "result": "true",
|
|
@@ -1362,14 +1374,17 @@ class lbank extends lbank$1 {
|
|
|
1362
1374
|
if (clientOrderId !== undefined) {
|
|
1363
1375
|
request['custom_id'] = clientOrderId;
|
|
1364
1376
|
}
|
|
1365
|
-
|
|
1366
|
-
|
|
1377
|
+
const options = this.safeValue(this.options, 'createOrder', {});
|
|
1378
|
+
const defaultMethod = this.safeString(options, 'method', 'spotPrivatePostSupplementCreateOrder');
|
|
1379
|
+
const method = this.safeString(params, 'method', defaultMethod);
|
|
1367
1380
|
params = this.omit(params, 'method');
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1381
|
+
let response = undefined;
|
|
1382
|
+
if (method === 'spotPrivatePostCreateOrder') {
|
|
1383
|
+
response = await this.spotPrivatePostCreateOrder(this.extend(request, params));
|
|
1384
|
+
}
|
|
1385
|
+
else {
|
|
1386
|
+
response = await this.spotPrivatePostSupplementCreateOrder(this.extend(request, params));
|
|
1371
1387
|
}
|
|
1372
|
-
const response = await this[method](this.extend(request, params));
|
|
1373
1388
|
//
|
|
1374
1389
|
// {
|
|
1375
1390
|
// "result":true,
|
|
@@ -1904,13 +1919,18 @@ class lbank extends lbank$1 {
|
|
|
1904
1919
|
* @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
|
|
1905
1920
|
*/
|
|
1906
1921
|
await this.loadMarkets();
|
|
1907
|
-
|
|
1922
|
+
const options = this.safeValue(this.options, 'fetchDepositAddress', {});
|
|
1923
|
+
const defaultMethod = this.safeString(options, 'method', 'fetchDepositAddressDefault');
|
|
1924
|
+
const method = this.safeString(params, 'method', defaultMethod);
|
|
1908
1925
|
params = this.omit(params, 'method');
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1926
|
+
let response = undefined;
|
|
1927
|
+
if (method === 'fetchDepositAddressSupplement') {
|
|
1928
|
+
response = await this.fetchDepositAddressSupplement(code, params);
|
|
1912
1929
|
}
|
|
1913
|
-
|
|
1930
|
+
else {
|
|
1931
|
+
response = await this.fetchDepositAddressDefault(code, params);
|
|
1932
|
+
}
|
|
1933
|
+
return response;
|
|
1914
1934
|
}
|
|
1915
1935
|
async fetchDepositAddressDefault(code, params = {}) {
|
|
1916
1936
|
await this.loadMarkets();
|
|
@@ -2282,13 +2302,16 @@ class lbank extends lbank$1 {
|
|
|
2282
2302
|
const isAuthorized = this.checkRequiredCredentials(false);
|
|
2283
2303
|
let result = undefined;
|
|
2284
2304
|
if (isAuthorized === true) {
|
|
2285
|
-
|
|
2305
|
+
const options = this.safeValue(this.options, 'fetchTransactionFees', {});
|
|
2306
|
+
const defaultMethod = this.safeString(options, 'method', 'fetchPrivateTransactionFees');
|
|
2307
|
+
const method = this.safeString(params, 'method', defaultMethod);
|
|
2286
2308
|
params = this.omit(params, 'method');
|
|
2287
|
-
if (method ===
|
|
2288
|
-
|
|
2289
|
-
|
|
2309
|
+
if (method === 'fetchPublicTransactionFees') {
|
|
2310
|
+
result = await this.fetchPublicTransactionFees(params);
|
|
2311
|
+
}
|
|
2312
|
+
else {
|
|
2313
|
+
result = await this.fetchPrivateTransactionFees(params);
|
|
2290
2314
|
}
|
|
2291
|
-
result = await this[method](params);
|
|
2292
2315
|
}
|
|
2293
2316
|
else {
|
|
2294
2317
|
result = await this.fetchPublicTransactionFees(params);
|
|
@@ -2426,19 +2449,23 @@ class lbank extends lbank$1 {
|
|
|
2426
2449
|
*/
|
|
2427
2450
|
await this.loadMarkets();
|
|
2428
2451
|
const isAuthorized = this.checkRequiredCredentials(false);
|
|
2429
|
-
|
|
2452
|
+
const response = undefined;
|
|
2430
2453
|
if (isAuthorized === true) {
|
|
2431
|
-
|
|
2454
|
+
const options = this.safeValue(this.options, 'fetchDepositWithdrawFees', {});
|
|
2455
|
+
const defaultMethod = this.safeString(options, 'method', 'fetchPrivateDepositWithdrawFees');
|
|
2456
|
+
const method = this.safeString(params, 'method', defaultMethod);
|
|
2432
2457
|
params = this.omit(params, 'method');
|
|
2433
|
-
if (method ===
|
|
2434
|
-
|
|
2435
|
-
|
|
2458
|
+
if (method === 'fetchPublicDepositWithdrawFees') {
|
|
2459
|
+
await this.fetchPublicDepositWithdrawFees(codes, params);
|
|
2460
|
+
}
|
|
2461
|
+
else {
|
|
2462
|
+
await this.fetchPrivateDepositWithdrawFees(codes, params);
|
|
2436
2463
|
}
|
|
2437
2464
|
}
|
|
2438
2465
|
else {
|
|
2439
|
-
|
|
2466
|
+
await this.fetchPublicDepositWithdrawFees(codes, params);
|
|
2440
2467
|
}
|
|
2441
|
-
return
|
|
2468
|
+
return response;
|
|
2442
2469
|
}
|
|
2443
2470
|
async fetchPrivateDepositWithdrawFees(codes = undefined, params = {}) {
|
|
2444
2471
|
// complete response
|
package/dist/cjs/src/luno.js
CHANGED
|
@@ -54,7 +54,7 @@ class luno extends luno$1 {
|
|
|
54
54
|
'fetchMarkets': true,
|
|
55
55
|
'fetchMarkOHLCV': false,
|
|
56
56
|
'fetchMyTrades': true,
|
|
57
|
-
'fetchOHLCV':
|
|
57
|
+
'fetchOHLCV': true,
|
|
58
58
|
'fetchOpenInterestHistory': false,
|
|
59
59
|
'fetchOpenOrders': true,
|
|
60
60
|
'fetchOrder': true,
|
|
@@ -82,6 +82,7 @@ class luno extends luno$1 {
|
|
|
82
82
|
'public': 'https://api.luno.com/api',
|
|
83
83
|
'private': 'https://api.luno.com/api',
|
|
84
84
|
'exchange': 'https://api.luno.com/api/exchange',
|
|
85
|
+
'exchangePrivate': 'https://api.luno.com/api/exchange',
|
|
85
86
|
},
|
|
86
87
|
'www': 'https://www.luno.com',
|
|
87
88
|
'doc': [
|
|
@@ -96,6 +97,11 @@ class luno extends luno$1 {
|
|
|
96
97
|
'markets': 1,
|
|
97
98
|
},
|
|
98
99
|
},
|
|
100
|
+
'exchangePrivate': {
|
|
101
|
+
'get': {
|
|
102
|
+
'candles': 1,
|
|
103
|
+
},
|
|
104
|
+
},
|
|
99
105
|
'public': {
|
|
100
106
|
'get': {
|
|
101
107
|
'orderbook': 1,
|
|
@@ -148,6 +154,18 @@ class luno extends luno$1 {
|
|
|
148
154
|
},
|
|
149
155
|
},
|
|
150
156
|
},
|
|
157
|
+
'timeframes': {
|
|
158
|
+
'1m': 60,
|
|
159
|
+
'5m': 300,
|
|
160
|
+
'15m': 900,
|
|
161
|
+
'30m': 1800,
|
|
162
|
+
'1h': 3600,
|
|
163
|
+
'3h': 10800,
|
|
164
|
+
'4h': 14400,
|
|
165
|
+
'1d': 86400,
|
|
166
|
+
'3d': 259200,
|
|
167
|
+
'1w': 604800,
|
|
168
|
+
},
|
|
151
169
|
'fees': {
|
|
152
170
|
'trading': {
|
|
153
171
|
'tierBased': true,
|
|
@@ -721,6 +739,70 @@ class luno extends luno$1 {
|
|
|
721
739
|
const trades = this.safeValue(response, 'trades', []);
|
|
722
740
|
return this.parseTrades(trades, market, since, limit);
|
|
723
741
|
}
|
|
742
|
+
async fetchOHLCV(symbol, timeframe = '1m', since = undefined, limit = undefined, params = {}) {
|
|
743
|
+
/**
|
|
744
|
+
* @method
|
|
745
|
+
* @name luno#fetchOHLCV
|
|
746
|
+
* @see https://www.luno.com/en/developers/api#tag/Market/operation/GetCandles
|
|
747
|
+
* @description fetches historical candlestick data containing the open, high, low, and close price, and the volume of a market
|
|
748
|
+
* @param {string} symbol unified symbol of the market to fetch OHLCV data for
|
|
749
|
+
* @param {string} timeframe the length of time each candle represents
|
|
750
|
+
* @param {int} [since] timestamp in ms of the earliest candle to fetch
|
|
751
|
+
* @param {int} [limit] the maximum amount of candles to fetch
|
|
752
|
+
* @param {object} params extra parameters specific to the luno api endpoint
|
|
753
|
+
* @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
|
|
754
|
+
*/
|
|
755
|
+
await this.loadMarkets();
|
|
756
|
+
const market = this.market(symbol);
|
|
757
|
+
const request = {
|
|
758
|
+
'duration': this.safeValue(this.timeframes, timeframe, timeframe),
|
|
759
|
+
'pair': market['id'],
|
|
760
|
+
};
|
|
761
|
+
if (since !== undefined) {
|
|
762
|
+
request['since'] = parseInt(since);
|
|
763
|
+
}
|
|
764
|
+
else {
|
|
765
|
+
const duration = 1000 * 1000 * this.parseTimeframe(timeframe);
|
|
766
|
+
request['since'] = this.milliseconds() - duration;
|
|
767
|
+
}
|
|
768
|
+
const response = await this.exchangePrivateGetCandles(this.extend(request, params));
|
|
769
|
+
//
|
|
770
|
+
// {
|
|
771
|
+
// "candles": [
|
|
772
|
+
// {
|
|
773
|
+
// "timestamp": 1664055240000,
|
|
774
|
+
// "open": "19612.65",
|
|
775
|
+
// "close": "19612.65",
|
|
776
|
+
// "high": "19612.65",
|
|
777
|
+
// "low": "19612.65",
|
|
778
|
+
// "volume": "0.00"
|
|
779
|
+
// },...
|
|
780
|
+
// ],
|
|
781
|
+
// "duration": 60,
|
|
782
|
+
// "pair": "XBTEUR"
|
|
783
|
+
// }
|
|
784
|
+
//
|
|
785
|
+
const ohlcvs = this.safeValue(response, 'candles', []);
|
|
786
|
+
return this.parseOHLCVs(ohlcvs, market, timeframe, since, limit);
|
|
787
|
+
}
|
|
788
|
+
parseOHLCV(ohlcv, market = undefined) {
|
|
789
|
+
// {
|
|
790
|
+
// "timestamp": 1664055240000,
|
|
791
|
+
// "open": "19612.65",
|
|
792
|
+
// "close": "19612.65",
|
|
793
|
+
// "high": "19612.65",
|
|
794
|
+
// "low": "19612.65",
|
|
795
|
+
// "volume": "0.00"
|
|
796
|
+
// }
|
|
797
|
+
return [
|
|
798
|
+
this.safeInteger(ohlcv, 'timestamp'),
|
|
799
|
+
this.safeNumber(ohlcv, 'open'),
|
|
800
|
+
this.safeNumber(ohlcv, 'high'),
|
|
801
|
+
this.safeNumber(ohlcv, 'low'),
|
|
802
|
+
this.safeNumber(ohlcv, 'close'),
|
|
803
|
+
this.safeNumber(ohlcv, 'volume'),
|
|
804
|
+
];
|
|
805
|
+
}
|
|
724
806
|
async fetchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
725
807
|
/**
|
|
726
808
|
* @method
|
|
@@ -1020,7 +1102,7 @@ class luno extends luno$1 {
|
|
|
1020
1102
|
if (Object.keys(query).length) {
|
|
1021
1103
|
url += '?' + this.urlencode(query);
|
|
1022
1104
|
}
|
|
1023
|
-
if (api === 'private') {
|
|
1105
|
+
if ((api === 'private') || (api === 'exchangePrivate')) {
|
|
1024
1106
|
this.checkRequiredCredentials();
|
|
1025
1107
|
const auth = this.stringToBase64(this.apiKey + ':' + this.secret);
|
|
1026
1108
|
headers = {
|
package/dist/cjs/src/mexc.js
CHANGED
|
@@ -136,8 +136,7 @@ class mexc extends mexc$1 {
|
|
|
136
136
|
},
|
|
137
137
|
'www': 'https://www.mexc.com/',
|
|
138
138
|
'doc': [
|
|
139
|
-
'https://mexcdevelop.github.io/apidocs/
|
|
140
|
-
'https://mexcdevelop.github.io/APIDoc/', // v1 & v2 : soon to be deprecated
|
|
139
|
+
'https://mexcdevelop.github.io/apidocs/',
|
|
141
140
|
],
|
|
142
141
|
'fees': [
|
|
143
142
|
'https://www.mexc.com/fee',
|
|
@@ -1325,7 +1324,8 @@ class mexc extends mexc$1 {
|
|
|
1325
1324
|
// ]
|
|
1326
1325
|
// }
|
|
1327
1326
|
//
|
|
1328
|
-
|
|
1327
|
+
const spotTimestamp = this.safeInteger(response, 'timestamp');
|
|
1328
|
+
orderbook = this.parseOrderBook(response, symbol, spotTimestamp);
|
|
1329
1329
|
orderbook['nonce'] = this.safeInteger(response, 'lastUpdateId');
|
|
1330
1330
|
}
|
|
1331
1331
|
else if (market['swap']) {
|
package/dist/cjs/src/oceanex.js
CHANGED
|
@@ -472,7 +472,7 @@ class oceanex extends oceanex$1 {
|
|
|
472
472
|
'market': market['id'],
|
|
473
473
|
};
|
|
474
474
|
if (limit !== undefined) {
|
|
475
|
-
request['limit'] = limit;
|
|
475
|
+
request['limit'] = Math.min(limit, 1000);
|
|
476
476
|
}
|
|
477
477
|
const response = await this.publicGetTrades(this.extend(request, params));
|
|
478
478
|
//
|