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
package/js/src/phemex.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/phemex.js';
|
|
2
|
-
import type { TransferEntry, Balances, Currency, CurrencyInterface, FundingHistory, FundingRateHistory, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, MarginModification, Currencies, Dict, NullableDict, LeverageTier, LeverageTiers, int, FundingRate, DepositAddress, Conversion, Position, Dictionary, ADL } from './base/types.js';
|
|
2
|
+
import type { TransferEntry, Balances, Currency, CurrencyInterface, FundingHistory, FundingRateHistory, Int, Market, Num, OHLCV, OpenInterest, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, MarginModification, Currencies, Dict, NullableDict, LeverageTier, LeverageTiers, int, FundingRate, DepositAddress, Conversion, Position, Dictionary, ADL } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class phemex
|
|
5
5
|
* @augments Exchange
|
|
@@ -17,7 +17,7 @@ export default class phemex extends Exchange {
|
|
|
17
17
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
18
18
|
* @returns {object[]} an array of objects representing market data
|
|
19
19
|
*/
|
|
20
|
-
fetchMarkets(params?:
|
|
20
|
+
fetchMarkets(params?: Dict): Promise<Market[]>;
|
|
21
21
|
/**
|
|
22
22
|
* @method
|
|
23
23
|
* @name phemex#fetchCurrencies
|
|
@@ -25,10 +25,10 @@ export default class phemex extends Exchange {
|
|
|
25
25
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
26
26
|
* @returns {object} an associative dictionary of currencies
|
|
27
27
|
*/
|
|
28
|
-
fetchCurrencies(params?:
|
|
28
|
+
fetchCurrencies(params?: Dict): Promise<Currencies>;
|
|
29
29
|
parseCurrency(rawCurrency: Dict): CurrencyInterface;
|
|
30
|
-
customParseBidAsk(bidask: any, priceKey?: number, amountKey?: number, market?: Market):
|
|
31
|
-
customParseOrderBook(orderbook:
|
|
30
|
+
customParseBidAsk(bidask: any[], priceKey?: number, amountKey?: number, market?: Market): Num[];
|
|
31
|
+
customParseOrderBook(orderbook: Dict, symbol: string, timestamp?: Int, bidsKey?: string, asksKey?: string, priceKey?: number, amountKey?: number, market?: Market): Dict;
|
|
32
32
|
/**
|
|
33
33
|
* @method
|
|
34
34
|
* @name phemex#fetchOrderBook
|
|
@@ -39,7 +39,7 @@ export default class phemex extends Exchange {
|
|
|
39
39
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
40
40
|
* @returns {object} an [order book structure]{@link https://docs.ccxt.com/?id=order-book-structure}
|
|
41
41
|
*/
|
|
42
|
-
fetchOrderBook(symbol: string, limit?: Int, params?:
|
|
42
|
+
fetchOrderBook(symbol: string, limit?: Int, params?: Dict): Promise<OrderBook>;
|
|
43
43
|
toEn(n: any, scale: any): number | undefined;
|
|
44
44
|
toEv(amount: any, market?: Dictionary<any> | undefined): any;
|
|
45
45
|
toEp(price: any, market?: Market): any;
|
|
@@ -62,7 +62,7 @@ export default class phemex extends Exchange {
|
|
|
62
62
|
* @param {int} [params.until] *USDT settled/ linear swaps only* end time in ms
|
|
63
63
|
* @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
|
|
64
64
|
*/
|
|
65
|
-
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?:
|
|
65
|
+
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: Dict): Promise<OHLCV[]>;
|
|
66
66
|
parseTicker(ticker: Dict, market?: Market): Ticker;
|
|
67
67
|
/**
|
|
68
68
|
* @method
|
|
@@ -73,7 +73,7 @@ export default class phemex extends Exchange {
|
|
|
73
73
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
74
74
|
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/?id=ticker-structure}
|
|
75
75
|
*/
|
|
76
|
-
fetchTicker(symbol: string, params?:
|
|
76
|
+
fetchTicker(symbol: string, params?: Dict): Promise<Ticker>;
|
|
77
77
|
/**
|
|
78
78
|
* @method
|
|
79
79
|
* @name phemex#fetchTickers
|
|
@@ -85,7 +85,7 @@ export default class phemex extends Exchange {
|
|
|
85
85
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
86
86
|
* @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/?id=ticker-structure}
|
|
87
87
|
*/
|
|
88
|
-
fetchTickers(symbols?: Strings, params?:
|
|
88
|
+
fetchTickers(symbols?: Strings, params?: Dict): Promise<Tickers>;
|
|
89
89
|
/**
|
|
90
90
|
* @method
|
|
91
91
|
* @name phemex#fetchTrades
|
|
@@ -97,10 +97,10 @@ export default class phemex extends Exchange {
|
|
|
97
97
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
98
98
|
* @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=public-trades}
|
|
99
99
|
*/
|
|
100
|
-
fetchTrades(symbol: string, since?: Int, limit?: Int, params?:
|
|
100
|
+
fetchTrades(symbol: string, since?: Int, limit?: Int, params?: Dict): Promise<Trade[]>;
|
|
101
101
|
parseTrade(trade: Dict, market?: Market): Trade;
|
|
102
|
-
parseSpotBalance(response:
|
|
103
|
-
parseSwapBalance(response:
|
|
102
|
+
parseSpotBalance(response: Dict): Balances;
|
|
103
|
+
parseSwapBalance(response: Dict): Balances;
|
|
104
104
|
/**
|
|
105
105
|
* @method
|
|
106
106
|
* @name phemex#fetchBalance
|
|
@@ -113,13 +113,13 @@ export default class phemex extends Exchange {
|
|
|
113
113
|
* @param {string} [params.code] *swap only* currency code of the balance to query (USD, USDT, etc), default is USDT
|
|
114
114
|
* @returns {object} a [balance structure]{@link https://docs.ccxt.com/?id=balance-structure}
|
|
115
115
|
*/
|
|
116
|
-
fetchBalance(params?:
|
|
116
|
+
fetchBalance(params?: Dict): Promise<Balances>;
|
|
117
117
|
parseOrderStatus(status: Str): Str;
|
|
118
118
|
parseOrderType(type: Str): Str;
|
|
119
119
|
parseTimeInForce(timeInForce: Str): Str;
|
|
120
120
|
parseSpotOrder(order: Dict, market?: Market): Order;
|
|
121
|
-
parseOrderSide(side:
|
|
122
|
-
parseSwapOrder(order:
|
|
121
|
+
parseOrderSide(side: Str): Str;
|
|
122
|
+
parseSwapOrder(order: Dict, market?: Market): Order;
|
|
123
123
|
parseOrder(order: Dict, market?: Market): Order;
|
|
124
124
|
/**
|
|
125
125
|
* @method
|
|
@@ -142,7 +142,7 @@ export default class phemex extends Exchange {
|
|
|
142
142
|
* @param {bool} [params.hedged] *swap only* true for hedged mode, false for one way mode, default is false
|
|
143
143
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
144
144
|
*/
|
|
145
|
-
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?:
|
|
145
|
+
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?: Dict): Promise<Order>;
|
|
146
146
|
/**
|
|
147
147
|
* @method
|
|
148
148
|
* @name phemex#editOrder
|
|
@@ -158,7 +158,7 @@ export default class phemex extends Exchange {
|
|
|
158
158
|
* @param {string} [params.posSide] either 'Merged' or 'Long' or 'Short'
|
|
159
159
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
160
160
|
*/
|
|
161
|
-
editOrder(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: Num, price?: Num, params?:
|
|
161
|
+
editOrder(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: Num, price?: Num, params?: Dict): Promise<Order>;
|
|
162
162
|
/**
|
|
163
163
|
* @method
|
|
164
164
|
* @name phemex#cancelOrder
|
|
@@ -170,7 +170,7 @@ export default class phemex extends Exchange {
|
|
|
170
170
|
* @param {string} [params.posSide] either 'Merged' or 'Long' or 'Short'
|
|
171
171
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
172
172
|
*/
|
|
173
|
-
cancelOrder(id: string, symbol?: Str, params?:
|
|
173
|
+
cancelOrder(id: string, symbol?: Str, params?: Dict): Promise<Order>;
|
|
174
174
|
/**
|
|
175
175
|
* @method
|
|
176
176
|
* @name phemex#cancelAllOrders
|
|
@@ -180,7 +180,7 @@ export default class phemex extends Exchange {
|
|
|
180
180
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
181
181
|
* @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
|
|
182
182
|
*/
|
|
183
|
-
cancelAllOrders(symbol?: Str, params?:
|
|
183
|
+
cancelAllOrders(symbol?: Str, params?: Dict): Promise<Order[]>;
|
|
184
184
|
/**
|
|
185
185
|
* @method
|
|
186
186
|
* @name phemex#fetchOrder
|
|
@@ -191,7 +191,7 @@ export default class phemex extends Exchange {
|
|
|
191
191
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
192
192
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
|
|
193
193
|
*/
|
|
194
|
-
fetchOrder(id: string, symbol?: Str, params?:
|
|
194
|
+
fetchOrder(id: string, symbol?: Str, params?: Dict): Promise<Order>;
|
|
195
195
|
/**
|
|
196
196
|
* @method
|
|
197
197
|
* @name phemex#fetchOrders
|
|
@@ -203,7 +203,7 @@ export default class phemex extends Exchange {
|
|
|
203
203
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
204
204
|
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
|
|
205
205
|
*/
|
|
206
|
-
fetchOrders(symbol?: Str, since?: Int, limit?: Int, params?:
|
|
206
|
+
fetchOrders(symbol?: Str, since?: Int, limit?: Int, params?: Dict): Promise<Order[]>;
|
|
207
207
|
/**
|
|
208
208
|
* @method
|
|
209
209
|
* @name phemex#fetchOpenOrders
|
|
@@ -217,7 +217,7 @@ export default class phemex extends Exchange {
|
|
|
217
217
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
218
218
|
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
|
|
219
219
|
*/
|
|
220
|
-
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?:
|
|
220
|
+
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: Dict): Promise<Order[]>;
|
|
221
221
|
/**
|
|
222
222
|
* @method
|
|
223
223
|
* @name phemex#fetchClosedOrders
|
|
@@ -233,7 +233,7 @@ export default class phemex extends Exchange {
|
|
|
233
233
|
* @param {string} [params.settle] the settlement currency to fetch orders for
|
|
234
234
|
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
|
|
235
235
|
*/
|
|
236
|
-
fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?:
|
|
236
|
+
fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?: Dict): Promise<Order[]>;
|
|
237
237
|
/**
|
|
238
238
|
* @method
|
|
239
239
|
* @name phemex#fetchMyTrades
|
|
@@ -247,7 +247,7 @@ export default class phemex extends Exchange {
|
|
|
247
247
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
248
248
|
* @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=trade-structure}
|
|
249
249
|
*/
|
|
250
|
-
fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?:
|
|
250
|
+
fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: Dict): Promise<Trade[]>;
|
|
251
251
|
/**
|
|
252
252
|
* @method
|
|
253
253
|
* @name phemex#fetchDepositAddress
|
|
@@ -257,7 +257,7 @@ export default class phemex extends Exchange {
|
|
|
257
257
|
* @param {string} [params.network] the chain name to fetch the deposit address e.g. ETH, TRX, EOS, SOL, etc.
|
|
258
258
|
* @returns {object} an [address structure]{@link https://docs.ccxt.com/?id=address-structure}
|
|
259
259
|
*/
|
|
260
|
-
fetchDepositAddress(code: string, params?:
|
|
260
|
+
fetchDepositAddress(code: string, params?: Dict): Promise<DepositAddress>;
|
|
261
261
|
/**
|
|
262
262
|
* @method
|
|
263
263
|
* @name phemex#fetchDeposits
|
|
@@ -268,7 +268,7 @@ export default class phemex extends Exchange {
|
|
|
268
268
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
269
269
|
* @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
|
|
270
270
|
*/
|
|
271
|
-
fetchDeposits(code?: Str, since?: Int, limit?: Int, params?:
|
|
271
|
+
fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: Dict): Promise<Transaction[]>;
|
|
272
272
|
/**
|
|
273
273
|
* @method
|
|
274
274
|
* @name phemex#fetchWithdrawals
|
|
@@ -279,7 +279,7 @@ export default class phemex extends Exchange {
|
|
|
279
279
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
280
280
|
* @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
|
|
281
281
|
*/
|
|
282
|
-
fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?:
|
|
282
|
+
fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: Dict): Promise<Transaction[]>;
|
|
283
283
|
parseTransactionStatus(status: Str): Str;
|
|
284
284
|
parseTransaction(transaction: Dict, currency?: Currency): Transaction;
|
|
285
285
|
/**
|
|
@@ -295,7 +295,7 @@ export default class phemex extends Exchange {
|
|
|
295
295
|
* @param {string} [params.method] *USDT contracts only* 'privateGetGAccountsAccountPositions' or 'privateGetGAccountsPositions' default is 'privateGetGAccountsAccountPositions'
|
|
296
296
|
* @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/?id=position-structure}
|
|
297
297
|
*/
|
|
298
|
-
fetchPositions(symbols?: Strings, params?:
|
|
298
|
+
fetchPositions(symbols?: Strings, params?: Dict): Promise<Position[]>;
|
|
299
299
|
/**
|
|
300
300
|
* @method
|
|
301
301
|
* @name phemex#fetchPositionHistory
|
|
@@ -308,7 +308,7 @@ export default class phemex extends Exchange {
|
|
|
308
308
|
* @param {int} [params.until] the latest time in ms to fetch positions for
|
|
309
309
|
* @returns {object[]} a list of [position structures]{@link https://docs.ccxt.com/?id=position-structure}
|
|
310
310
|
*/
|
|
311
|
-
fetchPositionHistory(symbol: string, since?: Int, limit?: Int, params?:
|
|
311
|
+
fetchPositionHistory(symbol: string, since?: Int, limit?: Int, params?: Dict): Promise<Position[]>;
|
|
312
312
|
parsePosition(position: Dict, market?: Market): Position;
|
|
313
313
|
/**
|
|
314
314
|
* @method
|
|
@@ -321,7 +321,7 @@ export default class phemex extends Exchange {
|
|
|
321
321
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
322
322
|
* @returns {object} a [funding history structure]{@link https://docs.ccxt.com/?id=funding-history-structure}
|
|
323
323
|
*/
|
|
324
|
-
fetchFundingHistory(symbol?: Str, since?: Int, limit?: Int, params?:
|
|
324
|
+
fetchFundingHistory(symbol?: Str, since?: Int, limit?: Int, params?: Dict): Promise<FundingHistory[]>;
|
|
325
325
|
parseFundingFeeToPrecision(value: any, market?: Market, currencyCode?: Str): any;
|
|
326
326
|
/**
|
|
327
327
|
* @method
|
|
@@ -343,8 +343,8 @@ export default class phemex extends Exchange {
|
|
|
343
343
|
* @param {object} [params] parameters specific to the exchange API endpoint
|
|
344
344
|
* @returns {object} A [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
|
|
345
345
|
*/
|
|
346
|
-
setMargin(symbol: string, amount: number, params?:
|
|
347
|
-
parseMarginStatus(status:
|
|
346
|
+
setMargin(symbol: string, amount: number, params?: Dict): Promise<MarginModification>;
|
|
347
|
+
parseMarginStatus(status: Str): Str;
|
|
348
348
|
parseMarginModification(data: Dict, market?: Market): MarginModification;
|
|
349
349
|
/**
|
|
350
350
|
* @method
|
|
@@ -356,7 +356,7 @@ export default class phemex extends Exchange {
|
|
|
356
356
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
357
357
|
* @returns {object} response from the exchange
|
|
358
358
|
*/
|
|
359
|
-
setMarginMode(marginMode: string, symbol?: Str, params?:
|
|
359
|
+
setMarginMode(marginMode: string, symbol?: Str, params?: Dict): Promise<Dict>;
|
|
360
360
|
/**
|
|
361
361
|
* @method
|
|
362
362
|
* @name phemex#setPositionMode
|
|
@@ -367,7 +367,7 @@ export default class phemex extends Exchange {
|
|
|
367
367
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
368
368
|
* @returns {object} response from the exchange
|
|
369
369
|
*/
|
|
370
|
-
setPositionMode(hedged: boolean, symbol?: Str, params?:
|
|
370
|
+
setPositionMode(hedged: boolean, symbol?: Str, params?: Dict): Promise<Dict>;
|
|
371
371
|
/**
|
|
372
372
|
* @method
|
|
373
373
|
* @name phemex#fetchLeverageTiers
|
|
@@ -376,14 +376,9 @@ export default class phemex extends Exchange {
|
|
|
376
376
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
377
377
|
* @returns {object} a dictionary of [leverage tiers structures]{@link https://docs.ccxt.com/?id=leverage-tiers-structure}, indexed by market symbols
|
|
378
378
|
*/
|
|
379
|
-
fetchLeverageTiers(symbols?: Strings, params?:
|
|
379
|
+
fetchLeverageTiers(symbols?: Strings, params?: Dict): Promise<LeverageTiers>;
|
|
380
380
|
parseMarketLeverageTiers(info: any, market?: Market): LeverageTier[];
|
|
381
|
-
sign(path: any, api?: any, method?: string, params?: Dict, headers?: NullableDict, body?: Str):
|
|
382
|
-
url: string;
|
|
383
|
-
method: string;
|
|
384
|
-
body: Str;
|
|
385
|
-
headers: NullableDict;
|
|
386
|
-
};
|
|
381
|
+
sign(path: any, api?: any, method?: string, params?: Dict, headers?: NullableDict, body?: Str): Dict;
|
|
387
382
|
/**
|
|
388
383
|
* @method
|
|
389
384
|
* @name phemex#setLeverage
|
|
@@ -397,7 +392,7 @@ export default class phemex extends Exchange {
|
|
|
397
392
|
* @param {float} [params.shortLeverageRr] *hedged mode only* set the leverage for short positions
|
|
398
393
|
* @returns {object} response from the exchange
|
|
399
394
|
*/
|
|
400
|
-
setLeverage(leverage: int, symbol?: Str, params?:
|
|
395
|
+
setLeverage(leverage: int, symbol?: Str, params?: Dict): Promise<Dict>;
|
|
401
396
|
/**
|
|
402
397
|
* @method
|
|
403
398
|
* @name phemex#transfer
|
|
@@ -412,7 +407,7 @@ export default class phemex extends Exchange {
|
|
|
412
407
|
* @param {string} [params.bizType] for transferring between main and sub-acounts either 'SPOT' or 'PERPETUAL' default is 'SPOT'
|
|
413
408
|
* @returns {object} a [transfer structure]{@link https://docs.ccxt.com/?id=transfer-structure}
|
|
414
409
|
*/
|
|
415
|
-
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?:
|
|
410
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: Dict): Promise<TransferEntry>;
|
|
416
411
|
/**
|
|
417
412
|
* @method
|
|
418
413
|
* @name phemex#fetchTransfers
|
|
@@ -424,7 +419,7 @@ export default class phemex extends Exchange {
|
|
|
424
419
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
425
420
|
* @returns {object[]} a list of [transfer structures]{@link https://docs.ccxt.com/?id=transfer-structure}
|
|
426
421
|
*/
|
|
427
|
-
fetchTransfers(code?: Str, since?: Int, limit?: Int, params?:
|
|
422
|
+
fetchTransfers(code?: Str, since?: Int, limit?: Int, params?: Dict): Promise<TransferEntry[]>;
|
|
428
423
|
parseTransfer(transfer: Dict, currency?: Currency): TransferEntry;
|
|
429
424
|
parseTransferStatus(status: Str): Str;
|
|
430
425
|
/**
|
|
@@ -440,7 +435,7 @@ export default class phemex extends Exchange {
|
|
|
440
435
|
* @param {int} [params.until] timestamp in ms of the latest funding rate
|
|
441
436
|
* @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/?id=funding-rate-history-structure}
|
|
442
437
|
*/
|
|
443
|
-
fetchFundingRateHistory(symbol?: Str, since?: Int, limit?: Int, params?:
|
|
438
|
+
fetchFundingRateHistory(symbol?: Str, since?: Int, limit?: Int, params?: Dict): Promise<FundingRateHistory[]>;
|
|
444
439
|
/**
|
|
445
440
|
* @method
|
|
446
441
|
* @name phemex#withdraw
|
|
@@ -454,7 +449,7 @@ export default class phemex extends Exchange {
|
|
|
454
449
|
* @param {string} [params.network] unified network code
|
|
455
450
|
* @returns {object} a [transaction structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
|
|
456
451
|
*/
|
|
457
|
-
withdraw(code: string, amount: number, address: string, tag?: Str, params?:
|
|
452
|
+
withdraw(code: string, amount: number, address: string, tag?: Str, params?: Dict): Promise<Transaction>;
|
|
458
453
|
/**
|
|
459
454
|
* @method
|
|
460
455
|
* @name phemex#fetchOpenInterest
|
|
@@ -464,8 +459,8 @@ export default class phemex extends Exchange {
|
|
|
464
459
|
* @param {object} [params] exchange specific parameters
|
|
465
460
|
* @returns {object} an open interest structure{@link https://docs.ccxt.com/?id=open-interest-structure}
|
|
466
461
|
*/
|
|
467
|
-
fetchOpenInterest(symbol: string, params?:
|
|
468
|
-
parseOpenInterest(interest: any, market?: Market):
|
|
462
|
+
fetchOpenInterest(symbol: string, params?: Dict): Promise<OpenInterest>;
|
|
463
|
+
parseOpenInterest(interest: any, market?: Market): OpenInterest;
|
|
469
464
|
/**
|
|
470
465
|
* @method
|
|
471
466
|
* @name phemex#fetchConvertQuote
|
|
@@ -477,7 +472,7 @@ export default class phemex extends Exchange {
|
|
|
477
472
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
478
473
|
* @returns {object} a [conversion structure]{@link https://docs.ccxt.com/?id=conversion-structure}
|
|
479
474
|
*/
|
|
480
|
-
fetchConvertQuote(fromCode: string, toCode: string, amount?: Num, params?:
|
|
475
|
+
fetchConvertQuote(fromCode: string, toCode: string, amount?: Num, params?: Dict): Promise<Conversion>;
|
|
481
476
|
/**
|
|
482
477
|
* @method
|
|
483
478
|
* @name phemex#createConvertTrade
|
|
@@ -490,7 +485,7 @@ export default class phemex extends Exchange {
|
|
|
490
485
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
491
486
|
* @returns {object} a [conversion structure]{@link https://docs.ccxt.com/?id=conversion-structure}
|
|
492
487
|
*/
|
|
493
|
-
createConvertTrade(id: string, fromCode: string, toCode: string, amount?: Num, params?:
|
|
488
|
+
createConvertTrade(id: string, fromCode: string, toCode: string, amount?: Num, params?: Dict): Promise<Conversion>;
|
|
494
489
|
/**
|
|
495
490
|
* @method
|
|
496
491
|
* @name phemex#fetchConvertTradeHistory
|
|
@@ -505,7 +500,7 @@ export default class phemex extends Exchange {
|
|
|
505
500
|
* @param {string} [params.toCurrency] the currency that you bought and converted into
|
|
506
501
|
* @returns {object[]} a list of [conversion structures]{@link https://docs.ccxt.com/?id=conversion-structure}
|
|
507
502
|
*/
|
|
508
|
-
fetchConvertTradeHistory(code?: Str, since?: Int, limit?: Int, params?:
|
|
503
|
+
fetchConvertTradeHistory(code?: Str, since?: Int, limit?: Int, params?: Dict): Promise<Conversion[]>;
|
|
509
504
|
parseConversion(conversion: Dict, fromCurrency?: Currency, toCurrency?: Currency): Conversion;
|
|
510
505
|
/**
|
|
511
506
|
* @method
|
|
@@ -520,7 +515,7 @@ export default class phemex extends Exchange {
|
|
|
520
515
|
* @param {string} [params.method] *USDT contracts only* 'privateGetGAccountsAccountPositions' or 'privateGetGAccountsPositions' default is 'privateGetGAccountsAccountPositions'
|
|
521
516
|
* @returns {object} an array of [auto de leverage structures]{@link https://docs.ccxt.com/?id=auto-de-leverage-structure}
|
|
522
517
|
*/
|
|
523
|
-
fetchPositionsADLRank(symbols?: Strings, params?:
|
|
518
|
+
fetchPositionsADLRank(symbols?: Strings, params?: Dict): Promise<ADL[]>;
|
|
524
519
|
parseADLRank(info: Dict, market?: Market): ADL;
|
|
525
520
|
handleErrors(httpCode: int, reason: string, url: string, method: string, headers: Dict, body: string, response: any, requestHeaders: any, requestBody: any): undefined;
|
|
526
521
|
}
|
package/js/src/phemex.js
CHANGED
|
@@ -1065,7 +1065,7 @@ export default class phemex extends Exchange {
|
|
|
1065
1065
|
//
|
|
1066
1066
|
const v1ProductsPromise = this.v1GetExchangePublicProducts(params);
|
|
1067
1067
|
const [v2Products, v1Products] = await Promise.all([v2ProductsPromise, v1ProductsPromise]);
|
|
1068
|
-
const v1ProductsData = this.
|
|
1068
|
+
const v1ProductsData = this.safeList(v1Products, 'data', []);
|
|
1069
1069
|
//
|
|
1070
1070
|
// {
|
|
1071
1071
|
// "code":0,
|
|
@@ -1158,8 +1158,8 @@ export default class phemex extends Exchange {
|
|
|
1158
1158
|
// ...
|
|
1159
1159
|
// }
|
|
1160
1160
|
// }
|
|
1161
|
-
const data = this.
|
|
1162
|
-
const currencies = this.
|
|
1161
|
+
const data = this.safeDict(response, 'data', {});
|
|
1162
|
+
const currencies = this.safeList(data, 'currencies', []);
|
|
1163
1163
|
return this.parseCurrencies(currencies);
|
|
1164
1164
|
}
|
|
1165
1165
|
parseCurrency(rawCurrency) {
|
|
@@ -1294,8 +1294,8 @@ export default class phemex extends Exchange {
|
|
|
1294
1294
|
// }
|
|
1295
1295
|
// }
|
|
1296
1296
|
//
|
|
1297
|
-
const result = this.
|
|
1298
|
-
const book = this.
|
|
1297
|
+
const result = this.safeDict(response, 'result', {});
|
|
1298
|
+
const book = this.safeDict2(result, 'book', 'orderbook_p', {});
|
|
1299
1299
|
const timestamp = this.safeIntegerProduct(result, 'timestamp', 0.000001);
|
|
1300
1300
|
const orderbook = this.customParseOrderBook(book, symbol, timestamp, 'bids', 'asks', 0, 1, market);
|
|
1301
1301
|
orderbook['nonce'] = this.safeInteger(result, 'sequence');
|
|
@@ -1472,7 +1472,7 @@ export default class phemex extends Exchange {
|
|
|
1472
1472
|
// }
|
|
1473
1473
|
// }
|
|
1474
1474
|
//
|
|
1475
|
-
const data = this.
|
|
1475
|
+
const data = this.safeDict(response, 'data', {});
|
|
1476
1476
|
const rows = this.safeList(data, 'rows', []);
|
|
1477
1477
|
return this.parseOHLCVs(rows, market, timeframe, since, userLimit);
|
|
1478
1478
|
}
|
|
@@ -1658,7 +1658,7 @@ export default class phemex extends Exchange {
|
|
|
1658
1658
|
}
|
|
1659
1659
|
let market = undefined;
|
|
1660
1660
|
if (symbols !== undefined) {
|
|
1661
|
-
const first = this.
|
|
1661
|
+
const first = this.safeString(symbols, 0);
|
|
1662
1662
|
market = this.market(first);
|
|
1663
1663
|
}
|
|
1664
1664
|
let type = undefined;
|
|
@@ -1723,8 +1723,8 @@ export default class phemex extends Exchange {
|
|
|
1723
1723
|
// }
|
|
1724
1724
|
// }
|
|
1725
1725
|
//
|
|
1726
|
-
const result = this.
|
|
1727
|
-
const trades = this.
|
|
1726
|
+
const result = this.safeDict(response, 'result', {});
|
|
1727
|
+
const trades = this.safeList2(result, 'trades', 'trades_p', []);
|
|
1728
1728
|
return this.parseTrades(trades, market, since, limit);
|
|
1729
1729
|
}
|
|
1730
1730
|
parseTrade(trade, market = undefined) {
|
|
@@ -1996,7 +1996,7 @@ export default class phemex extends Exchange {
|
|
|
1996
1996
|
feeCurrencyCode = this.safeCurrencyCode(this.safeString(trade, 'feeCurrency'));
|
|
1997
1997
|
}
|
|
1998
1998
|
else {
|
|
1999
|
-
const info = this.
|
|
1999
|
+
const info = this.safeDict(market, 'info');
|
|
2000
2000
|
if (info !== undefined) {
|
|
2001
2001
|
const settlementCurrencyId = this.safeString(info, 'settlementCurrency');
|
|
2002
2002
|
feeCurrencyCode = this.safeCurrencyCode(settlementCurrencyId);
|
|
@@ -2064,7 +2064,7 @@ export default class phemex extends Exchange {
|
|
|
2064
2064
|
const balance = data[i];
|
|
2065
2065
|
const currencyId = this.safeString(balance, 'currency');
|
|
2066
2066
|
const code = this.safeCurrencyCode(currencyId);
|
|
2067
|
-
const currency = this.
|
|
2067
|
+
const currency = this.safeDict(this.currencies, code, {});
|
|
2068
2068
|
const scale = this.safeInteger(currency, 'valueScale', 8);
|
|
2069
2069
|
const account = this.account();
|
|
2070
2070
|
const balanceEv = this.safeString(balance, 'balanceEv');
|
|
@@ -2116,8 +2116,8 @@ export default class phemex extends Exchange {
|
|
|
2116
2116
|
// }
|
|
2117
2117
|
//
|
|
2118
2118
|
const result = { 'info': response };
|
|
2119
|
-
const data = this.
|
|
2120
|
-
const balance = this.
|
|
2119
|
+
const data = this.safeDict(response, 'data', {});
|
|
2120
|
+
const balance = this.safeDict(data, 'account', {});
|
|
2121
2121
|
const currencyId = this.safeString(balance, 'currency');
|
|
2122
2122
|
const code = this.safeCurrencyCode(currencyId);
|
|
2123
2123
|
const currency = this.currency(code);
|
|
@@ -2721,8 +2721,8 @@ export default class phemex extends Exchange {
|
|
|
2721
2721
|
// 'posSide': Position direction - "Merged" for oneway mode , "Long" / "Short" for hedge mode
|
|
2722
2722
|
};
|
|
2723
2723
|
const clientOrderId = this.safeString2(params, 'clOrdID', 'clientOrderId');
|
|
2724
|
-
const stopLoss = this.
|
|
2725
|
-
const takeProfit = this.
|
|
2724
|
+
const stopLoss = this.safeDict(params, 'stopLoss');
|
|
2725
|
+
const takeProfit = this.safeDict(params, 'takeProfit');
|
|
2726
2726
|
const hasStopLoss = (stopLoss !== undefined);
|
|
2727
2727
|
const hasTakeProfit = (takeProfit !== undefined);
|
|
2728
2728
|
const isStableSettled = (market['settle'] === 'USDT') || (market['settle'] === 'USDC');
|
|
@@ -2747,7 +2747,7 @@ export default class phemex extends Exchange {
|
|
|
2747
2747
|
}
|
|
2748
2748
|
params = this.omit(params, ['stopPx', 'stopPrice', 'stopLoss', 'takeProfit', 'triggerPrice']);
|
|
2749
2749
|
if (market['spot'] === true) {
|
|
2750
|
-
let qtyType = this.
|
|
2750
|
+
let qtyType = this.safeString(params, 'qtyType', 'ByBase');
|
|
2751
2751
|
if ((type === 'Market') || (type === 'Stop') || (type === 'MarketIfTouched')) {
|
|
2752
2752
|
if (price !== undefined) {
|
|
2753
2753
|
qtyType = 'ByQuote';
|
|
@@ -2840,7 +2840,7 @@ export default class phemex extends Exchange {
|
|
|
2840
2840
|
}
|
|
2841
2841
|
if (hasStopLoss || hasTakeProfit) {
|
|
2842
2842
|
if (hasStopLoss) {
|
|
2843
|
-
const stopLossTriggerPrice = this.
|
|
2843
|
+
const stopLossTriggerPrice = this.safeNumber2(stopLoss, 'triggerPrice', 'stopPrice');
|
|
2844
2844
|
if (stopLossTriggerPrice === undefined) {
|
|
2845
2845
|
throw new InvalidOrder(this.id + ' createOrder() requires a trigger price in params["stopLoss"]["triggerPrice"] for a stop loss order');
|
|
2846
2846
|
}
|
|
@@ -2860,7 +2860,7 @@ export default class phemex extends Exchange {
|
|
|
2860
2860
|
}
|
|
2861
2861
|
}
|
|
2862
2862
|
if (hasTakeProfit) {
|
|
2863
|
-
const takeProfitTriggerPrice = this.
|
|
2863
|
+
const takeProfitTriggerPrice = this.safeNumber2(takeProfit, 'triggerPrice', 'stopPrice');
|
|
2864
2864
|
if (takeProfitTriggerPrice === undefined) {
|
|
2865
2865
|
throw new InvalidOrder(this.id + ' createOrder() requires a trigger price in params["takeProfit"]["triggerPrice"] for a take profit order');
|
|
2866
2866
|
}
|
|
@@ -3144,7 +3144,7 @@ export default class phemex extends Exchange {
|
|
|
3144
3144
|
await this.loadMarkets();
|
|
3145
3145
|
}
|
|
3146
3146
|
const market = this.market(symbol);
|
|
3147
|
-
const trigger = this.
|
|
3147
|
+
const trigger = this.safeBool2(params, 'stop', 'trigger', false);
|
|
3148
3148
|
params = this.omit(params, ['stop', 'trigger']);
|
|
3149
3149
|
const request = {
|
|
3150
3150
|
'symbol': market['id'],
|
|
@@ -3659,7 +3659,7 @@ export default class phemex extends Exchange {
|
|
|
3659
3659
|
// }
|
|
3660
3660
|
// }
|
|
3661
3661
|
//
|
|
3662
|
-
const data = this.
|
|
3662
|
+
const data = this.safeDict(response, 'data', {});
|
|
3663
3663
|
const address = this.safeString(data, 'address');
|
|
3664
3664
|
const tag = this.safeString(data, 'tag');
|
|
3665
3665
|
this.checkAddress(address);
|
|
@@ -3853,7 +3853,7 @@ export default class phemex extends Exchange {
|
|
|
3853
3853
|
const networkId = this.safeString(transaction, 'chainName');
|
|
3854
3854
|
const timestamp = this.safeIntegerN(transaction, ['createdAt', 'submitedAt', 'submittedAt']);
|
|
3855
3855
|
let type = this.safeStringLower(transaction, 'type');
|
|
3856
|
-
let feeCost = this.parseNumber(this.fromEn(this.safeString(transaction, 'feeEv'), this.
|
|
3856
|
+
let feeCost = this.parseNumber(this.fromEn(this.safeString(transaction, 'feeEv'), this.safeInteger(currency, 'valueScale')));
|
|
3857
3857
|
if (feeCost === undefined) {
|
|
3858
3858
|
feeCost = this.safeNumber(transaction, 'feeRv');
|
|
3859
3859
|
}
|
|
@@ -3866,7 +3866,7 @@ export default class phemex extends Exchange {
|
|
|
3866
3866
|
};
|
|
3867
3867
|
}
|
|
3868
3868
|
const status = this.parseTransactionStatus(this.safeString(transaction, 'status'));
|
|
3869
|
-
let amount = this.parseNumber(this.fromEn(this.safeString(transaction, 'amountEv'), this.
|
|
3869
|
+
let amount = this.parseNumber(this.fromEn(this.safeString(transaction, 'amountEv'), this.safeInteger(currency, 'valueScale')));
|
|
3870
3870
|
if (amount === undefined) {
|
|
3871
3871
|
amount = this.safeNumber(transaction, 'amountRv');
|
|
3872
3872
|
}
|
|
@@ -4030,7 +4030,7 @@ export default class phemex extends Exchange {
|
|
|
4030
4030
|
// }
|
|
4031
4031
|
// }
|
|
4032
4032
|
//
|
|
4033
|
-
const data = this.
|
|
4033
|
+
const data = this.safeDict(response, 'data', {});
|
|
4034
4034
|
const positions = this.safeList(data, 'positions', []);
|
|
4035
4035
|
const result = [];
|
|
4036
4036
|
for (let i = 0; i < positions.length; i++) {
|
|
@@ -4202,7 +4202,7 @@ export default class phemex extends Exchange {
|
|
|
4202
4202
|
const liquidationPrice = this.safeNumber2(position, 'liquidationPrice', 'liquidationPriceRp');
|
|
4203
4203
|
const markPriceString = this.safeString2(position, 'markPrice', 'markPriceRp');
|
|
4204
4204
|
const contracts = this.safeStringN(position, ['size', 'sizeRq', 'closedSizeRq']);
|
|
4205
|
-
const contractSize = this.
|
|
4205
|
+
const contractSize = this.safeNumber(market, 'contractSize');
|
|
4206
4206
|
const contractSizeString = this.numberToString(contractSize);
|
|
4207
4207
|
const leverage = this.parseNumber(Precise.stringAbs((this.safeString2(position, 'leverage', 'leverageRr'))));
|
|
4208
4208
|
const entryPriceString = this.safeStringN(position, ['avgEntryPrice', 'avgEntryPriceRp', 'openPrice']);
|
|
@@ -4238,7 +4238,7 @@ export default class phemex extends Exchange {
|
|
|
4238
4238
|
// the unrealizedPnl is only available in a specific endpoint which much higher RL limits
|
|
4239
4239
|
const apiUnrealizedPnl = this.safeString(position, 'unRealisedPnlRv', unrealizedPnl);
|
|
4240
4240
|
const marginRatio = Precise.stringDiv(maintenanceMarginString, collateral);
|
|
4241
|
-
const isCross = this.
|
|
4241
|
+
const isCross = this.safeBool(position, 'crossMargin');
|
|
4242
4242
|
const timestamp = this.safeInteger(position, 'openedTimeNs');
|
|
4243
4243
|
const lastUpdateTimestamp = this.safeInteger(position, 'updatedTimeNs', this.safeIntegerProduct(position, 'transactTimeNs', 0.000001));
|
|
4244
4244
|
return this.safePosition({
|
|
@@ -4333,7 +4333,7 @@ export default class phemex extends Exchange {
|
|
|
4333
4333
|
// }
|
|
4334
4334
|
// }
|
|
4335
4335
|
//
|
|
4336
|
-
const data = this.
|
|
4336
|
+
const data = this.safeDict(response, 'data', {});
|
|
4337
4337
|
const rows = this.safeList(data, 'rows', []);
|
|
4338
4338
|
const result = [];
|
|
4339
4339
|
for (let i = 0; i < rows.length; i++) {
|
|
@@ -4416,7 +4416,7 @@ export default class phemex extends Exchange {
|
|
|
4416
4416
|
// }
|
|
4417
4417
|
// }
|
|
4418
4418
|
//
|
|
4419
|
-
const result = this.
|
|
4419
|
+
const result = this.safeDict(response, 'result', {});
|
|
4420
4420
|
return this.parseFundingRate(result, market);
|
|
4421
4421
|
}
|
|
4422
4422
|
parseFundingRate(contract, market = undefined) {
|
|
@@ -4531,7 +4531,7 @@ export default class phemex extends Exchange {
|
|
|
4531
4531
|
// }
|
|
4532
4532
|
//
|
|
4533
4533
|
market = this.safeMarket(undefined, market);
|
|
4534
|
-
const inverse = this.
|
|
4534
|
+
const inverse = this.safeBool(market, 'inverse');
|
|
4535
4535
|
const codeCurrency = (inverse === true) ? 'base' : 'quote';
|
|
4536
4536
|
return {
|
|
4537
4537
|
'info': data,
|
|
@@ -4636,7 +4636,7 @@ export default class phemex extends Exchange {
|
|
|
4636
4636
|
await this.loadMarkets();
|
|
4637
4637
|
}
|
|
4638
4638
|
if (symbols !== undefined) {
|
|
4639
|
-
const first = this.
|
|
4639
|
+
const first = this.safeString(symbols, 0);
|
|
4640
4640
|
const market = this.market(first);
|
|
4641
4641
|
if (market['settle'] !== 'USD') {
|
|
4642
4642
|
throw new BadSymbol(this.id + ' fetchLeverageTiers() supports USD settled markets only');
|
|
@@ -4721,7 +4721,7 @@ export default class phemex extends Exchange {
|
|
|
4721
4721
|
// }
|
|
4722
4722
|
//
|
|
4723
4723
|
//
|
|
4724
|
-
const data = this.
|
|
4724
|
+
const data = this.safeDict(response, 'data', {});
|
|
4725
4725
|
const riskLimits = this.safeList(data, 'riskLimits');
|
|
4726
4726
|
return this.parseLeverageTiers(riskLimits, symbols, 'symbol');
|
|
4727
4727
|
}
|
|
@@ -4874,7 +4874,7 @@ export default class phemex extends Exchange {
|
|
|
4874
4874
|
await this.loadMarkets();
|
|
4875
4875
|
}
|
|
4876
4876
|
const currency = this.currency(code);
|
|
4877
|
-
const accountsByType = this.
|
|
4877
|
+
const accountsByType = this.safeDict(this.options, 'accountsByType', {});
|
|
4878
4878
|
const fromId = this.safeString(accountsByType, fromAccount, fromAccount);
|
|
4879
4879
|
const toId = this.safeString(accountsByType, toAccount, toAccount);
|
|
4880
4880
|
const scaledAmmount = this.toEv(amount, currency);
|
|
@@ -4907,7 +4907,7 @@ export default class phemex extends Exchange {
|
|
|
4907
4907
|
// }
|
|
4908
4908
|
// }
|
|
4909
4909
|
//
|
|
4910
|
-
const data = this.
|
|
4910
|
+
const data = this.safeDict(response, 'data', {});
|
|
4911
4911
|
transfer = this.parseTransfer(data, currency);
|
|
4912
4912
|
}
|
|
4913
4913
|
else { // sub account transfer
|
|
@@ -4928,7 +4928,7 @@ export default class phemex extends Exchange {
|
|
|
4928
4928
|
//
|
|
4929
4929
|
transfer = this.parseTransfer(response);
|
|
4930
4930
|
}
|
|
4931
|
-
const transferOptions = this.
|
|
4931
|
+
const transferOptions = this.safeDict(this.options, 'transfer', {});
|
|
4932
4932
|
const fillResponseFromRequest = this.safeBool(transferOptions, 'fillResponseFromRequest', true);
|
|
4933
4933
|
if (fillResponseFromRequest === true) {
|
|
4934
4934
|
if (transfer['fromAccount'] === undefined) {
|
|
@@ -4995,7 +4995,7 @@ export default class phemex extends Exchange {
|
|
|
4995
4995
|
// }
|
|
4996
4996
|
// }
|
|
4997
4997
|
//
|
|
4998
|
-
const data = this.
|
|
4998
|
+
const data = this.safeDict(response, 'data', {});
|
|
4999
4999
|
const transfers = this.safeList(data, 'rows', []);
|
|
5000
5000
|
return this.parseTransfers(transfers, currency, since, limit);
|
|
5001
5001
|
}
|
|
@@ -5134,7 +5134,7 @@ export default class phemex extends Exchange {
|
|
|
5134
5134
|
// }
|
|
5135
5135
|
// }
|
|
5136
5136
|
//
|
|
5137
|
-
const data = this.
|
|
5137
|
+
const data = this.safeDict(response, 'data', {});
|
|
5138
5138
|
const rates = this.safeValue(data, 'rows');
|
|
5139
5139
|
const result = [];
|
|
5140
5140
|
for (let i = 0; i < rates.length; i++) {
|
|
@@ -5734,7 +5734,7 @@ export default class phemex extends Exchange {
|
|
|
5734
5734
|
// }
|
|
5735
5735
|
//
|
|
5736
5736
|
}
|
|
5737
|
-
const data = this.
|
|
5737
|
+
const data = this.safeDict(response, 'data', {});
|
|
5738
5738
|
const ranks = this.safeList(data, 'positions', []);
|
|
5739
5739
|
const result = [];
|
|
5740
5740
|
for (let i = 0; i < ranks.length; i++) {
|
|
@@ -5881,7 +5881,7 @@ export default class phemex extends Exchange {
|
|
|
5881
5881
|
// {"code":412,"msg":"Missing parameter - to","data":null}
|
|
5882
5882
|
// {"error":{"code":6001,"message":"invalid argument"},"id":null,"result":null}
|
|
5883
5883
|
//
|
|
5884
|
-
const error = this.
|
|
5884
|
+
const error = this.safeDict(response, 'error', response);
|
|
5885
5885
|
const errorCode = this.safeString(error, 'code');
|
|
5886
5886
|
const message = this.safeString(error, 'msg');
|
|
5887
5887
|
if ((errorCode !== undefined) && (errorCode !== '0')) {
|