ccxt 4.2.17 → 4.2.19
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 +9 -9
- package/dist/ccxt.browser.js +48992 -47725
- package/dist/ccxt.browser.min.js +3 -3
- 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 +266 -27
- package/dist/cjs/src/bigone.js +434 -168
- package/dist/cjs/src/binance.js +163 -34
- package/dist/cjs/src/binanceus.js +8 -0
- package/dist/cjs/src/bingx.js +183 -41
- package/dist/cjs/src/bitfinex.js +2 -3
- package/dist/cjs/src/bitget.js +59 -16
- 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/bybit.js +27 -47
- 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 -1
- package/dist/cjs/src/deribit.js +17 -4
- package/dist/cjs/src/gate.js +151 -169
- 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 +131 -77
- 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 -11
- 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/coincheck.js +208 -0
- 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 +14 -2
- package/js/ccxt.js +10 -2
- package/js/src/abstract/bitpanda.d.ts +4 -4
- 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/ascendex.js +2 -0
- package/js/src/base/Exchange.d.ts +2 -3
- package/js/src/base/Exchange.js +5 -2
- package/js/src/binance.js +7 -1
- package/js/src/bingx.d.ts +1 -0
- package/js/src/bingx.js +26 -0
- package/js/src/bitget.js +22 -3
- 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/bybit.js +21 -47
- package/js/src/coincheck.js +1 -0
- package/js/src/deribit.js +16 -4
- package/js/src/gate.d.ts +1 -0
- package/js/src/gate.js +50 -110
- package/js/src/htx.js +3 -0
- package/js/src/kraken.d.ts +1 -0
- package/js/src/kraken.js +40 -39
- 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/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 +7 -2
- package/js/src/pro/bitget.js +1 -1
- package/js/src/pro/bitpanda.d.ts +2 -34
- package/js/src/pro/bitpanda.js +5 -1330
- package/js/src/pro/coincheck.d.ts +12 -0
- package/js/src/pro/coincheck.js +209 -0
- package/js/src/pro/kucoin.js +43 -35
- package/js/src/pro/kucoinfutures.js +45 -37
- 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/js/src/pro/poloniexfutures.js +43 -35
- package/js/src/whitebit.js +1 -0
- package/package.json +2 -2
- package/rollup.config.js +2 -0
- package/skip-tests.json +14 -2
- package/test-commonjs.cjs +25 -1
- package/dist/cjs/js/ccxt.js +0 -476
- 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 -5257
- 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 -9845
- 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 -3846
- 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 -7650
- 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 -843
- 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 -3306
- 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 -1054
- package/dist/cjs/js/src/pro/kucoinfutures.js +0 -981
- 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 -1014
- 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 -2309
- 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/coinone.js +0 -0
- /package/js/src/abstract/{bitpanda.js → onetrading.js} +0 -0
package/dist/cjs/src/bingx.js
CHANGED
|
@@ -22,7 +22,7 @@ class bingx extends bingx$1 {
|
|
|
22
22
|
'has': {
|
|
23
23
|
'CORS': undefined,
|
|
24
24
|
'spot': true,
|
|
25
|
-
'margin':
|
|
25
|
+
'margin': false,
|
|
26
26
|
'swap': true,
|
|
27
27
|
'future': false,
|
|
28
28
|
'option': false,
|
|
@@ -36,6 +36,12 @@ class bingx extends bingx$1 {
|
|
|
36
36
|
'createMarketSellOrderWithCost': true,
|
|
37
37
|
'createOrder': true,
|
|
38
38
|
'createOrders': true,
|
|
39
|
+
'createOrderWithTakeProfitAndStopLoss': true,
|
|
40
|
+
'createStopLossOrder': true,
|
|
41
|
+
'createTakeProfitOrder': true,
|
|
42
|
+
'createTrailingAmountOrder': true,
|
|
43
|
+
'createTrailingPercentOrder': true,
|
|
44
|
+
'createTriggerOrder': true,
|
|
39
45
|
'fetchBalance': true,
|
|
40
46
|
'fetchClosedOrders': true,
|
|
41
47
|
'fetchCurrencies': true,
|
|
@@ -45,6 +51,7 @@ class bingx extends bingx$1 {
|
|
|
45
51
|
'fetchDepositWithdrawFees': true,
|
|
46
52
|
'fetchFundingRate': true,
|
|
47
53
|
'fetchFundingRateHistory': true,
|
|
54
|
+
'fetchFundingRates': true,
|
|
48
55
|
'fetchLeverage': true,
|
|
49
56
|
'fetchLiquidations': false,
|
|
50
57
|
'fetchMarkets': true,
|
|
@@ -79,6 +86,9 @@ class bingx extends bingx$1 {
|
|
|
79
86
|
'account': 'https://open-api.{hostname}/openApi',
|
|
80
87
|
'copyTrading': 'https://open-api.{hostname}/openApi',
|
|
81
88
|
},
|
|
89
|
+
'test': {
|
|
90
|
+
'swap': 'https://open-api-vst.{hostname}/openApi', // only swap is really "test" but since the API keys are the same, we want to keep all the functionalities when the user enables the sandboxmode
|
|
91
|
+
},
|
|
82
92
|
'www': 'https://bingx.com/',
|
|
83
93
|
'doc': 'https://bingx-api.github.io/docs/',
|
|
84
94
|
'referral': 'https://bingx.com/invite/OHETOM',
|
|
@@ -117,6 +127,7 @@ class bingx extends bingx$1 {
|
|
|
117
127
|
'trade/query': 3,
|
|
118
128
|
'trade/openOrders': 3,
|
|
119
129
|
'trade/historyOrders': 3,
|
|
130
|
+
'trade/myTrades': 3,
|
|
120
131
|
'user/commissionRate': 3,
|
|
121
132
|
'account/balance': 3,
|
|
122
133
|
},
|
|
@@ -176,6 +187,7 @@ class bingx extends bingx$1 {
|
|
|
176
187
|
'user/positions': 3,
|
|
177
188
|
'user/income': 3,
|
|
178
189
|
'trade/openOrders': 3,
|
|
190
|
+
'trade/openOrder': 3,
|
|
179
191
|
'trade/order': 3,
|
|
180
192
|
'trade/marginType': 3,
|
|
181
193
|
'trade/leverage': 3,
|
|
@@ -353,6 +365,7 @@ class bingx extends bingx$1 {
|
|
|
353
365
|
'80016': errors.OrderNotFound,
|
|
354
366
|
'80017': errors.OrderNotFound,
|
|
355
367
|
'100414': errors.AccountSuspended,
|
|
368
|
+
'100419': errors.PermissionDenied,
|
|
356
369
|
'100437': errors.BadRequest, // {"code":100437,"msg":"The withdrawal amount is lower than the minimum limit, please re-enter.","timestamp":1689258588845}
|
|
357
370
|
},
|
|
358
371
|
'broad': {},
|
|
@@ -409,6 +422,10 @@ class bingx extends bingx$1 {
|
|
|
409
422
|
if (!this.checkRequiredCredentials(false)) {
|
|
410
423
|
return undefined;
|
|
411
424
|
}
|
|
425
|
+
const isSandbox = this.safeValue(this.options, 'sandboxMode', false);
|
|
426
|
+
if (isSandbox) {
|
|
427
|
+
return undefined;
|
|
428
|
+
}
|
|
412
429
|
const response = await this.walletsV1PrivateGetCapitalConfigGetall(params);
|
|
413
430
|
//
|
|
414
431
|
// {
|
|
@@ -648,7 +665,11 @@ class bingx extends bingx$1 {
|
|
|
648
665
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
649
666
|
* @returns {object[]} an array of objects representing market data
|
|
650
667
|
*/
|
|
651
|
-
const requests = [this.
|
|
668
|
+
const requests = [this.fetchSwapMarkets(params)];
|
|
669
|
+
const isSandbox = this.safeValue(this.options, 'sandboxMode', false);
|
|
670
|
+
if (!isSandbox) {
|
|
671
|
+
requests.push(this.fetchSpotMarkets(params)); // sandbox is swap only
|
|
672
|
+
}
|
|
652
673
|
const promises = await Promise.all(requests);
|
|
653
674
|
const spotMarkets = this.safeValue(promises, 0, []);
|
|
654
675
|
const swapMarkets = this.safeValue(promises, 1, []);
|
|
@@ -843,6 +864,22 @@ class bingx extends bingx$1 {
|
|
|
843
864
|
// "buyerMaker": false
|
|
844
865
|
// }
|
|
845
866
|
//
|
|
867
|
+
// spot
|
|
868
|
+
// fetchMyTrades
|
|
869
|
+
// {
|
|
870
|
+
// "symbol": "LTC-USDT",
|
|
871
|
+
// "id": 36237072,
|
|
872
|
+
// "orderId": 1674069326895775744,
|
|
873
|
+
// "price": "85.891",
|
|
874
|
+
// "qty": "0.0582",
|
|
875
|
+
// "quoteQty": "4.9988562000000005",
|
|
876
|
+
// "commission": -0.00005820000000000001,
|
|
877
|
+
// "commissionAsset": "LTC",
|
|
878
|
+
// "time": 1687964205000,
|
|
879
|
+
// "isBuyer": true,
|
|
880
|
+
// "isMaker": false
|
|
881
|
+
// }
|
|
882
|
+
//
|
|
846
883
|
// swap
|
|
847
884
|
// fetchTrades
|
|
848
885
|
//
|
|
@@ -905,7 +942,7 @@ class bingx extends bingx$1 {
|
|
|
905
942
|
}
|
|
906
943
|
const cost = this.safeString(trade, 'quoteQty');
|
|
907
944
|
const type = (cost === undefined) ? 'spot' : 'swap';
|
|
908
|
-
const currencyId = this.
|
|
945
|
+
const currencyId = this.safeStringN(trade, ['currency', 'N', 'commissionAsset']);
|
|
909
946
|
const currencyCode = this.safeCurrencyCode(currencyId);
|
|
910
947
|
const m = this.safeValue(trade, 'm');
|
|
911
948
|
const marketId = this.safeString(trade, 's');
|
|
@@ -921,6 +958,14 @@ class bingx extends bingx$1 {
|
|
|
921
958
|
takeOrMaker = 'taker';
|
|
922
959
|
}
|
|
923
960
|
}
|
|
961
|
+
const isBuyer = this.safeValue(trade, 'isBuyer');
|
|
962
|
+
if (isBuyer !== undefined) {
|
|
963
|
+
side = isBuyer ? 'buy' : 'sell';
|
|
964
|
+
}
|
|
965
|
+
const isMaker = this.safeValue(trade, 'isMaker');
|
|
966
|
+
if (isMaker !== undefined) {
|
|
967
|
+
takeOrMaker = isMaker ? 'maker' : 'taker';
|
|
968
|
+
}
|
|
924
969
|
return this.safeTrade({
|
|
925
970
|
'id': this.safeStringN(trade, ['id', 't']),
|
|
926
971
|
'info': trade,
|
|
@@ -1066,6 +1111,31 @@ class bingx extends bingx$1 {
|
|
|
1066
1111
|
const data = this.safeValue(response, 'data', {});
|
|
1067
1112
|
return this.parseFundingRate(data, market);
|
|
1068
1113
|
}
|
|
1114
|
+
async fetchFundingRates(symbols = undefined, params = {}) {
|
|
1115
|
+
/**
|
|
1116
|
+
* @method
|
|
1117
|
+
* @name bingx#fetchFundingRate
|
|
1118
|
+
* @description fetch the current funding rate
|
|
1119
|
+
* @see https://bingx-api.github.io/docs/#/swapV2/market-api.html#Current%20Funding%20Rate
|
|
1120
|
+
* @param {string[]} [symbols] list of unified market symbols
|
|
1121
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1122
|
+
* @returns {object} a [funding rate structure]{@link https://docs.ccxt.com/#/?id=funding-rate-structure}
|
|
1123
|
+
*/
|
|
1124
|
+
await this.loadMarkets();
|
|
1125
|
+
symbols = this.marketSymbols(symbols, 'swap', true);
|
|
1126
|
+
const response = await this.swapV2PublicGetQuotePremiumIndex(this.extend(params));
|
|
1127
|
+
const data = this.safeValue(response, 'data', []);
|
|
1128
|
+
const filteredResponse = [];
|
|
1129
|
+
for (let i = 0; i < data.length; i++) {
|
|
1130
|
+
const item = data[i];
|
|
1131
|
+
const marketId = this.safeString(item, 'symbol');
|
|
1132
|
+
const market = this.safeMarket(marketId, undefined, undefined, 'swap');
|
|
1133
|
+
if ((symbols === undefined) || this.inArray(market['symbol'], symbols)) {
|
|
1134
|
+
filteredResponse.push(this.parseFundingRate(item, market));
|
|
1135
|
+
}
|
|
1136
|
+
}
|
|
1137
|
+
return filteredResponse;
|
|
1138
|
+
}
|
|
1069
1139
|
parseFundingRate(contract, market = undefined) {
|
|
1070
1140
|
//
|
|
1071
1141
|
// {
|
|
@@ -2417,6 +2487,7 @@ class bingx extends bingx$1 {
|
|
|
2417
2487
|
'symbol': market['id'],
|
|
2418
2488
|
};
|
|
2419
2489
|
const clientOrderIds = this.safeValue(params, 'clientOrderIds');
|
|
2490
|
+
params = this.omit(params, 'clientOrderIds');
|
|
2420
2491
|
let idsToParse = ids;
|
|
2421
2492
|
const areClientOrderIds = (clientOrderIds !== undefined);
|
|
2422
2493
|
if (areClientOrderIds) {
|
|
@@ -2435,8 +2506,12 @@ class bingx extends bingx$1 {
|
|
|
2435
2506
|
response = await this.spotV1PrivatePostTradeCancelOrders(this.extend(request, params));
|
|
2436
2507
|
}
|
|
2437
2508
|
else {
|
|
2438
|
-
|
|
2439
|
-
|
|
2509
|
+
if (areClientOrderIds) {
|
|
2510
|
+
request['clientOrderIDList'] = this.json(parsedIds);
|
|
2511
|
+
}
|
|
2512
|
+
else {
|
|
2513
|
+
request['orderIdList'] = parsedIds;
|
|
2514
|
+
}
|
|
2440
2515
|
response = await this.swapV2PrivateDeleteTradeBatchOrders(this.extend(request, params));
|
|
2441
2516
|
}
|
|
2442
2517
|
//
|
|
@@ -3050,6 +3125,21 @@ class bingx extends bingx$1 {
|
|
|
3050
3125
|
// "txId": "0xb5ef8c13b968a406cc62a93a8bd80f9e9a906ef1b3fcf20a2e48573c17659268"
|
|
3051
3126
|
// }
|
|
3052
3127
|
//
|
|
3128
|
+
// withdraw
|
|
3129
|
+
//
|
|
3130
|
+
// {
|
|
3131
|
+
// "code":0,
|
|
3132
|
+
// "timestamp":1705274263621,
|
|
3133
|
+
// "data":{
|
|
3134
|
+
// "id":"1264246141278773252"
|
|
3135
|
+
// }
|
|
3136
|
+
// }
|
|
3137
|
+
//
|
|
3138
|
+
// parse withdraw-type output first...
|
|
3139
|
+
//
|
|
3140
|
+
const data = this.safeValue(transaction, 'data');
|
|
3141
|
+
const dataId = (data === undefined) ? undefined : this.safeString(data, 'id');
|
|
3142
|
+
const id = this.safeString(transaction, 'id', dataId);
|
|
3053
3143
|
const address = this.safeString(transaction, 'address');
|
|
3054
3144
|
const tag = this.safeString(transaction, 'addressTag');
|
|
3055
3145
|
let timestamp = this.safeInteger(transaction, 'insertTime');
|
|
@@ -3070,7 +3160,7 @@ class bingx extends bingx$1 {
|
|
|
3070
3160
|
const type = (rawType === '0') ? 'deposit' : 'withdrawal';
|
|
3071
3161
|
return {
|
|
3072
3162
|
'info': transaction,
|
|
3073
|
-
'id':
|
|
3163
|
+
'id': id,
|
|
3074
3164
|
'txid': this.safeString(transaction, 'txId'),
|
|
3075
3165
|
'type': type,
|
|
3076
3166
|
'currency': code,
|
|
@@ -3250,57 +3340,101 @@ class bingx extends bingx$1 {
|
|
|
3250
3340
|
* @method
|
|
3251
3341
|
* @name bingx#fetchMyTrades
|
|
3252
3342
|
* @description fetch all trades made by the user
|
|
3343
|
+
* @see https://bingx-api.github.io/docs/#/en-us/spot/trade-api.html#Query%20Order%20History
|
|
3253
3344
|
* @see https://bingx-api.github.io/docs/#/swapV2/trade-api.html#Query%20historical%20transaction%20orders
|
|
3254
3345
|
* @param {string} [symbol] unified market symbol
|
|
3255
3346
|
* @param {int} [since] the earliest time in ms to fetch trades for
|
|
3256
3347
|
* @param {int} [limit] the maximum number of trades structures to retrieve
|
|
3257
3348
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
3349
|
+
* @param {int} [params.until] timestamp in ms for the ending date filter, default is undefined
|
|
3258
3350
|
* @param {string} params.trandingUnit COIN (directly represent assets such as BTC and ETH) or CONT (represents the number of contract sheets)
|
|
3259
3351
|
* @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
|
|
3260
3352
|
*/
|
|
3261
3353
|
if (symbol === undefined) {
|
|
3262
3354
|
throw new errors.ArgumentsRequired(this.id + ' fetchMyTrades() requires a symbol argument');
|
|
3263
3355
|
}
|
|
3264
|
-
if (since === undefined) {
|
|
3265
|
-
throw new errors.ArgumentsRequired(this.id + ' fetchMyTrades() requires a since argument');
|
|
3266
|
-
}
|
|
3267
|
-
const tradingUnit = this.safeStringUpper(params, 'tradingUnit', 'CONT');
|
|
3268
3356
|
await this.loadMarkets();
|
|
3269
3357
|
const market = this.market(symbol);
|
|
3270
|
-
|
|
3271
|
-
|
|
3272
|
-
}
|
|
3358
|
+
const now = this.milliseconds();
|
|
3359
|
+
let response = undefined;
|
|
3273
3360
|
const request = {
|
|
3274
3361
|
'symbol': market['id'],
|
|
3275
|
-
'tradingUnit': tradingUnit,
|
|
3276
|
-
'startTs': since,
|
|
3277
|
-
'endTs': this.nonce(),
|
|
3278
3362
|
};
|
|
3279
|
-
|
|
3280
|
-
|
|
3281
|
-
|
|
3282
|
-
|
|
3283
|
-
|
|
3284
|
-
|
|
3285
|
-
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3296
|
-
|
|
3297
|
-
|
|
3298
|
-
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
|
|
3303
|
-
|
|
3363
|
+
if (since !== undefined) {
|
|
3364
|
+
const startTimeReq = market['spot'] ? 'startTime' : 'startTs';
|
|
3365
|
+
request[startTimeReq] = since;
|
|
3366
|
+
}
|
|
3367
|
+
else if (market['swap']) {
|
|
3368
|
+
request['startTs'] = now - 7776000000; // 90 days
|
|
3369
|
+
}
|
|
3370
|
+
const until = this.safeInteger(params, 'until');
|
|
3371
|
+
params = this.omit(params, 'until');
|
|
3372
|
+
if (until !== undefined) {
|
|
3373
|
+
const endTimeReq = market['spot'] ? 'endTime' : 'endTs';
|
|
3374
|
+
request[endTimeReq] = until;
|
|
3375
|
+
}
|
|
3376
|
+
else if (market['swap']) {
|
|
3377
|
+
request['endTs'] = now;
|
|
3378
|
+
}
|
|
3379
|
+
let fills = undefined;
|
|
3380
|
+
if (market['spot']) {
|
|
3381
|
+
response = await this.spotV1PrivateGetTradeMyTrades(this.extend(request, params));
|
|
3382
|
+
const data = this.safeValue(response, 'data', []);
|
|
3383
|
+
fills = this.safeValue(data, 'fills', []);
|
|
3384
|
+
//
|
|
3385
|
+
// {
|
|
3386
|
+
// "code": 0,
|
|
3387
|
+
// "msg": "",
|
|
3388
|
+
// "debugMsg": "",
|
|
3389
|
+
// "data": {
|
|
3390
|
+
// "fills": [
|
|
3391
|
+
// {
|
|
3392
|
+
// "symbol": "LTC-USDT",
|
|
3393
|
+
// "id": 36237072,
|
|
3394
|
+
// "orderId": 1674069326895775744,
|
|
3395
|
+
// "price": "85.891",
|
|
3396
|
+
// "qty": "0.0582",
|
|
3397
|
+
// "quoteQty": "4.9988562000000005",
|
|
3398
|
+
// "commission": -0.00005820000000000001,
|
|
3399
|
+
// "commissionAsset": "LTC",
|
|
3400
|
+
// "time": 1687964205000,
|
|
3401
|
+
// "isBuyer": true,
|
|
3402
|
+
// "isMaker": false
|
|
3403
|
+
// }
|
|
3404
|
+
// ]
|
|
3405
|
+
// }
|
|
3406
|
+
// }
|
|
3407
|
+
//
|
|
3408
|
+
}
|
|
3409
|
+
else {
|
|
3410
|
+
const tradingUnit = this.safeStringUpper(params, 'tradingUnit', 'CONT');
|
|
3411
|
+
params = this.omit(params, 'tradingUnit');
|
|
3412
|
+
request['tradingUnit'] = tradingUnit;
|
|
3413
|
+
response = await this.swapV2PrivateGetTradeAllFillOrders(this.extend(request, params));
|
|
3414
|
+
const data = this.safeValue(response, 'data', []);
|
|
3415
|
+
fills = this.safeValue(data, 'fill_orders', []);
|
|
3416
|
+
//
|
|
3417
|
+
// {
|
|
3418
|
+
// "code": "0",
|
|
3419
|
+
// "msg": '',
|
|
3420
|
+
// "data": { fill_orders: [
|
|
3421
|
+
// {
|
|
3422
|
+
// "volume": "0.1",
|
|
3423
|
+
// "price": "106.75",
|
|
3424
|
+
// "amount": "10.6750",
|
|
3425
|
+
// "commission": "-0.0053",
|
|
3426
|
+
// "currency": "USDT",
|
|
3427
|
+
// "orderId": "1676213270274379776",
|
|
3428
|
+
// "liquidatedPrice": "0.00",
|
|
3429
|
+
// "liquidatedMarginRatio": "0.00",
|
|
3430
|
+
// "filledTime": "2023-07-04T20:56:01.000+0800"
|
|
3431
|
+
// }
|
|
3432
|
+
// ]
|
|
3433
|
+
// }
|
|
3434
|
+
// }
|
|
3435
|
+
//
|
|
3436
|
+
}
|
|
3437
|
+
return this.parseTrades(fills, market, since, limit, params);
|
|
3304
3438
|
}
|
|
3305
3439
|
parseDepositWithdrawFee(fee, currency = undefined) {
|
|
3306
3440
|
//
|
|
@@ -3660,6 +3794,10 @@ class bingx extends bingx$1 {
|
|
|
3660
3794
|
const type = section[0];
|
|
3661
3795
|
const version = section[1];
|
|
3662
3796
|
const access = section[2];
|
|
3797
|
+
const isSandbox = this.safeValue(this.options, 'sandboxMode', false);
|
|
3798
|
+
if (isSandbox && (type !== 'swap')) {
|
|
3799
|
+
throw new errors.NotSupported(this.id + ' does not have a testnet/sandbox URL for ' + type + ' endpoints');
|
|
3800
|
+
}
|
|
3663
3801
|
let url = this.implodeHostname(this.urls['api'][type]);
|
|
3664
3802
|
if (type === 'spot' && version === 'v3') {
|
|
3665
3803
|
url += '/api';
|
|
@@ -3702,6 +3840,10 @@ class bingx extends bingx$1 {
|
|
|
3702
3840
|
nonce() {
|
|
3703
3841
|
return this.milliseconds();
|
|
3704
3842
|
}
|
|
3843
|
+
setSandboxMode(enable) {
|
|
3844
|
+
super.setSandboxMode(enable);
|
|
3845
|
+
this.options['sandboxMode'] = enable;
|
|
3846
|
+
}
|
|
3705
3847
|
handleErrors(httpCode, reason, url, method, headers, body, response, requestHeaders, requestBody) {
|
|
3706
3848
|
if (response === undefined) {
|
|
3707
3849
|
return undefined; // fallback to default error handler
|
package/dist/cjs/src/bitfinex.js
CHANGED
|
@@ -789,12 +789,11 @@ class bitfinex extends bitfinex$1 {
|
|
|
789
789
|
// "message": "0.0001 Bitcoin transfered from Margin to Exchange"
|
|
790
790
|
// }
|
|
791
791
|
//
|
|
792
|
-
const timestamp = this.milliseconds();
|
|
793
792
|
return {
|
|
794
793
|
'info': transfer,
|
|
795
794
|
'id': undefined,
|
|
796
|
-
'timestamp':
|
|
797
|
-
'datetime':
|
|
795
|
+
'timestamp': undefined,
|
|
796
|
+
'datetime': undefined,
|
|
798
797
|
'currency': this.safeCurrencyCode(undefined, currency),
|
|
799
798
|
'amount': undefined,
|
|
800
799
|
'fromAccount': undefined,
|
package/dist/cjs/src/bitget.js
CHANGED
|
@@ -42,7 +42,12 @@ class bitget extends bitget$1 {
|
|
|
42
42
|
'createMarketSellOrderWithCost': false,
|
|
43
43
|
'createOrder': true,
|
|
44
44
|
'createOrders': true,
|
|
45
|
+
'createOrderWithTakeProfitAndStopLoss': true,
|
|
45
46
|
'createReduceOnlyOrder': false,
|
|
47
|
+
'createStopLossOrder': true,
|
|
48
|
+
'createTakeProfitOrder': true,
|
|
49
|
+
'createTrailingPercentOrder': true,
|
|
50
|
+
'createTriggerOrder': true,
|
|
46
51
|
'editOrder': true,
|
|
47
52
|
'fetchAccounts': false,
|
|
48
53
|
'fetchBalance': true,
|
|
@@ -2956,7 +2961,12 @@ class bitget extends bitget$1 {
|
|
|
2956
2961
|
'symbol': market['id'],
|
|
2957
2962
|
};
|
|
2958
2963
|
if (limit !== undefined) {
|
|
2959
|
-
|
|
2964
|
+
if (market['contract']) {
|
|
2965
|
+
request['limit'] = Math.min(limit, 1000);
|
|
2966
|
+
}
|
|
2967
|
+
else {
|
|
2968
|
+
request['limit'] = limit;
|
|
2969
|
+
}
|
|
2960
2970
|
}
|
|
2961
2971
|
const options = this.safeValue(this.options, 'fetchTrades', {});
|
|
2962
2972
|
let response = undefined;
|
|
@@ -3268,31 +3278,45 @@ class bitget extends bitget$1 {
|
|
|
3268
3278
|
const marketType = market['spot'] ? 'spot' : 'swap';
|
|
3269
3279
|
const timeframes = this.options['timeframes'][marketType];
|
|
3270
3280
|
const selectedTimeframe = this.safeString(timeframes, timeframe, timeframe);
|
|
3271
|
-
|
|
3281
|
+
const request = {
|
|
3272
3282
|
'symbol': market['id'],
|
|
3273
3283
|
'granularity': selectedTimeframe,
|
|
3274
3284
|
};
|
|
3275
|
-
|
|
3276
|
-
|
|
3277
|
-
request['startTime'] = limit;
|
|
3278
|
-
}
|
|
3285
|
+
const until = this.safeInteger2(params, 'until', 'till');
|
|
3286
|
+
params = this.omit(params, ['until', 'till']);
|
|
3279
3287
|
if (limit !== undefined) {
|
|
3280
3288
|
request['limit'] = limit;
|
|
3281
3289
|
}
|
|
3282
3290
|
const options = this.safeValue(this.options, 'fetchOHLCV', {});
|
|
3291
|
+
const spotOptions = this.safeValue(options, 'spot', {});
|
|
3292
|
+
const defaultSpotMethod = this.safeString(spotOptions, 'method', 'publicSpotGetV2SpotMarketCandles');
|
|
3293
|
+
const method = this.safeString(params, 'method', defaultSpotMethod);
|
|
3294
|
+
params = this.omit(params, 'method');
|
|
3295
|
+
if (method !== 'publicSpotGetV2SpotMarketHistoryCandles') {
|
|
3296
|
+
if (since !== undefined) {
|
|
3297
|
+
request['startTime'] = since;
|
|
3298
|
+
}
|
|
3299
|
+
if (until !== undefined) {
|
|
3300
|
+
request['endTime'] = until;
|
|
3301
|
+
}
|
|
3302
|
+
}
|
|
3283
3303
|
let response = undefined;
|
|
3284
3304
|
if (market['spot']) {
|
|
3285
|
-
const spotOptions = this.safeValue(options, 'spot', {});
|
|
3286
|
-
const defaultSpotMethod = this.safeString(spotOptions, 'method', 'publicSpotGetV2SpotMarketCandles');
|
|
3287
|
-
const method = this.safeString(params, 'method', defaultSpotMethod);
|
|
3288
|
-
params = this.omit(params, 'method');
|
|
3289
3305
|
if (method === 'publicSpotGetV2SpotMarketCandles') {
|
|
3290
3306
|
response = await this.publicSpotGetV2SpotMarketCandles(this.extend(request, params));
|
|
3291
3307
|
}
|
|
3292
3308
|
else if (method === 'publicSpotGetV2SpotMarketHistoryCandles') {
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3309
|
+
if (since !== undefined) {
|
|
3310
|
+
if (limit === undefined) {
|
|
3311
|
+
limit = 100; // exchange default
|
|
3312
|
+
}
|
|
3313
|
+
const duration = this.parseTimeframe(timeframe) * 1000;
|
|
3314
|
+
request['endTime'] = this.sum(since, duration * limit);
|
|
3315
|
+
}
|
|
3316
|
+
else if (until !== undefined) {
|
|
3317
|
+
request['endTime'] = until;
|
|
3318
|
+
}
|
|
3319
|
+
else {
|
|
3296
3320
|
request['endTime'] = this.milliseconds();
|
|
3297
3321
|
}
|
|
3298
3322
|
response = await this.publicSpotGetV2SpotMarketHistoryCandles(this.extend(request, params));
|
|
@@ -6200,6 +6224,7 @@ class bitget extends bitget$1 {
|
|
|
6200
6224
|
* @see https://www.bitget.com/api-doc/contract/position/Get-History-Position
|
|
6201
6225
|
* @param {string[]|undefined} symbols list of unified market symbols
|
|
6202
6226
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
6227
|
+
* @param {string} [params.marginCoin] the settle currency of the positions, needs to match the productType
|
|
6203
6228
|
* @param {string} [params.productType] 'USDT-FUTURES', 'USDC-FUTURES', 'COIN-FUTURES', 'SUSDT-FUTURES', 'SUSDC-FUTURES' or 'SCOIN-FUTURES'
|
|
6204
6229
|
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
6205
6230
|
* @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
|
|
@@ -6232,10 +6257,28 @@ class bitget extends bitget$1 {
|
|
|
6232
6257
|
let response = undefined;
|
|
6233
6258
|
let isHistory = false;
|
|
6234
6259
|
if (method === 'privateMixGetV2MixPositionAllPosition') {
|
|
6235
|
-
|
|
6236
|
-
|
|
6260
|
+
let marginCoin = this.safeString(params, 'marginCoin', 'USDT');
|
|
6261
|
+
if (symbols !== undefined) {
|
|
6262
|
+
marginCoin = market['settleId'];
|
|
6237
6263
|
}
|
|
6238
|
-
|
|
6264
|
+
else if (productType === 'USDT-FUTURES') {
|
|
6265
|
+
marginCoin = 'USDT';
|
|
6266
|
+
}
|
|
6267
|
+
else if (productType === 'USDC-FUTURES') {
|
|
6268
|
+
marginCoin = 'USDC';
|
|
6269
|
+
}
|
|
6270
|
+
else if (productType === 'SUSDT-FUTURES') {
|
|
6271
|
+
marginCoin = 'SUSDT';
|
|
6272
|
+
}
|
|
6273
|
+
else if (productType === 'SUSDC-FUTURES') {
|
|
6274
|
+
marginCoin = 'SUSDC';
|
|
6275
|
+
}
|
|
6276
|
+
else if ((productType === 'SCOIN-FUTURES') || (productType === 'COIN-FUTURES')) {
|
|
6277
|
+
if (marginCoin === undefined) {
|
|
6278
|
+
throw new errors.ArgumentsRequired(this.id + ' fetchPositions() requires a marginCoin parameter that matches the productType');
|
|
6279
|
+
}
|
|
6280
|
+
}
|
|
6281
|
+
request['marginCoin'] = marginCoin;
|
|
6239
6282
|
response = await this.privateMixGetV2MixPositionAllPosition(this.extend(request, params));
|
|
6240
6283
|
}
|
|
6241
6284
|
else {
|
package/dist/cjs/src/bitmart.js
CHANGED
|
@@ -44,6 +44,7 @@ class bitmart extends bitmart$1 {
|
|
|
44
44
|
'createStopLimitOrder': false,
|
|
45
45
|
'createStopMarketOrder': false,
|
|
46
46
|
'createStopOrder': false,
|
|
47
|
+
'createTrailingPercentOrder': true,
|
|
47
48
|
'fetchBalance': true,
|
|
48
49
|
'fetchBorrowInterest': true,
|
|
49
50
|
'fetchBorrowRateHistories': false,
|
|
@@ -262,8 +263,8 @@ class bitmart extends bitmart$1 {
|
|
|
262
263
|
'trading': {
|
|
263
264
|
'tierBased': true,
|
|
264
265
|
'percentage': true,
|
|
265
|
-
'taker': this.parseNumber('0.
|
|
266
|
-
'maker': this.parseNumber('0.
|
|
266
|
+
'taker': this.parseNumber('0.0040'),
|
|
267
|
+
'maker': this.parseNumber('0.0035'),
|
|
267
268
|
'tiers': {
|
|
268
269
|
'taker': [
|
|
269
270
|
[this.parseNumber('0'), this.parseNumber('0.0020')],
|
|
@@ -3512,14 +3513,13 @@ class bitmart extends bitmart$1 {
|
|
|
3512
3513
|
// "repay_id": "2afcc16d99bd4707818c5a355dc89bed",
|
|
3513
3514
|
// }
|
|
3514
3515
|
//
|
|
3515
|
-
const timestamp = this.milliseconds();
|
|
3516
3516
|
return {
|
|
3517
3517
|
'id': this.safeString2(info, 'borrow_id', 'repay_id'),
|
|
3518
3518
|
'currency': this.safeCurrencyCode(undefined, currency),
|
|
3519
3519
|
'amount': undefined,
|
|
3520
3520
|
'symbol': undefined,
|
|
3521
|
-
'timestamp':
|
|
3522
|
-
'datetime':
|
|
3521
|
+
'timestamp': undefined,
|
|
3522
|
+
'datetime': undefined,
|
|
3523
3523
|
'info': info,
|
|
3524
3524
|
};
|
|
3525
3525
|
}
|
package/dist/cjs/src/bitmex.js
CHANGED
|
@@ -42,6 +42,7 @@ class bitmex extends bitmex$1 {
|
|
|
42
42
|
'closePosition': true,
|
|
43
43
|
'createOrder': true,
|
|
44
44
|
'createReduceOnlyOrder': true,
|
|
45
|
+
'createTrailingAmountOrder': true,
|
|
45
46
|
'editOrder': true,
|
|
46
47
|
'fetchBalance': true,
|
|
47
48
|
'fetchClosedOrders': true,
|
|
@@ -1499,8 +1500,8 @@ class bitmex extends bitmex$1 {
|
|
|
1499
1500
|
if (fetchOHLCVOpenTimestamp) {
|
|
1500
1501
|
timestamp = this.sum(timestamp, duration);
|
|
1501
1502
|
}
|
|
1502
|
-
const
|
|
1503
|
-
request['startTime'] =
|
|
1503
|
+
const startTime = this.iso8601(timestamp);
|
|
1504
|
+
request['startTime'] = startTime; // starting date filter for results
|
|
1504
1505
|
}
|
|
1505
1506
|
else {
|
|
1506
1507
|
request['reverse'] = true;
|
|
@@ -2610,12 +2611,9 @@ class bitmex extends bitmex$1 {
|
|
|
2610
2611
|
throw new errors.ArgumentsRequired(this.id + ' fetchDepositAddress requires params["network"]');
|
|
2611
2612
|
}
|
|
2612
2613
|
const currency = this.currency(code);
|
|
2613
|
-
let currencyId = currency['id'];
|
|
2614
|
-
const idLength = currencyId.length;
|
|
2615
|
-
currencyId = currencyId.slice(0, idLength - 1) + currencyId.slice(idLength - 1, idLength).toLowerCase(); // make the last letter lowercase
|
|
2616
2614
|
params = this.omit(params, 'network');
|
|
2617
2615
|
const request = {
|
|
2618
|
-
'currency':
|
|
2616
|
+
'currency': currency['id'],
|
|
2619
2617
|
'network': this.networkCodeToId(networkCode, currency['code']),
|
|
2620
2618
|
};
|
|
2621
2619
|
const response = await this.privateGetUserDepositAddress(this.extend(request, params));
|