ccxt 4.4.94 → 4.4.96

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 (125) hide show
  1. package/README.md +7 -7
  2. package/dist/ccxt.browser.min.js +7 -7
  3. package/dist/cjs/ccxt.js +4 -1
  4. package/dist/cjs/src/abstract/foxbit.js +9 -0
  5. package/dist/cjs/src/apex.js +2 -2
  6. package/dist/cjs/src/ascendex.js +3 -3
  7. package/dist/cjs/src/base/Exchange.js +8 -4
  8. package/dist/cjs/src/base/ws/Future.js +2 -2
  9. package/dist/cjs/src/bingx.js +148 -94
  10. package/dist/cjs/src/bitget.js +32 -144
  11. package/dist/cjs/src/bitmart.js +2 -2
  12. package/dist/cjs/src/bitrue.js +15 -8
  13. package/dist/cjs/src/bitstamp.js +1 -0
  14. package/dist/cjs/src/blofin.js +7 -1
  15. package/dist/cjs/src/bybit.js +17 -6
  16. package/dist/cjs/src/coinbase.js +36 -0
  17. package/dist/cjs/src/coinbaseexchange.js +4 -2
  18. package/dist/cjs/src/coinmate.js +34 -0
  19. package/dist/cjs/src/coinone.js +34 -0
  20. package/dist/cjs/src/coinsph.js +29 -0
  21. package/dist/cjs/src/coinspot.js +36 -1
  22. package/dist/cjs/src/cryptocom.js +2 -1
  23. package/dist/cjs/src/cryptomus.js +41 -1
  24. package/dist/cjs/src/defx.js +1 -1
  25. package/dist/cjs/src/derive.js +1 -1
  26. package/dist/cjs/src/ellipx.js +40 -0
  27. package/dist/cjs/src/foxbit.js +2016 -0
  28. package/dist/cjs/src/gate.js +1 -1
  29. package/dist/cjs/src/hyperliquid.js +3 -2
  30. package/dist/cjs/src/kucoin.js +1 -1
  31. package/dist/cjs/src/kucoinfutures.js +3 -2
  32. package/dist/cjs/src/mexc.js +28 -13
  33. package/dist/cjs/src/modetrade.js +3 -3
  34. package/dist/cjs/src/okcoin.js +1 -1
  35. package/dist/cjs/src/okx.js +12 -3
  36. package/dist/cjs/src/onetrading.js +1 -1
  37. package/dist/cjs/src/oxfun.js +2 -1
  38. package/dist/cjs/src/paradex.js +2 -2
  39. package/dist/cjs/src/pro/hyperliquid.js +6 -6
  40. package/dist/cjs/src/pro/kraken.js +18 -18
  41. package/dist/cjs/src/pro/mexc.js +10 -10
  42. package/dist/cjs/src/vertex.js +3 -2
  43. package/dist/cjs/src/woo.js +1281 -894
  44. package/dist/cjs/src/woofipro.js +2 -2
  45. package/js/ccxt.d.ts +5 -2
  46. package/js/ccxt.js +4 -2
  47. package/js/src/abstract/bingx.d.ts +3 -0
  48. package/js/src/abstract/foxbit.d.ts +29 -0
  49. package/js/src/abstract/foxbit.js +11 -0
  50. package/js/src/abstract/woo.d.ts +58 -3
  51. package/js/src/apex.d.ts +2 -2
  52. package/js/src/apex.js +2 -2
  53. package/js/src/ascendex.d.ts +1 -1
  54. package/js/src/ascendex.js +3 -3
  55. package/js/src/base/Exchange.d.ts +7 -6
  56. package/js/src/base/Exchange.js +8 -4
  57. package/js/src/base/ws/Future.js +2 -2
  58. package/js/src/bingx.d.ts +6 -6
  59. package/js/src/bingx.js +148 -94
  60. package/js/src/bitget.js +32 -144
  61. package/js/src/bitmart.d.ts +2 -2
  62. package/js/src/bitmart.js +2 -2
  63. package/js/src/bitrue.js +15 -8
  64. package/js/src/bitstamp.js +2 -1
  65. package/js/src/bittrade.d.ts +1 -1
  66. package/js/src/blofin.d.ts +2 -1
  67. package/js/src/blofin.js +7 -1
  68. package/js/src/bybit.d.ts +1 -1
  69. package/js/src/bybit.js +17 -6
  70. package/js/src/coinbase.js +36 -0
  71. package/js/src/coinbaseexchange.d.ts +2 -2
  72. package/js/src/coinbaseexchange.js +4 -2
  73. package/js/src/coinbaseinternational.d.ts +2 -2
  74. package/js/src/coinmate.js +34 -0
  75. package/js/src/coinone.js +34 -0
  76. package/js/src/coinsph.js +29 -0
  77. package/js/src/coinspot.d.ts +1 -1
  78. package/js/src/coinspot.js +36 -1
  79. package/js/src/cryptocom.d.ts +1 -1
  80. package/js/src/cryptocom.js +2 -1
  81. package/js/src/cryptomus.d.ts +1 -1
  82. package/js/src/cryptomus.js +41 -1
  83. package/js/src/defx.d.ts +2 -2
  84. package/js/src/defx.js +1 -1
  85. package/js/src/derive.d.ts +2 -2
  86. package/js/src/derive.js +1 -1
  87. package/js/src/digifinex.d.ts +1 -1
  88. package/js/src/ellipx.js +40 -0
  89. package/js/src/foxbit.d.ts +352 -0
  90. package/js/src/foxbit.js +2016 -0
  91. package/js/src/gate.js +1 -1
  92. package/js/src/htx.d.ts +2 -2
  93. package/js/src/hyperliquid.d.ts +2 -2
  94. package/js/src/hyperliquid.js +3 -2
  95. package/js/src/krakenfutures.d.ts +1 -1
  96. package/js/src/kucoin.d.ts +1 -1
  97. package/js/src/kucoin.js +1 -1
  98. package/js/src/kucoinfutures.d.ts +3 -3
  99. package/js/src/kucoinfutures.js +3 -2
  100. package/js/src/mexc.d.ts +1 -1
  101. package/js/src/mexc.js +28 -13
  102. package/js/src/modetrade.d.ts +2 -4
  103. package/js/src/modetrade.js +3 -3
  104. package/js/src/ndax.d.ts +1 -1
  105. package/js/src/okcoin.d.ts +1 -1
  106. package/js/src/okcoin.js +1 -1
  107. package/js/src/okx.d.ts +1 -1
  108. package/js/src/okx.js +12 -3
  109. package/js/src/onetrading.d.ts +1 -1
  110. package/js/src/onetrading.js +1 -1
  111. package/js/src/oxfun.d.ts +1 -1
  112. package/js/src/oxfun.js +2 -1
  113. package/js/src/paradex.d.ts +1 -1
  114. package/js/src/paradex.js +2 -2
  115. package/js/src/pro/hyperliquid.js +6 -6
  116. package/js/src/pro/kraken.js +18 -18
  117. package/js/src/pro/mexc.js +10 -10
  118. package/js/src/timex.d.ts +1 -1
  119. package/js/src/vertex.d.ts +2 -2
  120. package/js/src/vertex.js +3 -2
  121. package/js/src/woo.d.ts +80 -50
  122. package/js/src/woo.js +1281 -894
  123. package/js/src/woofipro.d.ts +2 -4
  124. package/js/src/woofipro.js +2 -2
  125. package/package.json +7 -7
package/js/src/gate.js CHANGED
@@ -3911,7 +3911,7 @@ export default class gate extends Exchange {
3911
3911
  request['from'] = start;
3912
3912
  request['to'] = this.sum(start, 30 * 24 * 60 * 60);
3913
3913
  }
3914
- [request, params] = this.handleUntilOption('to', request, params);
3914
+ [request, params] = this.handleUntilOption('to', request, params, 0.001);
3915
3915
  const response = await this.privateWalletGetDeposits(this.extend(request, params));
3916
3916
  return this.parseTransactions(response, currency);
3917
3917
  }
package/js/src/htx.d.ts CHANGED
@@ -483,7 +483,7 @@ export default class htx extends Exchange {
483
483
  * @param {boolean} [params.trailing] *contract only* set to true if you want to cancel a trailing order
484
484
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
485
485
  */
486
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
486
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
487
487
  /**
488
488
  * @method
489
489
  * @name htx#cancelOrders
@@ -508,7 +508,7 @@ export default class htx extends Exchange {
508
508
  * @param {boolean} [params.trailing] *contract only* set to true if you want to cancel all trailing orders
509
509
  * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
510
510
  */
511
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any[]>;
511
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
512
512
  /**
513
513
  * @method
514
514
  * @name htx#cancelAllOrdersAfter
@@ -230,7 +230,7 @@ export default class hyperliquid extends Exchange {
230
230
  * @param {string} [params.subAccountAddress] sub account user address
231
231
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
232
232
  */
233
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<import("./base/types.js").Dictionary<any>>;
233
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
234
234
  /**
235
235
  * @method
236
236
  * @name hyperliquid#cancelOrders
@@ -258,7 +258,7 @@ export default class hyperliquid extends Exchange {
258
258
  * @param {string} [params.subAccountAddress] sub account user address
259
259
  * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
260
260
  */
261
- cancelOrdersForSymbols(orders: CancellationRequest[], params?: {}): Promise<any>;
261
+ cancelOrdersForSymbols(orders: CancellationRequest[], params?: {}): Promise<Order[]>;
262
262
  /**
263
263
  * @method
264
264
  * @name hyperliquid#cancelAllOrdersAfter
@@ -167,6 +167,7 @@ export default class hyperliquid extends Exchange {
167
167
  'orderStatus': 2,
168
168
  'spotClearinghouseState': 2,
169
169
  'exchangeStatus': 2,
170
+ 'candleSnapshot': 4,
170
171
  },
171
172
  },
172
173
  },
@@ -1869,7 +1870,7 @@ export default class hyperliquid extends Exchange {
1869
1870
  // }
1870
1871
  // }
1871
1872
  //
1872
- return response;
1873
+ return [this.safeOrder({ 'info': response })];
1873
1874
  }
1874
1875
  /**
1875
1876
  * @method
@@ -3769,7 +3770,7 @@ export default class hyperliquid extends Exchange {
3769
3770
  if (coin.indexOf('/') > -1 || coin.indexOf('@') > -1) {
3770
3771
  return coin; // spot
3771
3772
  }
3772
- return coin + '/USDC:USDC';
3773
+ return this.safeCurrencyCode(coin) + '/USDC:USDC';
3773
3774
  }
3774
3775
  handleErrors(code, reason, url, method, headers, body, response, requestHeaders, requestBody) {
3775
3776
  if (!response) {
@@ -126,7 +126,7 @@ export default class krakenfutures extends Exchange {
126
126
  * @param {object} [params] Exchange specific params
127
127
  * @returns An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
128
128
  */
129
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
129
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
130
130
  /**
131
131
  * @method
132
132
  * @name krakenfutures#cancelOrders
@@ -345,7 +345,7 @@ export default class kucoin extends Exchange {
345
345
  * @param {bool} [params.hf] false, // true for hf order
346
346
  * @returns Response from the exchange
347
347
  */
348
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
348
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
349
349
  /**
350
350
  * @method
351
351
  * @name kucoin#fetchOrdersByStatus
package/js/src/kucoin.js CHANGED
@@ -2724,7 +2724,7 @@ export default class kucoin extends Exchange {
2724
2724
  else {
2725
2725
  response = await this.privateDeleteOrders(this.extend(request, query));
2726
2726
  }
2727
- return response;
2727
+ return [this.safeOrder({ 'info': response })];
2728
2728
  }
2729
2729
  /**
2730
2730
  * @method
@@ -220,7 +220,7 @@ export default class kucoinfutures extends kucoin {
220
220
  * @param {string} [params.clientOrderId] cancel order by client order id
221
221
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
222
222
  */
223
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
223
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
224
224
  /**
225
225
  * @method
226
226
  * @name kucoinfutures#cancelOrders
@@ -244,7 +244,7 @@ export default class kucoinfutures extends kucoin {
244
244
  * @param {object} [params.trigger] When true, all the trigger orders will be cancelled
245
245
  * @returns Response from the exchange
246
246
  */
247
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
247
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
248
248
  /**
249
249
  * @method
250
250
  * @name kucoinfutures#addMargin
@@ -494,7 +494,7 @@ export default class kucoinfutures extends kucoin {
494
494
  * @param {object} [params] extra parameters specific to the exchange API endpoint
495
495
  * @returns {object} response from the exchange
496
496
  */
497
- setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<MarginMode>;
497
+ setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<any>;
498
498
  /**
499
499
  * @method
500
500
  * @name kucoinfutures#fetchLeverage
@@ -1771,7 +1771,7 @@ export default class kucoinfutures extends kucoin {
1771
1771
  // },
1772
1772
  // }
1773
1773
  //
1774
- return this.safeValue(response, 'data');
1774
+ return this.safeOrder({ 'info': response });
1775
1775
  }
1776
1776
  /**
1777
1777
  * @method
@@ -1870,7 +1870,8 @@ export default class kucoinfutures extends kucoin {
1870
1870
  // },
1871
1871
  // }
1872
1872
  //
1873
- return this.safeValue(response, 'data');
1873
+ const data = this.safeDict(response, 'data');
1874
+ return [this.safeOrder({ 'info': data })];
1874
1875
  }
1875
1876
  /**
1876
1877
  * @method
package/js/src/mexc.d.ts CHANGED
@@ -757,7 +757,7 @@ export default class mexc extends Exchange {
757
757
  * @param {string} [params.direction] "long" or "short" required when there is no position
758
758
  * @returns {object} response from the exchange
759
759
  */
760
- setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<Leverage>;
760
+ setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<any>;
761
761
  nonce(): number;
762
762
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
763
763
  url: any;
package/js/src/mexc.js CHANGED
@@ -4891,11 +4891,14 @@ export default class mexc extends Exchange {
4891
4891
  // "network": "TRX",
4892
4892
  // "status": "5",
4893
4893
  // "address": "TSMcEDDvkqY9dz8RkFnrS86U59GwEZjfvh",
4894
- // "txId": "51a8f49e6f03f2c056e71fe3291aa65e1032880be855b65cecd0595a1b8af95b",
4894
+ // "txId": "51a8f49e6f03f2c056e71fe3291aa65e1032880be855b65cecd0595a1b8af95b:0",
4895
4895
  // "insertTime": "1664805021000",
4896
4896
  // "unlockConfirm": "200",
4897
4897
  // "confirmTimes": "203",
4898
- // "memo": "xxyy1122"
4898
+ // "memo": "xxyy1122",
4899
+ // "transHash": "51a8f49e6f03f2c056e71fe3291aa65e1032880be855b65cecd0595a1b8af95b",
4900
+ // "updateTime": "1664805621000",
4901
+ // "netWork: "TRX"
4899
4902
  // }
4900
4903
  // ]
4901
4904
  //
@@ -4940,7 +4943,7 @@ export default class mexc extends Exchange {
4940
4943
  // [
4941
4944
  // {
4942
4945
  // "id": "adcd1c8322154de691b815eedcd10c42",
4943
- // "txId": "0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0",
4946
+ // "txId": "0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0:0",
4944
4947
  // "coin": "USDC-MATIC",
4945
4948
  // "network": "MATIC",
4946
4949
  // "address": "0xeE6C7a415995312ED52c53a0f8f03e165e0A5D62",
@@ -4951,7 +4954,11 @@ export default class mexc extends Exchange {
4951
4954
  // "confirmNo": null,
4952
4955
  // "applyTime": "1664882739000",
4953
4956
  // "remark": '',
4954
- // "memo": null
4957
+ // "memo": null,
4958
+ // "explorerUrl": "https://etherscan.io/tx/0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0",
4959
+ // "transHash": "0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0",
4960
+ // "updateTime": "1664882799000",
4961
+ // "netWork: "MATIC"
4955
4962
  // }
4956
4963
  // ]
4957
4964
  //
@@ -4967,18 +4974,21 @@ export default class mexc extends Exchange {
4967
4974
  // "network": "TRX",
4968
4975
  // "status": "5",
4969
4976
  // "address": "TSMcEDDvkqY9dz8RkFnrS86U59GwEZjfvh",
4970
- // "txId": "51a8f49e6f03f2c056e71fe3291aa65e1032880be855b65cecd0595a1b8af95b",
4977
+ // "txId": "51a8f49e6f03f2c056e71fe3291aa65e1032880be855b65cecd0595a1b8af95b:0",
4971
4978
  // "insertTime": "1664805021000",
4972
4979
  // "unlockConfirm": "200",
4973
4980
  // "confirmTimes": "203",
4974
- // "memo": "xxyy1122"
4981
+ // "memo": "xxyy1122",
4982
+ // "transHash": "51a8f49e6f03f2c056e71fe3291aa65e1032880be855b65cecd0595a1b8af95b",
4983
+ // "updateTime": "1664805621000",
4984
+ // "netWork: "TRX"
4975
4985
  // }
4976
4986
  //
4977
4987
  // fetchWithdrawals
4978
4988
  //
4979
4989
  // {
4980
4990
  // "id": "adcd1c8322154de691b815eedcd10c42",
4981
- // "txId": "0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0",
4991
+ // "txId": "0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0:0",
4982
4992
  // "coin": "USDC-MATIC",
4983
4993
  // "network": "MATIC",
4984
4994
  // "address": "0xeE6C7a415995312ED52c53a0f8f03e165e0A5D62",
@@ -4988,8 +4998,12 @@ export default class mexc extends Exchange {
4988
4998
  // "transactionFee": "1",
4989
4999
  // "confirmNo": null,
4990
5000
  // "applyTime": "1664882739000",
4991
- // "remark": '',
4992
- // "memo": null
5001
+ // "remark": "",
5002
+ // "memo": null,
5003
+ // "explorerUrl": "https://etherscan.io/tx/0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0",
5004
+ // "transHash": "0xc8c918cd69b2246db493ef6225a72ffdc664f15b08da3e25c6879b271d05e9d0",
5005
+ // "updateTime": "1664882799000",
5006
+ // "netWork: "MATIC"
4993
5007
  // }
4994
5008
  //
4995
5009
  // withdraw
@@ -5001,6 +5015,7 @@ export default class mexc extends Exchange {
5001
5015
  const id = this.safeString(transaction, 'id');
5002
5016
  const type = (id === undefined) ? 'deposit' : 'withdrawal';
5003
5017
  const timestamp = this.safeInteger2(transaction, 'insertTime', 'applyTime');
5018
+ const updated = this.safeInteger(transaction, 'updateTime');
5004
5019
  let currencyId = undefined;
5005
5020
  const currencyWithNetwork = this.safeString(transaction, 'coin');
5006
5021
  if (currencyWithNetwork !== undefined) {
@@ -5015,7 +5030,7 @@ export default class mexc extends Exchange {
5015
5030
  const status = this.parseTransactionStatusByType(this.safeString(transaction, 'status'), type);
5016
5031
  let amountString = this.safeString(transaction, 'amount');
5017
5032
  const address = this.safeString(transaction, 'address');
5018
- const txid = this.safeString(transaction, 'txId');
5033
+ const txid = this.safeString2(transaction, 'transHash', 'txId');
5019
5034
  let fee = undefined;
5020
5035
  const feeCostString = this.safeString(transaction, 'transactionFee');
5021
5036
  if (feeCostString !== undefined) {
@@ -5045,8 +5060,8 @@ export default class mexc extends Exchange {
5045
5060
  'amount': this.parseNumber(amountString),
5046
5061
  'currency': code,
5047
5062
  'status': status,
5048
- 'updated': undefined,
5049
- 'comment': undefined,
5063
+ 'updated': updated,
5064
+ 'comment': this.safeString(transaction, 'remark'),
5050
5065
  'internal': undefined,
5051
5066
  'fee': fee,
5052
5067
  };
@@ -5986,7 +6001,7 @@ export default class mexc extends Exchange {
5986
6001
  //
5987
6002
  // { success: true, code: '0' }
5988
6003
  //
5989
- return this.parseLeverage(response, market);
6004
+ return this.parseLeverage(response, market); // tmp revert type
5990
6005
  }
5991
6006
  nonce() {
5992
6007
  return this.milliseconds() - this.safeInteger(this.options, 'timeDifference', 0);
@@ -216,7 +216,7 @@ export default class modetrade extends Exchange {
216
216
  * @param {string} [params.clientOrderId] a unique id for the order
217
217
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
218
218
  */
219
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
219
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
220
220
  /**
221
221
  * @method
222
222
  * @name modetrade#cancelOrders
@@ -241,9 +241,7 @@ export default class modetrade extends Exchange {
241
241
  * @param {boolean} [params.trigger] whether the order is a stop/algo order
242
242
  * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
243
243
  */
244
- cancelAllOrders(symbol?: Str, params?: {}): Promise<{
245
- info: any;
246
- }[]>;
244
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
247
245
  /**
248
246
  * @method
249
247
  * @name modetrade#fetchOrder
@@ -26,7 +26,7 @@ export default class modetrade extends Exchange {
26
26
  'countries': ['KY'],
27
27
  'rateLimit': 100,
28
28
  'version': 'v1',
29
- 'certified': true,
29
+ 'certified': false,
30
30
  'pro': true,
31
31
  'dex': true,
32
32
  'hostname': 'trade.mode.network',
@@ -1812,9 +1812,9 @@ export default class modetrade extends Exchange {
1812
1812
  // }
1813
1813
  //
1814
1814
  return [
1815
- {
1815
+ this.safeOrder({
1816
1816
  'info': response,
1817
- },
1817
+ }),
1818
1818
  ];
1819
1819
  }
1820
1820
  /**
package/js/src/ndax.d.ts CHANGED
@@ -168,7 +168,7 @@ export default class ndax extends Exchange {
168
168
  * @param {string} [params.clientOrderId] a unique id for the order
169
169
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
170
170
  */
171
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
171
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
172
172
  /**
173
173
  * @method
174
174
  * @name ndax#fetchOpenOrders
@@ -159,7 +159,7 @@ export default class okcoin extends Exchange {
159
159
  * @param {bool} [params.advanced] True if canceling advanced orders only
160
160
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
161
161
  */
162
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
162
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
163
163
  parseIds(ids: any): any;
164
164
  /**
165
165
  * @method
package/js/src/okcoin.js CHANGED
@@ -1725,7 +1725,7 @@ export default class okcoin extends Exchange {
1725
1725
  const advanced = this.safeValue(params, 'advanced');
1726
1726
  if (trigger || advanced) {
1727
1727
  const orderInner = await this.cancelOrders([id], symbol, params);
1728
- return this.safeValue(orderInner, 0);
1728
+ return this.safeDict(orderInner, 0);
1729
1729
  }
1730
1730
  const market = this.market(symbol);
1731
1731
  const request = {
package/js/src/okx.d.ts CHANGED
@@ -297,7 +297,7 @@ export default class okx extends Exchange {
297
297
  * @param {boolean} [params.trailing] set to true if you want to cancel a trailing order
298
298
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
299
299
  */
300
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
300
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
301
301
  parseIds(ids: any): any;
302
302
  /**
303
303
  * @method
package/js/src/okx.js CHANGED
@@ -1150,7 +1150,9 @@ export default class okx extends Exchange {
1150
1150
  },
1151
1151
  'createOrder': 'privatePostTradeBatchOrders',
1152
1152
  'createMarketBuyOrderRequiresPrice': false,
1153
- 'fetchMarkets': ['spot', 'future', 'swap', 'option'],
1153
+ 'fetchMarkets': {
1154
+ 'types': ['spot', 'future', 'swap', 'option'], // spot, future, swap, option
1155
+ },
1154
1156
  'timeDifference': 0,
1155
1157
  'adjustForTimeDifference': false,
1156
1158
  'defaultType': 'spot',
@@ -1547,7 +1549,14 @@ export default class okx extends Exchange {
1547
1549
  if (this.options['adjustForTimeDifference']) {
1548
1550
  await this.loadTimeDifference();
1549
1551
  }
1550
- const types = this.safeList(this.options, 'fetchMarkets', []);
1552
+ let types = ['spot', 'future', 'swap', 'option'];
1553
+ const fetchMarketsOption = this.safeDict(this.options, 'fetchMarkets');
1554
+ if (fetchMarketsOption !== undefined) {
1555
+ types = this.safeList(fetchMarketsOption, 'types', types);
1556
+ }
1557
+ else {
1558
+ types = this.safeList(this.options, 'fetchMarkets', types); // backward-support
1559
+ }
1551
1560
  let promises = [];
1552
1561
  let result = [];
1553
1562
  for (let i = 0; i < types.length; i++) {
@@ -3480,7 +3489,7 @@ export default class okx extends Exchange {
3480
3489
  const trailing = this.safeBool(params, 'trailing', false);
3481
3490
  if (trigger || trailing) {
3482
3491
  const orderInner = await this.cancelOrders([id], symbol, params);
3483
- return this.safeValue(orderInner, 0);
3492
+ return this.safeDict(orderInner, 0);
3484
3493
  }
3485
3494
  await this.loadMarkets();
3486
3495
  const market = this.market(symbol);
@@ -146,7 +146,7 @@ export default class onetrading extends Exchange {
146
146
  * @param {object} [params] extra parameters specific to the exchange API endpoint
147
147
  * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
148
148
  */
149
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
149
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
150
150
  /**
151
151
  * @method
152
152
  * @name onetrading#cancelOrders
@@ -1338,7 +1338,7 @@ export default class onetrading extends Exchange {
1338
1338
  // "a10e9bd1-8f72-4cfe-9f1b-7f1c8a9bd8ee"
1339
1339
  // ]
1340
1340
  //
1341
- return response;
1341
+ return [this.safeOrder({ 'info': response })];
1342
1342
  }
1343
1343
  /**
1344
1344
  * @method
package/js/src/oxfun.d.ts CHANGED
@@ -413,7 +413,7 @@ export default class oxfun extends Exchange {
413
413
  * @param {object} [params] extra parameters specific to the exchange API endpoint
414
414
  * @returns {object} response from exchange
415
415
  */
416
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
416
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
417
417
  /**
418
418
  * @method
419
419
  * @name oxfun#cancelOrders
package/js/src/oxfun.js CHANGED
@@ -2641,7 +2641,8 @@ export default class oxfun extends Exchange {
2641
2641
  // "data": { "notice": "No working orders found" }
2642
2642
  // }
2643
2643
  //
2644
- return await this.privateDeleteV3OrdersCancelAll(this.extend(request, params));
2644
+ const response = await this.privateDeleteV3OrdersCancelAll(this.extend(request, params));
2645
+ return [this.safeOrder({ 'info': response })];
2645
2646
  }
2646
2647
  /**
2647
2648
  * @method
@@ -181,7 +181,7 @@ export default class paradex extends Exchange {
181
181
  * @param {object} [params] extra parameters specific to the exchange API endpoint
182
182
  * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
183
183
  */
184
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
184
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
185
185
  /**
186
186
  * @method
187
187
  * @name paradex#fetchOrder
package/js/src/paradex.js CHANGED
@@ -1264,7 +1264,7 @@ export default class paradex extends Exchange {
1264
1264
  const cancelReason = this.safeString(order, 'cancel_reason');
1265
1265
  let status = this.safeString(order, 'status');
1266
1266
  if (cancelReason !== undefined) {
1267
- if (cancelReason === 'NOT_ENOUGH_MARGIN') {
1267
+ if (cancelReason === 'NOT_ENOUGH_MARGIN' || cancelReason === 'ORDER_EXCEEDS_POSITION_LIMIT') {
1268
1268
  status = 'rejected';
1269
1269
  }
1270
1270
  else {
@@ -1567,7 +1567,7 @@ export default class paradex extends Exchange {
1567
1567
  //
1568
1568
  // if success, no response...
1569
1569
  //
1570
- return response;
1570
+ return [this.safeOrder({ 'info': response })];
1571
1571
  }
1572
1572
  /**
1573
1573
  * @method
@@ -165,7 +165,7 @@ export default class hyperliquid extends hyperliquidRest {
165
165
  'method': 'subscribe',
166
166
  'subscription': {
167
167
  'type': 'l2Book',
168
- 'coin': market['swap'] ? market['base'] : market['id'],
168
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
169
169
  },
170
170
  };
171
171
  const message = this.extend(request, params);
@@ -194,7 +194,7 @@ export default class hyperliquid extends hyperliquidRest {
194
194
  'method': 'unsubscribe',
195
195
  'subscription': {
196
196
  'type': 'l2Book',
197
- 'coin': market['swap'] ? market['base'] : market['id'],
197
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
198
198
  },
199
199
  };
200
200
  const message = this.extend(request, params);
@@ -502,7 +502,7 @@ export default class hyperliquid extends hyperliquidRest {
502
502
  'method': 'subscribe',
503
503
  'subscription': {
504
504
  'type': 'trades',
505
- 'coin': market['swap'] ? market['base'] : market['id'],
505
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
506
506
  },
507
507
  };
508
508
  const message = this.extend(request, params);
@@ -532,7 +532,7 @@ export default class hyperliquid extends hyperliquidRest {
532
532
  'method': 'unsubscribe',
533
533
  'subscription': {
534
534
  'type': 'trades',
535
- 'coin': market['swap'] ? market['base'] : market['id'],
535
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
536
536
  },
537
537
  };
538
538
  const message = this.extend(request, params);
@@ -659,7 +659,7 @@ export default class hyperliquid extends hyperliquidRest {
659
659
  'method': 'subscribe',
660
660
  'subscription': {
661
661
  'type': 'candle',
662
- 'coin': market['swap'] ? market['base'] : market['id'],
662
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
663
663
  'interval': timeframe,
664
664
  },
665
665
  };
@@ -690,7 +690,7 @@ export default class hyperliquid extends hyperliquidRest {
690
690
  'method': 'unsubscribe',
691
691
  'subscription': {
692
692
  'type': 'candle',
693
- 'coin': market['swap'] ? market['base'] : market['id'],
693
+ 'coin': market['swap'] ? market['baseName'] : market['id'],
694
694
  'interval': timeframe,
695
695
  },
696
696
  };
@@ -780,18 +780,16 @@ export default class kraken extends krakenRest {
780
780
  * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
781
781
  */
782
782
  async watchOrderBookForSymbols(symbols, limit = undefined, params = {}) {
783
- const request = {};
783
+ const requiredParams = {};
784
784
  if (limit !== undefined) {
785
785
  if (this.inArray(limit, [10, 25, 100, 500, 1000])) {
786
- request['params'] = {
787
- 'depth': limit, // default 10, valid options 10, 25, 100, 500, 1000
788
- };
786
+ requiredParams['depth'] = limit; // default 10, valid options 10, 25, 100, 500, 1000
789
787
  }
790
788
  else {
791
789
  throw new NotSupported(this.id + ' watchOrderBook accepts limit values of 10, 25, 100, 500 and 1000 only');
792
790
  }
793
791
  }
794
- const orderbook = await this.watchMultiHelper('orderbook', 'book', symbols, { 'limit': limit }, this.extend(request, params));
792
+ const orderbook = await this.watchMultiHelper('orderbook', 'book', symbols, { 'limit': limit }, this.extend(requiredParams, params));
795
793
  return orderbook.limit();
796
794
  }
797
795
  /**
@@ -1711,20 +1709,22 @@ export default class kraken extends krakenRest {
1711
1709
  //
1712
1710
  const errorMessage = this.safeString2(message, 'errorMessage', 'error');
1713
1711
  if (errorMessage !== undefined) {
1714
- const requestId = this.safeValue2(message, 'reqid', 'req_id');
1715
- if (requestId !== undefined) {
1716
- const broad = this.exceptions['ws']['broad'];
1717
- const broadKey = this.findBroadlyMatchedKey(broad, errorMessage);
1718
- let exception = undefined;
1719
- if (broadKey === undefined) {
1720
- exception = new ExchangeError(errorMessage); // c# requirement to convert the errorMessage to string
1721
- }
1722
- else {
1723
- exception = new broad[broadKey](errorMessage);
1724
- }
1725
- client.reject(exception, requestId);
1726
- return false;
1712
+ // const requestId = this.safeValue2 (message, 'reqid', 'req_id');
1713
+ const broad = this.exceptions['ws']['broad'];
1714
+ const broadKey = this.findBroadlyMatchedKey(broad, errorMessage);
1715
+ let exception = undefined;
1716
+ if (broadKey === undefined) {
1717
+ exception = new ExchangeError(errorMessage); // c# requirement to convert the errorMessage to string
1727
1718
  }
1719
+ else {
1720
+ exception = new broad[broadKey](errorMessage);
1721
+ }
1722
+ // if (requestId !== undefined) {
1723
+ // client.reject (exception, requestId);
1724
+ // } else {
1725
+ client.reject(exception);
1726
+ // }
1727
+ return false;
1728
1728
  }
1729
1729
  return true;
1730
1730
  }