ccxt 4.4.96 → 4.4.98

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 (79) hide show
  1. package/README.md +15 -15
  2. package/dist/ccxt.browser.min.js +2 -2
  3. package/dist/cjs/ccxt.js +2 -1
  4. package/dist/cjs/src/base/Exchange.js +63 -15
  5. package/dist/cjs/src/base/errors.js +8 -1
  6. package/dist/cjs/src/base/functions/number.js +30 -9
  7. package/dist/cjs/src/binance.js +95 -34
  8. package/dist/cjs/src/binancecoinm.js +5 -1
  9. package/dist/cjs/src/binanceus.js +3 -1
  10. package/dist/cjs/src/binanceusdm.js +3 -1
  11. package/dist/cjs/src/bingx.js +1 -1
  12. package/dist/cjs/src/bitget.js +18 -2
  13. package/dist/cjs/src/coinmetro.js +2 -3
  14. package/dist/cjs/src/cryptocom.js +77 -1
  15. package/dist/cjs/src/exmo.js +1 -1
  16. package/dist/cjs/src/foxbit.js +1 -1
  17. package/dist/cjs/src/gate.js +1 -2
  18. package/dist/cjs/src/hashkey.js +39 -0
  19. package/dist/cjs/src/hyperliquid.js +42 -27
  20. package/dist/cjs/src/independentreserve.js +35 -0
  21. package/dist/cjs/src/indodax.js +34 -0
  22. package/dist/cjs/src/kucoin.js +2 -1
  23. package/dist/cjs/src/latoken.js +42 -0
  24. package/dist/cjs/src/luno.js +36 -0
  25. package/dist/cjs/src/mercado.js +34 -0
  26. package/dist/cjs/src/mexc.js +3 -25
  27. package/dist/cjs/src/ndax.js +8 -0
  28. package/dist/cjs/src/okx.js +1 -0
  29. package/dist/cjs/src/phemex.js +36 -31
  30. package/dist/cjs/src/pro/binancecoinm.js +3 -1
  31. package/dist/cjs/src/pro/binanceus.js +3 -1
  32. package/dist/cjs/src/pro/binanceusdm.js +3 -1
  33. package/dist/cjs/src/pro/bybit.js +33 -0
  34. package/js/ccxt.d.ts +3 -3
  35. package/js/ccxt.js +3 -3
  36. package/js/src/abstract/binance.d.ts +3 -0
  37. package/js/src/abstract/binancecoinm.d.ts +3 -0
  38. package/js/src/abstract/binanceus.d.ts +3 -0
  39. package/js/src/abstract/binanceusdm.d.ts +3 -0
  40. package/js/src/abstract/phemex.d.ts +1 -0
  41. package/js/src/base/Exchange.d.ts +11 -3
  42. package/js/src/base/Exchange.js +63 -15
  43. package/js/src/base/errorHierarchy.d.ts +1 -0
  44. package/js/src/base/errorHierarchy.js +1 -0
  45. package/js/src/base/errors.d.ts +5 -1
  46. package/js/src/base/errors.js +8 -2
  47. package/js/src/base/functions/number.js +30 -9
  48. package/js/src/binance.d.ts +1 -0
  49. package/js/src/binance.js +95 -34
  50. package/js/src/binancecoinm.js +5 -1
  51. package/js/src/binanceus.js +3 -1
  52. package/js/src/binanceusdm.js +3 -1
  53. package/js/src/bingx.js +1 -1
  54. package/js/src/bitget.js +18 -2
  55. package/js/src/coinmetro.js +2 -3
  56. package/js/src/cryptocom.d.ts +12 -1
  57. package/js/src/cryptocom.js +77 -1
  58. package/js/src/exmo.js +1 -1
  59. package/js/src/foxbit.js +1 -1
  60. package/js/src/gate.js +1 -2
  61. package/js/src/hashkey.js +39 -0
  62. package/js/src/hyperliquid.js +42 -27
  63. package/js/src/independentreserve.js +35 -0
  64. package/js/src/indodax.js +34 -0
  65. package/js/src/kucoin.js +2 -1
  66. package/js/src/latoken.js +42 -0
  67. package/js/src/luno.js +36 -0
  68. package/js/src/mercado.js +34 -0
  69. package/js/src/mexc.d.ts +0 -1
  70. package/js/src/mexc.js +3 -25
  71. package/js/src/ndax.js +8 -0
  72. package/js/src/okx.js +2 -1
  73. package/js/src/phemex.js +36 -31
  74. package/js/src/pro/binancecoinm.js +3 -1
  75. package/js/src/pro/binanceus.js +3 -1
  76. package/js/src/pro/binanceusdm.js +3 -1
  77. package/js/src/pro/bybit.d.ts +11 -1
  78. package/js/src/pro/bybit.js +33 -0
  79. package/package.json +1 -2
@@ -43,7 +43,9 @@ export default class binanceus extends binance {
43
43
  'fetchCurrencies': false,
44
44
  'quoteOrderQty': false,
45
45
  'defaultType': 'spot',
46
- 'fetchMarkets': ['spot'],
46
+ 'fetchMarkets': {
47
+ 'types': ['spot'],
48
+ },
47
49
  },
48
50
  });
49
51
  }
@@ -18,7 +18,9 @@ export default class binanceusdm extends binance {
18
18
  'doc': 'https://developers.binance.com/en',
19
19
  },
20
20
  'options': {
21
- 'fetchMarkets': ['linear'],
21
+ 'fetchMarkets': {
22
+ 'types': ['linear'],
23
+ },
22
24
  'defaultSubType': 'linear',
23
25
  },
24
26
  // https://binance-docs.github.io/apidocs/futures/en/#error-codes
@@ -320,6 +320,16 @@ export default class bybit extends bybitRest {
320
320
  setPositionsCache(client: Client, symbols?: Strings): void;
321
321
  loadPositionsSnapshot(client: any, messageHash: any): Promise<void>;
322
322
  handlePositions(client: any, message: any): void;
323
+ /**
324
+ * @method
325
+ * @name bybit#unWatchPositions
326
+ * @description unWatches all open positions
327
+ * @see https://bybit-exchange.github.io/docs/v5/websocket/private/position
328
+ * @param {string[]} [symbols] list of unified market symbols
329
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
330
+ * @returns {object} status of the unwatch request
331
+ */
332
+ unWatchPositions(symbols?: Strings, params?: {}): Promise<any>;
323
333
  /**
324
334
  * @method
325
335
  * @name bybit#watchLiquidations
@@ -372,7 +382,7 @@ export default class bybit extends bybitRest {
372
382
  handleBalance(client: Client, message: any): void;
373
383
  parseWsBalance(balance: any, accountType?: any): void;
374
384
  watchTopics(url: any, messageHashes: any, topics: any, params?: {}): Promise<any>;
375
- unWatchTopics(url: string, topic: string, symbols: string[], messageHashes: string[], subMessageHashes: string[], topics: any, params?: {}, subExtension?: {}): Promise<any>;
385
+ unWatchTopics(url: string, topic: string, symbols: Strings, messageHashes: string[], subMessageHashes: string[], topics: any, params?: {}, subExtension?: {}): Promise<any>;
376
386
  authenticate(url: any, params?: {}): Promise<any>;
377
387
  handleErrorMessage(client: Client, message: any): boolean;
378
388
  handleMessage(client: Client, message: any): void;
@@ -41,6 +41,17 @@ export default class bybit extends bybitRest {
41
41
  'watchTrades': true,
42
42
  'watchPositions': true,
43
43
  'watchTradesForSymbols': true,
44
+ 'unWatchTicker': true,
45
+ 'unWatchTickers': true,
46
+ 'unWatchOHLCV': true,
47
+ 'unWatchOHLCVForSymbols': true,
48
+ 'unWatchOrderBook': true,
49
+ 'unWatchOrderBookForSymbols': true,
50
+ 'unWatchTrades': true,
51
+ 'unWatchTradesForSymbols': true,
52
+ 'unWatchMyTrades': true,
53
+ 'unWatchOrders': true,
54
+ 'unWatchPositions': true,
44
55
  },
45
56
  'urls': {
46
57
  'api': {
@@ -1556,6 +1567,28 @@ export default class bybit extends bybitRest {
1556
1567
  }
1557
1568
  client.resolve(newPositions, 'positions');
1558
1569
  }
1570
+ /**
1571
+ * @method
1572
+ * @name bybit#unWatchPositions
1573
+ * @description unWatches all open positions
1574
+ * @see https://bybit-exchange.github.io/docs/v5/websocket/private/position
1575
+ * @param {string[]} [symbols] list of unified market symbols
1576
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
1577
+ * @returns {object} status of the unwatch request
1578
+ */
1579
+ async unWatchPositions(symbols = undefined, params = {}) {
1580
+ await this.loadMarkets();
1581
+ const method = 'watchPositions';
1582
+ const messageHash = 'unsubscribe:positions';
1583
+ const subHash = 'positions';
1584
+ if (!this.isEmpty(symbols)) {
1585
+ throw new NotSupported(this.id + ' unWatchPositions() does not support a symbol parameter, you must unwatch all orders');
1586
+ }
1587
+ const url = await this.getUrlByMarketType(undefined, true, method, params);
1588
+ await this.authenticate(url);
1589
+ const topics = ['position'];
1590
+ return await this.unWatchTopics(url, 'positions', symbols, [messageHash], [subHash], topics, params);
1591
+ }
1559
1592
  /**
1560
1593
  * @method
1561
1594
  * @name bybit#watchLiquidations
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ccxt",
3
- "version": "4.4.96",
3
+ "version": "4.4.98",
4
4
  "description": "A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 100+ exchanges",
5
5
  "unpkg": "dist/ccxt.browser.min.js",
6
6
  "type": "module",
@@ -202,7 +202,6 @@
202
202
  "eslint-config-airbnb-base": "15.0.0",
203
203
  "eslint-plugin-import": "2.25.4",
204
204
  "eslint-plugin-jsdoc": "^46.9.0",
205
- "esmify": "^2.1.1",
206
205
  "https-proxy-agent": "^5.0.1",
207
206
  "jsdoc-to-markdown": "^8.0.0",
208
207
  "ololog": "^1.1.175",