ccxt 4.1.53 → 4.1.55
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 +8 -7
- package/dist/ccxt.browser.js +2329 -818
- package/dist/ccxt.browser.min.js +10 -10
- package/dist/cjs/ccxt.js +4 -1
- package/dist/cjs/src/abstract/p2b.js +9 -0
- package/dist/cjs/src/ace.js +2 -2
- package/dist/cjs/src/alpaca.js +1 -1
- package/dist/cjs/src/base/Exchange.js +25 -62
- package/dist/cjs/src/base/errors.js +1 -1
- package/dist/cjs/src/bigone.js +1 -6
- package/dist/cjs/src/binance.js +10 -3
- package/dist/cjs/src/bingx.js +1 -1
- package/dist/cjs/src/bitget.js +670 -405
- package/dist/cjs/src/bitmart.js +29 -62
- package/dist/cjs/src/bitmex.js +2 -2
- package/dist/cjs/src/bittrex.js +1 -3
- package/dist/cjs/src/coinbase.js +53 -3
- package/dist/cjs/src/coinex.js +23 -33
- package/dist/cjs/src/coinone.js +2 -2
- package/dist/cjs/src/digifinex.js +2 -2
- package/dist/cjs/src/idex.js +2 -2
- package/dist/cjs/src/kuna.js +6 -0
- package/dist/cjs/src/p2b.js +1246 -0
- package/dist/cjs/src/phemex.js +8 -8
- package/dist/cjs/src/poloniex.js +3 -2
- package/dist/cjs/src/poloniexfutures.js +1 -1
- package/dist/cjs/src/pro/hitbtc.js +1 -1
- package/dist/cjs/src/tidex.js +2 -2
- package/dist/cjs/src/timex.js +1 -1
- package/dist/cjs/src/whitebit.js +2 -2
- package/js/ccxt.d.ts +5 -2
- package/js/ccxt.js +4 -2
- package/js/src/abstract/binance.d.ts +1 -0
- package/js/src/abstract/binancecoinm.d.ts +1 -0
- package/js/src/abstract/binanceus.d.ts +1 -0
- package/js/src/abstract/binanceusdm.d.ts +1 -0
- package/js/src/abstract/bitget.d.ts +495 -254
- package/js/src/abstract/coinbase.d.ts +2 -0
- package/js/src/abstract/p2b.d.ts +25 -0
- package/js/src/abstract/p2b.js +11 -0
- package/js/src/ace.d.ts +7 -7
- package/js/src/ace.js +2 -2
- package/js/src/alpaca.d.ts +4 -4
- package/js/src/alpaca.js +1 -1
- package/js/src/ascendex.d.ts +26 -26
- package/js/src/base/Exchange.d.ts +48 -48
- package/js/src/base/Exchange.js +25 -62
- package/js/src/base/Precise.d.ts +13 -12
- package/js/src/base/errorHierarchy.d.ts +10 -9
- package/js/src/base/errorHierarchy.js +10 -9
- package/js/src/base/errors.d.ts +1 -1
- package/js/src/base/errors.js +1 -1
- package/js/src/base/functions/type.d.ts +18 -18
- package/js/src/base/types.d.ts +27 -23
- package/js/src/bigone.d.ts +9 -9
- package/js/src/bigone.js +1 -6
- package/js/src/binance.d.ts +57 -100
- package/js/src/binance.js +10 -3
- package/js/src/binancecoinm.d.ts +2 -2
- package/js/src/binanceusdm.d.ts +2 -2
- package/js/src/bingx.d.ts +22 -22
- package/js/src/bingx.js +1 -1
- package/js/src/bit2c.d.ts +7 -7
- package/js/src/bitbank.d.ts +7 -7
- package/js/src/bitbns.d.ts +6 -6
- package/js/src/bitfinex.d.ts +12 -12
- package/js/src/bitfinex2.d.ts +19 -19
- package/js/src/bitflyer.d.ts +8 -8
- package/js/src/bitforex.d.ts +5 -5
- package/js/src/bitget.d.ts +44 -44
- package/js/src/bitget.js +670 -405
- package/js/src/bithumb.d.ts +8 -8
- package/js/src/bitmart.d.ts +41 -36
- package/js/src/bitmart.js +29 -62
- package/js/src/bitmex.d.ts +21 -21
- package/js/src/bitmex.js +2 -2
- package/js/src/bitopro.d.ts +10 -10
- package/js/src/bitpanda.d.ts +10 -10
- package/js/src/bitrue.d.ts +11 -11
- package/js/src/bitso.d.ts +9 -9
- package/js/src/bitstamp.d.ts +13 -13
- package/js/src/bittrex.d.ts +14 -14
- package/js/src/bittrex.js +1 -3
- package/js/src/bitvavo.d.ts +9 -9
- package/js/src/bl3p.d.ts +3 -3
- package/js/src/blockchaincom.d.ts +6 -6
- package/js/src/btcalpha.d.ts +8 -8
- package/js/src/btcbox.d.ts +4 -4
- package/js/src/btcmarkets.d.ts +7 -7
- package/js/src/btcturk.d.ts +7 -7
- package/js/src/bybit.d.ts +36 -79
- package/js/src/cex.d.ts +6 -6
- package/js/src/coinbase.d.ts +16 -15
- package/js/src/coinbase.js +53 -3
- package/js/src/coinbasepro.d.ts +10 -10
- package/js/src/coincheck.d.ts +5 -5
- package/js/src/coinex.d.ts +52 -46
- package/js/src/coinex.js +23 -33
- package/js/src/coinlist.d.ts +14 -14
- package/js/src/coinmate.d.ts +5 -5
- package/js/src/coinone.d.ts +5 -5
- package/js/src/coinone.js +2 -2
- package/js/src/coinsph.d.ts +13 -13
- package/js/src/coinspot.d.ts +4 -4
- package/js/src/cryptocom.d.ts +19 -19
- package/js/src/currencycom.d.ts +14 -14
- package/js/src/delta.d.ts +29 -72
- package/js/src/deribit.d.ts +21 -21
- package/js/src/digifinex.d.ts +39 -39
- package/js/src/digifinex.js +2 -2
- package/js/src/exmo.d.ts +15 -15
- package/js/src/gate.d.ts +46 -89
- package/js/src/gemini.d.ts +8 -8
- package/js/src/hitbtc.d.ts +28 -28
- package/js/src/hollaex.d.ts +13 -13
- package/js/src/htx.d.ts +38 -38
- package/js/src/huobijp.d.ts +10 -10
- package/js/src/idex.d.ts +7 -7
- package/js/src/idex.js +2 -2
- package/js/src/independentreserve.d.ts +4 -4
- package/js/src/indodax.d.ts +7 -7
- package/js/src/kraken.d.ts +17 -17
- package/js/src/krakenfutures.d.ts +15 -15
- package/js/src/kucoin.d.ts +24 -24
- package/js/src/kucoinfutures.d.ts +16 -16
- package/js/src/kuna.d.ts +11 -11
- package/js/src/kuna.js +2 -2
- package/js/src/latoken.d.ts +11 -11
- package/js/src/lbank.d.ts +11 -11
- package/js/src/luno.d.ts +7 -7
- package/js/src/lykke.d.ts +6 -6
- package/js/src/mercado.d.ts +6 -6
- package/js/src/mexc.d.ts +25 -25
- package/js/src/ndax.d.ts +10 -10
- package/js/src/novadax.d.ts +13 -13
- package/js/src/oceanex.d.ts +8 -8
- package/js/src/okcoin.d.ts +16 -16
- package/js/src/okx.d.ts +50 -93
- package/js/src/p2b.d.ts +35 -0
- package/js/src/p2b.js +1246 -0
- package/js/src/paymium.d.ts +10 -10
- package/js/src/phemex.d.ts +34 -34
- package/js/src/phemex.js +8 -8
- package/js/src/poloniex.d.ts +14 -14
- package/js/src/poloniex.js +3 -2
- package/js/src/poloniexfutures.d.ts +10 -10
- package/js/src/poloniexfutures.js +1 -1
- package/js/src/pro/binance.d.ts +5 -5
- package/js/src/pro/bitget.d.ts +3 -3
- package/js/src/pro/bitpanda.d.ts +3 -3
- package/js/src/pro/bybit.d.ts +4 -4
- package/js/src/pro/cex.d.ts +2 -2
- package/js/src/pro/coinbasepro.d.ts +4 -4
- package/js/src/pro/coinex.d.ts +2 -2
- package/js/src/pro/cryptocom.d.ts +3 -3
- package/js/src/pro/currencycom.d.ts +1 -1
- package/js/src/pro/gate.d.ts +4 -4
- package/js/src/pro/hitbtc.d.ts +2 -2
- package/js/src/pro/hitbtc.js +1 -1
- package/js/src/pro/htx.d.ts +2 -2
- package/js/src/pro/kraken.d.ts +1 -1
- package/js/src/pro/krakenfutures.d.ts +3 -3
- package/js/src/pro/kucoin.d.ts +2 -2
- package/js/src/pro/okx.d.ts +4 -4
- package/js/src/pro/poloniex.d.ts +2 -2
- package/js/src/pro/poloniexfutures.d.ts +1 -1
- package/js/src/pro/wazirx.d.ts +2 -2
- package/js/src/pro/woo.d.ts +2 -2
- package/js/src/probit.d.ts +13 -13
- package/js/src/tidex.d.ts +7 -7
- package/js/src/tidex.js +2 -2
- package/js/src/timex.d.ts +13 -13
- package/js/src/timex.js +1 -1
- package/js/src/tokocrypto.d.ts +8 -8
- package/js/src/upbit.d.ts +21 -21
- package/js/src/wavesexchange.d.ts +10 -10
- package/js/src/wazirx.d.ts +7 -7
- package/js/src/whitebit.d.ts +17 -17
- package/js/src/whitebit.js +2 -2
- package/js/src/woo.d.ts +23 -23
- package/js/src/yobit.d.ts +6 -6
- package/js/src/zaif.d.ts +6 -6
- package/js/src/zonda.d.ts +16 -16
- package/package.json +11 -6
- package/skip-tests.json +7 -0
|
@@ -59,6 +59,8 @@ interface Exchange {
|
|
|
59
59
|
v3PrivateGetBrokerageBestBidAsk(params?: {}): Promise<implicitReturnType>;
|
|
60
60
|
v3PrivatePostBrokerageOrders(params?: {}): Promise<implicitReturnType>;
|
|
61
61
|
v3PrivatePostBrokerageOrdersBatchCancel(params?: {}): Promise<implicitReturnType>;
|
|
62
|
+
v3PrivatePostBrokerageOrdersEdit(params?: {}): Promise<implicitReturnType>;
|
|
63
|
+
v3PrivatePostBrokerageOrdersEditPreview(params?: {}): Promise<implicitReturnType>;
|
|
62
64
|
}
|
|
63
65
|
declare abstract class Exchange extends _Exchange {
|
|
64
66
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { implicitReturnType } from '../base/types.js';
|
|
2
|
+
import { Exchange as _Exchange } from '../base/Exchange.js';
|
|
3
|
+
interface Exchange {
|
|
4
|
+
publicGetMarkets(params?: {}): Promise<implicitReturnType>;
|
|
5
|
+
publicGetMarket(params?: {}): Promise<implicitReturnType>;
|
|
6
|
+
publicGetTickers(params?: {}): Promise<implicitReturnType>;
|
|
7
|
+
publicGetTicker(params?: {}): Promise<implicitReturnType>;
|
|
8
|
+
publicGetBook(params?: {}): Promise<implicitReturnType>;
|
|
9
|
+
publicGetHistory(params?: {}): Promise<implicitReturnType>;
|
|
10
|
+
publicGetDepthResult(params?: {}): Promise<implicitReturnType>;
|
|
11
|
+
publicGetMarketKline(params?: {}): Promise<implicitReturnType>;
|
|
12
|
+
privatePostAccountBalances(params?: {}): Promise<implicitReturnType>;
|
|
13
|
+
privatePostAccountBalance(params?: {}): Promise<implicitReturnType>;
|
|
14
|
+
privatePostOrderNew(params?: {}): Promise<implicitReturnType>;
|
|
15
|
+
privatePostOrderCancel(params?: {}): Promise<implicitReturnType>;
|
|
16
|
+
privatePostOrders(params?: {}): Promise<implicitReturnType>;
|
|
17
|
+
privatePostAccountMarketOrderHistory(params?: {}): Promise<implicitReturnType>;
|
|
18
|
+
privatePostAccountMarketDealHistory(params?: {}): Promise<implicitReturnType>;
|
|
19
|
+
privatePostAccountOrder(params?: {}): Promise<implicitReturnType>;
|
|
20
|
+
privatePostAccountOrderHistory(params?: {}): Promise<implicitReturnType>;
|
|
21
|
+
privatePostAccountExecutedHistory(params?: {}): Promise<implicitReturnType>;
|
|
22
|
+
}
|
|
23
|
+
declare abstract class Exchange extends _Exchange {
|
|
24
|
+
}
|
|
25
|
+
export default Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// ----------------------------------------------------------------------------
|
|
2
|
+
|
|
3
|
+
// PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
|
|
4
|
+
// https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
|
|
5
|
+
// EDIT THE CORRESPONDENT .ts FILE INSTEAD
|
|
6
|
+
|
|
7
|
+
// -------------------------------------------------------------------------------
|
|
8
|
+
import { Exchange as _Exchange } from '../base/Exchange.js';
|
|
9
|
+
class Exchange extends _Exchange {
|
|
10
|
+
}
|
|
11
|
+
export default Exchange;
|
package/js/src/ace.d.ts
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import Exchange from './abstract/ace.js';
|
|
2
|
-
import { Balances, Int, Market, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Tickers, Trade } from './base/types.js';
|
|
2
|
+
import { Balances, Int, Market, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class ace
|
|
5
5
|
* @extends Exchange
|
|
6
6
|
*/
|
|
7
7
|
export default class ace extends Exchange {
|
|
8
8
|
describe(): any;
|
|
9
|
-
fetchMarkets(params?: {}): Promise<
|
|
9
|
+
fetchMarkets(params?: {}): Promise<import("./base/types.js").MarketInterface[]>;
|
|
10
10
|
parseMarket(market: any): Market;
|
|
11
|
-
parseTicker(ticker: any, market?:
|
|
11
|
+
parseTicker(ticker: any, market?: Market): Ticker;
|
|
12
12
|
fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
|
|
13
|
-
fetchTickers(symbols?:
|
|
13
|
+
fetchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
|
|
14
14
|
fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
|
|
15
|
-
parseOHLCV(ohlcv: any, market?:
|
|
15
|
+
parseOHLCV(ohlcv: any, market?: Market): OHLCV;
|
|
16
16
|
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
17
17
|
parseOrderStatus(status: any): string;
|
|
18
|
-
parseOrder(order: any, market?:
|
|
18
|
+
parseOrder(order: any, market?: Market): Order;
|
|
19
19
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
|
|
20
20
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
|
|
21
21
|
fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
22
22
|
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
23
|
-
parseTrade(trade: any, market?:
|
|
23
|
+
parseTrade(trade: any, market?: Market): Trade;
|
|
24
24
|
fetchOrderTrades(id: string, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
25
25
|
fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
26
26
|
parseBalance(response: any): Balances;
|
package/js/src/ace.js
CHANGED
|
@@ -514,7 +514,7 @@ export default class ace extends Exchange {
|
|
|
514
514
|
// "type": 1
|
|
515
515
|
// }
|
|
516
516
|
//
|
|
517
|
-
let id
|
|
517
|
+
let id;
|
|
518
518
|
let timestamp = undefined;
|
|
519
519
|
let symbol = undefined;
|
|
520
520
|
let price = undefined;
|
|
@@ -794,7 +794,7 @@ export default class ace extends Exchange {
|
|
|
794
794
|
symbol = baseId + '/' + quoteId;
|
|
795
795
|
}
|
|
796
796
|
let side = undefined;
|
|
797
|
-
const tradeSide = this.
|
|
797
|
+
const tradeSide = this.safeInteger(trade, 'buyOrSell');
|
|
798
798
|
if (tradeSide !== undefined) {
|
|
799
799
|
side = (tradeSide === 1) ? 'buy' : 'sell';
|
|
800
800
|
}
|
package/js/src/alpaca.d.ts
CHANGED
|
@@ -6,20 +6,20 @@ import { Int, Market, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Trade
|
|
|
6
6
|
*/
|
|
7
7
|
export default class alpaca extends Exchange {
|
|
8
8
|
describe(): any;
|
|
9
|
-
fetchMarkets(params?: {}): Promise<
|
|
9
|
+
fetchMarkets(params?: {}): Promise<import("./base/types.js").MarketInterface[]>;
|
|
10
10
|
parseMarket(asset: any): Market;
|
|
11
11
|
fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
12
12
|
fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
|
|
13
13
|
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
14
|
-
parseOHLCV(ohlcv: any, market?:
|
|
14
|
+
parseOHLCV(ohlcv: any, market?: Market): OHLCV;
|
|
15
15
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
|
|
16
16
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
|
|
17
17
|
fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
18
18
|
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
19
|
-
parseOrder(order: any, market?:
|
|
19
|
+
parseOrder(order: any, market?: Market): Order;
|
|
20
20
|
parseOrderStatus(status: any): string;
|
|
21
21
|
parseTimeInForce(timeInForce: any): string;
|
|
22
|
-
parseTrade(trade: any, market?:
|
|
22
|
+
parseTrade(trade: any, market?: Market): Trade;
|
|
23
23
|
sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
|
|
24
24
|
url: any;
|
|
25
25
|
method: string;
|
package/js/src/alpaca.js
CHANGED
|
@@ -764,7 +764,7 @@ export default class alpaca extends Exchange {
|
|
|
764
764
|
const datetime = this.safeString(trade, 't');
|
|
765
765
|
const timestamp = this.parse8601(datetime);
|
|
766
766
|
const alpacaSide = this.safeString(trade, 'tks');
|
|
767
|
-
let side
|
|
767
|
+
let side;
|
|
768
768
|
if (alpacaSide === 'B') {
|
|
769
769
|
side = 'buy';
|
|
770
770
|
}
|
package/js/src/ascendex.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/ascendex.js';
|
|
2
|
-
import { FundingHistory, Int, OHLCV, Order, OrderSide, OrderType, OrderRequest, Str, Trade, Balances, Transaction, Ticker, OrderBook, Tickers } from './base/types.js';
|
|
2
|
+
import { FundingHistory, Int, OHLCV, Order, OrderSide, OrderType, OrderRequest, Str, Trade, Balances, Transaction, Ticker, OrderBook, Tickers, Strings, Currency, Market } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class ascendex
|
|
5
5
|
* @extends Exchange
|
|
@@ -21,15 +21,15 @@ export default class ascendex extends Exchange {
|
|
|
21
21
|
parseSwapBalance(response: any): Balances;
|
|
22
22
|
fetchBalance(params?: {}): Promise<Balances>;
|
|
23
23
|
fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
|
|
24
|
-
parseTicker(ticker: any, market?:
|
|
24
|
+
parseTicker(ticker: any, market?: Market): Ticker;
|
|
25
25
|
fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
|
|
26
|
-
fetchTickers(symbols?:
|
|
27
|
-
parseOHLCV(ohlcv: any, market?:
|
|
26
|
+
fetchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
|
|
27
|
+
parseOHLCV(ohlcv: any, market?: Market): OHLCV;
|
|
28
28
|
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
29
|
-
parseTrade(trade: any, market?:
|
|
29
|
+
parseTrade(trade: any, market?: Market): Trade;
|
|
30
30
|
fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
31
31
|
parseOrderStatus(status: any): string;
|
|
32
|
-
parseOrder(order: any, market?:
|
|
32
|
+
parseOrder(order: any, market?: Market): Order;
|
|
33
33
|
fetchTradingFees(params?: {}): Promise<{}>;
|
|
34
34
|
createOrderRequest(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): any;
|
|
35
35
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
|
|
@@ -39,8 +39,8 @@ export default class ascendex extends Exchange {
|
|
|
39
39
|
fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
40
40
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
41
41
|
cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
|
|
42
|
-
parseDepositAddress(depositAddress: any, currency?:
|
|
43
|
-
currency:
|
|
42
|
+
parseDepositAddress(depositAddress: any, currency?: Currency): {
|
|
43
|
+
currency: string;
|
|
44
44
|
address: string;
|
|
45
45
|
tag: string;
|
|
46
46
|
network: string;
|
|
@@ -52,12 +52,12 @@ export default class ascendex extends Exchange {
|
|
|
52
52
|
fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
|
53
53
|
fetchDepositsWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
|
54
54
|
parseTransactionStatus(status: any): string;
|
|
55
|
-
parseTransaction(transaction: any, currency?:
|
|
56
|
-
fetchPositions(symbols?:
|
|
57
|
-
parsePosition(position: any, market?:
|
|
58
|
-
parseFundingRate(contract: any, market?:
|
|
55
|
+
parseTransaction(transaction: any, currency?: Currency): Transaction;
|
|
56
|
+
fetchPositions(symbols?: Strings, params?: {}): Promise<import("./base/types.js").Position[]>;
|
|
57
|
+
parsePosition(position: any, market?: Market): import("./base/types.js").Position;
|
|
58
|
+
parseFundingRate(contract: any, market?: Market): {
|
|
59
59
|
info: any;
|
|
60
|
-
symbol:
|
|
60
|
+
symbol: string;
|
|
61
61
|
markPrice: number;
|
|
62
62
|
indexPrice: number;
|
|
63
63
|
interestRate: number;
|
|
@@ -74,23 +74,23 @@ export default class ascendex extends Exchange {
|
|
|
74
74
|
fundingTimestamp: number;
|
|
75
75
|
fundingDatetime: string;
|
|
76
76
|
};
|
|
77
|
-
fetchFundingRates(symbols?:
|
|
77
|
+
fetchFundingRates(symbols?: Strings, params?: {}): Promise<any>;
|
|
78
78
|
modifyMarginHelper(symbol: string, amount: any, type: any, params?: {}): Promise<any>;
|
|
79
|
-
parseMarginModification(data: any, market?:
|
|
79
|
+
parseMarginModification(data: any, market?: Market): {
|
|
80
80
|
info: any;
|
|
81
81
|
type: any;
|
|
82
82
|
amount: any;
|
|
83
|
-
code:
|
|
84
|
-
symbol:
|
|
83
|
+
code: string;
|
|
84
|
+
symbol: string;
|
|
85
85
|
status: string;
|
|
86
86
|
};
|
|
87
87
|
reduceMargin(symbol: string, amount: any, params?: {}): Promise<any>;
|
|
88
88
|
addMargin(symbol: string, amount: any, params?: {}): Promise<any>;
|
|
89
89
|
setLeverage(leverage: any, symbol?: Str, params?: {}): Promise<any>;
|
|
90
90
|
setMarginMode(marginMode: any, symbol?: Str, params?: {}): Promise<any>;
|
|
91
|
-
fetchLeverageTiers(symbols?:
|
|
92
|
-
parseMarketLeverageTiers(info: any, market?:
|
|
93
|
-
parseDepositWithdrawFee(fee: any, currency?:
|
|
91
|
+
fetchLeverageTiers(symbols?: Strings, params?: {}): Promise<{}>;
|
|
92
|
+
parseMarketLeverageTiers(info: any, market?: Market): any[];
|
|
93
|
+
parseDepositWithdrawFee(fee: any, currency?: Currency): {
|
|
94
94
|
info: any;
|
|
95
95
|
withdraw: {
|
|
96
96
|
fee: any;
|
|
@@ -102,24 +102,24 @@ export default class ascendex extends Exchange {
|
|
|
102
102
|
};
|
|
103
103
|
networks: {};
|
|
104
104
|
};
|
|
105
|
-
fetchDepositWithdrawFees(codes?:
|
|
105
|
+
fetchDepositWithdrawFees(codes?: Strings, params?: {}): Promise<any>;
|
|
106
106
|
transfer(code: string, amount: any, fromAccount: any, toAccount: any, params?: {}): Promise<{
|
|
107
107
|
info: any;
|
|
108
108
|
id: any;
|
|
109
109
|
timestamp: number;
|
|
110
110
|
datetime: string;
|
|
111
|
-
currency:
|
|
111
|
+
currency: string;
|
|
112
112
|
amount: any;
|
|
113
113
|
fromAccount: any;
|
|
114
114
|
toAccount: any;
|
|
115
115
|
status: string;
|
|
116
116
|
}>;
|
|
117
|
-
parseTransfer(transfer: any, currency?:
|
|
117
|
+
parseTransfer(transfer: any, currency?: Currency): {
|
|
118
118
|
info: any;
|
|
119
119
|
id: any;
|
|
120
120
|
timestamp: number;
|
|
121
121
|
datetime: string;
|
|
122
|
-
currency:
|
|
122
|
+
currency: string;
|
|
123
123
|
amount: any;
|
|
124
124
|
fromAccount: any;
|
|
125
125
|
toAccount: any;
|
|
@@ -127,9 +127,9 @@ export default class ascendex extends Exchange {
|
|
|
127
127
|
};
|
|
128
128
|
parseTransferStatus(status: any): "ok" | "failed";
|
|
129
129
|
fetchFundingHistory(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<FundingHistory[]>;
|
|
130
|
-
parseIncome(income: any, market?:
|
|
130
|
+
parseIncome(income: any, market?: Market): {
|
|
131
131
|
info: any;
|
|
132
|
-
symbol:
|
|
132
|
+
symbol: string;
|
|
133
133
|
code: string;
|
|
134
134
|
timestamp: number;
|
|
135
135
|
datetime: string;
|
|
@@ -4,7 +4,7 @@ ExchangeError, AuthenticationError, DDoSProtection, RequestTimeout, ExchangeNotA
|
|
|
4
4
|
import WsClient from './ws/WsClient.js';
|
|
5
5
|
import { Future } from './ws/Future.js';
|
|
6
6
|
import { OrderBook as WsOrderBook, IndexedOrderBook, CountedOrderBook } from './ws/OrderBook.js';
|
|
7
|
-
import { Market, Trade, Ticker, OHLCV, OHLCVC, Order, OrderBook, Balance, Balances, Dictionary, DepositAddressResponse, Currency, MinMax, IndexType, Int, OrderType, OrderSide, Position, FundingRateHistory, OpenInterest, Liquidation, OrderRequest, FundingHistory, MarginMode, Tickers, Greeks } from './types.js';
|
|
7
|
+
import { Market, Trade, Ticker, OHLCV, OHLCVC, Order, OrderBook, Balance, Balances, Dictionary, DepositAddressResponse, Currency, MinMax, IndexType, Int, OrderType, OrderSide, Position, FundingRateHistory, OpenInterest, Liquidation, OrderRequest, FundingHistory, MarginMode, Tickers, Greeks, Str, Num, MarketInterface, CurrencyInterface } from './types.js';
|
|
8
8
|
export { Market, Trade, Fee, Ticker, OHLCV, OHLCVC, Order, OrderBook, Balance, Balances, Dictionary, Transaction, DepositAddressResponse, Currency, MinMax, IndexType, Int, OrderType, OrderSide, Position, FundingRateHistory, Liquidation, FundingHistory, Greeks } from './types.js';
|
|
9
9
|
/**
|
|
10
10
|
* @class Exchange
|
|
@@ -44,7 +44,7 @@ export default class Exchange {
|
|
|
44
44
|
minFundingAddressLength: number;
|
|
45
45
|
substituteCommonCurrencyCodes: boolean;
|
|
46
46
|
quoteJsonNumbers: boolean;
|
|
47
|
-
number:
|
|
47
|
+
number: (numberString: string) => number;
|
|
48
48
|
handleContentTypeApplicationZip: boolean;
|
|
49
49
|
reduceFees: boolean;
|
|
50
50
|
fetchImplementation: any;
|
|
@@ -555,24 +555,24 @@ export default class Exchange {
|
|
|
555
555
|
fetchTradingLimits(symbols?: string[], params?: {}): Promise<any>;
|
|
556
556
|
parseMarket(market: any): Market;
|
|
557
557
|
parseMarkets(markets: any): Market[];
|
|
558
|
-
parseTicker(ticker: object, market?:
|
|
559
|
-
parseDepositAddress(depositAddress: any, currency?:
|
|
560
|
-
parseTrade(trade: object, market?:
|
|
561
|
-
parseTransaction(transaction: any, currency?:
|
|
562
|
-
parseTransfer(transfer: any, currency?:
|
|
558
|
+
parseTicker(ticker: object, market?: Market): Ticker;
|
|
559
|
+
parseDepositAddress(depositAddress: any, currency?: Currency): void;
|
|
560
|
+
parseTrade(trade: object, market?: Market): Trade;
|
|
561
|
+
parseTransaction(transaction: any, currency?: Currency): void;
|
|
562
|
+
parseTransfer(transfer: any, currency?: Currency): void;
|
|
563
563
|
parseAccount(account: any): void;
|
|
564
|
-
parseLedgerEntry(item: any, currency?:
|
|
565
|
-
parseOrder(order: any, market?:
|
|
564
|
+
parseLedgerEntry(item: any, currency?: Currency): void;
|
|
565
|
+
parseOrder(order: any, market?: Market): Order;
|
|
566
566
|
fetchBorrowRates(params?: {}): Promise<any>;
|
|
567
|
-
parseMarketLeverageTiers(info: any, market?:
|
|
567
|
+
parseMarketLeverageTiers(info: any, market?: Market): void;
|
|
568
568
|
fetchLeverageTiers(symbols?: string[], params?: {}): Promise<any>;
|
|
569
|
-
parsePosition(position: any, market?:
|
|
570
|
-
parseFundingRateHistory(info: any, market?:
|
|
571
|
-
parseBorrowInterest(info: any, market?:
|
|
572
|
-
parseWsTrade(trade: any, market?:
|
|
573
|
-
parseWsOrder(order: any, market?:
|
|
574
|
-
parseWsOrderTrade(trade: any, market?:
|
|
575
|
-
parseWsOHLCV(ohlcv: any, market?:
|
|
569
|
+
parsePosition(position: any, market?: Market): void;
|
|
570
|
+
parseFundingRateHistory(info: any, market?: Market): FundingRateHistory;
|
|
571
|
+
parseBorrowInterest(info: any, market?: Market): void;
|
|
572
|
+
parseWsTrade(trade: any, market?: Market): Trade;
|
|
573
|
+
parseWsOrder(order: any, market?: Market): Order;
|
|
574
|
+
parseWsOrderTrade(trade: any, market?: Market): Trade;
|
|
575
|
+
parseWsOHLCV(ohlcv: any, market?: Market): OHLCV;
|
|
576
576
|
fetchFundingRates(symbols?: string[], params?: {}): Promise<any>;
|
|
577
577
|
transfer(code: string, amount: any, fromAccount: any, toAccount: any, params?: {}): Promise<any>;
|
|
578
578
|
withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<any>;
|
|
@@ -595,7 +595,7 @@ export default class Exchange {
|
|
|
595
595
|
};
|
|
596
596
|
};
|
|
597
597
|
};
|
|
598
|
-
safeLedgerEntry(entry: object, currency?:
|
|
598
|
+
safeLedgerEntry(entry: object, currency?: Currency): {
|
|
599
599
|
id: string;
|
|
600
600
|
timestamp: number;
|
|
601
601
|
datetime: string;
|
|
@@ -604,7 +604,7 @@ export default class Exchange {
|
|
|
604
604
|
referenceId: string;
|
|
605
605
|
referenceAccount: string;
|
|
606
606
|
type: string;
|
|
607
|
-
currency:
|
|
607
|
+
currency: string;
|
|
608
608
|
amount: number;
|
|
609
609
|
before: number;
|
|
610
610
|
after: number;
|
|
@@ -613,22 +613,22 @@ export default class Exchange {
|
|
|
613
613
|
info: object;
|
|
614
614
|
};
|
|
615
615
|
safeCurrencyStructure(currency: object): any;
|
|
616
|
-
safeMarketStructure(market?:
|
|
616
|
+
safeMarketStructure(market?: any): MarketInterface;
|
|
617
617
|
setMarkets(markets: any, currencies?: any): Dictionary<any>;
|
|
618
618
|
safeBalance(balance: object): Balances;
|
|
619
|
-
safeOrder(order: object, market?:
|
|
620
|
-
parseOrders(orders: object, market?:
|
|
619
|
+
safeOrder(order: object, market?: Market): Order;
|
|
620
|
+
parseOrders(orders: object, market?: Market, since?: Int, limit?: Int, params?: {}): Order[];
|
|
621
621
|
calculateFee(symbol: string, type: string, side: string, amount: number, price: number, takerOrMaker?: string, params?: {}): {
|
|
622
622
|
type: string;
|
|
623
623
|
currency: any;
|
|
624
624
|
rate: number;
|
|
625
625
|
cost: number;
|
|
626
626
|
};
|
|
627
|
-
safeLiquidation(liquidation: object, market?:
|
|
628
|
-
safeTrade(trade: object, market?:
|
|
627
|
+
safeLiquidation(liquidation: object, market?: Market): Liquidation;
|
|
628
|
+
safeTrade(trade: object, market?: Market): Trade;
|
|
629
629
|
invertFlatStringDictionary(dict: any): {};
|
|
630
630
|
reduceFeesByCurrency(fees: any): any[];
|
|
631
|
-
safeTicker(ticker: object, market?:
|
|
631
|
+
safeTicker(ticker: object, market?: Market): Ticker;
|
|
632
632
|
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
633
633
|
watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
634
634
|
convertTradingViewToOHLCV(ohlcvs: any, timestamp?: string, open?: string, high?: string, low?: string, close?: string, volume?: string, ms?: boolean): any[];
|
|
@@ -640,7 +640,7 @@ export default class Exchange {
|
|
|
640
640
|
parseBidsAsks(bidasks: any, priceKey?: IndexType, amountKey?: IndexType): any[];
|
|
641
641
|
fetchL2OrderBook(symbol: string, limit?: Int, params?: {}): Promise<any>;
|
|
642
642
|
filterBySymbol(objects: any, symbol?: string): any;
|
|
643
|
-
parseOHLCV(ohlcv: any, market?:
|
|
643
|
+
parseOHLCV(ohlcv: any, market?: Market): OHLCV;
|
|
644
644
|
networkCodeToId(networkCode: any, currencyCode?: any): string;
|
|
645
645
|
networkIdToCode(networkId: any, currencyCode?: any): string;
|
|
646
646
|
handleNetworkCodeAndParams(params: any): any[];
|
|
@@ -656,10 +656,10 @@ export default class Exchange {
|
|
|
656
656
|
safePosition(position: any): Position;
|
|
657
657
|
parsePositions(positions: any, symbols?: string[], params?: {}): Position[];
|
|
658
658
|
parseAccounts(accounts: any, params?: {}): any[];
|
|
659
|
-
parseTrades(trades: any, market?:
|
|
660
|
-
parseTransactions(transactions: any, currency?:
|
|
661
|
-
parseTransfers(transfers: any, currency?:
|
|
662
|
-
parseLedger(data: any, currency?:
|
|
659
|
+
parseTrades(trades: any, market?: Market, since?: Int, limit?: Int, params?: {}): Trade[];
|
|
660
|
+
parseTransactions(transactions: any, currency?: Currency, since?: Int, limit?: Int, params?: {}): any;
|
|
661
|
+
parseTransfers(transfers: any, currency?: Currency, since?: Int, limit?: Int, params?: {}): any;
|
|
662
|
+
parseLedger(data: any, currency?: Currency, since?: Int, limit?: Int, params?: {}): any;
|
|
663
663
|
nonce(): number;
|
|
664
664
|
setHeaders(headers: any): any;
|
|
665
665
|
marketId(symbol: string): string;
|
|
@@ -686,8 +686,8 @@ export default class Exchange {
|
|
|
686
686
|
fetchPositionsRisk(symbols?: string[], params?: {}): Promise<Position[]>;
|
|
687
687
|
fetchBidsAsks(symbols?: string[], params?: {}): Promise<Dictionary<Ticker>>;
|
|
688
688
|
parseBidAsk(bidask: any, priceKey?: IndexType, amountKey?: IndexType): number[];
|
|
689
|
-
safeCurrency(currencyId
|
|
690
|
-
safeMarket(marketId
|
|
689
|
+
safeCurrency(currencyId: Str, currency?: Currency): CurrencyInterface;
|
|
690
|
+
safeMarket(marketId: Str, market?: Market, delimiter?: Str, marketType?: Str): MarketInterface;
|
|
691
691
|
checkRequiredCredentials(error?: boolean): boolean;
|
|
692
692
|
oath(): string;
|
|
693
693
|
fetchBalance(params?: {}): Promise<Balances>;
|
|
@@ -754,12 +754,12 @@ export default class Exchange {
|
|
|
754
754
|
fetchOpenInterest(symbol: string, params?: {}): Promise<OpenInterest>;
|
|
755
755
|
fetchFundingRateHistory(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<FundingRateHistory[]>;
|
|
756
756
|
fetchFundingHistory(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<FundingHistory[]>;
|
|
757
|
-
parseLastPrice(price: any, market?:
|
|
757
|
+
parseLastPrice(price: any, market?: Market): any;
|
|
758
758
|
fetchDepositAddress(code: string, params?: {}): Promise<any>;
|
|
759
759
|
account(): Balance;
|
|
760
760
|
commonCurrencyCode(currency: string): string;
|
|
761
761
|
currency(code: any): any;
|
|
762
|
-
market(symbol: string):
|
|
762
|
+
market(symbol: string): MarketInterface;
|
|
763
763
|
handleWithdrawTagAndParams(tag: any, params: any): any;
|
|
764
764
|
createLimitOrder(symbol: string, side: OrderSide, amount: any, price: any, params?: {}): Promise<Order>;
|
|
765
765
|
createMarketOrder(symbol: string, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
|
|
@@ -776,8 +776,8 @@ export default class Exchange {
|
|
|
776
776
|
isTickPrecision(): boolean;
|
|
777
777
|
isDecimalPrecision(): boolean;
|
|
778
778
|
isSignificantPrecision(): boolean;
|
|
779
|
-
safeNumber(obj: object, key: IndexType, defaultNumber?: number):
|
|
780
|
-
safeNumberN(obj: object, arr: IndexType[], defaultNumber?: number):
|
|
779
|
+
safeNumber(obj: object, key: IndexType, defaultNumber?: number): Num;
|
|
780
|
+
safeNumberN(obj: object, arr: IndexType[], defaultNumber?: number): Num;
|
|
781
781
|
parsePrecision(precision?: string): string;
|
|
782
782
|
loadTimeDifference(params?: {}): Promise<any>;
|
|
783
783
|
implodeHostname(url: string): any;
|
|
@@ -787,25 +787,25 @@ export default class Exchange {
|
|
|
787
787
|
createStopOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, stopPrice?: any, params?: {}): Promise<Order>;
|
|
788
788
|
createStopLimitOrder(symbol: string, side: OrderSide, amount: any, price: any, stopPrice: any, params?: {}): Promise<Order>;
|
|
789
789
|
createStopMarketOrder(symbol: string, side: OrderSide, amount: any, stopPrice: any, params?: {}): Promise<Order>;
|
|
790
|
-
safeCurrencyCode(currencyId
|
|
790
|
+
safeCurrencyCode(currencyId: Str, currency?: Currency): string;
|
|
791
791
|
filterBySymbolSinceLimit(array: any, symbol?: string, since?: Int, limit?: Int, tail?: boolean): any;
|
|
792
792
|
filterByCurrencySinceLimit(array: any, code?: any, since?: Int, limit?: Int, tail?: boolean): any;
|
|
793
793
|
filterBySymbolsSinceLimit(array: any, symbols?: string[], since?: Int, limit?: Int, tail?: boolean): any;
|
|
794
794
|
parseLastPrices(pricesData: any, symbols?: string[], params?: {}): any;
|
|
795
795
|
parseTickers(tickers: any, symbols?: string[], params?: {}): Dictionary<Ticker>;
|
|
796
796
|
parseDepositAddresses(addresses: any, codes?: string[], indexed?: boolean, params?: {}): {};
|
|
797
|
-
parseBorrowInterests(response: any, market?:
|
|
797
|
+
parseBorrowInterests(response: any, market?: Market): any[];
|
|
798
798
|
parseFundingRateHistories(response: any, market?: any, since?: Int, limit?: Int): FundingRateHistory[];
|
|
799
|
-
safeSymbol(marketId:
|
|
800
|
-
parseFundingRate(contract: string, market?:
|
|
801
|
-
parseFundingRates(response: any, market?:
|
|
799
|
+
safeSymbol(marketId: Str, market?: Market, delimiter?: Str, marketType?: Str): string;
|
|
800
|
+
parseFundingRate(contract: string, market?: Market): void;
|
|
801
|
+
parseFundingRates(response: any, market?: Market): {};
|
|
802
802
|
isTriggerOrder(params: any): any[];
|
|
803
803
|
isPostOnly(isMarketOrder: boolean, exchangeSpecificParam: any, params?: {}): boolean;
|
|
804
804
|
handlePostOnly(isMarketOrder: boolean, exchangeSpecificPostOnlyOption: boolean, params?: any): any[];
|
|
805
805
|
fetchLastPrices(symbols?: string[], params?: {}): Promise<void>;
|
|
806
806
|
fetchTradingFees(params?: {}): Promise<any>;
|
|
807
807
|
fetchTradingFee(symbol: string, params?: {}): Promise<any>;
|
|
808
|
-
parseOpenInterest(interest: any, market?:
|
|
808
|
+
parseOpenInterest(interest: any, market?: Market): OpenInterest;
|
|
809
809
|
parseOpenInterests(response: any, market?: any, since?: Int, limit?: Int): OpenInterest[];
|
|
810
810
|
fetchFundingRate(symbol: string, params?: {}): Promise<any>;
|
|
811
811
|
fetchMarkOHLCV(symbol: any, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
@@ -817,12 +817,12 @@ export default class Exchange {
|
|
|
817
817
|
checkRequiredMarginArgument(methodName: string, symbol: string, marginMode: string): void;
|
|
818
818
|
checkRequiredSymbol(methodName: string, symbol: string): void;
|
|
819
819
|
parseDepositWithdrawFees(response: any, codes?: string[], currencyIdKey?: any): any;
|
|
820
|
-
parseDepositWithdrawFee(fee: any, currency?:
|
|
820
|
+
parseDepositWithdrawFee(fee: any, currency?: Currency): any;
|
|
821
821
|
depositWithdrawFee(info: any): any;
|
|
822
822
|
assignDefaultDepositWithdrawFees(fee: any, currency?: any): any;
|
|
823
|
-
parseIncome(info: any, market?:
|
|
823
|
+
parseIncome(info: any, market?: Market): void;
|
|
824
824
|
parseIncomes(incomes: any, market?: any, since?: Int, limit?: Int): FundingHistory[];
|
|
825
|
-
getMarketFromSymbols(symbols?: string[]):
|
|
825
|
+
getMarketFromSymbols(symbols?: string[]): MarketInterface;
|
|
826
826
|
parseWsOHLCVs(ohlcvs: object[], market?: any, timeframe?: string, since?: Int, limit?: Int): any[];
|
|
827
827
|
fetchTransactions(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
|
|
828
828
|
filterByArrayPositions(objects: any, key: IndexType, values?: any, indexed?: boolean): Position[];
|
|
@@ -839,9 +839,9 @@ export default class Exchange {
|
|
|
839
839
|
sortCursorPaginatedResult(result: any): any;
|
|
840
840
|
removeRepeatedElementsFromArray(input: any): any;
|
|
841
841
|
handleUntilOption(key: any, request: any, params: any, multiplier?: number): any[];
|
|
842
|
-
safeOpenInterest(interest: any, market?:
|
|
843
|
-
parseLiquidation(liquidation: any, market?:
|
|
842
|
+
safeOpenInterest(interest: any, market?: Market): OpenInterest;
|
|
843
|
+
parseLiquidation(liquidation: any, market?: Market): Liquidation;
|
|
844
844
|
parseLiquidations(liquidations: any, market?: any, since?: Int, limit?: Int): Liquidation[];
|
|
845
|
-
parseGreeks(greeks: any, market?:
|
|
845
|
+
parseGreeks(greeks: any, market?: Market): Greeks;
|
|
846
846
|
}
|
|
847
847
|
export { Exchange, };
|
package/js/src/base/Exchange.js
CHANGED
|
@@ -1655,7 +1655,7 @@ export default class Exchange {
|
|
|
1655
1655
|
else {
|
|
1656
1656
|
this.markets_by_id[value['id']] = [value];
|
|
1657
1657
|
}
|
|
1658
|
-
const market = this.deepExtend(this.
|
|
1658
|
+
const market = this.deepExtend(this.safeMarketStructure(), {
|
|
1659
1659
|
'precision': this.precision,
|
|
1660
1660
|
'limits': this.limits,
|
|
1661
1661
|
}, this.fees['trading'], value);
|
|
@@ -3026,53 +3026,14 @@ export default class Exchange {
|
|
|
3026
3026
|
return {
|
|
3027
3027
|
'id': currencyId,
|
|
3028
3028
|
'code': code,
|
|
3029
|
+
'precision': undefined,
|
|
3029
3030
|
};
|
|
3030
3031
|
}
|
|
3031
|
-
safeMarket(marketId
|
|
3032
|
-
const result = {
|
|
3033
|
-
'id': marketId,
|
|
3032
|
+
safeMarket(marketId, market = undefined, delimiter = undefined, marketType = undefined) {
|
|
3033
|
+
const result = this.safeMarketStructure({
|
|
3034
3034
|
'symbol': marketId,
|
|
3035
|
-
'
|
|
3036
|
-
|
|
3037
|
-
'baseId': undefined,
|
|
3038
|
-
'quoteId': undefined,
|
|
3039
|
-
'active': undefined,
|
|
3040
|
-
'type': undefined,
|
|
3041
|
-
'linear': undefined,
|
|
3042
|
-
'inverse': undefined,
|
|
3043
|
-
'spot': false,
|
|
3044
|
-
'swap': false,
|
|
3045
|
-
'future': false,
|
|
3046
|
-
'option': false,
|
|
3047
|
-
'margin': false,
|
|
3048
|
-
'contract': false,
|
|
3049
|
-
'contractSize': undefined,
|
|
3050
|
-
'expiry': undefined,
|
|
3051
|
-
'expiryDatetime': undefined,
|
|
3052
|
-
'optionType': undefined,
|
|
3053
|
-
'strike': undefined,
|
|
3054
|
-
'settle': undefined,
|
|
3055
|
-
'settleId': undefined,
|
|
3056
|
-
'precision': {
|
|
3057
|
-
'amount': undefined,
|
|
3058
|
-
'price': undefined,
|
|
3059
|
-
},
|
|
3060
|
-
'limits': {
|
|
3061
|
-
'amount': {
|
|
3062
|
-
'min': undefined,
|
|
3063
|
-
'max': undefined,
|
|
3064
|
-
},
|
|
3065
|
-
'price': {
|
|
3066
|
-
'min': undefined,
|
|
3067
|
-
'max': undefined,
|
|
3068
|
-
},
|
|
3069
|
-
'cost': {
|
|
3070
|
-
'min': undefined,
|
|
3071
|
-
'max': undefined,
|
|
3072
|
-
},
|
|
3073
|
-
},
|
|
3074
|
-
'info': undefined,
|
|
3075
|
-
};
|
|
3035
|
+
'marketId': marketId,
|
|
3036
|
+
});
|
|
3076
3037
|
if (marketId !== undefined) {
|
|
3077
3038
|
if ((this.markets_by_id !== undefined) && (marketId in this.markets_by_id)) {
|
|
3078
3039
|
const markets = this.markets_by_id[marketId];
|
|
@@ -3081,13 +3042,17 @@ export default class Exchange {
|
|
|
3081
3042
|
return markets[0];
|
|
3082
3043
|
}
|
|
3083
3044
|
else {
|
|
3084
|
-
if (
|
|
3085
|
-
|
|
3045
|
+
if (marketType === undefined) {
|
|
3046
|
+
if (market === undefined) {
|
|
3047
|
+
throw new ArgumentsRequired(this.id + ' safeMarket() requires a fourth argument for ' + marketId + ' to disambiguate between different markets with the same market id');
|
|
3048
|
+
}
|
|
3049
|
+
else {
|
|
3050
|
+
marketType = market['type'];
|
|
3051
|
+
}
|
|
3086
3052
|
}
|
|
3087
|
-
const inferredMarketType = (marketType === undefined) ? market['type'] : marketType;
|
|
3088
3053
|
for (let i = 0; i < markets.length; i++) {
|
|
3089
3054
|
const currentMarket = markets[i];
|
|
3090
|
-
if (currentMarket[
|
|
3055
|
+
if (currentMarket[marketType]) {
|
|
3091
3056
|
return currentMarket;
|
|
3092
3057
|
}
|
|
3093
3058
|
}
|
|
@@ -3520,21 +3485,19 @@ export default class Exchange {
|
|
|
3520
3485
|
if (this.markets === undefined) {
|
|
3521
3486
|
throw new ExchangeError(this.id + ' markets not loaded');
|
|
3522
3487
|
}
|
|
3523
|
-
if (
|
|
3524
|
-
|
|
3525
|
-
|
|
3526
|
-
|
|
3527
|
-
|
|
3528
|
-
|
|
3529
|
-
|
|
3530
|
-
|
|
3531
|
-
|
|
3532
|
-
|
|
3533
|
-
return market;
|
|
3534
|
-
}
|
|
3488
|
+
if (symbol in this.markets) {
|
|
3489
|
+
return this.markets[symbol];
|
|
3490
|
+
}
|
|
3491
|
+
else if (symbol in this.markets_by_id) {
|
|
3492
|
+
const markets = this.markets_by_id[symbol];
|
|
3493
|
+
const defaultType = this.safeString2(this.options, 'defaultType', 'defaultSubType', 'spot');
|
|
3494
|
+
for (let i = 0; i < markets.length; i++) {
|
|
3495
|
+
const market = markets[i];
|
|
3496
|
+
if (market[defaultType]) {
|
|
3497
|
+
return market;
|
|
3535
3498
|
}
|
|
3536
|
-
return markets[0];
|
|
3537
3499
|
}
|
|
3500
|
+
return markets[0];
|
|
3538
3501
|
}
|
|
3539
3502
|
throw new BadSymbol(this.id + ' does not have market symbol ' + symbol);
|
|
3540
3503
|
}
|