ccxt 4.4.39 → 4.4.40

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 (185) hide show
  1. package/README.md +3 -3
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +1 -1
  4. package/dist/cjs/src/ascendex.js +9 -9
  5. package/dist/cjs/src/base/Exchange.js +12 -18
  6. package/dist/cjs/src/binance.js +13 -19
  7. package/dist/cjs/src/bingx.js +1 -2
  8. package/dist/cjs/src/bit2c.js +0 -1
  9. package/dist/cjs/src/bitbank.js +0 -1
  10. package/dist/cjs/src/bitbns.js +0 -1
  11. package/dist/cjs/src/bitfinex.js +17 -18
  12. package/dist/cjs/src/bitfinex1.js +0 -1
  13. package/dist/cjs/src/bitflyer.js +0 -1
  14. package/dist/cjs/src/bitget.js +1 -2
  15. package/dist/cjs/src/bithumb.js +0 -1
  16. package/dist/cjs/src/bitmart.js +3 -4
  17. package/dist/cjs/src/bitmex.js +5 -6
  18. package/dist/cjs/src/bitopro.js +4 -5
  19. package/dist/cjs/src/bitrue.js +5 -7
  20. package/dist/cjs/src/bitso.js +1 -2
  21. package/dist/cjs/src/bitstamp.js +1 -2
  22. package/dist/cjs/src/bitteam.js +1 -3
  23. package/dist/cjs/src/bitvavo.js +2 -4
  24. package/dist/cjs/src/blockchaincom.js +5 -5
  25. package/dist/cjs/src/blofin.js +10 -10
  26. package/dist/cjs/src/btcalpha.js +0 -1
  27. package/dist/cjs/src/btcbox.js +0 -1
  28. package/dist/cjs/src/btcmarkets.js +1 -3
  29. package/dist/cjs/src/bybit.js +2 -3
  30. package/dist/cjs/src/cex.js +1 -1
  31. package/dist/cjs/src/coinbase.js +77 -1
  32. package/dist/cjs/src/coinbaseexchange.js +1 -1
  33. package/dist/cjs/src/coinbaseinternational.js +62 -0
  34. package/dist/cjs/src/coincatch.js +1 -1
  35. package/dist/cjs/src/coinex.js +9 -9
  36. package/dist/cjs/src/coinlist.js +1 -1
  37. package/dist/cjs/src/coinmetro.js +1 -1
  38. package/dist/cjs/src/cryptocom.js +91 -2
  39. package/dist/cjs/src/currencycom.js +1 -1
  40. package/dist/cjs/src/defx.js +1 -2
  41. package/dist/cjs/src/delta.js +1 -1
  42. package/dist/cjs/src/digifinex.js +1 -1
  43. package/dist/cjs/src/exmo.js +2 -2
  44. package/dist/cjs/src/gate.js +1 -1
  45. package/dist/cjs/src/hashkey.js +3 -5
  46. package/dist/cjs/src/htx.js +1 -1
  47. package/dist/cjs/src/hyperliquid.js +1 -1
  48. package/dist/cjs/src/kraken.js +1 -1
  49. package/dist/cjs/src/kucoin.js +24 -24
  50. package/dist/cjs/src/luno.js +1 -1
  51. package/dist/cjs/src/mexc.js +138 -2
  52. package/dist/cjs/src/ndax.js +1 -1
  53. package/dist/cjs/src/okcoin.js +18 -18
  54. package/dist/cjs/src/okx.js +21 -21
  55. package/dist/cjs/src/phemex.js +12 -8
  56. package/dist/cjs/src/poloniex.js +1 -1
  57. package/dist/cjs/src/poloniexfutures.js +6 -6
  58. package/dist/cjs/src/pro/bitget.js +1 -1
  59. package/dist/cjs/src/pro/bybit.js +13 -1
  60. package/dist/cjs/src/pro/coinex.js +2 -2
  61. package/dist/cjs/src/pro/gate.js +6 -6
  62. package/dist/cjs/src/pro/kucoin.js +3 -3
  63. package/dist/cjs/src/pro/okx.js +11 -11
  64. package/dist/cjs/src/pro/upbit.js +3 -3
  65. package/dist/cjs/src/vertex.js +11 -11
  66. package/dist/cjs/src/woo.js +33 -33
  67. package/dist/cjs/src/woofipro.js +24 -24
  68. package/dist/cjs/src/xt.js +26 -26
  69. package/dist/cjs/src/zonda.js +1 -1
  70. package/js/ccxt.d.ts +1 -1
  71. package/js/ccxt.js +1 -1
  72. package/js/src/ascendex.d.ts +2 -2
  73. package/js/src/ascendex.js +9 -9
  74. package/js/src/base/Exchange.js +12 -18
  75. package/js/src/binance.d.ts +9 -9
  76. package/js/src/binance.js +13 -19
  77. package/js/src/bingx.d.ts +1 -1
  78. package/js/src/bingx.js +1 -2
  79. package/js/src/bit2c.js +0 -1
  80. package/js/src/bitbank.js +0 -1
  81. package/js/src/bitbns.js +0 -1
  82. package/js/src/bitfinex.d.ts +3 -3
  83. package/js/src/bitfinex.js +17 -18
  84. package/js/src/bitfinex1.js +0 -1
  85. package/js/src/bitflyer.js +0 -1
  86. package/js/src/bitget.d.ts +1 -1
  87. package/js/src/bitget.js +1 -2
  88. package/js/src/bithumb.js +0 -1
  89. package/js/src/bitmart.d.ts +1 -1
  90. package/js/src/bitmart.js +3 -4
  91. package/js/src/bitmex.d.ts +1 -1
  92. package/js/src/bitmex.js +5 -6
  93. package/js/src/bitopro.js +4 -5
  94. package/js/src/bitrue.js +5 -7
  95. package/js/src/bitso.d.ts +1 -1
  96. package/js/src/bitso.js +1 -2
  97. package/js/src/bitstamp.d.ts +1 -1
  98. package/js/src/bitstamp.js +1 -2
  99. package/js/src/bitteam.js +1 -3
  100. package/js/src/bitvavo.d.ts +1 -1
  101. package/js/src/bitvavo.js +2 -4
  102. package/js/src/blockchaincom.js +5 -5
  103. package/js/src/blofin.d.ts +3 -3
  104. package/js/src/blofin.js +10 -10
  105. package/js/src/btcalpha.js +0 -1
  106. package/js/src/btcbox.js +0 -1
  107. package/js/src/btcmarkets.js +1 -3
  108. package/js/src/bybit.d.ts +1 -1
  109. package/js/src/bybit.js +2 -3
  110. package/js/src/cex.d.ts +1 -1
  111. package/js/src/cex.js +1 -1
  112. package/js/src/coinbase.d.ts +1 -1
  113. package/js/src/coinbase.js +77 -1
  114. package/js/src/coinbaseexchange.d.ts +1 -1
  115. package/js/src/coinbaseexchange.js +1 -1
  116. package/js/src/coinbaseinternational.js +62 -0
  117. package/js/src/coincatch.d.ts +1 -1
  118. package/js/src/coincatch.js +1 -1
  119. package/js/src/coinex.js +9 -9
  120. package/js/src/coinlist.d.ts +1 -1
  121. package/js/src/coinlist.js +1 -1
  122. package/js/src/coinmetro.d.ts +1 -1
  123. package/js/src/coinmetro.js +1 -1
  124. package/js/src/cryptocom.d.ts +2 -2
  125. package/js/src/cryptocom.js +91 -2
  126. package/js/src/currencycom.d.ts +1 -1
  127. package/js/src/currencycom.js +1 -1
  128. package/js/src/defx.d.ts +1 -2
  129. package/js/src/defx.js +1 -2
  130. package/js/src/delta.d.ts +1 -1
  131. package/js/src/delta.js +1 -1
  132. package/js/src/digifinex.d.ts +1 -1
  133. package/js/src/digifinex.js +1 -1
  134. package/js/src/exmo.js +2 -2
  135. package/js/src/gate.d.ts +1 -1
  136. package/js/src/gate.js +1 -1
  137. package/js/src/hashkey.d.ts +1 -1
  138. package/js/src/hashkey.js +3 -5
  139. package/js/src/htx.d.ts +1 -1
  140. package/js/src/htx.js +1 -1
  141. package/js/src/hyperliquid.d.ts +1 -1
  142. package/js/src/hyperliquid.js +1 -1
  143. package/js/src/kraken.d.ts +1 -1
  144. package/js/src/kraken.js +1 -1
  145. package/js/src/kucoin.d.ts +13 -13
  146. package/js/src/kucoin.js +24 -24
  147. package/js/src/luno.d.ts +1 -1
  148. package/js/src/luno.js +1 -1
  149. package/js/src/mexc.d.ts +1 -2
  150. package/js/src/mexc.js +138 -2
  151. package/js/src/ndax.d.ts +1 -1
  152. package/js/src/ndax.js +1 -1
  153. package/js/src/okcoin.d.ts +4 -4
  154. package/js/src/okcoin.js +18 -18
  155. package/js/src/okx.d.ts +3 -3
  156. package/js/src/okx.js +21 -21
  157. package/js/src/phemex.js +12 -8
  158. package/js/src/poloniex.d.ts +1 -1
  159. package/js/src/poloniex.js +1 -1
  160. package/js/src/poloniexfutures.d.ts +1 -1
  161. package/js/src/poloniexfutures.js +6 -6
  162. package/js/src/pro/bitget.d.ts +1 -1
  163. package/js/src/pro/bitget.js +1 -1
  164. package/js/src/pro/bybit.d.ts +1 -1
  165. package/js/src/pro/bybit.js +13 -1
  166. package/js/src/pro/coinex.js +2 -2
  167. package/js/src/pro/gate.d.ts +2 -2
  168. package/js/src/pro/gate.js +6 -6
  169. package/js/src/pro/kucoin.d.ts +1 -1
  170. package/js/src/pro/kucoin.js +3 -3
  171. package/js/src/pro/okx.d.ts +2 -2
  172. package/js/src/pro/okx.js +11 -11
  173. package/js/src/pro/upbit.d.ts +3 -3
  174. package/js/src/pro/upbit.js +3 -3
  175. package/js/src/vertex.d.ts +3 -3
  176. package/js/src/vertex.js +11 -11
  177. package/js/src/woo.d.ts +7 -7
  178. package/js/src/woo.js +33 -33
  179. package/js/src/woofipro.d.ts +1 -1
  180. package/js/src/woofipro.js +24 -24
  181. package/js/src/xt.d.ts +7 -7
  182. package/js/src/xt.js +26 -26
  183. package/js/src/zonda.d.ts +1 -1
  184. package/js/src/zonda.js +1 -1
  185. package/package.json +1 -1
@@ -258,6 +258,68 @@ export default class coinbaseinternational extends Exchange {
258
258
  'bitcoin': 'BTC',
259
259
  },
260
260
  },
261
+ 'features': {
262
+ 'spot': {
263
+ 'sandbox': true,
264
+ 'createOrder': {
265
+ 'marginMode': false,
266
+ 'triggerPrice': true,
267
+ 'triggerPriceType': undefined,
268
+ 'triggerDirection': true,
269
+ 'stopLossPrice': false,
270
+ 'takeProfitPrice': false,
271
+ 'attachedStopLossTakeProfit': undefined,
272
+ 'timeInForce': {
273
+ 'IOC': true,
274
+ 'FOK': true,
275
+ 'PO': true,
276
+ 'GTD': true,
277
+ 'GTC': true, // has 30 days max
278
+ },
279
+ 'hedged': false,
280
+ 'trailing': false,
281
+ },
282
+ 'createOrders': undefined,
283
+ 'fetchMyTrades': {
284
+ 'marginMode': false,
285
+ 'limit': 100,
286
+ 'daysBack': undefined,
287
+ 'untilDays': 10000,
288
+ },
289
+ 'fetchOrder': {
290
+ 'marginMode': false,
291
+ 'trigger': false,
292
+ 'trailing': false,
293
+ },
294
+ 'fetchOpenOrders': {
295
+ 'marginMode': false,
296
+ 'limit': 100,
297
+ 'trigger': false,
298
+ 'trailing': false,
299
+ },
300
+ 'fetchOrders': undefined,
301
+ 'fetchClosedOrders': undefined,
302
+ 'fetchOHLCV': {
303
+ 'limit': 300,
304
+ },
305
+ },
306
+ 'swap': {
307
+ 'linear': {
308
+ 'extends': 'spot',
309
+ },
310
+ 'inverse': {
311
+ 'extends': 'spot',
312
+ },
313
+ },
314
+ 'future': {
315
+ 'linear': {
316
+ 'extends': 'spot',
317
+ },
318
+ 'inverse': {
319
+ 'extends': 'spot',
320
+ },
321
+ },
322
+ },
261
323
  });
262
324
  }
263
325
  async handlePortfolioAndParams(methodName, params = {}) {
@@ -761,7 +761,7 @@ export default class coincatch extends Exchange {
761
761
  * @param {string} [params.business] *swap only*
762
762
  * @param {string} [params.lastEndId] *swap only*
763
763
  * @param {bool} [params.next] *swap only*
764
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
764
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
765
765
  */
766
766
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
767
767
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
@@ -5079,7 +5079,7 @@ export default class coincatch extends Exchange {
5079
5079
  * @param {string} [params.business] *swap only*
5080
5080
  * @param {string} [params.lastEndId] *swap only*
5081
5081
  * @param {bool} [params.next] *swap only*
5082
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
5082
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
5083
5083
  */
5084
5084
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
5085
5085
  const methodName = 'fetchLedger';
package/js/src/coinex.js CHANGED
@@ -2632,21 +2632,21 @@ export default class coinex extends Exchange {
2632
2632
  const request = {
2633
2633
  'market': market['id'],
2634
2634
  };
2635
- const stop = this.safeBool2(params, 'stop', 'trigger');
2635
+ const trigger = this.safeBool2(params, 'stop', 'trigger');
2636
2636
  params = this.omit(params, ['stop', 'trigger']);
2637
2637
  let response = undefined;
2638
2638
  const requestIds = [];
2639
2639
  for (let i = 0; i < ids.length; i++) {
2640
2640
  requestIds.push(parseInt(ids[i]));
2641
2641
  }
2642
- if (stop) {
2642
+ if (trigger) {
2643
2643
  request['stop_ids'] = requestIds;
2644
2644
  }
2645
2645
  else {
2646
2646
  request['order_ids'] = requestIds;
2647
2647
  }
2648
2648
  if (market['spot']) {
2649
- if (stop) {
2649
+ if (trigger) {
2650
2650
  response = await this.v2PrivatePostSpotCancelBatchStopOrder(this.extend(request, params));
2651
2651
  //
2652
2652
  // {
@@ -2718,7 +2718,7 @@ export default class coinex extends Exchange {
2718
2718
  }
2719
2719
  else {
2720
2720
  request['market_type'] = 'FUTURES';
2721
- if (stop) {
2721
+ if (trigger) {
2722
2722
  response = await this.v2PrivatePostFuturesCancelBatchStopOrder(this.extend(request, params));
2723
2723
  //
2724
2724
  // {
@@ -3414,7 +3414,7 @@ export default class coinex extends Exchange {
3414
3414
  if (limit !== undefined) {
3415
3415
  request['limit'] = limit;
3416
3416
  }
3417
- const stop = this.safeBool2(params, 'stop', 'trigger');
3417
+ const trigger = this.safeBool2(params, 'stop', 'trigger');
3418
3418
  params = this.omit(params, ['stop', 'trigger']);
3419
3419
  let marketType = undefined;
3420
3420
  [marketType, params] = this.handleMarketTypeAndParams('fetchOrdersByStatus', market, params);
@@ -3424,7 +3424,7 @@ export default class coinex extends Exchange {
3424
3424
  if (marketType === 'swap') {
3425
3425
  request['market_type'] = 'FUTURES';
3426
3426
  if (isClosed) {
3427
- if (stop) {
3427
+ if (trigger) {
3428
3428
  response = await this.v2PrivateGetFuturesFinishedStopOrder(this.extend(request, params));
3429
3429
  //
3430
3430
  // {
@@ -3488,7 +3488,7 @@ export default class coinex extends Exchange {
3488
3488
  }
3489
3489
  }
3490
3490
  else if (isOpen) {
3491
- if (stop) {
3491
+ if (trigger) {
3492
3492
  response = await this.v2PrivateGetFuturesPendingStopOrder(this.extend(request, params));
3493
3493
  //
3494
3494
  // {
@@ -3567,7 +3567,7 @@ export default class coinex extends Exchange {
3567
3567
  request['market_type'] = 'SPOT';
3568
3568
  }
3569
3569
  if (isClosed) {
3570
- if (stop) {
3570
+ if (trigger) {
3571
3571
  response = await this.v2PrivateGetSpotFinishedStopOrder(this.extend(request, params));
3572
3572
  //
3573
3573
  // {
@@ -3634,7 +3634,7 @@ export default class coinex extends Exchange {
3634
3634
  }
3635
3635
  }
3636
3636
  else if (status === 'pending') {
3637
- if (stop) {
3637
+ if (trigger) {
3638
3638
  response = await this.v2PrivateGetSpotPendingStopOrder(this.extend(request, params));
3639
3639
  //
3640
3640
  // {
@@ -358,7 +358,7 @@ export default class coinlist extends Exchange {
358
358
  * @param {int} [limit] max number of ledger entries to return (default 200, max 500)
359
359
  * @param {object} [params] extra parameters specific to the exchange API endpoint
360
360
  * @param {int} [params.until] the latest time in ms to fetch entries for
361
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
361
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
362
362
  */
363
363
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
364
364
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
@@ -2094,7 +2094,7 @@ export default class coinlist extends Exchange {
2094
2094
  * @param {int} [limit] max number of ledger entries to return (default 200, max 500)
2095
2095
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2096
2096
  * @param {int} [params.until] the latest time in ms to fetch entries for
2097
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
2097
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
2098
2098
  */
2099
2099
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
2100
2100
  const traderId = this.safeString2(params, 'trader_id', 'traderId');
@@ -120,7 +120,7 @@ export default class coinmetro extends Exchange {
120
120
  * @param {int} [limit] max number of ledger entries to return (default 200, max 500)
121
121
  * @param {object} [params] extra parameters specific to the exchange API endpoint
122
122
  * @param {int} [params.until] the latest time in ms to fetch entries for
123
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
123
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
124
124
  */
125
125
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
126
126
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
@@ -993,7 +993,7 @@ export default class coinmetro extends Exchange {
993
993
  * @param {int} [limit] max number of ledger entries to return (default 200, max 500)
994
994
  * @param {object} [params] extra parameters specific to the exchange API endpoint
995
995
  * @param {int} [params.until] the latest time in ms to fetch entries for
996
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
996
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
997
997
  */
998
998
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
999
999
  await this.loadMarkets();
@@ -125,7 +125,7 @@ export default class cryptocom extends Exchange {
125
125
  * @param {object} [params] extra parameters specific to the exchange API endpoint
126
126
  * @param {string} [params.timeInForce] 'GTC', 'IOC', 'FOK' or 'PO'
127
127
  * @param {string} [params.ref_price_type] 'MARK_PRICE', 'INDEX_PRICE', 'LAST_PRICE' which trigger price type to use, default is MARK_PRICE
128
- * @param {float} [params.triggerPrice] price to trigger a stop order
128
+ * @param {float} [params.triggerPrice] price to trigger a trigger order
129
129
  * @param {float} [params.stopLossPrice] price to trigger a stop-loss trigger order
130
130
  * @param {float} [params.takeProfitPrice] price to trigger a take-profit trigger order
131
131
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
@@ -302,7 +302,7 @@ export default class cryptocom extends Exchange {
302
302
  * @param {int} [limit] max number of ledger entries to return
303
303
  * @param {object} [params] extra parameters specific to the exchange API endpoint
304
304
  * @param {int} [params.until] timestamp in ms for the ending date filter, default is the current time
305
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
305
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
306
306
  */
307
307
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
308
308
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
@@ -351,6 +351,95 @@ export default class cryptocom extends Exchange {
351
351
  },
352
352
  'broker': 'CCXT',
353
353
  },
354
+ 'features': {
355
+ 'default': {
356
+ 'sandbox': true,
357
+ 'createOrder': {
358
+ 'marginMode': true,
359
+ 'triggerPrice': true,
360
+ // todo: implementation fix
361
+ 'triggerPriceType': {
362
+ 'last': true,
363
+ 'mark': true,
364
+ 'index': true,
365
+ },
366
+ 'triggerDirection': false,
367
+ 'stopLossPrice': true,
368
+ 'takeProfitPrice': true,
369
+ 'attachedStopLossTakeProfit': undefined,
370
+ 'timeInForce': {
371
+ 'IOC': true,
372
+ 'FOK': true,
373
+ 'PO': true,
374
+ 'GTD': false,
375
+ },
376
+ 'hedged': false,
377
+ // exchange-supported features
378
+ 'selfTradePrevention': true,
379
+ 'trailing': false,
380
+ 'iceberg': false,
381
+ },
382
+ 'createOrders': {
383
+ 'max': 10,
384
+ },
385
+ 'fetchMyTrades': {
386
+ 'marginMode': false,
387
+ 'limit': 100,
388
+ 'daysBack': undefined,
389
+ 'untilDays': 1,
390
+ },
391
+ 'fetchOrder': {
392
+ 'marginMode': false,
393
+ 'trigger': false,
394
+ 'trailing': false,
395
+ },
396
+ 'fetchOpenOrders': {
397
+ 'marginMode': true,
398
+ 'limit': 100,
399
+ 'trigger': false,
400
+ 'trailing': false,
401
+ },
402
+ 'fetchOrders': {
403
+ 'marginMode': false,
404
+ 'limit': 100,
405
+ 'daysBack': undefined,
406
+ 'untilDays': 1,
407
+ 'trigger': false,
408
+ 'trailing': false,
409
+ },
410
+ 'fetchClosedOrders': {
411
+ 'marginMode': false,
412
+ 'limit': 100,
413
+ 'daysBackClosed': undefined,
414
+ 'daysBackCanceled': undefined,
415
+ 'untilDays': 1,
416
+ 'trigger': false,
417
+ 'trailing': false,
418
+ },
419
+ 'fetchOHLCV': {
420
+ 'limit': 300,
421
+ },
422
+ },
423
+ 'spot': {
424
+ 'extends': 'default',
425
+ },
426
+ 'swap': {
427
+ 'linear': {
428
+ 'extends': 'default',
429
+ },
430
+ 'inverse': {
431
+ 'extends': 'default',
432
+ },
433
+ },
434
+ 'future': {
435
+ 'linear': {
436
+ 'extends': 'default',
437
+ },
438
+ 'inverse': {
439
+ 'extends': 'default',
440
+ },
441
+ },
442
+ },
354
443
  // https://exchange-docs.crypto.com/spot/index.html#response-and-reason-codes
355
444
  'commonCurrencies': {
356
445
  'USD_STABLE_COIN': 'USDC',
@@ -1190,7 +1279,7 @@ export default class cryptocom extends Exchange {
1190
1279
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1191
1280
  * @param {string} [params.timeInForce] 'GTC', 'IOC', 'FOK' or 'PO'
1192
1281
  * @param {string} [params.ref_price_type] 'MARK_PRICE', 'INDEX_PRICE', 'LAST_PRICE' which trigger price type to use, default is MARK_PRICE
1193
- * @param {float} [params.triggerPrice] price to trigger a stop order
1282
+ * @param {float} [params.triggerPrice] price to trigger a trigger order
1194
1283
  * @param {float} [params.stopLossPrice] price to trigger a stop-loss trigger order
1195
1284
  * @param {float} [params.takeProfitPrice] price to trigger a take-profit trigger order
1196
1285
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
@@ -2406,7 +2495,7 @@ export default class cryptocom extends Exchange {
2406
2495
  * @param {int} [limit] max number of ledger entries to return
2407
2496
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2408
2497
  * @param {int} [params.until] timestamp in ms for the ending date filter, default is the current time
2409
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
2498
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
2410
2499
  */
2411
2500
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
2412
2501
  await this.loadMarkets();
@@ -235,7 +235,7 @@ export default class currencycom extends Exchange {
235
235
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
236
236
  * @param {int} [limit] max number of ledger entries to return, default is undefined
237
237
  * @param {object} [params] extra parameters specific to the exchange API endpoint
238
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
238
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
239
239
  */
240
240
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
241
241
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
@@ -1701,7 +1701,7 @@ export default class currencycom extends Exchange {
1701
1701
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
1702
1702
  * @param {int} [limit] max number of ledger entries to return, default is undefined
1703
1703
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1704
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
1704
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
1705
1705
  */
1706
1706
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
1707
1707
  await this.loadMarkets();
package/js/src/defx.d.ts CHANGED
@@ -172,7 +172,6 @@ export default class defx extends Exchange {
172
172
  * @param {string} id order id
173
173
  * @param {string} symbol unified symbol of the market the order was made in
174
174
  * @param {object} [params] extra parameters specific to the exchange API endpoint
175
- * @param {boolean} [params.stop] whether the order is a stop/algo order
176
175
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
177
176
  */
178
177
  cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
@@ -305,7 +304,7 @@ export default class defx extends Exchange {
305
304
  * @param {object} [params] extra parameters specific to the exchange API endpoint
306
305
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
307
306
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
308
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
307
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
309
308
  */
310
309
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
311
310
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
package/js/src/defx.js CHANGED
@@ -1349,7 +1349,6 @@ export default class defx extends Exchange {
1349
1349
  * @param {string} id order id
1350
1350
  * @param {string} symbol unified symbol of the market the order was made in
1351
1351
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1352
- * @param {boolean} [params.stop] whether the order is a stop/algo order
1353
1352
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1354
1353
  */
1355
1354
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -1782,7 +1781,7 @@ export default class defx extends Exchange {
1782
1781
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1783
1782
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
1784
1783
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
1785
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
1784
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
1786
1785
  */
1787
1786
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
1788
1787
  await this.loadMarkets();
package/js/src/delta.d.ts CHANGED
@@ -239,7 +239,7 @@ export default class delta extends Exchange {
239
239
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
240
240
  * @param {int} [limit] max number of ledger entries to return, default is undefined
241
241
  * @param {object} [params] extra parameters specific to the exchange API endpoint
242
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
242
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
243
243
  */
244
244
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
245
245
  parseLedgerEntryType(type: any): string;
package/js/src/delta.js CHANGED
@@ -2200,7 +2200,7 @@ export default class delta extends Exchange {
2200
2200
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
2201
2201
  * @param {int} [limit] max number of ledger entries to return, default is undefined
2202
2202
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2203
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
2203
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
2204
2204
  */
2205
2205
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
2206
2206
  await this.loadMarkets();
@@ -253,7 +253,7 @@ export default class digifinex extends Exchange {
253
253
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
254
254
  * @param {int} [limit] max number of ledger entries to return, default is undefined
255
255
  * @param {object} [params] extra parameters specific to the exchange API endpoint
256
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
256
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
257
257
  */
258
258
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
259
259
  parseDepositAddress(depositAddress: any, currency?: Currency): DepositAddress;
@@ -2646,7 +2646,7 @@ export default class digifinex extends Exchange {
2646
2646
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
2647
2647
  * @param {int} [limit] max number of ledger entries to return, default is undefined
2648
2648
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2649
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
2649
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
2650
2650
  */
2651
2651
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
2652
2652
  await this.loadMarkets();
package/js/src/exmo.js CHANGED
@@ -1543,7 +1543,7 @@ export default class exmo extends Exchange {
1543
1543
  async cancelOrder(id, symbol = undefined, params = {}) {
1544
1544
  await this.loadMarkets();
1545
1545
  const request = {};
1546
- const stop = this.safeValue2(params, 'trigger', 'stop');
1546
+ const trigger = this.safeValue2(params, 'trigger', 'stop');
1547
1547
  params = this.omit(params, ['trigger', 'stop']);
1548
1548
  let marginMode = undefined;
1549
1549
  [marginMode, params] = this.handleMarginModeAndParams('cancelOrder', params);
@@ -1559,7 +1559,7 @@ export default class exmo extends Exchange {
1559
1559
  //
1560
1560
  }
1561
1561
  else {
1562
- if (stop) {
1562
+ if (trigger) {
1563
1563
  request['parent_order_id'] = id;
1564
1564
  response = await this.privatePostStopMarketOrderCancel(this.extend(request, params));
1565
1565
  //
package/js/src/gate.d.ts CHANGED
@@ -902,7 +902,7 @@ export default class gate extends Exchange {
902
902
  * @param {object} [params] extra parameters specific to the exchange API endpoint
903
903
  * @param {int} [params.until] end time in ms
904
904
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
905
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
905
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
906
906
  */
907
907
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
908
908
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
package/js/src/gate.js CHANGED
@@ -7125,7 +7125,7 @@ export default class gate extends Exchange {
7125
7125
  * @param {object} [params] extra parameters specific to the exchange API endpoint
7126
7126
  * @param {int} [params.until] end time in ms
7127
7127
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
7128
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
7128
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
7129
7129
  */
7130
7130
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
7131
7131
  await this.loadMarkets();
@@ -270,7 +270,7 @@ export default class hashkey extends Exchange {
270
270
  * @param {int} [params.until] the latest time in ms to fetch entries for
271
271
  * @param {int} [params.flowType] trade, fee, transfer, deposit, withdrawal
272
272
  * @param {int} [params.accountType] spot, swap, custody
273
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
273
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
274
274
  */
275
275
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
276
276
  parseLedgerEntryType(type: any): string;
package/js/src/hashkey.js CHANGED
@@ -2241,7 +2241,7 @@ export default class hashkey extends Exchange {
2241
2241
  * @param {int} [params.until] the latest time in ms to fetch entries for
2242
2242
  * @param {int} [params.flowType] trade, fee, transfer, deposit, withdrawal
2243
2243
  * @param {int} [params.accountType] spot, swap, custody
2244
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
2244
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
2245
2245
  */
2246
2246
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
2247
2247
  const methodName = 'fetchLedger';
@@ -3482,10 +3482,8 @@ export default class hashkey extends Exchange {
3482
3482
  }
3483
3483
  }
3484
3484
  handleTriggerOptionAndParams(params, methodName, defaultValue = undefined) {
3485
- let isStop = defaultValue;
3486
- [isStop, params] = this.handleOptionAndParams(params, methodName, 'stop', isStop);
3487
- let isTrigger = isStop;
3488
- [isTrigger, params] = this.handleOptionAndParams(params, methodName, 'trigger', isTrigger);
3485
+ let isTrigger = defaultValue;
3486
+ [isTrigger, params] = this.handleOptionAndParams2(params, methodName, 'stop', 'trigger', isTrigger);
3489
3487
  return [isTrigger, params];
3490
3488
  }
3491
3489
  parseOrder(order, market = undefined) {
package/js/src/htx.d.ts CHANGED
@@ -759,7 +759,7 @@ export default class htx extends Exchange {
759
759
  * @param {object} [params] extra parameters specific to the exchange API endpoint
760
760
  * @param {int} [params.until] the latest time in ms to fetch entries for
761
761
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
762
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
762
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
763
763
  */
764
764
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
765
765
  /**
package/js/src/htx.js CHANGED
@@ -8389,7 +8389,7 @@ export default class htx extends Exchange {
8389
8389
  * @param {object} [params] extra parameters specific to the exchange API endpoint
8390
8390
  * @param {int} [params.until] the latest time in ms to fetch entries for
8391
8391
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
8392
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
8392
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
8393
8393
  */
8394
8394
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
8395
8395
  await this.loadMarkets();
@@ -501,7 +501,7 @@ export default class hyperliquid extends Exchange {
501
501
  * @param {int} [limit] max number of ledger entries to return
502
502
  * @param {object} [params] extra parameters specific to the exchange API endpoint
503
503
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
504
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
504
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
505
505
  */
506
506
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
507
507
  parseLedgerEntry(item: Dict, currency?: Currency): LedgerEntry;
@@ -3082,7 +3082,7 @@ export default class hyperliquid extends Exchange {
3082
3082
  * @param {int} [limit] max number of ledger entries to return
3083
3083
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3084
3084
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
3085
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
3085
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
3086
3086
  */
3087
3087
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
3088
3088
  await this.loadMarkets();
@@ -122,7 +122,7 @@ export default class kraken extends Exchange {
122
122
  * @param {object} [params] extra parameters specific to the exchange API endpoint
123
123
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
124
124
  * @param {int} [params.end] timestamp in seconds of the latest ledger entry
125
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
125
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
126
126
  */
127
127
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
128
128
  fetchLedgerEntriesByIds(ids: any, code?: Str, params?: {}): Promise<LedgerEntry[]>;
package/js/src/kraken.js CHANGED
@@ -1137,7 +1137,7 @@ export default class kraken extends Exchange {
1137
1137
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1138
1138
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
1139
1139
  * @param {int} [params.end] timestamp in seconds of the latest ledger entry
1140
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
1140
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
1141
1141
  */
1142
1142
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
1143
1143
  // https://www.kraken.com/features/api#get-ledgers-info