ccxt 4.5.82 → 4.5.83
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 +5 -4
- package/dist/ccxt.browser.min.js +2 -2
- package/dist/cjs/ccxt.js +3 -1
- package/dist/cjs/src/abstract/prediction/sxbet.js +11 -0
- package/dist/cjs/src/apex.js +1 -0
- package/dist/cjs/src/aster.js +2 -2
- package/dist/cjs/src/base/Exchange.js +1 -1
- package/dist/cjs/src/bigone.js +2 -2
- package/dist/cjs/src/binance.js +10 -10
- package/dist/cjs/src/bingx.js +3 -3
- package/dist/cjs/src/bit2c.js +4 -4
- package/dist/cjs/src/bitbank.js +15 -15
- package/dist/cjs/src/bitfinex.js +15 -15
- package/dist/cjs/src/bitget.js +109 -73
- package/dist/cjs/src/bitmex.js +7 -7
- package/dist/cjs/src/bitopro.js +2 -2
- package/dist/cjs/src/bitrue.js +6 -6
- package/dist/cjs/src/bitso.js +18 -18
- package/dist/cjs/src/bitstamp.js +5 -5
- package/dist/cjs/src/bitteam.js +32 -32
- package/dist/cjs/src/bittrade.js +10 -10
- package/dist/cjs/src/bitvavo.js +9 -9
- package/dist/cjs/src/blockchaincom.js +2 -2
- package/dist/cjs/src/btcbox.js +2 -2
- package/dist/cjs/src/btcmarkets.js +2 -2
- package/dist/cjs/src/btcturk.js +2 -2
- package/dist/cjs/src/btse.js +2 -2
- package/dist/cjs/src/bybitid.js +4 -0
- package/dist/cjs/src/coinbase.js +1 -1
- package/dist/cjs/src/coinbaseexchange.js +13 -13
- package/dist/cjs/src/coincheck.js +4 -4
- package/dist/cjs/src/coinex.js +10 -10
- package/dist/cjs/src/coinmate.js +4 -4
- package/dist/cjs/src/coinone.js +4 -4
- package/dist/cjs/src/coinsph.js +5 -5
- package/dist/cjs/src/cryptocom.js +5 -5
- package/dist/cjs/src/deribit.js +31 -31
- package/dist/cjs/src/derive.js +1 -1
- package/dist/cjs/src/digifinex.js +31 -31
- package/dist/cjs/src/gate.js +25 -25
- package/dist/cjs/src/gemini.js +5 -5
- package/dist/cjs/src/grvt.js +1 -1
- package/dist/cjs/src/hibachi.js +5 -5
- package/dist/cjs/src/hitbtc.js +15 -15
- package/dist/cjs/src/hollaex.js +15 -15
- package/dist/cjs/src/htx.js +52 -52
- package/dist/cjs/src/hyperliquid.js +2 -2
- package/dist/cjs/src/independentreserve.js +2 -2
- package/dist/cjs/src/indodax.js +8 -8
- package/dist/cjs/src/kraken.js +29 -29
- package/dist/cjs/src/krakenfutures.js +16 -16
- package/dist/cjs/src/kucoin.js +15 -15
- package/dist/cjs/src/latoken.js +8 -8
- package/dist/cjs/src/lbank.js +31 -31
- package/dist/cjs/src/lighter.js +2 -2
- package/dist/cjs/src/luno.js +2 -2
- package/dist/cjs/src/mercado.js +12 -12
- package/dist/cjs/src/mexc.js +27 -27
- package/dist/cjs/src/modetrade.js +10 -10
- package/dist/cjs/src/ndax.js +4 -4
- package/dist/cjs/src/okx.js +19 -20
- package/dist/cjs/src/onetrading.js +7 -7
- package/dist/cjs/src/p2b.js +8 -8
- package/dist/cjs/src/pacifica.js +9 -3
- package/dist/cjs/src/paymium.js +2 -2
- package/dist/cjs/src/phemex.js +37 -37
- package/dist/cjs/src/poloniex.js +14 -14
- package/dist/cjs/src/prediction/sxbet.js +2710 -0
- package/dist/cjs/src/pro/alpaca.js +5 -5
- package/dist/cjs/src/pro/apex.js +6 -6
- package/dist/cjs/src/pro/aster.js +8 -8
- package/dist/cjs/src/pro/backpack.js +1 -1
- package/dist/cjs/src/pro/binance.js +26 -26
- package/dist/cjs/src/pro/bingx.js +11 -11
- package/dist/cjs/src/pro/bitfinex.js +11 -11
- package/dist/cjs/src/pro/bitget.js +20 -20
- package/dist/cjs/src/pro/bithumb.js +1 -1
- package/dist/cjs/src/pro/bitmex.js +12 -12
- package/dist/cjs/src/pro/bitopro.js +5 -5
- package/dist/cjs/src/pro/bitrue.js +7 -7
- package/dist/cjs/src/pro/bitstamp.js +5 -5
- package/dist/cjs/src/pro/bittrade.js +11 -11
- package/dist/cjs/src/pro/bitvavo.js +16 -16
- package/dist/cjs/src/pro/blockchaincom.js +5 -5
- package/dist/cjs/src/pro/blofin.js +2 -2
- package/dist/cjs/src/pro/bybit.js +21 -21
- package/dist/cjs/src/pro/bydfi.js +2 -2
- package/dist/cjs/src/pro/cex.js +19 -19
- package/dist/cjs/src/pro/coinbase.js +2 -2
- package/dist/cjs/src/pro/coinbaseexchange.js +9 -9
- package/dist/cjs/src/pro/coinbaseinternational.js +2 -2
- package/dist/cjs/src/pro/coincheck.js +2 -2
- package/dist/cjs/src/pro/coinex.js +3 -3
- package/dist/cjs/src/pro/coinone.js +6 -6
- package/dist/cjs/src/pro/cryptocom.js +10 -10
- package/dist/cjs/src/pro/deribit.js +13 -13
- package/dist/cjs/src/pro/derive.js +4 -4
- package/dist/cjs/src/pro/dydx.js +1 -1
- package/dist/cjs/src/pro/extended.js +16 -10
- package/dist/cjs/src/pro/gate.js +10 -10
- package/dist/cjs/src/pro/gemini.js +3 -3
- package/dist/cjs/src/pro/grvt.js +2 -2
- package/dist/cjs/src/pro/hashkey.js +2 -2
- package/dist/cjs/src/pro/hitbtc.js +6 -6
- package/dist/cjs/src/pro/hollaex.js +3 -3
- package/dist/cjs/src/pro/htx.js +28 -28
- package/dist/cjs/src/pro/hyperliquid.js +1 -1
- package/dist/cjs/src/pro/independentreserve.js +2 -2
- package/dist/cjs/src/pro/kraken.js +7 -7
- package/dist/cjs/src/pro/krakenfutures.js +12 -12
- package/dist/cjs/src/pro/kucoin.js +12 -12
- package/dist/cjs/src/pro/lbank.js +16 -16
- package/dist/cjs/src/pro/luno.js +2 -2
- package/dist/cjs/src/pro/mexc.js +8 -8
- package/dist/cjs/src/pro/modetrade.js +3 -3
- package/dist/cjs/src/pro/mudrex.js +2 -2
- package/dist/cjs/src/pro/nado.js +3 -3
- package/dist/cjs/src/pro/ndax.js +6 -6
- package/dist/cjs/src/pro/okx.js +20 -20
- package/dist/cjs/src/pro/onetrading.js +14 -14
- package/dist/cjs/src/pro/p2b.js +5 -5
- package/dist/cjs/src/pro/pacifica.js +1 -1
- package/dist/cjs/src/pro/paradex.js +1 -1
- package/dist/cjs/src/pro/phemex.js +13 -13
- package/dist/cjs/src/pro/poloniex.js +17 -17
- package/dist/cjs/src/pro/toobit.js +2 -2
- package/dist/cjs/src/pro/upbit.js +4 -4
- package/dist/cjs/src/pro/weex.js +2 -2
- package/dist/cjs/src/pro/whitebit.js +12 -12
- package/dist/cjs/src/pro/woo.js +13 -13
- package/dist/cjs/src/pro/woofipro.js +3 -3
- package/dist/cjs/src/pro/xt.js +3 -3
- package/dist/cjs/src/tokocrypto.js +20 -20
- package/dist/cjs/src/upbit.js +12 -12
- package/dist/cjs/src/whitebit.js +15 -15
- package/dist/cjs/src/woo.js +3 -3
- package/dist/cjs/src/woofipro.js +14 -14
- package/dist/cjs/src/zaif.js +9 -3
- package/dist/cjs/src/zebpay.js +1 -1
- package/js/ccxt.d.ts +4 -1
- package/js/ccxt.js +3 -1
- package/js/src/abstract/prediction/sxbet.d.ts +41 -0
- package/js/src/abstract/prediction/sxbet.js +11 -0
- package/js/src/alpaca.d.ts +28 -33
- package/js/src/apex.d.ts +28 -42
- package/js/src/apex.js +1 -0
- package/js/src/aster.d.ts +58 -108
- package/js/src/aster.js +2 -2
- package/js/src/backpack.d.ts +34 -48
- package/js/src/base/Exchange.d.ts +304 -320
- package/js/src/base/Exchange.js +1 -1
- package/js/src/bigone.d.ts +24 -29
- package/js/src/bigone.js +2 -2
- package/js/src/binance.d.ts +112 -138
- package/js/src/binance.js +10 -10
- package/js/src/binancecoinm.d.ts +3 -2
- package/js/src/binanceusdm.d.ts +3 -2
- package/js/src/bingx.d.ts +65 -84
- package/js/src/bingx.js +3 -3
- package/js/src/bit2c.d.ts +13 -18
- package/js/src/bit2c.js +4 -4
- package/js/src/bitbank.d.ts +16 -21
- package/js/src/bitbank.js +15 -15
- package/js/src/bitbns.d.ts +15 -20
- package/js/src/bitfinex.d.ts +46 -51
- package/js/src/bitfinex.js +15 -15
- package/js/src/bitflyer.d.ts +20 -25
- package/js/src/bitget.d.ts +105 -93
- package/js/src/bitget.js +109 -73
- package/js/src/bithumb.d.ts +26 -31
- package/js/src/bitmex.d.ts +48 -65
- package/js/src/bitmex.js +7 -7
- package/js/src/bitopro.d.ts +25 -41
- package/js/src/bitopro.js +2 -2
- package/js/src/bitrue.d.ts +30 -45
- package/js/src/bitrue.js +6 -6
- package/js/src/bitso.d.ts +24 -29
- package/js/src/bitso.js +18 -18
- package/js/src/bitstamp.d.ts +36 -47
- package/js/src/bitstamp.js +5 -5
- package/js/src/bitteam.d.ts +22 -27
- package/js/src/bitteam.js +32 -32
- package/js/src/bittrade.d.ts +35 -46
- package/js/src/bittrade.js +10 -10
- package/js/src/bitvavo.d.ts +43 -48
- package/js/src/bitvavo.js +9 -9
- package/js/src/blockchaincom.d.ts +26 -31
- package/js/src/blockchaincom.js +2 -2
- package/js/src/blofin.d.ts +38 -43
- package/js/src/btcbox.d.ts +14 -19
- package/js/src/btcbox.js +2 -2
- package/js/src/btcmarkets.d.ts +25 -30
- package/js/src/btcmarkets.js +2 -2
- package/js/src/btcturk.d.ts +13 -18
- package/js/src/btcturk.js +2 -2
- package/js/src/btse.d.ts +44 -50
- package/js/src/btse.js +2 -2
- package/js/src/bullish.d.ts +35 -57
- package/js/src/bybit.d.ts +95 -106
- package/js/src/bybitid.js +4 -0
- package/js/src/bydfi.d.ts +37 -48
- package/js/src/cex.d.ts +29 -34
- package/js/src/coinbase.d.ts +66 -82
- package/js/src/coinbase.js +1 -1
- package/js/src/coinbaseexchange.d.ts +33 -43
- package/js/src/coinbaseexchange.js +13 -13
- package/js/src/coinbaseinternational.d.ts +34 -73
- package/js/src/coincheck.d.ts +13 -18
- package/js/src/coincheck.js +4 -4
- package/js/src/coinex.d.ts +63 -68
- package/js/src/coinex.js +10 -10
- package/js/src/coinmate.d.ts +15 -20
- package/js/src/coinmate.js +4 -4
- package/js/src/coinone.d.ts +14 -19
- package/js/src/coinone.js +4 -4
- package/js/src/coinsph.d.ts +32 -37
- package/js/src/coinsph.js +5 -5
- package/js/src/coinspot.d.ts +10 -15
- package/js/src/cryptocom.d.ts +48 -64
- package/js/src/cryptocom.js +5 -5
- package/js/src/cryptomus.d.ts +15 -23
- package/js/src/deepcoin.d.ts +43 -48
- package/js/src/delta.d.ts +43 -54
- package/js/src/deribit.d.ts +48 -69
- package/js/src/deribit.js +31 -31
- package/js/src/derive.d.ts +28 -42
- package/js/src/derive.js +1 -1
- package/js/src/digifinex.d.ts +54 -67
- package/js/src/digifinex.js +31 -31
- package/js/src/dydx.d.ts +26 -31
- package/js/src/extended.d.ts +51 -56
- package/js/src/foxbit.d.ts +34 -64
- package/js/src/gate.d.ts +94 -162
- package/js/src/gate.js +25 -25
- package/js/src/gemini.d.ts +33 -43
- package/js/src/gemini.js +5 -5
- package/js/src/grvt.d.ts +36 -47
- package/js/src/grvt.js +1 -1
- package/js/src/hashkey.d.ts +58 -78
- package/js/src/hibachi.d.ts +42 -52
- package/js/src/hibachi.js +5 -5
- package/js/src/hitbtc.d.ts +49 -56
- package/js/src/hitbtc.js +15 -15
- package/js/src/hollaex.d.ts +26 -31
- package/js/src/hollaex.js +15 -15
- package/js/src/htx.d.ts +80 -121
- package/js/src/htx.js +52 -52
- package/js/src/hyperliquid.d.ts +77 -127
- package/js/src/hyperliquid.js +2 -2
- package/js/src/independentreserve.d.ts +15 -20
- package/js/src/independentreserve.js +2 -2
- package/js/src/indodax.d.ts +19 -24
- package/js/src/indodax.js +8 -8
- package/js/src/kraken.d.ts +43 -55
- package/js/src/kraken.js +29 -29
- package/js/src/krakenfutures.d.ts +34 -39
- package/js/src/krakenfutures.js +16 -16
- package/js/src/kucoin.d.ts +121 -132
- package/js/src/kucoin.js +15 -15
- package/js/src/kucoinfutures.d.ts +4 -4
- package/js/src/latoken.d.ts +24 -29
- package/js/src/latoken.js +8 -8
- package/js/src/lbank.d.ts +40 -53
- package/js/src/lbank.js +31 -31
- package/js/src/lighter.d.ts +40 -45
- package/js/src/lighter.js +2 -2
- package/js/src/luno.d.ts +25 -30
- package/js/src/luno.js +2 -2
- package/js/src/mercado.d.ts +15 -20
- package/js/src/mercado.js +12 -12
- package/js/src/mexc.d.ts +70 -83
- package/js/src/mexc.js +27 -27
- package/js/src/modetrade.d.ts +43 -57
- package/js/src/modetrade.js +10 -10
- package/js/src/mudrex.d.ts +25 -35
- package/js/src/nado.d.ts +45 -50
- package/js/src/ndax.d.ts +27 -32
- package/js/src/ndax.js +4 -4
- package/js/src/okx.d.ts +97 -108
- package/js/src/okx.js +19 -20
- package/js/src/onetrading.d.ts +23 -31
- package/js/src/onetrading.js +7 -7
- package/js/src/p2b.d.ts +17 -22
- package/js/src/p2b.js +8 -8
- package/js/src/pacifica.d.ts +55 -73
- package/js/src/pacifica.js +9 -3
- package/js/src/paradex.d.ts +47 -68
- package/js/src/paymium.d.ts +12 -17
- package/js/src/paymium.js +2 -2
- package/js/src/phemex.d.ts +47 -52
- package/js/src/phemex.js +37 -37
- package/js/src/poloniex.d.ts +45 -50
- package/js/src/poloniex.js +14 -14
- package/js/src/prediction/sxbet.d.ts +595 -0
- package/js/src/prediction/sxbet.js +2708 -0
- package/js/src/pro/alpaca.d.ts +23 -23
- package/js/src/pro/alpaca.js +5 -5
- package/js/src/pro/apex.d.ts +28 -28
- package/js/src/pro/apex.js +6 -6
- package/js/src/pro/aster.d.ts +33 -33
- package/js/src/pro/aster.js +8 -8
- package/js/src/pro/backpack.d.ts +28 -28
- package/js/src/pro/backpack.js +1 -1
- package/js/src/pro/binance.d.ts +57 -57
- package/js/src/pro/binance.js +26 -26
- package/js/src/pro/bingx.d.ts +26 -26
- package/js/src/pro/bingx.js +11 -11
- package/js/src/pro/bitfinex.d.ts +25 -25
- package/js/src/pro/bitfinex.js +11 -11
- package/js/src/pro/bitget.d.ts +41 -41
- package/js/src/pro/bitget.js +20 -20
- package/js/src/pro/bithumb.d.ts +15 -15
- package/js/src/pro/bithumb.js +1 -1
- package/js/src/pro/bitmex.d.ts +29 -29
- package/js/src/pro/bitmex.js +12 -12
- package/js/src/pro/bitopro.d.ts +13 -13
- package/js/src/pro/bitopro.js +5 -5
- package/js/src/pro/bitrue.d.ts +25 -25
- package/js/src/pro/bitrue.js +7 -7
- package/js/src/pro/bitstamp.d.ts +21 -21
- package/js/src/pro/bitstamp.js +5 -5
- package/js/src/pro/bittrade.d.ts +19 -19
- package/js/src/pro/bittrade.js +11 -11
- package/js/src/pro/bitvavo.d.ts +62 -62
- package/js/src/pro/bitvavo.js +16 -16
- package/js/src/pro/blockchaincom.d.ts +19 -19
- package/js/src/pro/blockchaincom.js +5 -5
- package/js/src/pro/blofin.d.ts +23 -23
- package/js/src/pro/blofin.js +2 -2
- package/js/src/pro/bullish.d.ts +19 -25
- package/js/src/pro/bybit.d.ts +42 -45
- package/js/src/pro/bybit.js +21 -21
- package/js/src/pro/bydfi.d.ts +24 -24
- package/js/src/pro/bydfi.js +2 -2
- package/js/src/pro/cex.d.ts +37 -37
- package/js/src/pro/cex.js +19 -19
- package/js/src/pro/coinbase.d.ts +19 -19
- package/js/src/pro/coinbase.js +2 -2
- package/js/src/pro/coinbaseexchange.d.ts +25 -25
- package/js/src/pro/coinbaseexchange.js +9 -9
- package/js/src/pro/coinbaseinternational.d.ts +20 -20
- package/js/src/pro/coinbaseinternational.js +2 -2
- package/js/src/pro/coincheck.d.ts +5 -5
- package/js/src/pro/coincheck.js +2 -2
- package/js/src/pro/coinex.d.ts +24 -24
- package/js/src/pro/coinex.js +3 -3
- package/js/src/pro/coinone.d.ts +9 -11
- package/js/src/pro/coinone.js +6 -6
- package/js/src/pro/cryptocom.d.ts +40 -40
- package/js/src/pro/cryptocom.js +10 -10
- package/js/src/pro/deepcoin.d.ts +24 -32
- package/js/src/pro/deribit.d.ts +24 -24
- package/js/src/pro/deribit.js +13 -13
- package/js/src/pro/derive.d.ts +22 -22
- package/js/src/pro/derive.js +4 -4
- package/js/src/pro/dydx.d.ts +9 -9
- package/js/src/pro/dydx.js +1 -1
- package/js/src/pro/extended.d.ts +22 -22
- package/js/src/pro/extended.js +16 -10
- package/js/src/pro/gate.d.ts +50 -50
- package/js/src/pro/gate.js +10 -10
- package/js/src/pro/gemini.d.ts +26 -26
- package/js/src/pro/gemini.js +3 -3
- package/js/src/pro/grvt.d.ts +22 -22
- package/js/src/pro/grvt.js +2 -2
- package/js/src/pro/hashkey.d.ts +19 -19
- package/js/src/pro/hashkey.js +2 -2
- package/js/src/pro/hitbtc.d.ts +32 -32
- package/js/src/pro/hitbtc.js +6 -6
- package/js/src/pro/hollaex.d.ts +15 -17
- package/js/src/pro/hollaex.js +3 -3
- package/js/src/pro/htx.d.ts +36 -36
- package/js/src/pro/htx.js +28 -28
- package/js/src/pro/hyperliquid.d.ts +29 -31
- package/js/src/pro/hyperliquid.js +1 -1
- package/js/src/pro/independentreserve.d.ts +10 -10
- package/js/src/pro/independentreserve.js +2 -2
- package/js/src/pro/kraken.d.ts +41 -55
- package/js/src/pro/kraken.js +7 -7
- package/js/src/pro/krakenfutures.d.ts +32 -32
- package/js/src/pro/krakenfutures.js +12 -12
- package/js/src/pro/kucoin.d.ts +69 -72
- package/js/src/pro/kucoin.js +12 -12
- package/js/src/pro/kucoinfutures.d.ts +4 -4
- package/js/src/pro/lbank.d.ts +22 -22
- package/js/src/pro/lbank.js +16 -16
- package/js/src/pro/lighter.d.ts +27 -27
- package/js/src/pro/luno.d.ts +8 -8
- package/js/src/pro/luno.js +2 -2
- package/js/src/pro/mexc.d.ts +33 -33
- package/js/src/pro/mexc.js +8 -8
- package/js/src/pro/modetrade.d.ts +37 -39
- package/js/src/pro/modetrade.js +3 -3
- package/js/src/pro/mudrex.d.ts +8 -8
- package/js/src/pro/mudrex.js +2 -2
- package/js/src/pro/nado.d.ts +42 -46
- package/js/src/pro/nado.js +3 -3
- package/js/src/pro/ndax.d.ts +12 -12
- package/js/src/pro/ndax.js +6 -6
- package/js/src/pro/okx.d.ts +49 -49
- package/js/src/pro/okx.js +20 -20
- package/js/src/pro/onetrading.d.ts +28 -28
- package/js/src/pro/onetrading.js +14 -14
- package/js/src/pro/p2b.d.ts +15 -19
- package/js/src/pro/p2b.js +5 -5
- package/js/src/pro/pacifica.d.ts +22 -22
- package/js/src/pro/pacifica.js +1 -1
- package/js/src/pro/paradex.d.ts +18 -18
- package/js/src/pro/paradex.js +1 -1
- package/js/src/pro/phemex.d.ts +25 -25
- package/js/src/pro/phemex.js +13 -13
- package/js/src/pro/poloniex.d.ts +30 -32
- package/js/src/pro/poloniex.js +17 -17
- package/js/src/pro/toobit.d.ts +31 -31
- package/js/src/pro/toobit.js +2 -2
- package/js/src/pro/upbit.d.ts +24 -24
- package/js/src/pro/upbit.js +4 -4
- package/js/src/pro/weex.d.ts +39 -39
- package/js/src/pro/weex.js +2 -2
- package/js/src/pro/whitebit.d.ts +26 -30
- package/js/src/pro/whitebit.js +12 -12
- package/js/src/pro/woo.d.ts +44 -46
- package/js/src/pro/woo.js +13 -13
- package/js/src/pro/woofipro.d.ts +39 -41
- package/js/src/pro/woofipro.js +3 -3
- package/js/src/pro/xt.d.ts +20 -20
- package/js/src/pro/xt.js +3 -3
- package/js/src/revolutx.d.ts +17 -17
- package/js/src/tokocrypto.d.ts +25 -30
- package/js/src/tokocrypto.js +20 -20
- package/js/src/toobit.d.ts +45 -79
- package/js/src/upbit.d.ts +28 -61
- package/js/src/upbit.js +12 -12
- package/js/src/weex.d.ts +57 -68
- package/js/src/whitebit.d.ts +53 -64
- package/js/src/whitebit.js +15 -15
- package/js/src/woo.d.ts +61 -75
- package/js/src/woo.js +3 -3
- package/js/src/woofipro.d.ts +53 -67
- package/js/src/woofipro.js +14 -14
- package/js/src/xt.d.ts +57 -67
- package/js/src/zaif.d.ts +11 -16
- package/js/src/zaif.js +9 -3
- package/js/src/zebpay.d.ts +32 -37
- package/js/src/zebpay.js +1 -1
- package/package.json +2 -2
|
@@ -78,7 +78,7 @@ class independentreserve extends independentreserve$1["default"] {
|
|
|
78
78
|
// "Event": "Trade"
|
|
79
79
|
// }
|
|
80
80
|
//
|
|
81
|
-
const data = this.
|
|
81
|
+
const data = this.safeDict(message, 'Data', {});
|
|
82
82
|
const marketId = this.safeString(data, 'Pair');
|
|
83
83
|
const symbol = this.safeSymbol(marketId, undefined, '-');
|
|
84
84
|
const messageHash = 'trades:' + symbol;
|
|
@@ -188,7 +188,7 @@ class independentreserve extends independentreserve$1["default"] {
|
|
|
188
188
|
const symbol = base + '/' + quote;
|
|
189
189
|
const orderBook = this.safeDict(message, 'Data', {});
|
|
190
190
|
const messageHash = 'orderbook:' + symbol + ':' + depth;
|
|
191
|
-
const subscription = this.
|
|
191
|
+
const subscription = this.safeDict(client.subscriptions, messageHash, {});
|
|
192
192
|
const receivedSnapshot = this.safeBool(subscription, 'receivedSnapshot', false);
|
|
193
193
|
const timestamp = this.safeInteger(message, 'Time');
|
|
194
194
|
// let orderbook = this.safeValue (this.orderbooks, symbol);
|
|
@@ -622,7 +622,7 @@ class kraken extends kraken$1["default"] {
|
|
|
622
622
|
const timeframe = this.findTimeframe(interval);
|
|
623
623
|
const messageHash = this.getMessageHash('ohlcv', undefined, symbol);
|
|
624
624
|
let stored = this.safeValue(this.safeValue(this.ohlcvs, symbol), timeframe);
|
|
625
|
-
this.ohlcvs[symbol] = this.
|
|
625
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
626
626
|
if (stored === undefined) {
|
|
627
627
|
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
628
628
|
stored = new Cache.ArrayCacheByTimestamp(limit);
|
|
@@ -817,7 +817,7 @@ class kraken extends kraken$1["default"] {
|
|
|
817
817
|
}
|
|
818
818
|
async loadMarkets(reload = false, params = {}) {
|
|
819
819
|
const markets = await super.loadMarkets(reload, params);
|
|
820
|
-
let marketsByWsName = this.
|
|
820
|
+
let marketsByWsName = this.safeDict(this.options, 'marketsByWsName');
|
|
821
821
|
if ((marketsByWsName === undefined) || reload) {
|
|
822
822
|
marketsByWsName = {};
|
|
823
823
|
const symbols = this.symbols; // do not cast `as string[]`: this.symbols is List<Object> in Java, and List<Object>->List<String> is an illegal cast
|
|
@@ -825,7 +825,7 @@ class kraken extends kraken$1["default"] {
|
|
|
825
825
|
for (let i = 0; i < symbols.length; i++) {
|
|
826
826
|
const symbol = symbols[i];
|
|
827
827
|
const market = this.market(symbol);
|
|
828
|
-
const info = this.
|
|
828
|
+
const info = this.safeDict(market, 'info', {});
|
|
829
829
|
const wsName = this.safeString(info, 'wsname');
|
|
830
830
|
marketsByWsName[wsName] = market;
|
|
831
831
|
}
|
|
@@ -925,7 +925,7 @@ class kraken extends kraken$1["default"] {
|
|
|
925
925
|
const first = this.safeDict(data, 0, {});
|
|
926
926
|
const symbol = this.safeString(first, 'symbol');
|
|
927
927
|
const a = this.safeList(first, 'asks', []);
|
|
928
|
-
const b = this.
|
|
928
|
+
const b = this.safeList(first, 'bids', []);
|
|
929
929
|
const c = this.safeInteger(first, 'checksum');
|
|
930
930
|
const messageHash = this.getMessageHash('orderbook', undefined, symbol);
|
|
931
931
|
let orderbook = undefined;
|
|
@@ -1332,8 +1332,8 @@ class kraken extends kraken$1["default"] {
|
|
|
1332
1332
|
const id = this.safeString(order, 'order_id');
|
|
1333
1333
|
const parsed = this.parseWsOrder(order);
|
|
1334
1334
|
const symbol = this.safeString(order, 'symbol');
|
|
1335
|
-
const previousOrders = this.
|
|
1336
|
-
const previousOrder = this.
|
|
1335
|
+
const previousOrders = this.safeDict(stored.hashmap, symbol);
|
|
1336
|
+
const previousOrder = this.safeDict(previousOrders, id);
|
|
1337
1337
|
let newOrder = parsed;
|
|
1338
1338
|
if (previousOrder !== undefined) {
|
|
1339
1339
|
const newRawOrder = this.extend(previousOrder['info'], newOrder['info']);
|
|
@@ -1520,7 +1520,7 @@ class kraken extends kraken$1["default"] {
|
|
|
1520
1520
|
}
|
|
1521
1521
|
const type = 'spot';
|
|
1522
1522
|
const balance = this.safeBalance(result);
|
|
1523
|
-
const oldBalance = this.
|
|
1523
|
+
const oldBalance = this.safeDict(this.balance, type, {});
|
|
1524
1524
|
const newBalance = this.deepExtend(oldBalance, balance);
|
|
1525
1525
|
this.balance[type] = this.safeBalance(newBalance);
|
|
1526
1526
|
const channel = this.safeString(message, 'channel');
|
|
@@ -752,7 +752,7 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
752
752
|
orders = new Cache.ArrayCacheBySymbolById(limit);
|
|
753
753
|
this.orders = orders;
|
|
754
754
|
}
|
|
755
|
-
const order = this.
|
|
755
|
+
const order = this.safeDict(message, 'order');
|
|
756
756
|
if (order !== undefined) {
|
|
757
757
|
const marketId = this.safeString(order, 'instrument');
|
|
758
758
|
const feed = this.safeString(message, 'feed');
|
|
@@ -762,8 +762,8 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
762
762
|
}
|
|
763
763
|
const symbol = this.safeSymbol(marketId);
|
|
764
764
|
const orderId = this.safeString(order, 'order_id');
|
|
765
|
-
const previousOrders = this.
|
|
766
|
-
const previousOrder = this.
|
|
765
|
+
const previousOrders = this.safeDict(orders.hashmap, symbol, {});
|
|
766
|
+
const previousOrder = this.safeDict(previousOrders, orderId);
|
|
767
767
|
const reason = this.safeString(message, 'reason');
|
|
768
768
|
if ((previousOrder === undefined) || (reason === 'edited_by_user')) {
|
|
769
769
|
const parsed = this.parseWsOrder(order);
|
|
@@ -816,7 +816,7 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
816
816
|
}
|
|
817
817
|
}
|
|
818
818
|
else {
|
|
819
|
-
const isCancel = this.
|
|
819
|
+
const isCancel = this.safeBool(message, 'is_cancel');
|
|
820
820
|
if (isCancel === true) {
|
|
821
821
|
// Kraken documents is_cancel as "fully filled, cancelled, or
|
|
822
822
|
// rejected". Derive unified status from `reason` instead of
|
|
@@ -969,7 +969,7 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
969
969
|
// "reduce_only": false
|
|
970
970
|
// }
|
|
971
971
|
//
|
|
972
|
-
const isCancelled = this.
|
|
972
|
+
const isCancelled = this.safeBool(order, 'is_cancel');
|
|
973
973
|
let unparsedOrder = order;
|
|
974
974
|
let status = undefined;
|
|
975
975
|
if (isCancelled !== undefined) {
|
|
@@ -1406,9 +1406,9 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
1406
1406
|
// "seq": 2
|
|
1407
1407
|
// }
|
|
1408
1408
|
//
|
|
1409
|
-
const holding = this.
|
|
1410
|
-
const futures = this.
|
|
1411
|
-
const flexFutures = this.
|
|
1409
|
+
const holding = this.safeDict(message, 'holding');
|
|
1410
|
+
const futures = this.safeDict(message, 'futures');
|
|
1411
|
+
const flexFutures = this.safeDict(message, 'flex_futures');
|
|
1412
1412
|
const messageHash = 'balances';
|
|
1413
1413
|
const timestamp = this.safeInteger(message, 'timestamp');
|
|
1414
1414
|
if (holding !== undefined) {
|
|
@@ -1442,7 +1442,7 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
1442
1442
|
const key = futuresKeys[i];
|
|
1443
1443
|
const symbol = this.safeSymbol(key);
|
|
1444
1444
|
const newAccount = this.account();
|
|
1445
|
-
const future = this.
|
|
1445
|
+
const future = this.safeDict(futures, key);
|
|
1446
1446
|
const currencyId = this.safeString(future, 'unit');
|
|
1447
1447
|
const code = this.safeCurrencyCode(currencyId);
|
|
1448
1448
|
newAccount['free'] = this.safeString(future, 'available');
|
|
@@ -1467,7 +1467,7 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
1467
1467
|
};
|
|
1468
1468
|
for (let i = 0; i < flexFuturesKeys.length; i++) {
|
|
1469
1469
|
const key = flexFuturesKeys[i];
|
|
1470
|
-
const flexFuture = this.
|
|
1470
|
+
const flexFuture = this.safeDict(flexFutureCurrencies, key);
|
|
1471
1471
|
const code = this.safeCurrencyCode(key);
|
|
1472
1472
|
const newAccount = this.account();
|
|
1473
1473
|
newAccount['free'] = this.safeString(flexFuture, 'available');
|
|
@@ -1555,7 +1555,7 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
1555
1555
|
const timestamp = this.safeInteger(trade, 'time');
|
|
1556
1556
|
const marketId = this.safeString(trade, 'instrument');
|
|
1557
1557
|
market = this.safeMarket(marketId, market);
|
|
1558
|
-
const isBuy = this.
|
|
1558
|
+
const isBuy = this.safeBool(trade, 'buy');
|
|
1559
1559
|
const feeCurrencyId = this.safeString(trade, 'fee_currency');
|
|
1560
1560
|
return this.safeTrade({
|
|
1561
1561
|
'info': trade,
|
|
@@ -1702,7 +1702,7 @@ class krakenfutures extends krakenfutures$1["default"] {
|
|
|
1702
1702
|
// "message": "226aee50-88fc-4618-a42a-34f7709570b2"
|
|
1703
1703
|
// }
|
|
1704
1704
|
//
|
|
1705
|
-
const event = this.
|
|
1705
|
+
const event = this.safeString(message, 'event');
|
|
1706
1706
|
const messageHash = 'challenge';
|
|
1707
1707
|
if (event !== 'error') {
|
|
1708
1708
|
const challenge = this.safeValue(message, 'message');
|
|
@@ -243,7 +243,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
243
243
|
}
|
|
244
244
|
async authenticateUta() {
|
|
245
245
|
this.checkRequiredCredentials();
|
|
246
|
-
const utaToken = this.
|
|
246
|
+
const utaToken = this.safeString(this.options, 'utaToken');
|
|
247
247
|
const lastUpdate = this.safeInteger(this.options, 'utaTokenLastUpdate', 0);
|
|
248
248
|
let refreshInterval = 1000 * 60 * 60 * 24; // 24 hours
|
|
249
249
|
refreshInterval = this.safeInteger(this.options, 'utaTokenRefreshInterval', refreshInterval);
|
|
@@ -1022,7 +1022,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
1022
1022
|
const market = this.safeMarket(marketId);
|
|
1023
1023
|
const symbol = market['symbol'];
|
|
1024
1024
|
const messageHash = 'candles:' + symbol + ':' + timeframe;
|
|
1025
|
-
this.ohlcvs[symbol] = this.
|
|
1025
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
1026
1026
|
let stored = this.safeValue(this.ohlcvs[symbol], timeframe);
|
|
1027
1027
|
if (stored === undefined) {
|
|
1028
1028
|
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
@@ -1069,7 +1069,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
1069
1069
|
const interval = this.safeString(data, 'i');
|
|
1070
1070
|
const timeframe = this.findTimeframe(interval);
|
|
1071
1071
|
const messageHash = 'uta:candles:' + symbol + ':' + timeframe;
|
|
1072
|
-
this.ohlcvs[symbol] = this.
|
|
1072
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
1073
1073
|
let stored = this.safeValue(this.ohlcvs[symbol], timeframe);
|
|
1074
1074
|
if (stored === undefined) {
|
|
1075
1075
|
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
@@ -1112,7 +1112,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
1112
1112
|
const channel = 'trade';
|
|
1113
1113
|
const trades = await this.subscribePublicUta(messageHash, channel, symbol, params);
|
|
1114
1114
|
if (this.newUpdates) {
|
|
1115
|
-
const first = this.
|
|
1115
|
+
const first = this.safeDict(trades, 0);
|
|
1116
1116
|
const tradeSymbol = this.safeString(first, 'symbol');
|
|
1117
1117
|
limit = trades.getLimit(tradeSymbol, limit);
|
|
1118
1118
|
}
|
|
@@ -1160,7 +1160,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
1160
1160
|
}
|
|
1161
1161
|
const trades = await this.subscribeMultiple(url, messageHashes, topic, subscriptionHashes, params);
|
|
1162
1162
|
if (this.newUpdates) {
|
|
1163
|
-
const first = this.
|
|
1163
|
+
const first = this.safeDict(trades, 0);
|
|
1164
1164
|
const tradeSymbol = this.safeString(first, 'symbol');
|
|
1165
1165
|
limit = trades.getLimit(tradeSymbol, limit);
|
|
1166
1166
|
}
|
|
@@ -1715,7 +1715,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
1715
1715
|
const deltaEnd = this.safeInteger(data, 'C');
|
|
1716
1716
|
if (nonce === undefined) {
|
|
1717
1717
|
const cacheLength = orderbook.cache.length;
|
|
1718
|
-
const subscription = this.
|
|
1718
|
+
const subscription = this.safeDict(client.subscriptions, messageHash, {});
|
|
1719
1719
|
const limit = this.safeInteger(subscription, 'limit');
|
|
1720
1720
|
const snapshotDelay = this.handleOption('watchOrderBook', 'snapshotDelay', 5);
|
|
1721
1721
|
const utaParams = {
|
|
@@ -1735,7 +1735,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
1735
1735
|
client.resolve(this.orderbooks[symbol], messageHash);
|
|
1736
1736
|
}
|
|
1737
1737
|
getCacheIndex(orderbook, cache) {
|
|
1738
|
-
const firstDelta = this.
|
|
1738
|
+
const firstDelta = this.safeDict(cache, 0);
|
|
1739
1739
|
const nonce = this.safeInteger(orderbook, 'nonce');
|
|
1740
1740
|
const firstDeltaStart = this.safeIntegerN(firstDelta, ['sequenceStart', 'sequence', 'O']);
|
|
1741
1741
|
if ((nonce === undefined) || (firstDeltaStart === undefined)) {
|
|
@@ -1840,7 +1840,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
1840
1840
|
return;
|
|
1841
1841
|
}
|
|
1842
1842
|
const subscriptionHash = this.safeString(client.subscriptions, id);
|
|
1843
|
-
const subscription = this.
|
|
1843
|
+
const subscription = this.safeDict(client.subscriptions, subscriptionHash);
|
|
1844
1844
|
delete client.subscriptions[id];
|
|
1845
1845
|
const method = this.safeValue(subscription, 'method');
|
|
1846
1846
|
if (method !== undefined) {
|
|
@@ -2212,8 +2212,8 @@ class kucoin extends kucoin$1["default"] {
|
|
|
2212
2212
|
this.triggerOrders = new Cache.ArrayCacheBySymbolById(limit);
|
|
2213
2213
|
}
|
|
2214
2214
|
const cachedOrders = isTriggerOrder ? this.triggerOrders : this.orders;
|
|
2215
|
-
const orders = this.
|
|
2216
|
-
const order = this.
|
|
2215
|
+
const orders = this.safeDict(cachedOrders.hashmap, symbol, {});
|
|
2216
|
+
const order = this.safeDict(orders, orderId);
|
|
2217
2217
|
if (order !== undefined) {
|
|
2218
2218
|
if (order['status'] === 'closed') {
|
|
2219
2219
|
parsed['status'] = 'closed';
|
|
@@ -2634,7 +2634,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
2634
2634
|
'uta': uta,
|
|
2635
2635
|
};
|
|
2636
2636
|
const response = await this.fetchBalance(params);
|
|
2637
|
-
this.balance[type] = this.extend(response, this.
|
|
2637
|
+
this.balance[type] = this.extend(response, this.safeDict(this.balance, type, {}));
|
|
2638
2638
|
// don't remove the future from the .futures cache
|
|
2639
2639
|
if (messageHash in client.futures) {
|
|
2640
2640
|
const future = client.futures[messageHash];
|
|
@@ -2878,7 +2878,7 @@ class kucoin extends kucoin$1["default"] {
|
|
|
2878
2878
|
const cache = this.positions.hashmap;
|
|
2879
2879
|
const symbolCache = this.safeDict(cache, symbol, {});
|
|
2880
2880
|
const values = Object.values(symbolCache);
|
|
2881
|
-
return this.
|
|
2881
|
+
return this.safeDict(values, 0);
|
|
2882
2882
|
}
|
|
2883
2883
|
setPositionsCache(client, uta) {
|
|
2884
2884
|
if (!(this.isEmpty(this.positions))) {
|
|
@@ -86,8 +86,8 @@ class lbank extends lbank$1["default"] {
|
|
|
86
86
|
const market = this.market(symbol);
|
|
87
87
|
this.checkContractMarket(market, 'fetchOHLCVWs');
|
|
88
88
|
const url = this.urls['api']['ws'];
|
|
89
|
-
const watchOHLCVOptions = this.
|
|
90
|
-
const timeframes = this.
|
|
89
|
+
const watchOHLCVOptions = this.safeDict(this.options, 'watchOHLCV', {});
|
|
90
|
+
const timeframes = this.safeDict(watchOHLCVOptions, 'timeframes', {});
|
|
91
91
|
const timeframeId = this.safeString(timeframes, timeframe, timeframe);
|
|
92
92
|
const messageHash = 'fetchOHLCV:' + market['symbol'] + ':' + timeframeId;
|
|
93
93
|
const message = {
|
|
@@ -124,8 +124,8 @@ class lbank extends lbank$1["default"] {
|
|
|
124
124
|
}
|
|
125
125
|
const market = this.market(symbol);
|
|
126
126
|
this.checkContractMarket(market, 'watchOHLCV');
|
|
127
|
-
const watchOHLCVOptions = this.
|
|
128
|
-
const timeframes = this.
|
|
127
|
+
const watchOHLCVOptions = this.safeDict(this.options, 'watchOHLCV', {});
|
|
128
|
+
const timeframes = this.safeDict(watchOHLCVOptions, 'timeframes', {});
|
|
129
129
|
const timeframeId = this.safeString(timeframes, timeframe, timeframe);
|
|
130
130
|
const messageHash = 'ohlcv:' + market['symbol'] + ':' + timeframeId;
|
|
131
131
|
const url = this.urls['api']['ws'];
|
|
@@ -196,11 +196,11 @@ class lbank extends lbank$1["default"] {
|
|
|
196
196
|
//
|
|
197
197
|
const marketId = this.safeString(message, 'pair');
|
|
198
198
|
const symbol = this.safeSymbol(marketId, undefined, '_');
|
|
199
|
-
const watchOHLCVOptions = this.
|
|
200
|
-
const timeframes = this.
|
|
201
|
-
const records = this.
|
|
199
|
+
const watchOHLCVOptions = this.safeDict(this.options, 'watchOHLCV', {});
|
|
200
|
+
const timeframes = this.safeDict(watchOHLCVOptions, 'timeframes', {});
|
|
201
|
+
const records = this.safeList(message, 'records');
|
|
202
202
|
if (records !== undefined) { // from request
|
|
203
|
-
const rawOHLCV = this.
|
|
203
|
+
const rawOHLCV = this.safeList(records, 0, []);
|
|
204
204
|
const parsed = [
|
|
205
205
|
this.safeInteger(rawOHLCV, 0),
|
|
206
206
|
this.safeNumber(rawOHLCV, 1),
|
|
@@ -211,7 +211,7 @@ class lbank extends lbank$1["default"] {
|
|
|
211
211
|
];
|
|
212
212
|
const timeframeId = this.safeString(message, 'kbar');
|
|
213
213
|
const timeframe = this.findTimeframe(timeframeId, timeframes);
|
|
214
|
-
this.ohlcvs[symbol] = this.
|
|
214
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
215
215
|
let stored = this.safeValue(this.ohlcvs[symbol], timeframe);
|
|
216
216
|
if (stored === undefined) {
|
|
217
217
|
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
@@ -223,7 +223,7 @@ class lbank extends lbank$1["default"] {
|
|
|
223
223
|
client.resolve(stored, messageHash);
|
|
224
224
|
}
|
|
225
225
|
else { // from subscription
|
|
226
|
-
const rawOHLCV = this.
|
|
226
|
+
const rawOHLCV = this.safeDict(message, 'kbar', {});
|
|
227
227
|
const timeframeId = this.safeString(rawOHLCV, 'slot');
|
|
228
228
|
const datetime = this.safeString(rawOHLCV, 't');
|
|
229
229
|
const parsed = [
|
|
@@ -235,7 +235,7 @@ class lbank extends lbank$1["default"] {
|
|
|
235
235
|
this.safeNumber(rawOHLCV, 'v'),
|
|
236
236
|
];
|
|
237
237
|
const timeframe = this.findTimeframe(timeframeId, timeframes);
|
|
238
|
-
this.ohlcvs[symbol] = this.
|
|
238
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
239
239
|
let stored = this.safeValue(this.ohlcvs[symbol], timeframe);
|
|
240
240
|
if (stored === undefined) {
|
|
241
241
|
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
@@ -355,7 +355,7 @@ class lbank extends lbank$1["default"] {
|
|
|
355
355
|
const marketId = this.safeString(ticker, 'pair');
|
|
356
356
|
const symbol = this.safeSymbol(marketId, market);
|
|
357
357
|
const datetime = this.safeString(ticker, 'TS');
|
|
358
|
-
const tickerData = this.
|
|
358
|
+
const tickerData = this.safeDict(ticker, 'tick');
|
|
359
359
|
return this.safeTicker({
|
|
360
360
|
'symbol': symbol,
|
|
361
361
|
'timestamp': this.parse8601(datetime),
|
|
@@ -477,7 +477,7 @@ class lbank extends lbank$1["default"] {
|
|
|
477
477
|
this.trades[symbol] = stored;
|
|
478
478
|
}
|
|
479
479
|
const rawTrade = this.safeValue(message, 'trade');
|
|
480
|
-
const rawTrades = this.
|
|
480
|
+
const rawTrades = this.safeList(message, 'trades', [rawTrade]);
|
|
481
481
|
for (let i = 0; i < rawTrades.length; i++) {
|
|
482
482
|
const trade = this.parseWsTrade(rawTrades[i], market);
|
|
483
483
|
trade['symbol'] = symbol;
|
|
@@ -648,7 +648,7 @@ class lbank extends lbank$1["default"] {
|
|
|
648
648
|
// "TS": "2024-01-19T23:05:18.548"
|
|
649
649
|
// }
|
|
650
650
|
//
|
|
651
|
-
const orderUpdate = this.
|
|
651
|
+
const orderUpdate = this.safeDict(order, 'orderUpdate', {});
|
|
652
652
|
const rawType = this.safeString(orderUpdate, 'type', '');
|
|
653
653
|
const typeParts = rawType.split('_');
|
|
654
654
|
const side = this.safeString(typeParts, 0);
|
|
@@ -967,13 +967,13 @@ class lbank extends lbank$1["default"] {
|
|
|
967
967
|
}
|
|
968
968
|
const future = client.reusableFuture(messageHash);
|
|
969
969
|
try {
|
|
970
|
-
const authenticated = this.
|
|
970
|
+
const authenticated = this.safeDict(client.subscriptions, 'authenticated');
|
|
971
971
|
if (authenticated === undefined) {
|
|
972
972
|
const response = await this.spotPrivatePostSubscribeGetKey(params);
|
|
973
973
|
//
|
|
974
974
|
// {"result":true,"data":"4e9958623e6006bd7b13ff9f36c03b36132f0f8da37f70b14ff2c4eab1fe0c97","error_code":0,"ts":1705602277198}
|
|
975
975
|
//
|
|
976
|
-
const result = this.
|
|
976
|
+
const result = this.safeBool(response, 'result');
|
|
977
977
|
if (result !== true) {
|
|
978
978
|
throw new errors.ExchangeError(this.id + ' failed to get subscribe key');
|
|
979
979
|
}
|
package/dist/cjs/src/pro/luno.js
CHANGED
|
@@ -220,8 +220,8 @@ class luno extends luno$1["default"] {
|
|
|
220
220
|
client.resolve(orderbook, messageHash);
|
|
221
221
|
}
|
|
222
222
|
customParseOrderBook(orderbook, symbol, timestamp = undefined, bidsKey = 'bids', asksKey = 'asks', priceKey = 'price', amountKey = 'volume', countOrIdKey = 2) {
|
|
223
|
-
const bids = this.parseOrderBookBidsAsks(this.
|
|
224
|
-
const asks = this.parseOrderBookBidsAsks(this.
|
|
223
|
+
const bids = this.parseOrderBookBidsAsks(this.safeList(orderbook, bidsKey, []), priceKey, amountKey, countOrIdKey);
|
|
224
|
+
const asks = this.parseOrderBookBidsAsks(this.safeList(orderbook, asksKey, []), priceKey, amountKey, countOrIdKey);
|
|
225
225
|
return {
|
|
226
226
|
'symbol': symbol,
|
|
227
227
|
'bids': this.sortBy(bids, 0, true),
|
package/dist/cjs/src/pro/mexc.js
CHANGED
|
@@ -567,7 +567,7 @@ class mexc extends mexc$1["default"] {
|
|
|
567
567
|
}
|
|
568
568
|
const market = this.market(symbol);
|
|
569
569
|
symbol = market['symbol'];
|
|
570
|
-
const timeframes = this.
|
|
570
|
+
const timeframes = this.safeDict(this.options, 'timeframes', {});
|
|
571
571
|
const timeframeId = this.safeString(timeframes, timeframe);
|
|
572
572
|
const messageHash = 'candles:' + symbol + ':' + timeframe;
|
|
573
573
|
let ohlcv = undefined;
|
|
@@ -665,10 +665,10 @@ class mexc extends mexc$1["default"] {
|
|
|
665
665
|
parsed = this.parseWsOHLCV(data, this.safeMarket(symbol));
|
|
666
666
|
}
|
|
667
667
|
else {
|
|
668
|
-
const d = this.
|
|
669
|
-
const rawOhlcv = this.
|
|
668
|
+
const d = this.safeDict2(message, 'd', 'data', {});
|
|
669
|
+
const rawOhlcv = this.safeDict(d, 'k', d);
|
|
670
670
|
const timeframeId = this.safeString2(rawOhlcv, 'i', 'interval');
|
|
671
|
-
const timeframes = this.
|
|
671
|
+
const timeframes = this.safeDict(this.options, 'timeframes', {});
|
|
672
672
|
timeframe = this.findTimeframe(timeframeId, timeframes);
|
|
673
673
|
const marketId = this.safeString2(message, 's', 'symbol');
|
|
674
674
|
const market = this.safeMarket(marketId);
|
|
@@ -676,7 +676,7 @@ class mexc extends mexc$1["default"] {
|
|
|
676
676
|
parsed = this.parseWsOHLCV(rawOhlcv, market);
|
|
677
677
|
}
|
|
678
678
|
const messageHash = 'candles:' + symbol + ':' + timeframe;
|
|
679
|
-
const symbolOhlcvs = this.
|
|
679
|
+
const symbolOhlcvs = this.safeDict(this.ohlcvs, symbol, {});
|
|
680
680
|
this.ohlcvs[symbol] = symbolOhlcvs;
|
|
681
681
|
let stored = this.safeValue(symbolOhlcvs, timeframe);
|
|
682
682
|
if (stored === undefined) {
|
|
@@ -797,7 +797,7 @@ class mexc extends mexc$1["default"] {
|
|
|
797
797
|
getCacheIndex(orderbook, cache) {
|
|
798
798
|
// return the first index of the cache that can be applied to the orderbook or -1 if not possible
|
|
799
799
|
const nonce = this.safeInteger(orderbook, 'nonce');
|
|
800
|
-
const firstDelta = this.
|
|
800
|
+
const firstDelta = this.safeDict(cache, 0);
|
|
801
801
|
const firstDeltaNonce = this.safeIntegerN(firstDelta, ['r', 'version', 'fromVersion']);
|
|
802
802
|
if ((nonce === undefined) || (firstDeltaNonce === undefined)) {
|
|
803
803
|
return -1;
|
|
@@ -888,7 +888,7 @@ class mexc extends mexc$1["default"] {
|
|
|
888
888
|
const marketId = this.safeString2(message, 's', 'symbol');
|
|
889
889
|
const symbol = this.safeSymbol(marketId);
|
|
890
890
|
const messageHash = 'orderbook:' + symbol;
|
|
891
|
-
const subscription = this.
|
|
891
|
+
const subscription = this.safeDict(client.subscriptions, messageHash);
|
|
892
892
|
const limit = this.safeInteger(subscription, 'limit');
|
|
893
893
|
if (!(symbol in this.orderbooks)) {
|
|
894
894
|
this.orderbooks[symbol] = this.orderBook();
|
|
@@ -1850,7 +1850,7 @@ class mexc extends mexc$1["default"] {
|
|
|
1850
1850
|
}
|
|
1851
1851
|
const market = this.market(symbol);
|
|
1852
1852
|
symbol = market['symbol'];
|
|
1853
|
-
const timeframes = this.
|
|
1853
|
+
const timeframes = this.safeDict(this.options, 'timeframes', {});
|
|
1854
1854
|
const timeframeId = this.safeString(timeframes, timeframe);
|
|
1855
1855
|
const messageHash = 'unsubscribe:candles:' + symbol + ':' + timeframe;
|
|
1856
1856
|
let url = undefined;
|
|
@@ -438,8 +438,8 @@ class modetrade extends modetrade$1["default"] {
|
|
|
438
438
|
this.safeNumber(data, 'close'),
|
|
439
439
|
this.safeNumber(data, 'volume'),
|
|
440
440
|
];
|
|
441
|
-
this.ohlcvs[symbol] = this.
|
|
442
|
-
let stored = this.safeValue(this.
|
|
441
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
442
|
+
let stored = this.safeValue(this.safeDict(this.ohlcvs, symbol), timeframe);
|
|
443
443
|
if (stored === undefined) {
|
|
444
444
|
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
445
445
|
stored = new Cache.ArrayCacheByTimestamp(limit);
|
|
@@ -591,7 +591,7 @@ class modetrade extends modetrade$1["default"] {
|
|
|
591
591
|
// }
|
|
592
592
|
//
|
|
593
593
|
const messageHash = 'authenticated';
|
|
594
|
-
const success = this.
|
|
594
|
+
const success = this.safeBool(message, 'success');
|
|
595
595
|
if (success === true) {
|
|
596
596
|
// client.resolve (message, messageHash);
|
|
597
597
|
const future = this.safeValue(client.futures, 'authenticated');
|
|
@@ -200,8 +200,8 @@ class mudrex extends mudrex$1["default"] {
|
|
|
200
200
|
this.safeNumber(data, 'c'),
|
|
201
201
|
this.safeNumber(data, 'v'),
|
|
202
202
|
];
|
|
203
|
-
this.ohlcvs[symbol] = this.
|
|
204
|
-
let stored = this.safeValue(this.
|
|
203
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
204
|
+
let stored = this.safeValue(this.safeDict(this.ohlcvs, symbol), tf);
|
|
205
205
|
if (stored === undefined) {
|
|
206
206
|
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
207
207
|
stored = new Cache.ArrayCacheByTimestamp(limit);
|
package/dist/cjs/src/pro/nado.js
CHANGED
|
@@ -1847,7 +1847,7 @@ class nado extends nado$1["default"] {
|
|
|
1847
1847
|
}
|
|
1848
1848
|
const id = this.safeString(message, 'id');
|
|
1849
1849
|
const hasResult = ('result' in message);
|
|
1850
|
-
const result = this.
|
|
1850
|
+
const result = this.safeDict(message, 'result');
|
|
1851
1851
|
const method = this.safeString(result, 'method');
|
|
1852
1852
|
if (method === 'pong') {
|
|
1853
1853
|
// pong replies carry both 'id' and 'result' so they must be routed
|
|
@@ -1862,12 +1862,12 @@ class nado extends nado$1["default"] {
|
|
|
1862
1862
|
return;
|
|
1863
1863
|
}
|
|
1864
1864
|
if ((id !== undefined) && hasResult) {
|
|
1865
|
-
const authentication = this.
|
|
1865
|
+
const authentication = this.safeString(client.subscriptions, 'authentication:' + id);
|
|
1866
1866
|
if (authentication !== undefined) {
|
|
1867
1867
|
this.handleAuthentication(client, message);
|
|
1868
1868
|
return;
|
|
1869
1869
|
}
|
|
1870
|
-
const subscription = this.
|
|
1870
|
+
const subscription = this.safeDict(client.subscriptions, 'subscription:' + id);
|
|
1871
1871
|
if (subscription !== undefined) {
|
|
1872
1872
|
this.handleSubscription(client, message);
|
|
1873
1873
|
return;
|
package/dist/cjs/src/pro/ndax.js
CHANGED
|
@@ -72,7 +72,7 @@ class ndax extends ndax$1["default"] {
|
|
|
72
72
|
return await this.watch(url, messageHash, message, messageHash);
|
|
73
73
|
}
|
|
74
74
|
handleTicker(client, message) {
|
|
75
|
-
const payload = this.
|
|
75
|
+
const payload = this.safeDict(message, 'o', {});
|
|
76
76
|
//
|
|
77
77
|
// {
|
|
78
78
|
// "OMSId": 1,
|
|
@@ -273,7 +273,7 @@ class ndax extends ndax$1["default"] {
|
|
|
273
273
|
if (marketId !== undefined) {
|
|
274
274
|
updates[marketId] = {};
|
|
275
275
|
}
|
|
276
|
-
this.ohlcvs[symbol] = this.
|
|
276
|
+
this.ohlcvs[symbol] = this.safeDict(this.ohlcvs, symbol, {});
|
|
277
277
|
const keys = Object.keys(this.timeframes);
|
|
278
278
|
for (let j = 0; j < keys.length; j++) {
|
|
279
279
|
const timeframe = keys[j];
|
|
@@ -349,7 +349,7 @@ class ndax extends ndax$1["default"] {
|
|
|
349
349
|
const messageHash = name + ':' + timeframe + ':' + marketId;
|
|
350
350
|
const market = this.safeMarket(marketId);
|
|
351
351
|
const symbol = market['symbol'];
|
|
352
|
-
const stored = this.
|
|
352
|
+
const stored = this.safeList(this.ohlcvs[symbol], timeframe, []);
|
|
353
353
|
client.resolve(stored, messageHash);
|
|
354
354
|
}
|
|
355
355
|
}
|
|
@@ -426,7 +426,7 @@ class ndax extends ndax$1["default"] {
|
|
|
426
426
|
// 0, // 9 Side
|
|
427
427
|
// ],
|
|
428
428
|
//
|
|
429
|
-
const firstBidAsk = this.
|
|
429
|
+
const firstBidAsk = this.safeList(payload, 0, []);
|
|
430
430
|
const marketId = this.safeString(firstBidAsk, 7);
|
|
431
431
|
if (marketId === undefined) {
|
|
432
432
|
return;
|
|
@@ -494,7 +494,7 @@ class ndax extends ndax$1["default"] {
|
|
|
494
494
|
// "o": [[1,1,1608204295901,0,20782.49,1,18200,8,1,0]]
|
|
495
495
|
// }
|
|
496
496
|
//
|
|
497
|
-
const payload = this.
|
|
497
|
+
const payload = this.safeList(message, 'o', []);
|
|
498
498
|
//
|
|
499
499
|
// [
|
|
500
500
|
// [
|
|
@@ -532,7 +532,7 @@ class ndax extends ndax$1["default"] {
|
|
|
532
532
|
//
|
|
533
533
|
const subscriptionsById = this.indexBy(client.subscriptions, 'id');
|
|
534
534
|
const id = this.safeInteger(message, 'i');
|
|
535
|
-
const subscription = (id === undefined) ? undefined : this.
|
|
535
|
+
const subscription = (id === undefined) ? undefined : this.safeDict(subscriptionsById, id);
|
|
536
536
|
if (subscription !== undefined) {
|
|
537
537
|
const method = this.safeValue(subscription, 'method');
|
|
538
538
|
if (method !== undefined) {
|