ccxt 4.1.47 → 4.1.49

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.
Files changed (114) hide show
  1. package/README.md +124 -124
  2. package/dist/ccxt.browser.js +670 -460
  3. package/dist/ccxt.browser.min.js +3 -3
  4. package/dist/cjs/ccxt.js +6 -1
  5. package/dist/cjs/src/abstract/htx.js +9 -0
  6. package/dist/cjs/src/binance.js +2 -0
  7. package/dist/cjs/src/bitmart.js +183 -62
  8. package/dist/cjs/src/coinex.js +67 -18
  9. package/dist/cjs/src/htx.js +8505 -0
  10. package/dist/cjs/src/huobi.js +5 -8503
  11. package/dist/cjs/src/kraken.js +0 -4
  12. package/dist/cjs/src/mexc.js +21 -21
  13. package/dist/cjs/src/pro/htx.js +2356 -0
  14. package/dist/cjs/src/pro/huobi.js +5 -2345
  15. package/dist/cjs/src/timex.js +1 -1
  16. package/js/ccxt.d.ts +8 -2
  17. package/js/ccxt.js +6 -2
  18. package/js/src/abstract/binance.d.ts +2 -0
  19. package/js/src/abstract/binancecoinm.d.ts +2 -0
  20. package/js/src/abstract/binanceus.d.ts +2 -0
  21. package/js/src/abstract/binanceusdm.d.ts +2 -0
  22. package/js/src/abstract/htx.d.ts +544 -0
  23. package/js/src/abstract/htx.js +11 -0
  24. package/js/src/abstract/huobi.d.ts +4 -4
  25. package/js/src/abstract/huobi.js +3 -3
  26. package/js/src/ace.d.ts +2 -2
  27. package/js/src/ascendex.d.ts +2 -2
  28. package/js/src/base/Exchange.d.ts +2 -2
  29. package/js/src/base/types.d.ts +0 -1
  30. package/js/src/bigone.d.ts +2 -2
  31. package/js/src/binance.d.ts +3 -56
  32. package/js/src/binance.js +2 -0
  33. package/js/src/bingx.d.ts +3 -55
  34. package/js/src/bitbns.d.ts +2 -2
  35. package/js/src/bitfinex.d.ts +2 -2
  36. package/js/src/bitfinex2.d.ts +2 -2
  37. package/js/src/bitget.d.ts +3 -53
  38. package/js/src/bithumb.d.ts +2 -2
  39. package/js/src/bitmart.d.ts +4 -2
  40. package/js/src/bitmart.js +183 -62
  41. package/js/src/bitmex.d.ts +2 -2
  42. package/js/src/bitopro.d.ts +2 -2
  43. package/js/src/bitpanda.d.ts +2 -2
  44. package/js/src/bitrue.d.ts +2 -2
  45. package/js/src/bitstamp.d.ts +2 -2
  46. package/js/src/bittrex.d.ts +2 -2
  47. package/js/src/bitvavo.d.ts +2 -2
  48. package/js/src/blockchaincom.d.ts +2 -2
  49. package/js/src/btcalpha.d.ts +2 -2
  50. package/js/src/btcturk.d.ts +2 -2
  51. package/js/src/bybit.d.ts +2 -2
  52. package/js/src/cex.d.ts +2 -2
  53. package/js/src/coinbase.d.ts +2 -2
  54. package/js/src/coinbasepro.d.ts +2 -2
  55. package/js/src/coinex.d.ts +2 -2
  56. package/js/src/coinex.js +67 -18
  57. package/js/src/coinfalcon.d.ts +2 -2
  58. package/js/src/coinlist.d.ts +2 -2
  59. package/js/src/coinone.d.ts +2 -2
  60. package/js/src/coinsph.d.ts +2 -2
  61. package/js/src/coinspot.d.ts +2 -2
  62. package/js/src/cryptocom.d.ts +2 -2
  63. package/js/src/currencycom.d.ts +2 -2
  64. package/js/src/delta.d.ts +2 -2
  65. package/js/src/deribit.d.ts +2 -2
  66. package/js/src/digifinex.d.ts +2 -2
  67. package/js/src/exmo.d.ts +2 -2
  68. package/js/src/gate.d.ts +2 -2
  69. package/js/src/gemini.d.ts +3 -51
  70. package/js/src/hitbtc.d.ts +2 -2
  71. package/js/src/hollaex.d.ts +2 -2
  72. package/js/src/htx.d.ts +257 -0
  73. package/js/src/htx.js +8506 -0
  74. package/js/src/huobi.d.ts +2 -255
  75. package/js/src/huobi.js +5 -8503
  76. package/js/src/huobijp.d.ts +2 -2
  77. package/js/src/idex.d.ts +2 -2
  78. package/js/src/indodax.d.ts +2 -2
  79. package/js/src/kraken.d.ts +2 -2
  80. package/js/src/kraken.js +0 -4
  81. package/js/src/krakenfutures.d.ts +2 -2
  82. package/js/src/kucoin.d.ts +2 -2
  83. package/js/src/kuna.d.ts +2 -2
  84. package/js/src/latoken.d.ts +2 -2
  85. package/js/src/lbank.d.ts +2 -2
  86. package/js/src/lbank2.d.ts +2 -2
  87. package/js/src/luno.d.ts +2 -2
  88. package/js/src/lykke.d.ts +2 -2
  89. package/js/src/mexc.d.ts +2 -2
  90. package/js/src/mexc.js +21 -21
  91. package/js/src/novadax.d.ts +2 -2
  92. package/js/src/oceanex.d.ts +2 -2
  93. package/js/src/okcoin.d.ts +3 -3
  94. package/js/src/okx.d.ts +3 -3
  95. package/js/src/phemex.d.ts +2 -2
  96. package/js/src/poloniex.d.ts +2 -2
  97. package/js/src/poloniexfutures.d.ts +2 -2
  98. package/js/src/pro/htx.d.ts +45 -0
  99. package/js/src/pro/htx.js +2357 -0
  100. package/js/src/pro/huobi.d.ts +2 -43
  101. package/js/src/pro/huobi.js +5 -2345
  102. package/js/src/probit.d.ts +2 -2
  103. package/js/src/tidex.d.ts +2 -2
  104. package/js/src/timex.d.ts +3 -53
  105. package/js/src/timex.js +1 -1
  106. package/js/src/tokocrypto.d.ts +2 -2
  107. package/js/src/upbit.d.ts +2 -2
  108. package/js/src/wavesexchange.d.ts +2 -2
  109. package/js/src/wazirx.d.ts +2 -2
  110. package/js/src/whitebit.d.ts +2 -2
  111. package/js/src/yobit.d.ts +2 -2
  112. package/js/src/zonda.d.ts +2 -2
  113. package/package.json +1 -1
  114. package/skip-tests.json +4 -4
package/js/src/coinex.js CHANGED
@@ -286,6 +286,7 @@ export default class coinex extends Exchange {
286
286
  },
287
287
  },
288
288
  'options': {
289
+ 'brokerId': 'x-167673045',
289
290
  'createMarketBuyOrderRequiresPrice': true,
290
291
  'defaultType': 'spot',
291
292
  'defaultSubType': 'linear',
@@ -305,6 +306,26 @@ export default class coinex extends Exchange {
305
306
  'ACM': 'Actinium',
306
307
  },
307
308
  'precisionMode': TICK_SIZE,
309
+ 'exceptions': {
310
+ 'exact': {
311
+ // https://github.com/coinexcom/coinex_exchange_api/wiki/013error_code
312
+ '23': PermissionDenied,
313
+ '24': AuthenticationError,
314
+ '25': AuthenticationError,
315
+ '34': AuthenticationError,
316
+ '35': ExchangeNotAvailable,
317
+ '36': RequestTimeout,
318
+ '213': RateLimitExceeded,
319
+ '107': InsufficientFunds,
320
+ '600': OrderNotFound,
321
+ '601': InvalidOrder,
322
+ '602': InvalidOrder,
323
+ '606': InvalidOrder,
324
+ },
325
+ 'broad': {
326
+ 'ip not allow visit': PermissionDenied,
327
+ },
328
+ },
308
329
  });
309
330
  }
310
331
  async fetchCurrencies(params = {}) {
@@ -1542,6 +1563,7 @@ export default class coinex extends Exchange {
1542
1563
  // "status": "done",
1543
1564
  // "taker_fee_rate": "0.0005",
1544
1565
  // "type": "sell",
1566
+ // "client_id": "",
1545
1567
  // }
1546
1568
  //
1547
1569
  // Spot and Margin createOrder, cancelOrder, fetchOrder
@@ -1569,6 +1591,7 @@ export default class coinex extends Exchange {
1569
1591
  // "stock_fee":"0",
1570
1592
  // "taker_fee_rate":"0.002",
1571
1593
  // "type":"buy"
1594
+ // "client_id": "",
1572
1595
  // }
1573
1596
  //
1574
1597
  // Swap createOrder, cancelOrder, fetchOrder
@@ -1784,9 +1807,13 @@ export default class coinex extends Exchange {
1784
1807
  else {
1785
1808
  type = rawType;
1786
1809
  }
1810
+ let clientOrderId = this.safeString(order, 'client_id');
1811
+ if (clientOrderId === '') {
1812
+ clientOrderId = undefined;
1813
+ }
1787
1814
  return this.safeOrder({
1788
1815
  'id': this.safeString2(order, 'id', 'order_id'),
1789
- 'clientOrderId': undefined,
1816
+ 'clientOrderId': clientOrderId,
1790
1817
  'datetime': this.iso8601(timestamp),
1791
1818
  'timestamp': timestamp,
1792
1819
  'lastTradeTimestamp': this.safeTimestamp(order, 'update_time'),
@@ -1843,6 +1870,7 @@ export default class coinex extends Exchange {
1843
1870
  await this.loadMarkets();
1844
1871
  const market = this.market(symbol);
1845
1872
  const swap = market['swap'];
1873
+ const clientOrderId = this.safeString2(params, 'client_id', 'clientOrderId');
1846
1874
  const stopPrice = this.safeValue2(params, 'stopPrice', 'triggerPrice');
1847
1875
  const stopLossPrice = this.safeValue(params, 'stopLossPrice');
1848
1876
  const takeProfitPrice = this.safeValue(params, 'takeProfitPrice');
@@ -1864,6 +1892,14 @@ export default class coinex extends Exchange {
1864
1892
  const request = {
1865
1893
  'market': market['id'],
1866
1894
  };
1895
+ if (clientOrderId === undefined) {
1896
+ const defaultId = 'x-167673045';
1897
+ const brokerId = this.safeString(this.options, 'brokerId', defaultId);
1898
+ request['client_id'] = brokerId + '-' + this.uuid16();
1899
+ }
1900
+ else {
1901
+ request['client_id'] = clientOrderId;
1902
+ }
1867
1903
  if (swap) {
1868
1904
  if (stopLossPrice || takeProfitPrice) {
1869
1905
  request['stop_type'] = this.safeInteger(params, 'stop_type', 1); // 1: triggered by the latest transaction, 2: mark price, 3: index price
@@ -4765,6 +4801,32 @@ export default class coinex extends Exchange {
4765
4801
  let url = this.urls['api'][api] + '/' + this.version + '/' + path;
4766
4802
  let query = this.omit(params, this.extractParams(path));
4767
4803
  const nonce = this.nonce().toString();
4804
+ if (method === 'POST') {
4805
+ const parts = path.split('/');
4806
+ const firstPart = this.safeString(parts, 0, '');
4807
+ const numParts = parts.length;
4808
+ const lastPart = this.safeString(parts, numParts - 1, '');
4809
+ const lastWords = lastPart.split('_');
4810
+ const numWords = lastWords.length;
4811
+ const lastWord = this.safeString(lastWords, numWords - 1, '');
4812
+ if ((firstPart === 'order') && (lastWord === 'limit' || lastWord === 'market')) {
4813
+ // inject in implicit API calls
4814
+ // POST /order/limit - Place limit orders
4815
+ // POST /order/market - Place market orders
4816
+ // POST /order/stop/limit - Place stop limit orders
4817
+ // POST /order/stop/market - Place stop market orders
4818
+ // POST /perpetual/v1/order/put_limit - Place limit orders
4819
+ // POST /perpetual/v1/order/put_market - Place market orders
4820
+ // POST /perpetual/v1/order/put_stop_limit - Place stop limit orders
4821
+ // POST /perpetual/v1/order/put_stop_market - Place stop market orders
4822
+ const clientOrderId = this.safeString(params, 'client_id');
4823
+ if (clientOrderId === undefined) {
4824
+ const defaultId = 'x-167673045';
4825
+ const brokerId = this.safeValue(this.options, 'brokerId', defaultId);
4826
+ query['client_id'] = brokerId + '_' + this.uuid16();
4827
+ }
4828
+ }
4829
+ }
4768
4830
  if (api === 'perpetualPrivate' || url === 'https://api.coinex.com/perpetual/v1/market/user_deals') {
4769
4831
  this.checkRequiredCredentials();
4770
4832
  query = this.extend({
@@ -4821,23 +4883,10 @@ export default class coinex extends Exchange {
4821
4883
  const data = this.safeValue(response, 'data');
4822
4884
  const message = this.safeString(response, 'message');
4823
4885
  if ((code !== '0') || ((message !== 'Success') && (message !== 'Succeeded') && (message !== 'Ok') && !data)) {
4824
- const responseCodes = {
4825
- // https://github.com/coinexcom/coinex_exchange_api/wiki/013error_code
4826
- '23': PermissionDenied,
4827
- '24': AuthenticationError,
4828
- '25': AuthenticationError,
4829
- '34': AuthenticationError,
4830
- '35': ExchangeNotAvailable,
4831
- '36': RequestTimeout,
4832
- '213': RateLimitExceeded,
4833
- '107': InsufficientFunds,
4834
- '600': OrderNotFound,
4835
- '601': InvalidOrder,
4836
- '602': InvalidOrder,
4837
- '606': InvalidOrder,
4838
- };
4839
- const ErrorClass = this.safeValue(responseCodes, code, ExchangeError);
4840
- throw new ErrorClass(response['message']);
4886
+ const feedback = this.id + ' ' + message;
4887
+ this.throwBroadlyMatchedException(this.exceptions['broad'], message, feedback);
4888
+ this.throwExactlyMatchedException(this.exceptions['exact'], code, feedback);
4889
+ throw new ExchangeError(feedback);
4841
4890
  }
4842
4891
  return undefined;
4843
4892
  }
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/coinfalcon.js';
2
- import { Balances, Int, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, Int, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class coinfalcon
5
5
  * @extends Exchange
@@ -9,7 +9,7 @@ export default class coinfalcon extends Exchange {
9
9
  fetchMarkets(params?: {}): Promise<any[]>;
10
10
  parseTicker(ticker: any, market?: any): Ticker;
11
11
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
12
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
12
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
13
13
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
14
14
  parseTrade(trade: any, market?: any): Trade;
15
15
  fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/coinlist.js';
2
- import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class coinlist
5
5
  * @extends Exchange
@@ -10,7 +10,7 @@ export default class coinlist extends Exchange {
10
10
  fetchTime(params?: {}): Promise<number>;
11
11
  fetchCurrencies(params?: {}): Promise<{}>;
12
12
  fetchMarkets(params?: {}): Promise<any[]>;
13
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
13
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
14
14
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
15
15
  parseTicker(ticker: any, market?: any): Ticker;
16
16
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/coinone.js';
2
- import { Balances, Int, Order, OrderBook, OrderSide, OrderType, Ticker, Trade } from './base/types.js';
2
+ import { Balances, Int, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade } from './base/types.js';
3
3
  /**
4
4
  * @class coinone
5
5
  * @extends Exchange
@@ -10,7 +10,7 @@ export default class coinone extends Exchange {
10
10
  parseBalance(response: any): Balances;
11
11
  fetchBalance(params?: {}): Promise<Balances>;
12
12
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
13
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
13
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
14
14
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
15
15
  parseTicker(ticker: any, market?: any): Ticker;
16
16
  parseTrade(trade: any, market?: any): Trade;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/coinsph.js';
2
- import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class coinsph
5
5
  * @extends Exchange
@@ -16,7 +16,7 @@ export default class coinsph extends Exchange {
16
16
  }>;
17
17
  fetchTime(params?: {}): Promise<number>;
18
18
  fetchMarkets(params?: {}): Promise<any[]>;
19
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
19
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
20
20
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
21
21
  parseTicker(ticker: any, market?: any): Ticker;
22
22
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/coinspot.js';
2
- import { Balances, Int, OrderBook, OrderSide, OrderType, Ticker, Trade } from './base/types.js';
2
+ import { Balances, Int, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade } from './base/types.js';
3
3
  /**
4
4
  * @class coinspot
5
5
  * @extends Exchange
@@ -11,7 +11,7 @@ export default class coinspot extends Exchange {
11
11
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
12
12
  parseTicker(ticker: any, market?: any): Ticker;
13
13
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
14
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
14
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
15
15
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
16
16
  fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
17
17
  parseTrade(trade: any, market?: any): Trade;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/cryptocom.js';
2
- import { Int, OrderSide, OrderType, Trade, OHLCV, Order, FundingRateHistory, Ticker, OrderRequest, Balances, Transaction, OrderBook } from './base/types.js';
2
+ import { Int, OrderSide, OrderType, Trade, OHLCV, Order, FundingRateHistory, Ticker, OrderRequest, Balances, Transaction, OrderBook, Tickers } from './base/types.js';
3
3
  /**
4
4
  * @class cryptocom
5
5
  * @extends Exchange
@@ -7,7 +7,7 @@ import { Int, OrderSide, OrderType, Trade, OHLCV, Order, FundingRateHistory, Tic
7
7
  export default class cryptocom extends Exchange {
8
8
  describe(): any;
9
9
  fetchMarkets(params?: {}): Promise<any[]>;
10
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
10
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
11
11
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
12
12
  fetchOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
13
13
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/currencycom.js';
2
- import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class currencycom
5
5
  * @extends Exchange
@@ -17,7 +17,7 @@ export default class currencycom extends Exchange {
17
17
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
18
18
  parseTicker(ticker: any, market?: any): Ticker;
19
19
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
20
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
20
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
21
21
  parseOHLCV(ohlcv: any, market?: any): OHLCV;
22
22
  fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
23
23
  parseTrade(trade: any, market?: any): Trade;
package/js/src/delta.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/delta.js';
2
- import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Trade } from './base/types.js';
2
+ import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade } from './base/types.js';
3
3
  /**
4
4
  * @class delta
5
5
  * @extends Exchange
@@ -66,7 +66,7 @@ export default class delta extends Exchange {
66
66
  fetchMarkets(params?: {}): Promise<any[]>;
67
67
  parseTicker(ticker: any, market?: any): Ticker;
68
68
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
69
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
69
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
70
70
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
71
71
  parseTrade(trade: any, market?: any): Trade;
72
72
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/deribit.js';
2
- import { Balances, FundingRateHistory, Int, Liquidation, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, FundingRateHistory, Int, Liquidation, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class deribit
5
5
  * @extends Exchange
@@ -41,7 +41,7 @@ export default class deribit extends Exchange {
41
41
  }>;
42
42
  parseTicker(ticker: any, market?: any): Ticker;
43
43
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
44
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
44
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
45
45
  fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
46
46
  parseTrade(trade: any, market?: any): Trade;
47
47
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/digifinex.js';
2
- import { FundingRateHistory, Int, OHLCV, Order, OrderSide, OrderType, OrderRequest, Trade, Balances, Transaction, Ticker, OrderBook } from './base/types.js';
2
+ import { FundingRateHistory, Int, OHLCV, Order, OrderSide, OrderType, OrderRequest, Trade, Balances, Transaction, Ticker, OrderBook, Tickers } from './base/types.js';
3
3
  /**
4
4
  * @class digifinex
5
5
  * @extends Exchange
@@ -13,7 +13,7 @@ export default class digifinex extends Exchange {
13
13
  parseBalance(response: any): Balances;
14
14
  fetchBalance(params?: {}): Promise<Balances>;
15
15
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
16
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
16
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
17
17
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
18
18
  parseTicker(ticker: any, market?: any): Ticker;
19
19
  parseTrade(trade: any, market?: any): Trade;
package/js/src/exmo.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/exmo.js';
2
- import { Dictionary, Int, Order, OrderSide, OrderType, Trade, OrderBook, OHLCV, Balances, Transaction, Ticker } from './base/types.js';
2
+ import { Dictionary, Int, Order, OrderSide, OrderType, Trade, OrderBook, OHLCV, Balances, Transaction, Ticker, Tickers } from './base/types.js';
3
3
  /**
4
4
  * @class exmo
5
5
  * @extends Exchange
@@ -58,7 +58,7 @@ export default class exmo extends Exchange {
58
58
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
59
59
  fetchOrderBooks(symbols?: string[], limit?: Int, params?: {}): Promise<Dictionary<OrderBook>>;
60
60
  parseTicker(ticker: any, market?: any): Ticker;
61
- fetchTickers(symbols?: string[], params?: {}): Promise<Dictionary<Ticker>>;
61
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
62
62
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
63
63
  parseTrade(trade: any, market?: any): Trade;
64
64
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
package/js/src/gate.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/gate.js';
2
- import { Int, OrderSide, OrderType, OHLCV, Trade, FundingRateHistory, OpenInterest, Order, Balances, OrderRequest, FundingHistory, Transaction, Ticker, OrderBook } from './base/types.js';
2
+ import { Int, OrderSide, OrderType, OHLCV, Trade, FundingRateHistory, OpenInterest, Order, Balances, OrderRequest, FundingHistory, Transaction, Ticker, OrderBook, Tickers } from './base/types.js';
3
3
  /**
4
4
  * @class gate
5
5
  * @extends Exchange
@@ -206,7 +206,7 @@ export default class gate extends Exchange {
206
206
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
207
207
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
208
208
  parseTicker(ticker: any, market?: any): Ticker;
209
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
209
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
210
210
  parseBalanceHelper(entry: any): import("./base/types.js").Balance;
211
211
  fetchBalance(params?: {}): Promise<Balances>;
212
212
  fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/gemini.js';
2
- import { Balances, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, Int, Market, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class gemini
5
5
  * @extends Exchange
@@ -13,62 +13,14 @@ export default class gemini extends Exchange {
13
13
  parseMarketActive(status: any): any;
14
14
  fetchUSDTMarkets(params?: {}): Promise<any[]>;
15
15
  fetchMarketsFromAPI(params?: {}): Promise<unknown[]>;
16
- parseMarket(response: any): {
17
- id: string;
18
- symbol: string;
19
- base: any;
20
- quote: any;
21
- settle: any;
22
- baseId: string;
23
- quoteId: string;
24
- settleId: any;
25
- type: string;
26
- spot: boolean;
27
- margin: boolean;
28
- swap: boolean;
29
- future: boolean;
30
- option: boolean;
31
- active: any;
32
- contract: boolean;
33
- linear: any;
34
- inverse: any;
35
- contractSize: any;
36
- expiry: any;
37
- expiryDatetime: any;
38
- strike: any;
39
- optionType: any;
40
- precision: {
41
- price: number;
42
- amount: number;
43
- };
44
- limits: {
45
- leverage: {
46
- min: any;
47
- max: any;
48
- };
49
- amount: {
50
- min: number;
51
- max: any;
52
- };
53
- price: {
54
- min: any;
55
- max: any;
56
- };
57
- cost: {
58
- min: any;
59
- max: any;
60
- };
61
- };
62
- created: any;
63
- info: any;
64
- };
16
+ parseMarket(response: any): Market;
65
17
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
66
18
  fetchTickerV1(symbol: string, params?: {}): Promise<Ticker>;
67
19
  fetchTickerV2(symbol: string, params?: {}): Promise<Ticker>;
68
20
  fetchTickerV1AndV2(symbol: string, params?: {}): Promise<Ticker>;
69
21
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
70
22
  parseTicker(ticker: any, market?: any): Ticker;
71
- fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
23
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
72
24
  parseTrade(trade: any, market?: any): Trade;
73
25
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
74
26
  parseBalance(response: any): Balances;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/hitbtc.js';
2
- import { Int, OrderSide, OrderType, FundingRateHistory, OHLCV, Ticker, Order, OrderBook, Dictionary, Position, Trade, Balances, Transaction, MarginMode } from './base/types.js';
2
+ import { Int, OrderSide, OrderType, FundingRateHistory, OHLCV, Ticker, Order, OrderBook, Dictionary, Position, Trade, Balances, Transaction, MarginMode, Tickers } from './base/types.js';
3
3
  /**
4
4
  * @class hitbtc
5
5
  * @extends Exchange
@@ -28,7 +28,7 @@ export default class hitbtc extends Exchange {
28
28
  parseBalance(response: any): Balances;
29
29
  fetchBalance(params?: {}): Promise<Balances>;
30
30
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
31
- fetchTickers(symbols?: string[], params?: {}): Promise<Dictionary<Ticker>>;
31
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
32
32
  parseTicker(ticker: any, market?: any): Ticker;
33
33
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
34
34
  fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/hollaex.js';
2
- import { Balances, Dictionary, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, Dictionary, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class hollaex
5
5
  * @extends Exchange
@@ -11,7 +11,7 @@ export default class hollaex extends Exchange {
11
11
  fetchOrderBooks(symbols?: string[], limit?: Int, params?: {}): Promise<Dictionary<OrderBook>>;
12
12
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
13
13
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
14
- fetchTickers(symbols?: string[], params?: {}): Promise<Dictionary<Ticker>>;
14
+ fetchTickers(symbols?: string[], params?: {}): Promise<Tickers>;
15
15
  parseTickers(response: any, symbols?: string[], params?: {}): Dictionary<Ticker>;
16
16
  parseTicker(ticker: any, market?: any): Ticker;
17
17
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;