ccxt 4.3.92 → 4.3.94

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.
package/dist/cjs/ccxt.js CHANGED
@@ -196,7 +196,7 @@ var xt$1 = require('./src/pro/xt.js');
196
196
 
197
197
  //-----------------------------------------------------------------------------
198
198
  // this is updated by vss.js when building
199
- const version = '4.3.92';
199
+ const version = '4.3.94';
200
200
  Exchange["default"].ccxtVersion = version;
201
201
  const exchanges = {
202
202
  'ace': ace,
@@ -457,7 +457,8 @@ class bingx extends bingx$1 {
457
457
  '100414': errors.AccountSuspended,
458
458
  '100419': errors.PermissionDenied,
459
459
  '100437': errors.BadRequest,
460
- '101204': errors.InsufficientFunds, // {"code":101204,"msg":"","data":{}}
460
+ '101204': errors.InsufficientFunds,
461
+ '110425': errors.InvalidOrder, // {"code":110425,"msg":"Please ensure that the minimum nominal value of the order placed must be greater than 2u","data":{}}
461
462
  },
462
463
  'broad': {},
463
464
  },
@@ -2556,6 +2557,7 @@ class bingx extends bingx$1 {
2556
2557
  let positionSide = undefined;
2557
2558
  const hedged = this.safeBool(params, 'hedged', false);
2558
2559
  if (hedged) {
2560
+ params = this.omit(params, 'reduceOnly');
2559
2561
  if (reduceOnly) {
2560
2562
  positionSide = (side === 'buy') ? 'SHORT' : 'LONG';
2561
2563
  }
@@ -2569,7 +2571,7 @@ class bingx extends bingx$1 {
2569
2571
  request['positionSide'] = positionSide;
2570
2572
  request['quantity'] = (market['inverse']) ? amount : this.parseToNumeric(this.amountToPrecision(symbol, amount)); // precision not available for inverse contracts
2571
2573
  }
2572
- params = this.omit(params, ['hedged', 'reduceOnly', 'triggerPrice', 'stopLossPrice', 'takeProfitPrice', 'trailingAmount', 'trailingPercent', 'trailingType', 'takeProfit', 'stopLoss', 'clientOrderId']);
2574
+ params = this.omit(params, ['hedged', 'triggerPrice', 'stopLossPrice', 'takeProfitPrice', 'trailingAmount', 'trailingPercent', 'trailingType', 'takeProfit', 'stopLoss', 'clientOrderId']);
2573
2575
  return this.extend(request, params);
2574
2576
  }
2575
2577
  async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
@@ -326,7 +326,7 @@ class hyperliquid extends hyperliquid$1 {
326
326
  //
327
327
  const meta = this.safeDict(response, 0, {});
328
328
  const universe = this.safeList(meta, 'universe', []);
329
- const assetCtxs = this.safeDict(response, 1, {});
329
+ const assetCtxs = this.safeList(response, 1, []);
330
330
  const result = [];
331
331
  for (let i = 0; i < universe.length; i++) {
332
332
  const data = this.extend(this.safeDict(universe, i, {}), this.safeDict(assetCtxs, i, {}));
@@ -689,7 +689,7 @@ class hyperliquid extends hyperliquid$1 {
689
689
  const total = this.safeString(balance, 'total');
690
690
  const free = this.safeString(balance, 'hold');
691
691
  account['total'] = total;
692
- account['free'] = free;
692
+ account['used'] = free;
693
693
  spotBalances[code] = account;
694
694
  }
695
695
  return this.safeBalance(spotBalances);
@@ -2080,6 +2080,7 @@ class kucoin extends kucoin$1 {
2080
2080
  * @see https://docs.kucoin.com/spot-hf/#place-hf-order
2081
2081
  * @see https://www.kucoin.com/docs/rest/spot-trading/orders/place-order-test
2082
2082
  * @see https://www.kucoin.com/docs/rest/margin-trading/orders/place-margin-order-test
2083
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-place-hf-order
2083
2084
  * @param {string} symbol Unified CCXT market symbol
2084
2085
  * @param {string} type 'limit' or 'market'
2085
2086
  * @param {string} side 'buy' or 'sell'
@@ -2110,6 +2111,7 @@ class kucoin extends kucoin$1 {
2110
2111
  * @param {bool} [params.autoBorrow] false, // The system will first borrow you funds at the optimal interest rate and then place an order for you
2111
2112
  * @param {bool} [params.hf] false, // true for hf order
2112
2113
  * @param {bool} [params.test] set to true to test an order, no order will be created but the request will be validated
2114
+ * @param {bool} [params.sync] set to true to use the hf sync call
2113
2115
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2114
2116
  */
2115
2117
  await this.loadMarkets();
@@ -2118,6 +2120,8 @@ class kucoin extends kucoin$1 {
2118
2120
  params = this.omit(params, 'test');
2119
2121
  let hf = undefined;
2120
2122
  [hf, params] = await this.handleHfAndParams(params);
2123
+ let useSync = false;
2124
+ [useSync, params] = this.handleOptionAndParams(params, 'createOrder', 'sync', false);
2121
2125
  const [triggerPrice, stopLossPrice, takeProfitPrice] = this.handleTriggerPrices(params);
2122
2126
  const tradeType = this.safeString(params, 'tradeType'); // keep it for backward compatibility
2123
2127
  const isTriggerOrder = (triggerPrice || stopLossPrice || takeProfitPrice);
@@ -2144,6 +2148,9 @@ class kucoin extends kucoin$1 {
2144
2148
  else if (isMarginOrder) {
2145
2149
  response = await this.privatePostMarginOrder(orderRequest);
2146
2150
  }
2151
+ else if (useSync) {
2152
+ response = await this.privatePostHfOrdersSync(orderRequest);
2153
+ }
2147
2154
  else if (hf) {
2148
2155
  response = await this.privatePostHfOrders(orderRequest);
2149
2156
  }
@@ -2212,9 +2219,11 @@ class kucoin extends kucoin$1 {
2212
2219
  * @description create a list of trade orders
2213
2220
  * @see https://www.kucoin.com/docs/rest/spot-trading/orders/place-multiple-orders
2214
2221
  * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/place-multiple-hf-orders
2222
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-place-multiple-hf-orders
2215
2223
  * @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
2216
2224
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2217
2225
  * @param {bool} [params.hf] false, // true for hf orders
2226
+ * @param {bool} [params.sync] false, // true to use the hf sync call
2218
2227
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2219
2228
  */
2220
2229
  await this.loadMarkets();
@@ -2249,8 +2258,13 @@ class kucoin extends kucoin$1 {
2249
2258
  };
2250
2259
  let hf = undefined;
2251
2260
  [hf, params] = await this.handleHfAndParams(params);
2261
+ let useSync = false;
2262
+ [useSync, params] = this.handleOptionAndParams(params, 'createOrders', 'sync', false);
2252
2263
  let response = undefined;
2253
- if (hf) {
2264
+ if (useSync) {
2265
+ response = await this.privatePostHfOrdersMultiSync(this.extend(request, params));
2266
+ }
2267
+ else if (hf) {
2254
2268
  response = await this.privatePostHfOrdersMulti(this.extend(request, params));
2255
2269
  }
2256
2270
  else {
@@ -2426,11 +2440,14 @@ class kucoin extends kucoin$1 {
2426
2440
  * @see https://docs.kucoin.com/spot#cancel-single-order-by-clientoid-2
2427
2441
  * @see https://docs.kucoin.com/spot-hf/#cancel-orders-by-orderid
2428
2442
  * @see https://docs.kucoin.com/spot-hf/#cancel-order-by-clientoid
2443
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-cancel-hf-order-by-orderid
2444
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-cancel-hf-order-by-clientoid
2429
2445
  * @param {string} id order id
2430
2446
  * @param {string} symbol unified symbol of the market the order was made in
2431
2447
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2432
2448
  * @param {bool} [params.stop] True if cancelling a stop order
2433
2449
  * @param {bool} [params.hf] false, // true for hf order
2450
+ * @param {bool} [params.sync] false, // true to use the hf sync call
2434
2451
  * @returns Response from the exchange
2435
2452
  */
2436
2453
  await this.loadMarkets();
@@ -2439,7 +2456,9 @@ class kucoin extends kucoin$1 {
2439
2456
  const stop = this.safeBool2(params, 'stop', 'trigger', false);
2440
2457
  let hf = undefined;
2441
2458
  [hf, params] = await this.handleHfAndParams(params);
2442
- if (hf) {
2459
+ let useSync = false;
2460
+ [useSync, params] = this.handleOptionAndParams(params, 'cancelOrder', 'sync', false);
2461
+ if (hf || useSync) {
2443
2462
  if (symbol === undefined) {
2444
2463
  throw new errors.ArgumentsRequired(this.id + ' cancelOrder() requires a symbol parameter for hf orders');
2445
2464
  }
@@ -2462,6 +2481,9 @@ class kucoin extends kucoin$1 {
2462
2481
  // }
2463
2482
  //
2464
2483
  }
2484
+ else if (useSync) {
2485
+ response = await this.privateDeleteHfOrdersSyncClientOrderClientOid(this.extend(request, params));
2486
+ }
2465
2487
  else if (hf) {
2466
2488
  response = await this.privateDeleteHfOrdersClientOrderClientOid(this.extend(request, params));
2467
2489
  //
@@ -2500,6 +2522,9 @@ class kucoin extends kucoin$1 {
2500
2522
  // }
2501
2523
  //
2502
2524
  }
2525
+ else if (useSync) {
2526
+ response = await this.privateDeleteHfOrdersSyncOrderId(this.extend(request, params));
2527
+ }
2503
2528
  else if (hf) {
2504
2529
  response = await this.privateDeleteHfOrdersOrderId(this.extend(request, params));
2505
2530
  //
package/js/ccxt.d.ts CHANGED
@@ -4,7 +4,7 @@ import * as functions from './src/base/functions.js';
4
4
  import * as errors from './src/base/errors.js';
5
5
  import type { Int, int, Str, Strings, Num, Bool, IndexType, OrderSide, OrderType, MarketType, SubType, Dict, NullableDict, List, NullableList, Fee, OHLCV, OHLCVC, implicitReturnType, Market, Currency, Dictionary, MinMax, FeeInterface, TradingFeeInterface, MarketInterface, Trade, Order, OrderBook, Ticker, Transaction, Tickers, CurrencyInterface, Balance, BalanceAccount, Account, PartialBalances, Balances, DepositAddress, WithdrawalResponse, DepositAddressResponse, FundingRate, FundingRates, Position, BorrowInterest, LeverageTier, LedgerEntry, DepositWithdrawFeeNetwork, DepositWithdrawFee, TransferEntry, CrossBorrowRate, IsolatedBorrowRate, FundingRateHistory, OpenInterest, Liquidation, OrderRequest, CancellationRequest, FundingHistory, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers } from './src/base/types.js';
6
6
  import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError } from './src/base/errors.js';
7
- declare const version = "4.3.91";
7
+ declare const version = "4.3.93";
8
8
  import ace from './src/ace.js';
9
9
  import alpaca from './src/alpaca.js';
10
10
  import ascendex from './src/ascendex.js';
package/js/ccxt.js CHANGED
@@ -38,7 +38,7 @@ import * as errors from './src/base/errors.js';
38
38
  import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError } from './src/base/errors.js';
39
39
  //-----------------------------------------------------------------------------
40
40
  // this is updated by vss.js when building
41
- const version = '4.3.92';
41
+ const version = '4.3.94';
42
42
  Exchange.ccxtVersion = version;
43
43
  //-----------------------------------------------------------------------------
44
44
  import ace from './src/ace.js';
package/js/src/bingx.js CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  // ---------------------------------------------------------------------------
8
8
  import Exchange from './abstract/bingx.js';
9
- import { AuthenticationError, PermissionDenied, AccountSuspended, ExchangeError, InsufficientFunds, BadRequest, OrderNotFound, DDoSProtection, BadSymbol, ArgumentsRequired, NotSupported, OperationFailed } from './base/errors.js';
9
+ import { AuthenticationError, PermissionDenied, AccountSuspended, ExchangeError, InsufficientFunds, BadRequest, OrderNotFound, DDoSProtection, BadSymbol, ArgumentsRequired, NotSupported, OperationFailed, InvalidOrder } from './base/errors.js';
10
10
  import { Precise } from './base/Precise.js';
11
11
  import { sha256 } from './static_dependencies/noble-hashes/sha256.js';
12
12
  import { TICK_SIZE } from './base/functions/number.js';
@@ -460,7 +460,8 @@ export default class bingx extends Exchange {
460
460
  '100414': AccountSuspended,
461
461
  '100419': PermissionDenied,
462
462
  '100437': BadRequest,
463
- '101204': InsufficientFunds, // {"code":101204,"msg":"","data":{}}
463
+ '101204': InsufficientFunds,
464
+ '110425': InvalidOrder, // {"code":110425,"msg":"Please ensure that the minimum nominal value of the order placed must be greater than 2u","data":{}}
464
465
  },
465
466
  'broad': {},
466
467
  },
@@ -2559,6 +2560,7 @@ export default class bingx extends Exchange {
2559
2560
  let positionSide = undefined;
2560
2561
  const hedged = this.safeBool(params, 'hedged', false);
2561
2562
  if (hedged) {
2563
+ params = this.omit(params, 'reduceOnly');
2562
2564
  if (reduceOnly) {
2563
2565
  positionSide = (side === 'buy') ? 'SHORT' : 'LONG';
2564
2566
  }
@@ -2572,7 +2574,7 @@ export default class bingx extends Exchange {
2572
2574
  request['positionSide'] = positionSide;
2573
2575
  request['quantity'] = (market['inverse']) ? amount : this.parseToNumeric(this.amountToPrecision(symbol, amount)); // precision not available for inverse contracts
2574
2576
  }
2575
- params = this.omit(params, ['hedged', 'reduceOnly', 'triggerPrice', 'stopLossPrice', 'takeProfitPrice', 'trailingAmount', 'trailingPercent', 'trailingType', 'takeProfit', 'stopLoss', 'clientOrderId']);
2577
+ params = this.omit(params, ['hedged', 'triggerPrice', 'stopLossPrice', 'takeProfitPrice', 'trailingAmount', 'trailingPercent', 'trailingType', 'takeProfit', 'stopLoss', 'clientOrderId']);
2576
2578
  return this.extend(request, params);
2577
2579
  }
2578
2580
  async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
@@ -329,7 +329,7 @@ export default class hyperliquid extends Exchange {
329
329
  //
330
330
  const meta = this.safeDict(response, 0, {});
331
331
  const universe = this.safeList(meta, 'universe', []);
332
- const assetCtxs = this.safeDict(response, 1, {});
332
+ const assetCtxs = this.safeList(response, 1, []);
333
333
  const result = [];
334
334
  for (let i = 0; i < universe.length; i++) {
335
335
  const data = this.extend(this.safeDict(universe, i, {}), this.safeDict(assetCtxs, i, {}));
@@ -692,7 +692,7 @@ export default class hyperliquid extends Exchange {
692
692
  const total = this.safeString(balance, 'total');
693
693
  const free = this.safeString(balance, 'hold');
694
694
  account['total'] = total;
695
- account['free'] = free;
695
+ account['used'] = free;
696
696
  spotBalances[code] = account;
697
697
  }
698
698
  return this.safeBalance(spotBalances);
package/js/src/kucoin.js CHANGED
@@ -2083,6 +2083,7 @@ export default class kucoin extends Exchange {
2083
2083
  * @see https://docs.kucoin.com/spot-hf/#place-hf-order
2084
2084
  * @see https://www.kucoin.com/docs/rest/spot-trading/orders/place-order-test
2085
2085
  * @see https://www.kucoin.com/docs/rest/margin-trading/orders/place-margin-order-test
2086
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-place-hf-order
2086
2087
  * @param {string} symbol Unified CCXT market symbol
2087
2088
  * @param {string} type 'limit' or 'market'
2088
2089
  * @param {string} side 'buy' or 'sell'
@@ -2113,6 +2114,7 @@ export default class kucoin extends Exchange {
2113
2114
  * @param {bool} [params.autoBorrow] false, // The system will first borrow you funds at the optimal interest rate and then place an order for you
2114
2115
  * @param {bool} [params.hf] false, // true for hf order
2115
2116
  * @param {bool} [params.test] set to true to test an order, no order will be created but the request will be validated
2117
+ * @param {bool} [params.sync] set to true to use the hf sync call
2116
2118
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2117
2119
  */
2118
2120
  await this.loadMarkets();
@@ -2121,6 +2123,8 @@ export default class kucoin extends Exchange {
2121
2123
  params = this.omit(params, 'test');
2122
2124
  let hf = undefined;
2123
2125
  [hf, params] = await this.handleHfAndParams(params);
2126
+ let useSync = false;
2127
+ [useSync, params] = this.handleOptionAndParams(params, 'createOrder', 'sync', false);
2124
2128
  const [triggerPrice, stopLossPrice, takeProfitPrice] = this.handleTriggerPrices(params);
2125
2129
  const tradeType = this.safeString(params, 'tradeType'); // keep it for backward compatibility
2126
2130
  const isTriggerOrder = (triggerPrice || stopLossPrice || takeProfitPrice);
@@ -2147,6 +2151,9 @@ export default class kucoin extends Exchange {
2147
2151
  else if (isMarginOrder) {
2148
2152
  response = await this.privatePostMarginOrder(orderRequest);
2149
2153
  }
2154
+ else if (useSync) {
2155
+ response = await this.privatePostHfOrdersSync(orderRequest);
2156
+ }
2150
2157
  else if (hf) {
2151
2158
  response = await this.privatePostHfOrders(orderRequest);
2152
2159
  }
@@ -2215,9 +2222,11 @@ export default class kucoin extends Exchange {
2215
2222
  * @description create a list of trade orders
2216
2223
  * @see https://www.kucoin.com/docs/rest/spot-trading/orders/place-multiple-orders
2217
2224
  * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/place-multiple-hf-orders
2225
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-place-multiple-hf-orders
2218
2226
  * @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
2219
2227
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2220
2228
  * @param {bool} [params.hf] false, // true for hf orders
2229
+ * @param {bool} [params.sync] false, // true to use the hf sync call
2221
2230
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2222
2231
  */
2223
2232
  await this.loadMarkets();
@@ -2252,8 +2261,13 @@ export default class kucoin extends Exchange {
2252
2261
  };
2253
2262
  let hf = undefined;
2254
2263
  [hf, params] = await this.handleHfAndParams(params);
2264
+ let useSync = false;
2265
+ [useSync, params] = this.handleOptionAndParams(params, 'createOrders', 'sync', false);
2255
2266
  let response = undefined;
2256
- if (hf) {
2267
+ if (useSync) {
2268
+ response = await this.privatePostHfOrdersMultiSync(this.extend(request, params));
2269
+ }
2270
+ else if (hf) {
2257
2271
  response = await this.privatePostHfOrdersMulti(this.extend(request, params));
2258
2272
  }
2259
2273
  else {
@@ -2429,11 +2443,14 @@ export default class kucoin extends Exchange {
2429
2443
  * @see https://docs.kucoin.com/spot#cancel-single-order-by-clientoid-2
2430
2444
  * @see https://docs.kucoin.com/spot-hf/#cancel-orders-by-orderid
2431
2445
  * @see https://docs.kucoin.com/spot-hf/#cancel-order-by-clientoid
2446
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-cancel-hf-order-by-orderid
2447
+ * @see https://www.kucoin.com/docs/rest/spot-trading/spot-hf-trade-pro-account/sync-cancel-hf-order-by-clientoid
2432
2448
  * @param {string} id order id
2433
2449
  * @param {string} symbol unified symbol of the market the order was made in
2434
2450
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2435
2451
  * @param {bool} [params.stop] True if cancelling a stop order
2436
2452
  * @param {bool} [params.hf] false, // true for hf order
2453
+ * @param {bool} [params.sync] false, // true to use the hf sync call
2437
2454
  * @returns Response from the exchange
2438
2455
  */
2439
2456
  await this.loadMarkets();
@@ -2442,7 +2459,9 @@ export default class kucoin extends Exchange {
2442
2459
  const stop = this.safeBool2(params, 'stop', 'trigger', false);
2443
2460
  let hf = undefined;
2444
2461
  [hf, params] = await this.handleHfAndParams(params);
2445
- if (hf) {
2462
+ let useSync = false;
2463
+ [useSync, params] = this.handleOptionAndParams(params, 'cancelOrder', 'sync', false);
2464
+ if (hf || useSync) {
2446
2465
  if (symbol === undefined) {
2447
2466
  throw new ArgumentsRequired(this.id + ' cancelOrder() requires a symbol parameter for hf orders');
2448
2467
  }
@@ -2465,6 +2484,9 @@ export default class kucoin extends Exchange {
2465
2484
  // }
2466
2485
  //
2467
2486
  }
2487
+ else if (useSync) {
2488
+ response = await this.privateDeleteHfOrdersSyncClientOrderClientOid(this.extend(request, params));
2489
+ }
2468
2490
  else if (hf) {
2469
2491
  response = await this.privateDeleteHfOrdersClientOrderClientOid(this.extend(request, params));
2470
2492
  //
@@ -2503,6 +2525,9 @@ export default class kucoin extends Exchange {
2503
2525
  // }
2504
2526
  //
2505
2527
  }
2528
+ else if (useSync) {
2529
+ response = await this.privateDeleteHfOrdersSyncOrderId(this.extend(request, params));
2530
+ }
2506
2531
  else if (hf) {
2507
2532
  response = await this.privateDeleteHfOrdersOrderId(this.extend(request, params));
2508
2533
  //
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ccxt",
3
- "version": "4.3.92",
3
+ "version": "4.3.94",
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",
@@ -127,6 +127,7 @@
127
127
  "response-php-sync": "npm run ti-php -- --responseTests --sync",
128
128
  "response-php": "npm run response-php-sync && npm run response-php-async",
129
129
  "response-tests": "npm run response-js && npm run response-py && npm run response-php && npm run response-cs",
130
+ "static-data-updater": "tsx ./utils/update-static-json",
130
131
  "id-tests-js": "npm run ti-js -- --idTests",
131
132
  "id-tests-py": "npm run ti-py -- --idTests",
132
133
  "id-tests-php": "npm run ti-php -- --idTests",