ccxt 4.3.90 → 4.3.92

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.90';
199
+ const version = '4.3.92';
200
200
  Exchange["default"].ccxtVersion = version;
201
201
  const exchanges = {
202
202
  'ace': ace,
@@ -330,7 +330,7 @@ class binance extends binance$1 {
330
330
  'capital/deposit/hisrec': 0.1,
331
331
  'capital/deposit/subAddress': 0.1,
332
332
  'capital/deposit/subHisrec': 0.1,
333
- 'capital/withdraw/history': 1800,
333
+ 'capital/withdraw/history': 2,
334
334
  'capital/withdraw/address/list': 10,
335
335
  'capital/contract/convertible-coins': 4.0002,
336
336
  'convert/tradeFlow': 20.001,
@@ -1415,6 +1415,7 @@ class hitbtc extends hitbtc$1 {
1415
1415
  }
1416
1416
  parseTransactionStatus(status) {
1417
1417
  const statuses = {
1418
+ 'CREATED': 'pending',
1418
1419
  'PENDING': 'pending',
1419
1420
  'FAILED': 'failed',
1420
1421
  'ROLLED_BACK': 'failed',
@@ -1784,9 +1784,10 @@ class hyperliquid extends hyperliquid$1 {
1784
1784
  [userAddress, params] = this.handlePublicAddress('fetchOrder', params);
1785
1785
  await this.loadMarkets();
1786
1786
  const market = this.safeMarket(symbol);
1787
+ const isClientOrderId = id.length >= 34;
1787
1788
  const request = {
1788
1789
  'type': 'orderStatus',
1789
- 'oid': this.parseToNumeric(id),
1790
+ 'oid': isClientOrderId ? id : this.parseToNumeric(id),
1790
1791
  'user': userAddress,
1791
1792
  };
1792
1793
  const response = await this.publicPostInfo(this.extend(request, params));
@@ -241,6 +241,7 @@ class kucoin extends kucoin$1 {
241
241
  'purchase/orders': 10,
242
242
  // broker
243
243
  'broker/api/rebase/download': 3,
244
+ 'migrate/user/account/status': 3,
244
245
  // affiliate
245
246
  'affiliate/inviter/statistics': 30,
246
247
  },
@@ -685,6 +686,7 @@ class kucoin extends kucoin$1 {
685
686
  'project/marketInterestRate': 'v3',
686
687
  'redeem/orders': 'v3',
687
688
  'purchase/orders': 'v3',
689
+ 'migrate/user/account/status': 'v3',
688
690
  'margin/symbols': 'v3',
689
691
  'affiliate/inviter/statistics': 'v2',
690
692
  'asset/ndbroker/deposit/list': 'v1',
@@ -1208,6 +1210,30 @@ class kucoin extends kucoin$1 {
1208
1210
  }
1209
1211
  return result;
1210
1212
  }
1213
+ async loadMigrationStatus(force = false) {
1214
+ if (!('hfMigrated' in this.options) || (this.options['hfMigrated'] === undefined) || force) {
1215
+ const result = await this.privateGetMigrateUserAccountStatus();
1216
+ const data = this.safeDict(result, 'data', {});
1217
+ const status = this.safeInteger(data, 'status');
1218
+ this.options['hfMigrated'] = (status === 2);
1219
+ }
1220
+ }
1221
+ async handleHfAndParams(params = {}) {
1222
+ await this.loadMigrationStatus();
1223
+ const migrated = this.safeBool(this.options, 'hfMigrated');
1224
+ let loadedHf = undefined;
1225
+ if (migrated !== undefined) {
1226
+ if (migrated) {
1227
+ loadedHf = true;
1228
+ }
1229
+ else {
1230
+ loadedHf = false;
1231
+ }
1232
+ }
1233
+ const hf = this.safeBool(params, 'hf', loadedHf);
1234
+ params = this.omit(params, 'hf');
1235
+ return [hf, params];
1236
+ }
1211
1237
  async fetchCurrencies(params = {}) {
1212
1238
  /**
1213
1239
  * @method
@@ -1751,7 +1777,8 @@ class kucoin extends kucoin$1 {
1751
1777
  // }
1752
1778
  // }
1753
1779
  //
1754
- return this.parseTicker(response['data'], market);
1780
+ const data = this.safeDict(response, 'data', {});
1781
+ return this.parseTicker(data, market);
1755
1782
  }
1756
1783
  parseOHLCV(ohlcv, market = undefined) {
1757
1784
  //
@@ -2089,7 +2116,8 @@ class kucoin extends kucoin$1 {
2089
2116
  const market = this.market(symbol);
2090
2117
  const testOrder = this.safeBool(params, 'test', false);
2091
2118
  params = this.omit(params, 'test');
2092
- const isHf = this.safeBool(params, 'hf', false);
2119
+ let hf = undefined;
2120
+ [hf, params] = await this.handleHfAndParams(params);
2093
2121
  const [triggerPrice, stopLossPrice, takeProfitPrice] = this.handleTriggerPrices(params);
2094
2122
  const tradeType = this.safeString(params, 'tradeType'); // keep it for backward compatibility
2095
2123
  const isTriggerOrder = (triggerPrice || stopLossPrice || takeProfitPrice);
@@ -2103,19 +2131,22 @@ class kucoin extends kucoin$1 {
2103
2131
  if (isMarginOrder) {
2104
2132
  response = await this.privatePostMarginOrderTest(orderRequest);
2105
2133
  }
2134
+ else if (hf) {
2135
+ response = await this.privatePostHfOrdersTest(orderRequest);
2136
+ }
2106
2137
  else {
2107
2138
  response = await this.privatePostOrdersTest(orderRequest);
2108
2139
  }
2109
2140
  }
2110
- else if (isHf) {
2111
- response = await this.privatePostHfOrders(orderRequest);
2112
- }
2113
2141
  else if (isTriggerOrder) {
2114
2142
  response = await this.privatePostStopOrder(orderRequest);
2115
2143
  }
2116
2144
  else if (isMarginOrder) {
2117
2145
  response = await this.privatePostMarginOrder(orderRequest);
2118
2146
  }
2147
+ else if (hf) {
2148
+ response = await this.privatePostHfOrders(orderRequest);
2149
+ }
2119
2150
  else {
2120
2151
  response = await this.privatePostOrders(orderRequest);
2121
2152
  }
@@ -2216,8 +2247,8 @@ class kucoin extends kucoin$1 {
2216
2247
  'symbol': market['id'],
2217
2248
  'orderList': ordersRequests,
2218
2249
  };
2219
- const hf = this.safeBool(params, 'hf', false);
2220
- params = this.omit(params, 'hf');
2250
+ let hf = undefined;
2251
+ [hf, params] = await this.handleHfAndParams(params);
2221
2252
  let response = undefined;
2222
2253
  if (hf) {
2223
2254
  response = await this.privatePostHfOrdersMulti(this.extend(request, params));
@@ -2406,7 +2437,8 @@ class kucoin extends kucoin$1 {
2406
2437
  const request = {};
2407
2438
  const clientOrderId = this.safeString2(params, 'clientOid', 'clientOrderId');
2408
2439
  const stop = this.safeBool2(params, 'stop', 'trigger', false);
2409
- const hf = this.safeBool(params, 'hf', false);
2440
+ let hf = undefined;
2441
+ [hf, params] = await this.handleHfAndParams(params);
2410
2442
  if (hf) {
2411
2443
  if (symbol === undefined) {
2412
2444
  throw new errors.ArgumentsRequired(this.id + ' cancelOrder() requires a symbol parameter for hf orders');
@@ -2415,7 +2447,7 @@ class kucoin extends kucoin$1 {
2415
2447
  request['symbol'] = market['id'];
2416
2448
  }
2417
2449
  let response = undefined;
2418
- params = this.omit(params, ['clientOid', 'clientOrderId', 'stop', 'hf', 'trigger']);
2450
+ params = this.omit(params, ['clientOid', 'clientOrderId', 'stop', 'trigger']);
2419
2451
  if (clientOrderId !== undefined) {
2420
2452
  request['clientOid'] = clientOrderId;
2421
2453
  if (stop) {
@@ -2519,8 +2551,9 @@ class kucoin extends kucoin$1 {
2519
2551
  await this.loadMarkets();
2520
2552
  const request = {};
2521
2553
  const stop = this.safeBool(params, 'stop', false);
2522
- const hf = this.safeBool(params, 'hf', false);
2523
- params = this.omit(params, ['stop', 'hf']);
2554
+ let hf = undefined;
2555
+ [hf, params] = await this.handleHfAndParams(params);
2556
+ params = this.omit(params, 'stop');
2524
2557
  const [marginMode, query] = this.handleMarginModeAndParams('cancelAllOrders', params);
2525
2558
  if (symbol !== undefined) {
2526
2559
  request['symbol'] = this.marketId(symbol);
@@ -2577,8 +2610,12 @@ class kucoin extends kucoin$1 {
2577
2610
  let lowercaseStatus = status.toLowerCase();
2578
2611
  const until = this.safeInteger(params, 'until');
2579
2612
  const stop = this.safeBool2(params, 'stop', 'trigger', false);
2580
- const hf = this.safeBool(params, 'hf', false);
2581
- params = this.omit(params, ['stop', 'hf', 'until', 'trigger']);
2613
+ let hf = undefined;
2614
+ [hf, params] = await this.handleHfAndParams(params);
2615
+ if (hf && (symbol === undefined)) {
2616
+ throw new errors.ArgumentsRequired(this.id + ' fetchOrdersByStatus() requires a symbol parameter for hf orders');
2617
+ }
2618
+ params = this.omit(params, ['stop', 'trigger', 'till', 'until']);
2582
2619
  const [marginMode, query] = this.handleMarginModeAndParams('fetchOrdersByStatus', params);
2583
2620
  if (lowercaseStatus === 'open') {
2584
2621
  lowercaseStatus = 'active';
@@ -2756,7 +2793,8 @@ class kucoin extends kucoin$1 {
2756
2793
  const request = {};
2757
2794
  const clientOrderId = this.safeString2(params, 'clientOid', 'clientOrderId');
2758
2795
  const stop = this.safeBool2(params, 'stop', 'trigger', false);
2759
- const hf = this.safeBool(params, 'hf', false);
2796
+ let hf = undefined;
2797
+ [hf, params] = await this.handleHfAndParams(params);
2760
2798
  let market = undefined;
2761
2799
  if (symbol !== undefined) {
2762
2800
  market = this.market(symbol);
@@ -2767,7 +2805,7 @@ class kucoin extends kucoin$1 {
2767
2805
  }
2768
2806
  request['symbol'] = market['id'];
2769
2807
  }
2770
- params = this.omit(params, ['stop', 'hf', 'clientOid', 'clientOrderId', 'trigger']);
2808
+ params = this.omit(params, ['stop', 'clientOid', 'clientOrderId', 'trigger']);
2771
2809
  let response = undefined;
2772
2810
  if (clientOrderId !== undefined) {
2773
2811
  request['clientOid'] = clientOrderId;
@@ -3033,7 +3071,8 @@ class kucoin extends kucoin$1 {
3033
3071
  return await this.fetchPaginatedCallDynamic('fetchMyTrades', symbol, since, limit, params);
3034
3072
  }
3035
3073
  let request = {};
3036
- const hf = this.safeBool(params, 'hf', false);
3074
+ let hf = undefined;
3075
+ [hf, params] = await this.handleHfAndParams(params);
3037
3076
  if (hf && symbol === undefined) {
3038
3077
  throw new errors.ArgumentsRequired(this.id + ' fetchMyTrades() requires a symbol parameter for hf orders');
3039
3078
  }
@@ -3637,8 +3676,9 @@ class kucoin extends kucoin$1 {
3637
3676
  // }
3638
3677
  // }
3639
3678
  //
3640
- const responseData = response['data']['items'];
3641
- return this.parseTransactions(responseData, currency, since, limit, { 'type': 'deposit' });
3679
+ const data = this.safeDict(response, 'data', {});
3680
+ const items = this.safeList(data, 'items', []);
3681
+ return this.parseTransactions(items, currency, since, limit, { 'type': 'deposit' });
3642
3682
  }
3643
3683
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
3644
3684
  /**
@@ -3722,8 +3762,9 @@ class kucoin extends kucoin$1 {
3722
3762
  // }
3723
3763
  // }
3724
3764
  //
3725
- const responseData = response['data']['items'];
3726
- return this.parseTransactions(responseData, currency, since, limit, { 'type': 'withdrawal' });
3765
+ const data = this.safeDict(response, 'data', {});
3766
+ const items = this.safeList(data, 'items', []);
3767
+ return this.parseTransactions(items, currency, since, limit, { 'type': 'withdrawal' });
3727
3768
  }
3728
3769
  parseBalanceHelper(entry) {
3729
3770
  const account = this.account();
@@ -3760,11 +3801,11 @@ class kucoin extends kucoin$1 {
3760
3801
  const accountsByType = this.safeDict(this.options, 'accountsByType');
3761
3802
  let type = this.safeString(accountsByType, requestedType, requestedType);
3762
3803
  params = this.omit(params, 'type');
3763
- const isHf = this.safeBool(params, 'hf', false);
3764
- if (isHf) {
3804
+ let hf = undefined;
3805
+ [hf, params] = await this.handleHfAndParams(params);
3806
+ if (hf) {
3765
3807
  type = 'trade_hf';
3766
3808
  }
3767
- params = this.omit(params, 'hf');
3768
3809
  const [marginMode, query] = this.handleMarginModeAndParams('fetchBalance', params);
3769
3810
  let response = undefined;
3770
3811
  const request = {};
@@ -4220,8 +4261,8 @@ class kucoin extends kucoin$1 {
4220
4261
  await this.loadAccounts();
4221
4262
  let paginate = false;
4222
4263
  [paginate, params] = this.handleOptionAndParams(params, 'fetchLedger', 'paginate');
4223
- const isHf = this.safeBool(params, 'hf');
4224
- params = this.omit(params, 'hf');
4264
+ let hf = undefined;
4265
+ [hf, params] = await this.handleHfAndParams(params);
4225
4266
  if (paginate) {
4226
4267
  return await this.fetchPaginatedCallDynamic('fetchLedger', code, since, limit, params);
4227
4268
  }
@@ -4245,7 +4286,7 @@ class kucoin extends kucoin$1 {
4245
4286
  let marginMode = undefined;
4246
4287
  [marginMode, params] = this.handleMarginModeAndParams('fetchLedger', params);
4247
4288
  let response = undefined;
4248
- if (isHf) {
4289
+ if (hf) {
4249
4290
  if (marginMode !== undefined) {
4250
4291
  response = await this.privateGetHfMarginAccountLedgers(this.extend(request, params));
4251
4292
  }
@@ -4585,7 +4626,7 @@ class kucoin extends kucoin$1 {
4585
4626
  // }
4586
4627
  //
4587
4628
  const data = this.safeDict(response, 'data');
4588
- const rows = this.safeList(data, 'items');
4629
+ const rows = this.safeList(data, 'items', []);
4589
4630
  return this.parseBorrowRateHistories(rows, codes, since, limit);
4590
4631
  }
4591
4632
  async fetchBorrowRateHistory(code, since = undefined, limit = undefined, params = {}) {
@@ -4640,7 +4681,7 @@ class kucoin extends kucoin$1 {
4640
4681
  // }
4641
4682
  //
4642
4683
  const data = this.safeDict(response, 'data');
4643
- const rows = this.safeList(data, 'items');
4684
+ const rows = this.safeList(data, 'items', []);
4644
4685
  return this.parseBorrowRateHistory(rows, code, since, limit);
4645
4686
  }
4646
4687
  parseBorrowRateHistories(response, codes, since, limit) {
@@ -48,6 +48,7 @@ class kucoinfutures extends kucoinfutures$1 {
48
48
  'createTriggerOrder': true,
49
49
  'fetchAccounts': true,
50
50
  'fetchBalance': true,
51
+ 'fetchBidsAsks': true,
51
52
  'fetchBorrowRateHistories': false,
52
53
  'fetchBorrowRateHistory': false,
53
54
  'fetchClosedOrders': true,
@@ -772,11 +773,20 @@ class kucoinfutures extends kucoinfutures$1 {
772
773
  * @see https://www.kucoin.com/docs/rest/futures-trading/market-data/get-symbols-list
773
774
  * @param {string[]} [symbols] unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
774
775
  * @param {object} [params] extra parameters specific to the exchange API endpoint
776
+ * @param {string} [params.method] the method to use, futuresPublicGetAllTickers or futuresPublicGetContractsActive
775
777
  * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
776
778
  */
777
779
  await this.loadMarkets();
778
780
  symbols = this.marketSymbols(symbols);
779
- const response = await this.futuresPublicGetContractsActive(params);
781
+ let method = undefined;
782
+ [method, params] = this.handleOptionAndParams(params, 'fetchTickers', 'method', 'futuresPublicGetContractsActive');
783
+ let response = undefined;
784
+ if (method === 'futuresPublicGetAllTickers') {
785
+ response = await this.futuresPublicGetAllTickers(params);
786
+ }
787
+ else {
788
+ response = await this.futuresPublicGetContractsActive(params);
789
+ }
780
790
  //
781
791
  // {
782
792
  // "code": "200000",
@@ -839,7 +849,7 @@ class kucoinfutures extends kucoinfutures$1 {
839
849
  // }
840
850
  // }
841
851
  //
842
- const data = this.safeList(response, 'data', []);
852
+ const data = this.safeList(response, 'data');
843
853
  const tickers = this.parseTickers(data, symbols);
844
854
  return this.filterByArrayTickers(tickers, 'symbol', symbols);
845
855
  }
@@ -949,6 +959,20 @@ class kucoinfutures extends kucoinfutures$1 {
949
959
  'info': ticker,
950
960
  }, market);
951
961
  }
962
+ async fetchBidsAsks(symbols = undefined, params = {}) {
963
+ /**
964
+ * @method
965
+ * @name kucoinfutures#fetchBidsAsks
966
+ * @description fetches the bid and ask price and volume for multiple markets
967
+ * @param {string[]} [symbols] unified symbols of the markets to fetch the bids and asks for, all markets are returned if not assigned
968
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
969
+ * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
970
+ */
971
+ const request = {
972
+ 'method': 'futuresPublicGetAllTickers',
973
+ };
974
+ return await this.fetchTickers(symbols, this.extend(request, params));
975
+ }
952
976
  async fetchFundingHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
953
977
  /**
954
978
  * @method
@@ -482,7 +482,7 @@ class woo extends woo$1 {
482
482
  'swap': swap,
483
483
  'future': false,
484
484
  'option': false,
485
- 'active': undefined,
485
+ 'active': this.safeString(market, 'is_trading') === '1',
486
486
  'contract': contract,
487
487
  'linear': linear,
488
488
  'inverse': undefined,
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.89";
7
+ declare const version = "4.3.91";
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.90';
41
+ const version = '4.3.92';
42
42
  Exchange.ccxtVersion = version;
43
43
  //-----------------------------------------------------------------------------
44
44
  import ace from './src/ace.js';
@@ -87,6 +87,7 @@ interface Exchange {
87
87
  privateGetRedeemOrders(params?: {}): Promise<implicitReturnType>;
88
88
  privateGetPurchaseOrders(params?: {}): Promise<implicitReturnType>;
89
89
  privateGetBrokerApiRebaseDownload(params?: {}): Promise<implicitReturnType>;
90
+ privateGetMigrateUserAccountStatus(params?: {}): Promise<implicitReturnType>;
90
91
  privateGetAffiliateInviterStatistics(params?: {}): Promise<implicitReturnType>;
91
92
  privatePostSubUserCreated(params?: {}): Promise<implicitReturnType>;
92
93
  privatePostSubApiKey(params?: {}): Promise<implicitReturnType>;
@@ -87,6 +87,7 @@ interface kucoin {
87
87
  privateGetRedeemOrders(params?: {}): Promise<implicitReturnType>;
88
88
  privateGetPurchaseOrders(params?: {}): Promise<implicitReturnType>;
89
89
  privateGetBrokerApiRebaseDownload(params?: {}): Promise<implicitReturnType>;
90
+ privateGetMigrateUserAccountStatus(params?: {}): Promise<implicitReturnType>;
90
91
  privateGetAffiliateInviterStatistics(params?: {}): Promise<implicitReturnType>;
91
92
  privatePostSubUserCreated(params?: {}): Promise<implicitReturnType>;
92
93
  privatePostSubApiKey(params?: {}): Promise<implicitReturnType>;
package/js/src/binance.js CHANGED
@@ -333,7 +333,7 @@ export default class binance extends Exchange {
333
333
  'capital/deposit/hisrec': 0.1,
334
334
  'capital/deposit/subAddress': 0.1,
335
335
  'capital/deposit/subHisrec': 0.1,
336
- 'capital/withdraw/history': 1800,
336
+ 'capital/withdraw/history': 2,
337
337
  'capital/withdraw/address/list': 10,
338
338
  'capital/contract/convertible-coins': 4.0002,
339
339
  'convert/tradeFlow': 20.001,
package/js/src/hitbtc.js CHANGED
@@ -1418,6 +1418,7 @@ export default class hitbtc extends Exchange {
1418
1418
  }
1419
1419
  parseTransactionStatus(status) {
1420
1420
  const statuses = {
1421
+ 'CREATED': 'pending',
1421
1422
  'PENDING': 'pending',
1422
1423
  'FAILED': 'failed',
1423
1424
  'ROLLED_BACK': 'failed',
@@ -1787,9 +1787,10 @@ export default class hyperliquid extends Exchange {
1787
1787
  [userAddress, params] = this.handlePublicAddress('fetchOrder', params);
1788
1788
  await this.loadMarkets();
1789
1789
  const market = this.safeMarket(symbol);
1790
+ const isClientOrderId = id.length >= 34;
1790
1791
  const request = {
1791
1792
  'type': 'orderStatus',
1792
- 'oid': this.parseToNumeric(id),
1793
+ 'oid': isClientOrderId ? id : this.parseToNumeric(id),
1793
1794
  'user': userAddress,
1794
1795
  };
1795
1796
  const response = await this.publicPostInfo(this.extend(request, params));
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/kucoin.js';
2
- import type { TransferEntry, Int, OrderSide, OrderType, Order, OHLCV, Trade, Balances, OrderRequest, Str, Transaction, Ticker, OrderBook, Tickers, Strings, Currency, Market, Num, Account, TradingFeeInterface, Currencies, Dict, int } from './base/types.js';
2
+ import type { TransferEntry, Int, OrderSide, OrderType, Order, OHLCV, Trade, Balances, OrderRequest, Str, Transaction, Ticker, OrderBook, Tickers, Strings, Currency, Market, Num, Account, Dict, TradingFeeInterface, Currencies, int } from './base/types.js';
3
3
  /**
4
4
  * @class kucoin
5
5
  * @augments Exchange
@@ -16,6 +16,8 @@ export default class kucoin extends Exchange {
16
16
  info: any;
17
17
  }>;
18
18
  fetchMarkets(params?: {}): Promise<Market[]>;
19
+ loadMigrationStatus(force?: boolean): Promise<void>;
20
+ handleHfAndParams(params?: {}): Promise<{}[]>;
19
21
  fetchCurrencies(params?: {}): Promise<Currencies>;
20
22
  fetchAccounts(params?: {}): Promise<Account[]>;
21
23
  fetchTransactionFee(code: string, params?: {}): Promise<{