ccxt 4.3.43 → 4.3.45

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 (45) hide show
  1. package/README.md +7 -5
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +9 -1
  4. package/dist/cjs/src/abstract/oxfun.js +9 -0
  5. package/dist/cjs/src/bitstamp.js +18 -2
  6. package/dist/cjs/src/kucoin.js +28 -1
  7. package/dist/cjs/src/luno.js +9 -1
  8. package/dist/cjs/src/lykke.js +10 -2
  9. package/dist/cjs/src/ndax.js +5 -1
  10. package/dist/cjs/src/oxfun.js +2900 -0
  11. package/dist/cjs/src/poloniexfutures.js +2 -2
  12. package/dist/cjs/src/pro/bitmex.js +9 -0
  13. package/dist/cjs/src/pro/oxfun.js +1034 -0
  14. package/dist/cjs/src/pro/woo.js +1 -1
  15. package/dist/cjs/src/wavesexchange.js +121 -110
  16. package/dist/cjs/src/xt.js +135 -96
  17. package/js/ccxt.d.ts +11 -2
  18. package/js/ccxt.js +8 -2
  19. package/js/src/abstract/bitstamp.d.ts +16 -0
  20. package/js/src/abstract/kucoin.d.ts +14 -0
  21. package/js/src/abstract/kucoinfutures.d.ts +14 -0
  22. package/js/src/abstract/oxfun.d.ts +37 -0
  23. package/js/src/abstract/oxfun.js +11 -0
  24. package/js/src/abstract/xt.d.ts +155 -0
  25. package/js/src/abstract/xt.js +11 -0
  26. package/js/src/bitstamp.js +18 -2
  27. package/js/src/kucoin.js +28 -1
  28. package/js/src/luno.d.ts +1 -1
  29. package/js/src/luno.js +9 -1
  30. package/js/src/lykke.d.ts +2 -2
  31. package/js/src/lykke.js +10 -2
  32. package/js/src/ndax.d.ts +1 -1
  33. package/js/src/ndax.js +5 -1
  34. package/js/src/oxfun.d.ts +129 -0
  35. package/js/src/oxfun.js +2901 -0
  36. package/js/src/poloniexfutures.js +2 -2
  37. package/js/src/pro/bitmex.js +9 -0
  38. package/js/src/pro/oxfun.d.ts +38 -0
  39. package/js/src/pro/oxfun.js +1035 -0
  40. package/js/src/pro/woo.js +1 -1
  41. package/js/src/wavesexchange.d.ts +7 -7
  42. package/js/src/wavesexchange.js +122 -111
  43. package/js/src/xt.d.ts +161 -0
  44. package/js/src/xt.js +4761 -0
  45. package/package.json +1 -1
@@ -1239,7 +1239,7 @@ export default class poloniexfutures extends Exchange {
1239
1239
  const cancelledOrderIdsLength = cancelledOrderIds.length;
1240
1240
  for (let i = 0; i < cancelledOrderIdsLength; i++) {
1241
1241
  const cancelledOrderId = this.safeString(cancelledOrderIds, i);
1242
- result.push({
1242
+ result.push(this.safeOrder({
1243
1243
  'id': cancelledOrderId,
1244
1244
  'clientOrderId': undefined,
1245
1245
  'timestamp': undefined,
@@ -1261,7 +1261,7 @@ export default class poloniexfutures extends Exchange {
1261
1261
  'postOnly': undefined,
1262
1262
  'stopPrice': undefined,
1263
1263
  'info': response,
1264
- });
1264
+ }));
1265
1265
  }
1266
1266
  return result;
1267
1267
  }
@@ -1539,11 +1539,17 @@ export default class bitmex extends bitmexRest {
1539
1539
  //
1540
1540
  const action = this.safeString(message, 'action');
1541
1541
  const table = this.safeString(message, 'table');
1542
+ if (table === undefined) {
1543
+ return; // protecting from weird updates
1544
+ }
1542
1545
  const data = this.safeValue(message, 'data', []);
1543
1546
  // if it's an initial snapshot
1544
1547
  if (action === 'partial') {
1545
1548
  const filter = this.safeDict(message, 'filter', {});
1546
1549
  const marketId = this.safeValue(filter, 'symbol');
1550
+ if (marketId === undefined) {
1551
+ return; // protecting from weird update
1552
+ }
1547
1553
  const market = this.safeMarket(marketId);
1548
1554
  const symbol = market['symbol'];
1549
1555
  if (table === 'orderBookL2') {
@@ -1576,6 +1582,9 @@ export default class bitmex extends bitmexRest {
1576
1582
  const numUpdatesByMarketId = {};
1577
1583
  for (let i = 0; i < data.length; i++) {
1578
1584
  const marketId = this.safeValue(data[i], 'symbol');
1585
+ if (marketId === undefined) {
1586
+ return; // protecting from weird update
1587
+ }
1579
1588
  if (!(marketId in numUpdatesByMarketId)) {
1580
1589
  numUpdatesByMarketId[marketId] = 0;
1581
1590
  }
@@ -0,0 +1,38 @@
1
+ import oxfunRest from '../oxfun.js';
2
+ import type { Balances, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade } from '../base/types.js';
3
+ import Client from '../base/ws/Client.js';
4
+ export default class oxfun extends oxfunRest {
5
+ describe(): any;
6
+ subscribeMultiple(messageHashes: any, argsArray: any, params?: {}): Promise<any>;
7
+ watchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
8
+ watchTradesForSymbols(symbols: string[], since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
9
+ handleTrades(client: Client, message: any): void;
10
+ parseWsTrade(trade: any, market?: any): Trade;
11
+ watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
12
+ watchOHLCVForSymbols(symbolsAndTimeframes: string[][], since?: Int, limit?: Int, params?: {}): Promise<import("../base/types.js").Dictionary<import("../base/types.js").Dictionary<OHLCV[]>>>;
13
+ handleOHLCV(client: Client, message: any): void;
14
+ parseWsOHLCV(ohlcv: any, market?: Market): OHLCV;
15
+ watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
16
+ watchOrderBookForSymbols(symbols: string[], limit?: Int, params?: {}): Promise<OrderBook>;
17
+ handleOrderBook(client: Client, message: any): void;
18
+ watchTicker(symbol: string, params?: {}): Promise<Ticker>;
19
+ watchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
20
+ handleTicker(client: Client, message: any): void;
21
+ watchBalance(params?: {}): Promise<Balances>;
22
+ handleBalance(client: any, message: any): void;
23
+ watchPositions(symbols?: Strings, since?: Int, limit?: Int, params?: {}): Promise<Position[]>;
24
+ handlePositions(client: Client, message: any): void;
25
+ parseWsPosition(position: any, market?: Market): Position;
26
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
27
+ handleOrders(client: Client, message: any): void;
28
+ createOrderWs(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?: {}): Promise<Order>;
29
+ editOrderWs(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: Num, price?: Num, params?: {}): Promise<Order>;
30
+ handlePlaceOrders(client: Client, message: any): void;
31
+ cancelOrderWs(id: string, symbol?: Str, params?: {}): Promise<Order>;
32
+ cancelOrdersWs(ids: string[], symbol?: Str, params?: {}): Promise<any>;
33
+ authenticate(params?: {}): Promise<any>;
34
+ handleAuthenticationMessage(client: Client, message: any): void;
35
+ ping(client: any): string;
36
+ handlePong(client: Client, message: any): any;
37
+ handleMessage(client: Client, message: any): void;
38
+ }