ccxt 4.3.42 → 4.3.44

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 (52) hide show
  1. package/README.md +9 -7
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +4 -1
  4. package/dist/cjs/src/binance.js +169 -44
  5. package/dist/cjs/src/btcmarkets.js +31 -2
  6. package/dist/cjs/src/coinex.js +106 -107
  7. package/dist/cjs/src/lykke.js +10 -2
  8. package/dist/cjs/src/ndax.js +5 -1
  9. package/dist/cjs/src/phemex.js +5 -4
  10. package/dist/cjs/src/poloniexfutures.js +2 -2
  11. package/dist/cjs/src/pro/bitget.js +28 -21
  12. package/dist/cjs/src/pro/bitmex.js +9 -0
  13. package/dist/cjs/src/pro/bybit.js +1 -1
  14. package/dist/cjs/src/pro/mexc.js +1 -1
  15. package/dist/cjs/src/pro/woo.js +1 -1
  16. package/dist/cjs/src/tradeogre.js +11 -5
  17. package/dist/cjs/src/wavesexchange.js +2 -2
  18. package/dist/cjs/src/wazirx.js +38 -15
  19. package/dist/cjs/src/xt.js +134 -95
  20. package/dist/cjs/src/zonda.js +9 -1
  21. package/js/ccxt.d.ts +6 -3
  22. package/js/ccxt.js +4 -2
  23. package/js/src/abstract/coinex.d.ts +2 -1
  24. package/js/src/abstract/xt.d.ts +155 -0
  25. package/js/src/abstract/xt.js +11 -0
  26. package/js/src/binance.js +169 -44
  27. package/js/src/btcmarkets.d.ts +2 -2
  28. package/js/src/btcmarkets.js +31 -2
  29. package/js/src/coinex.js +106 -107
  30. package/js/src/lykke.d.ts +2 -2
  31. package/js/src/lykke.js +10 -2
  32. package/js/src/ndax.d.ts +1 -1
  33. package/js/src/ndax.js +5 -1
  34. package/js/src/phemex.js +6 -5
  35. package/js/src/poloniexfutures.js +2 -2
  36. package/js/src/pro/bitget.js +28 -21
  37. package/js/src/pro/bitmex.js +9 -0
  38. package/js/src/pro/bybit.js +1 -1
  39. package/js/src/pro/mexc.js +1 -1
  40. package/js/src/pro/woo.js +1 -1
  41. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +1 -1
  42. package/js/src/tradeogre.d.ts +1 -1
  43. package/js/src/tradeogre.js +12 -6
  44. package/js/src/wavesexchange.d.ts +1 -20
  45. package/js/src/wavesexchange.js +2 -2
  46. package/js/src/wazirx.d.ts +1 -1
  47. package/js/src/wazirx.js +38 -15
  48. package/js/src/xt.d.ts +161 -0
  49. package/js/src/xt.js +4761 -0
  50. package/js/src/zonda.d.ts +1 -1
  51. package/js/src/zonda.js +9 -1
  52. package/package.json +1 -1
@@ -35,6 +35,8 @@ class xt extends xt$1 {
35
35
  'cancelOrder': true,
36
36
  'cancelOrders': true,
37
37
  'createDepositAddress': false,
38
+ 'createMarketBuyOrderWithCost': true,
39
+ 'createMarketSellOrderWithCost': false,
38
40
  'createOrder': true,
39
41
  'createPostOnlyOrder': false,
40
42
  'createReduceOnlyOrder': true,
@@ -851,7 +853,7 @@ class xt extends xt$1 {
851
853
  * @see https://doc.xt.com/#market2symbol
852
854
  * @see https://doc.xt.com/#futures_quotesgetSymbols
853
855
  * @param {object} params extra parameters specific to the xt api endpoint
854
- * @returns {[object]} an array of objects representing market data
856
+ * @returns {object[]} an array of objects representing market data
855
857
  */
856
858
  if (this.options['adjustForTimeDifference']) {
857
859
  await this.loadTimeDifference();
@@ -1197,7 +1199,7 @@ class xt extends xt$1 {
1197
1199
  isActive = true;
1198
1200
  }
1199
1201
  }
1200
- return {
1202
+ return this.safeMarketStructure({
1201
1203
  'id': id,
1202
1204
  'symbol': symbol,
1203
1205
  'base': base,
@@ -1248,7 +1250,7 @@ class xt extends xt$1 {
1248
1250
  },
1249
1251
  },
1250
1252
  'info': market,
1251
- };
1253
+ });
1252
1254
  }
1253
1255
  async fetchOHLCV(symbol, timeframe = '1m', since = undefined, limit = undefined, params = {}) {
1254
1256
  /**
@@ -1259,10 +1261,10 @@ class xt extends xt$1 {
1259
1261
  * @see https://doc.xt.com/#futures_quotesgetKLine
1260
1262
  * @param {string} symbol unified symbol of the market to fetch OHLCV data for
1261
1263
  * @param {string} timeframe the length of time each candle represents
1262
- * @param {int|undefined} since timestamp in ms of the earliest candle to fetch
1263
- * @param {int|undefined} limit the maximum amount of candles to fetch
1264
+ * @param {int} [since] timestamp in ms of the earliest candle to fetch
1265
+ * @param {int} [limit] the maximum amount of candles to fetch
1264
1266
  * @param {object} params extra parameters specific to the xt api endpoint
1265
- * @returns {[[int]]} A list of candles ordered as timestamp, open, high, low, close, volume
1267
+ * @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
1266
1268
  */
1267
1269
  await this.loadMarkets();
1268
1270
  const market = this.market(symbol);
@@ -1376,7 +1378,7 @@ class xt extends xt$1 {
1376
1378
  * @see https://doc.xt.com/#futures_quotesgetDepth
1377
1379
  * @description fetches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
1378
1380
  * @param {string} symbol unified market symbol to fetch the order book for
1379
- * @param {int|undefined} limit the maximum amount of order book entries to return
1381
+ * @param {int} [limit] the maximum amount of order book entries to return
1380
1382
  * @param {object} params extra parameters specific to the xt api endpoint
1381
1383
  * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-book-structure} indexed by market symbols
1382
1384
  */
@@ -1544,7 +1546,7 @@ class xt extends xt$1 {
1544
1546
  * @description fetches price tickers for multiple markets, statistical calculations with the information calculated over the past 24 hours each market
1545
1547
  * @see https://doc.xt.com/#market10ticker24h
1546
1548
  * @see https://doc.xt.com/#futures_quotesgetAggTickers
1547
- * @param {[string]|undefined} symbols unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
1549
+ * @param {string} [symbols] unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
1548
1550
  * @param {object} params extra parameters specific to the xt api endpoint
1549
1551
  * @returns {object} an array of [ticker structures]{@link https://docs.ccxt.com/en/latest/manual.html#ticker-structure}
1550
1552
  */
@@ -1632,7 +1634,7 @@ class xt extends xt$1 {
1632
1634
  * @name xt#fetchBidsAsks
1633
1635
  * @description fetches the bid and ask price and volume for multiple markets
1634
1636
  * @see https://doc.xt.com/#market9tickerBook
1635
- * @param {[string]|undefined} symbols unified symbols of the markets to fetch the bids and asks for, all markets are returned if not assigned
1637
+ * @param {string} [symbols] unified symbols of the markets to fetch the bids and asks for, all markets are returned if not assigned
1636
1638
  * @param {object} params extra parameters specific to the xt api endpoint
1637
1639
  * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/en/latest/manual.html#ticker-structure}
1638
1640
  */
@@ -1754,10 +1756,10 @@ class xt extends xt$1 {
1754
1756
  * @see https://doc.xt.com/#market5tradeRecent
1755
1757
  * @see https://doc.xt.com/#futures_quotesgetDeal
1756
1758
  * @param {string} symbol unified market symbol to fetch trades for
1757
- * @param {int|undefined} since timestamp in ms of the earliest trade to fetch
1758
- * @param {int|undefined} limit the maximum amount of trades to fetch
1759
+ * @param {int} [since] timestamp in ms of the earliest trade to fetch
1760
+ * @param {int} [limit] the maximum amount of trades to fetch
1759
1761
  * @param {object} params extra parameters specific to the xt api endpoint
1760
- * @returns {[object]} a list of [trade structures]{@link https://docs.ccxt.com/en/latest/manual.html?#public-trades}
1762
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/en/latest/manual.html?#public-trades}
1761
1763
  */
1762
1764
  await this.loadMarkets();
1763
1765
  const market = this.market(symbol);
@@ -1828,11 +1830,11 @@ class xt extends xt$1 {
1828
1830
  * @description fetch all trades made by the user
1829
1831
  * @see https://doc.xt.com/#tradetradeGet
1830
1832
  * @see https://doc.xt.com/#futures_ordergetTrades
1831
- * @param {string|undefined} symbol unified market symbol to fetch trades for
1832
- * @param {int|undefined} since timestamp in ms of the earliest trade to fetch
1833
- * @param {int|undefined} limit the maximum amount of trades to fetch
1833
+ * @param {string} [symbol] unified market symbol to fetch trades for
1834
+ * @param {int} [since] timestamp in ms of the earliest trade to fetch
1835
+ * @param {int} [limit] the maximum amount of trades to fetch
1834
1836
  * @param {object} params extra parameters specific to the xt api endpoint
1835
- * @returns {[object]} a list of [trade structures]{@link https://docs.ccxt.com/en/latest/manual.html?#public-trades}
1837
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/en/latest/manual.html?#public-trades}
1836
1838
  */
1837
1839
  await this.loadMarkets();
1838
1840
  const request = {};
@@ -2166,6 +2168,24 @@ class xt extends xt$1 {
2166
2168
  }
2167
2169
  return this.safeBalance(result);
2168
2170
  }
2171
+ async createMarketBuyOrderWithCost(symbol, cost, params = {}) {
2172
+ /**
2173
+ * @method
2174
+ * @name xt#createMarketBuyOrderWithCost
2175
+ * @see https://doc.xt.com/#orderorderPost
2176
+ * @description create a market buy order by providing the symbol and cost
2177
+ * @param {string} symbol unified symbol of the market to create an order in
2178
+ * @param {float} cost how much you want to trade in units of the quote currency
2179
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
2180
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2181
+ */
2182
+ await this.loadMarkets();
2183
+ const market = this.market(symbol);
2184
+ if (!market['spot']) {
2185
+ throw new errors.NotSupported(this.id + ' createMarketBuyOrderWithCost() supports spot orders only');
2186
+ }
2187
+ return await this.createOrder(symbol, 'market', 'buy', cost, 1, params);
2188
+ }
2169
2189
  async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
2170
2190
  /**
2171
2191
  * @method
@@ -2179,14 +2199,14 @@ class xt extends xt$1 {
2179
2199
  * @param {string} type 'market' or 'limit'
2180
2200
  * @param {string} side 'buy' or 'sell'
2181
2201
  * @param {float} amount how much you want to trade in units of the base currency
2182
- * @param {float|undefined} price the price to fulfill the order, in units of the quote currency, can be ignored in market orders
2202
+ * @param {float} [price] the price to fulfill the order, in units of the quote currency, can be ignored in market orders
2183
2203
  * @param {object} params extra parameters specific to the xt api endpoint
2184
- * @param {string|undefined} params.timeInForce 'GTC', 'IOC', 'FOK' or 'GTX'
2185
- * @param {string|undefined} params.entrustType 'TAKE_PROFIT', 'STOP', 'TAKE_PROFIT_MARKET', 'STOP_MARKET', 'TRAILING_STOP_MARKET', required if stopPrice is defined, currently isn't functioning on xt's side
2186
- * @param {string|undefined} params.triggerPriceType 'INDEX_PRICE', 'MARK_PRICE', 'LATEST_PRICE', required if stopPrice is defined
2187
- * @param {float|undefined} params.stopPrice price to trigger a stop order
2188
- * @param {float|undefined} params.stopLoss price to set a stop-loss on an open position
2189
- * @param {float|undefined} params.takeProfit price to set a take-profit on an open position
2204
+ * @param {string} [params.timeInForce] 'GTC', 'IOC', 'FOK' or 'GTX'
2205
+ * @param {string} [params.entrustType] 'TAKE_PROFIT', 'STOP', 'TAKE_PROFIT_MARKET', 'STOP_MARKET', 'TRAILING_STOP_MARKET', required if stopPrice is defined, currently isn't functioning on xt's side
2206
+ * @param {string} [params.triggerPriceType] 'INDEX_PRICE', 'MARK_PRICE', 'LATEST_PRICE', required if stopPrice is defined
2207
+ * @param {float} [params.stopPrice] price to trigger a stop order
2208
+ * @param {float} [params.stopLoss] price to set a stop-loss on an open position
2209
+ * @param {float} [params.takeProfit] price to set a take-profit on an open position
2190
2210
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
2191
2211
  */
2192
2212
  await this.loadMarkets();
@@ -2215,20 +2235,29 @@ class xt extends xt$1 {
2215
2235
  if (type === 'market') {
2216
2236
  timeInForce = this.safeStringUpper(params, 'timeInForce', 'FOK');
2217
2237
  if (side === 'buy') {
2218
- const createMarketBuyOrderRequiresPrice = this.safeValue(this.options, 'createMarketBuyOrderRequiresPrice', true);
2238
+ const cost = this.safeString(params, 'cost');
2239
+ params = this.omit(params, 'cost');
2240
+ const createMarketBuyOrderRequiresPrice = this.safeBool(this.options, 'createMarketBuyOrderRequiresPrice', true);
2219
2241
  if (createMarketBuyOrderRequiresPrice) {
2220
- if (price === undefined) {
2221
- throw new errors.InvalidOrder(this.id + ' createOrder() requires a price argument for market buy orders on spot markets to calculate the total amount to spend (amount * price), alternatively set the createMarketBuyOrderRequiresPrice option to false and pass in the cost to spend into the amount parameter');
2242
+ if (price === undefined && (cost === undefined)) {
2243
+ throw new errors.InvalidOrder(this.id + ' createOrder() requires a price argument or cost in params for market buy orders on spot markets to calculate the total amount to spend (amount * price), alternatively set the createMarketBuyOrderRequiresPrice option to false and pass in the cost to spend into the amount parameter');
2222
2244
  }
2223
2245
  else {
2224
2246
  const amountString = this.numberToString(amount);
2225
2247
  const priceString = this.numberToString(price);
2226
- const cost = this.parseNumber(Precise["default"].stringMul(amountString, priceString));
2227
- request['quoteQty'] = this.costToPrecision(symbol, cost);
2248
+ let costCalculated = undefined;
2249
+ if (price !== undefined) {
2250
+ costCalculated = Precise["default"].stringMul(amountString, priceString);
2251
+ }
2252
+ else {
2253
+ costCalculated = cost;
2254
+ }
2255
+ request['quoteQty'] = this.costToPrecision(symbol, costCalculated);
2228
2256
  }
2229
2257
  }
2230
2258
  else {
2231
- request['quoteQty'] = this.amountToPrecision(symbol, amount);
2259
+ const amountCost = (cost !== undefined) ? cost : amount;
2260
+ request['quoteQty'] = this.costToPrecision(symbol, amountCost);
2232
2261
  }
2233
2262
  }
2234
2263
  }
@@ -2346,10 +2375,10 @@ class xt extends xt$1 {
2346
2375
  * @see https://doc.xt.com/#futures_entrustgetPlanById
2347
2376
  * @see https://doc.xt.com/#futures_entrustgetProfitById
2348
2377
  * @param {string} id order id
2349
- * @param {string|undefined} symbol unified symbol of the market the order was made in
2378
+ * @param {string} [symbol] unified symbol of the market the order was made in
2350
2379
  * @param {object} params extra parameters specific to the xt api endpoint
2351
- * @param {bool|undefined} params.stop if the order is a stop trigger order or not
2352
- * @param {bool|undefined} params.stopLossTakeProfit if the order is a stop-loss or take-profit order
2380
+ * @param {bool} [params.stop] if the order is a stop trigger order or not
2381
+ * @param {bool} [params.stopLossTakeProfit] if the order is a stop-loss or take-profit order
2353
2382
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
2354
2383
  */
2355
2384
  await this.loadMarkets();
@@ -2529,12 +2558,12 @@ class xt extends xt$1 {
2529
2558
  * @see https://doc.xt.com/#orderhistoryOrderGet
2530
2559
  * @see https://doc.xt.com/#futures_ordergetHistory
2531
2560
  * @see https://doc.xt.com/#futures_entrustgetPlanHistory
2532
- * @param {string|undefined} symbol unified market symbol of the market the orders were made in
2533
- * @param {int|undefined} since timestamp in ms of the earliest order
2534
- * @param {int|undefined} limit the maximum number of order structures to retrieve
2561
+ * @param {string} [symbol] unified market symbol of the market the orders were made in
2562
+ * @param {int} [since] timestamp in ms of the earliest order
2563
+ * @param {int} [limit] the maximum number of order structures to retrieve
2535
2564
  * @param {object} params extra parameters specific to the xt api endpoint
2536
- * @param {bool|undefined} params.stop if the order is a stop trigger order or not
2537
- * @returns {[object]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
2565
+ * @param {bool} [params.stop] if the order is a stop trigger order or not
2566
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
2538
2567
  */
2539
2568
  await this.loadMarkets();
2540
2569
  const request = {};
@@ -2977,13 +3006,13 @@ class xt extends xt$1 {
2977
3006
  * @see https://doc.xt.com/#futures_ordergetOrders
2978
3007
  * @see https://doc.xt.com/#futures_entrustgetPlan
2979
3008
  * @see https://doc.xt.com/#futures_entrustgetProfit
2980
- * @param {string|undefined} symbol unified market symbol of the market the orders were made in
2981
- * @param {int|undefined} since timestamp in ms of the earliest order
2982
- * @param {int|undefined} limit the maximum number of open order structures to retrieve
3009
+ * @param {string} [symbol] unified market symbol of the market the orders were made in
3010
+ * @param {int} [since] timestamp in ms of the earliest order
3011
+ * @param {int} [limit] the maximum number of open order structures to retrieve
2983
3012
  * @param {object} params extra parameters specific to the xt api endpoint
2984
- * @param {bool|undefined} params.stop if the order is a stop trigger order or not
2985
- * @param {bool|undefined} params.stopLossTakeProfit if the order is a stop-loss or take-profit order
2986
- * @returns {[object]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3013
+ * @param {bool} [params.stop] if the order is a stop trigger order or not
3014
+ * @param {bool} [params.stopLossTakeProfit] if the order is a stop-loss or take-profit order
3015
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
2987
3016
  */
2988
3017
  return await this.fetchOrdersByStatus('open', symbol, since, limit, params);
2989
3018
  }
@@ -2996,13 +3025,13 @@ class xt extends xt$1 {
2996
3025
  * @see https://doc.xt.com/#futures_ordergetOrders
2997
3026
  * @see https://doc.xt.com/#futures_entrustgetPlan
2998
3027
  * @see https://doc.xt.com/#futures_entrustgetProfit
2999
- * @param {string|undefined} symbol unified market symbol of the market the orders were made in
3000
- * @param {int|undefined} since timestamp in ms of the earliest order
3001
- * @param {int|undefined} limit the maximum number of order structures to retrieve
3028
+ * @param {string} [symbol] unified market symbol of the market the orders were made in
3029
+ * @param {int} [since] timestamp in ms of the earliest order
3030
+ * @param {int} [limit] the maximum number of order structures to retrieve
3002
3031
  * @param {object} params extra parameters specific to the xt api endpoint
3003
- * @param {bool|undefined} params.stop if the order is a stop trigger order or not
3004
- * @param {bool|undefined} params.stopLossTakeProfit if the order is a stop-loss or take-profit order
3005
- * @returns {[object]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3032
+ * @param {bool} [params.stop] if the order is a stop trigger order or not
3033
+ * @param {bool} [params.stopLossTakeProfit] if the order is a stop-loss or take-profit order
3034
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3006
3035
  */
3007
3036
  return await this.fetchOrdersByStatus('closed', symbol, since, limit, params);
3008
3037
  }
@@ -3015,12 +3044,12 @@ class xt extends xt$1 {
3015
3044
  * @see https://doc.xt.com/#futures_ordergetOrders
3016
3045
  * @see https://doc.xt.com/#futures_entrustgetPlan
3017
3046
  * @see https://doc.xt.com/#futures_entrustgetProfit
3018
- * @param {string|undefined} symbol unified market symbol of the market the orders were made in
3019
- * @param {int|undefined} since timestamp in ms of the earliest order
3020
- * @param {int|undefined} limit the maximum number of order structures to retrieve
3047
+ * @param {string} [symbol] unified market symbol of the market the orders were made in
3048
+ * @param {int} [since] timestamp in ms of the earliest order
3049
+ * @param {int} [limit] the maximum number of order structures to retrieve
3021
3050
  * @param {object} params extra parameters specific to the xt api endpoint
3022
- * @param {bool|undefined} params.stop if the order is a stop trigger order or not
3023
- * @param {bool|undefined} params.stopLossTakeProfit if the order is a stop-loss or take-profit order
3051
+ * @param {bool} [params.stop] if the order is a stop trigger order or not
3052
+ * @param {bool} [params.stopLossTakeProfit] if the order is a stop-loss or take-profit order
3024
3053
  * @returns {object} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3025
3054
  */
3026
3055
  return await this.fetchOrdersByStatus('canceled', symbol, since, limit, params);
@@ -3035,10 +3064,10 @@ class xt extends xt$1 {
3035
3064
  * @see https://doc.xt.com/#futures_entrustcancelPlan
3036
3065
  * @see https://doc.xt.com/#futures_entrustcancelProfit
3037
3066
  * @param {string} id order id
3038
- * @param {string|undefined} symbol unified symbol of the market the order was made in
3067
+ * @param {string} [symbol] unified symbol of the market the order was made in
3039
3068
  * @param {object} params extra parameters specific to the xt api endpoint
3040
- * @param {bool|undefined} params.stop if the order is a stop trigger order or not
3041
- * @param {bool|undefined} params.stopLossTakeProfit if the order is a stop-loss or take-profit order
3069
+ * @param {bool} [params.stop] if the order is a stop trigger order or not
3070
+ * @param {bool} [params.stopLossTakeProfit] if the order is a stop-loss or take-profit order
3042
3071
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3043
3072
  */
3044
3073
  await this.loadMarkets();
@@ -3124,11 +3153,11 @@ class xt extends xt$1 {
3124
3153
  * @see https://doc.xt.com/#futures_ordercancelBatch
3125
3154
  * @see https://doc.xt.com/#futures_entrustcancelPlanBatch
3126
3155
  * @see https://doc.xt.com/#futures_entrustcancelProfitBatch
3127
- * @param {string|undefined} symbol unified market symbol of the market to cancel orders in
3156
+ * @param {string} [symbol] unified market symbol of the market to cancel orders in
3128
3157
  * @param {object} params extra parameters specific to the xt api endpoint
3129
- * @param {bool|undefined} params.stop if the order is a stop trigger order or not
3130
- * @param {bool|undefined} params.stopLossTakeProfit if the order is a stop-loss or take-profit order
3131
- * @returns {[object]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3158
+ * @param {bool} [params.stop] if the order is a stop trigger order or not
3159
+ * @param {bool} [params.stopLossTakeProfit] if the order is a stop-loss or take-profit order
3160
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3132
3161
  */
3133
3162
  await this.loadMarkets();
3134
3163
  const request = {};
@@ -3194,7 +3223,9 @@ class xt extends xt$1 {
3194
3223
  // "result": true
3195
3224
  // }
3196
3225
  //
3197
- return response;
3226
+ return [
3227
+ this.safeOrder(response),
3228
+ ];
3198
3229
  }
3199
3230
  async cancelOrders(ids, symbol = undefined, params = {}) {
3200
3231
  /**
@@ -3202,10 +3233,10 @@ class xt extends xt$1 {
3202
3233
  * @name xt#cancelOrders
3203
3234
  * @description cancel multiple orders
3204
3235
  * @see https://doc.xt.com/#orderbatchOrderDel
3205
- * @param {[string]} ids order ids
3206
- * @param {string|undefined} symbol unified market symbol of the market to cancel orders in
3236
+ * @param {string[]} ids order ids
3237
+ * @param {string} [symbol] unified market symbol of the market to cancel orders in
3207
3238
  * @param {object} params extra parameters specific to the xt api endpoint
3208
- * @returns {[object]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3239
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/en/latest/manual.html#order-structure}
3209
3240
  */
3210
3241
  await this.loadMarkets();
3211
3242
  const request = {
@@ -3231,7 +3262,9 @@ class xt extends xt$1 {
3231
3262
  // "result": null
3232
3263
  // }
3233
3264
  //
3234
- return response;
3265
+ return [
3266
+ this.safeOrder(response),
3267
+ ];
3235
3268
  }
3236
3269
  parseOrder(order, market = undefined) {
3237
3270
  //
@@ -3416,9 +3449,9 @@ class xt extends xt$1 {
3416
3449
  * @name xt#fetchLedger
3417
3450
  * @description fetch the history of changes, actions done by the user or operations that altered the balance of the user
3418
3451
  * @see https://doc.xt.com/#futures_usergetBalanceBill
3419
- * @param {string|undefined} code unified currency code
3420
- * @param {int|undefined} since timestamp in ms of the earliest ledger entry
3421
- * @param {int|undefined} limit max number of ledger entries to return
3452
+ * @param {string} [code] unified currency code
3453
+ * @param {int} [since] timestamp in ms of the earliest ledger entry
3454
+ * @param {int} [limit] max number of ledger entries to return
3422
3455
  * @param {object} params extra parameters specific to the xt api endpoint
3423
3456
  * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/en/latest/manual.html#ledger-structure}
3424
3457
  */
@@ -3585,11 +3618,11 @@ class xt extends xt$1 {
3585
3618
  * @name xt#fetchDeposits
3586
3619
  * @description fetch all deposits made to an account
3587
3620
  * @see https://doc.xt.com/#deposit_withdrawalhistoryDepositGet
3588
- * @param {string|undefined} code unified currency code
3589
- * @param {int|undefined} since the earliest time in ms to fetch deposits for
3590
- * @param {int|undefined} limit the maximum number of transaction structures to retrieve
3621
+ * @param {string} [code] unified currency code
3622
+ * @param {int} [since] the earliest time in ms to fetch deposits for
3623
+ * @param {int} [limit] the maximum number of transaction structures to retrieve
3591
3624
  * @param {object} params extra parameters specific to the xt api endpoint
3592
- * @returns {[object]} a list of [transaction structures]{@link https://docs.ccxt.com/en/latest/manual.html#transaction-structure}
3625
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/en/latest/manual.html#transaction-structure}
3593
3626
  */
3594
3627
  await this.loadMarkets();
3595
3628
  const request = {};
@@ -3641,11 +3674,11 @@ class xt extends xt$1 {
3641
3674
  * @name xt#fetchWithdrawals
3642
3675
  * @description fetch all withdrawals made from an account
3643
3676
  * @see https://doc.xt.com/#deposit_withdrawalwithdrawHistory
3644
- * @param {string|undefined} code unified currency code
3645
- * @param {int|undefined} since the earliest time in ms to fetch withdrawals for
3646
- * @param {int|undefined} limit the maximum number of transaction structures to retrieve
3677
+ * @param {string} [code] unified currency code
3678
+ * @param {int} [since] the earliest time in ms to fetch withdrawals for
3679
+ * @param {int} [limit] the maximum number of transaction structures to retrieve
3647
3680
  * @param {object} params extra parameters specific to the xt api endpoint
3648
- * @returns {[object]} a list of [transaction structures]{@link https://docs.ccxt.com/en/latest/manual.html#transaction-structure}
3681
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/en/latest/manual.html#transaction-structure}
3649
3682
  */
3650
3683
  await this.loadMarkets();
3651
3684
  const request = {};
@@ -3700,7 +3733,7 @@ class xt extends xt$1 {
3700
3733
  * @param {string} code unified currency code
3701
3734
  * @param {float} amount the amount to withdraw
3702
3735
  * @param {string} address the address to withdraw to
3703
- * @param {string|undefined} tag
3736
+ * @param {string} [tag]
3704
3737
  * @param {object} params extra parameters specific to the xt api endpoint
3705
3738
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/en/latest/manual.html#transaction-structure}
3706
3739
  */
@@ -3807,6 +3840,7 @@ class xt extends xt$1 {
3807
3840
  'cost': fee,
3808
3841
  'rate': undefined,
3809
3842
  },
3843
+ 'internal': undefined,
3810
3844
  };
3811
3845
  }
3812
3846
  parseTransactionStatus(status) {
@@ -3833,7 +3867,9 @@ class xt extends xt$1 {
3833
3867
  * @param {string} params.positionSide 'LONG' or 'SHORT'
3834
3868
  * @returns {object} response from the exchange
3835
3869
  */
3836
- this.checkRequiredSymbol('setLeverage', symbol);
3870
+ if (symbol === undefined) {
3871
+ throw new errors.ArgumentsRequired(this.id + ' setLeverage() requires a symbol argument');
3872
+ }
3837
3873
  const positionSide = this.safeString(params, 'positionSide');
3838
3874
  this.checkRequiredArgument('setLeverage', positionSide, 'positionSide', ['LONG', 'SHORT']);
3839
3875
  if ((leverage < 1) || (leverage > 125)) {
@@ -3934,6 +3970,10 @@ class xt extends xt$1 {
3934
3970
  'code': undefined,
3935
3971
  'symbol': this.safeSymbol(undefined, market),
3936
3972
  'status': undefined,
3973
+ 'marginMode': undefined,
3974
+ 'total': undefined,
3975
+ 'timestamp': undefined,
3976
+ 'datetime': undefined,
3937
3977
  };
3938
3978
  }
3939
3979
  async fetchLeverageTiers(symbols = undefined, params = {}) {
@@ -3942,7 +3982,7 @@ class xt extends xt$1 {
3942
3982
  * @name xt#fetchLeverageTiers
3943
3983
  * @see https://doc.xt.com/#futures_quotesgetLeverageBrackets
3944
3984
  * @description retrieve information on the maximum leverage for different trade sizes
3945
- * @param {[string]|undefined} symbols a list of unified market symbols
3985
+ * @param {string} [symbols] a list of unified market symbols
3946
3986
  * @param {object} params extra parameters specific to the xt api endpoint
3947
3987
  * @returns {object} a dictionary of [leverage tiers structures]{@link https://docs.ccxt.com/#/?id=leverage-tiers-structure}
3948
3988
  */
@@ -4110,13 +4150,15 @@ class xt extends xt$1 {
4110
4150
  * @name xt#fetchFundingRateHistory
4111
4151
  * @description fetches historical funding rates
4112
4152
  * @see https://doc.xt.com/#futures_quotesgetFundingRateRecord
4113
- * @param {string|undefined} symbol unified symbol of the market to fetch the funding rate history for
4114
- * @param {int|undefined} since timestamp in ms of the earliest funding rate to fetch
4115
- * @param {int|undefined} limit the maximum amount of [funding rate structures] to fetch
4153
+ * @param {string} [symbol] unified symbol of the market to fetch the funding rate history for
4154
+ * @param {int} [since] timestamp in ms of the earliest funding rate to fetch
4155
+ * @param {int} [limit] the maximum amount of [funding rate structures] to fetch
4116
4156
  * @param {object} params extra parameters specific to the xt api endpoint
4117
- * @returns {[object]} a list of [funding rate structures]{@link https://docs.ccxt.com/en/latest/manual.html?#funding-rate-history-structure}
4157
+ * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/en/latest/manual.html?#funding-rate-history-structure}
4118
4158
  */
4119
- this.checkRequiredSymbol('fetchFundingRateHistory', symbol);
4159
+ if (symbol === undefined) {
4160
+ throw new errors.ArgumentsRequired(this.id + ' fetchFundingRateHistory() requires a symbol argument');
4161
+ }
4120
4162
  await this.loadMarkets();
4121
4163
  const market = this.market(symbol);
4122
4164
  if (!market['swap']) {
@@ -4251,17 +4293,17 @@ class xt extends xt$1 {
4251
4293
  'previousFundingDatetime': undefined,
4252
4294
  };
4253
4295
  }
4254
- async fetchFundingHistory(symbol, since = undefined, limit = undefined, params = {}) {
4296
+ async fetchFundingHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
4255
4297
  /**
4256
4298
  * @method
4257
4299
  * @name xt#fetchFundingHistory
4258
4300
  * @description fetch the funding history
4259
4301
  * @see https://doc.xt.com/#futures_usergetFunding
4260
4302
  * @param {string} symbol unified market symbol
4261
- * @param {int|undefined} since the starting timestamp in milliseconds
4262
- * @param {int|undefined} limit the number of entries to return
4303
+ * @param {int} [since] the starting timestamp in milliseconds
4304
+ * @param {int} [limit] the number of entries to return
4263
4305
  * @param {object} params extra parameters specific to the xt api endpoint
4264
- * @returns {[object]} a list of [funding history structures]{@link https://docs.ccxt.com/#/?id=funding-history-structure}
4306
+ * @returns {object[]} a list of [funding history structures]{@link https://docs.ccxt.com/#/?id=funding-history-structure}
4265
4307
  */
4266
4308
  await this.loadMarkets();
4267
4309
  const market = this.market(symbol);
@@ -4410,14 +4452,11 @@ class xt extends xt$1 {
4410
4452
  * @name xt#fetchPositions
4411
4453
  * @description fetch all open positions
4412
4454
  * @see https://doc.xt.com/#futures_usergetPosition
4413
- * @param {[string]|undefined} symbols list of unified market symbols, not supported with xt
4455
+ * @param {string} [symbols] list of unified market symbols, not supported with xt
4414
4456
  * @param {object} params extra parameters specific to the xt api endpoint
4415
- * @returns {[object]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
4457
+ * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
4416
4458
  */
4417
4459
  await this.loadMarkets();
4418
- if (symbols !== undefined) {
4419
- throw new errors.BadRequest(this.id + ' fetchPositions() only supports the symbols argument as undefined');
4420
- }
4421
4460
  let subType = undefined;
4422
4461
  [subType, params] = this.handleSubTypeAndParams('fetchPositions', undefined, params);
4423
4462
  let response = undefined;
@@ -4460,7 +4499,7 @@ class xt extends xt$1 {
4460
4499
  const marketInner = this.safeMarket(marketId, undefined, undefined, 'contract');
4461
4500
  result.push(this.parsePosition(entry, marketInner));
4462
4501
  }
4463
- return this.filterByArray(result, 'symbol', undefined, false);
4502
+ return this.filterByArrayPositions(result, 'symbol', symbols, false);
4464
4503
  }
4465
4504
  parsePosition(position, market = undefined) {
4466
4505
  //
@@ -440,6 +440,13 @@ class zonda extends zonda$1 {
440
440
  // "secondBalanceId": "ab43023b-4079-414c-b340-056e3430a3af"
441
441
  // }
442
442
  //
443
+ // cancelOrder
444
+ //
445
+ // {
446
+ // status: "Ok",
447
+ // errors: []
448
+ // }
449
+ //
443
450
  const marketId = this.safeString(order, 'market');
444
451
  const symbol = this.safeSymbol(marketId, market, '-');
445
452
  const timestamp = this.safeInteger(order, 'time');
@@ -1497,9 +1504,10 @@ class zonda extends zonda$1 {
1497
1504
  'side': side,
1498
1505
  'price': price,
1499
1506
  };
1507
+ const response = await this.v1_01PrivateDeleteTradingOfferSymbolIdSidePrice(this.extend(request, params));
1500
1508
  // { status: "Fail", errors: [ "NOT_RECOGNIZED_OFFER_TYPE" ] } -- if required params are missing
1501
1509
  // { status: "Ok", errors: [] }
1502
- return await this.v1_01PrivateDeleteTradingOfferSymbolIdSidePrice(this.extend(request, params));
1510
+ return this.parseOrder(response);
1503
1511
  }
1504
1512
  isFiat(currency) {
1505
1513
  const fiatCurrencies = {
package/js/ccxt.d.ts CHANGED
@@ -2,9 +2,9 @@ import { Exchange } from './src/base/Exchange.js';
2
2
  import { Precise } from './src/base/Precise.js';
3
3
  import * as functions from './src/base/functions.js';
4
4
  import * as errors from './src/base/errors.js';
5
- import type { Market, Trade, Fee, Ticker, OrderBook, Order, Transaction, Tickers, Currency, Balance, DepositAddress, WithdrawalResponse, DepositAddressResponse, OHLCV, Balances, PartialBalances, Dictionary, MinMax, Position, FundingRateHistory, Liquidation, FundingHistory, MarginMode, Greeks, Leverage, Leverages, Option, OptionChain, Conversion } from './src/base/types.js';
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, TransferEntries, LeverageTiers } from './src/base/types.js';
6
6
  import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout } from './src/base/errors.js';
7
- declare const version = "4.3.41";
7
+ declare const version = "4.3.43";
8
8
  import ace from './src/ace.js';
9
9
  import alpaca from './src/alpaca.js';
10
10
  import ascendex from './src/ascendex.js';
@@ -107,6 +107,7 @@ import wazirx from './src/wazirx.js';
107
107
  import whitebit from './src/whitebit.js';
108
108
  import woo from './src/woo.js';
109
109
  import woofipro from './src/woofipro.js';
110
+ import xt from './src/xt.js';
110
111
  import yobit from './src/yobit.js';
111
112
  import zaif from './src/zaif.js';
112
113
  import zonda from './src/zonda.js';
@@ -278,6 +279,7 @@ declare const exchanges: {
278
279
  whitebit: typeof whitebit;
279
280
  woo: typeof woo;
280
281
  woofipro: typeof woofipro;
282
+ xt: typeof xt;
281
283
  yobit: typeof yobit;
282
284
  zaif: typeof zaif;
283
285
  zonda: typeof zonda;
@@ -524,9 +526,10 @@ declare const ccxt: {
524
526
  whitebit: typeof whitebit;
525
527
  woo: typeof woo;
526
528
  woofipro: typeof woofipro;
529
+ xt: typeof xt;
527
530
  yobit: typeof yobit;
528
531
  zaif: typeof zaif;
529
532
  zonda: typeof zonda;
530
533
  } & typeof functions & typeof errors;
531
- export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout, Market, Trade, Fee, Ticker, OrderBook, Order, Transaction, Tickers, Currency, Balance, DepositAddress, WithdrawalResponse, DepositAddressResponse, OHLCV, Balances, PartialBalances, Dictionary, MinMax, Position, FundingRateHistory, Liquidation, FundingHistory, MarginMode, Greeks, Leverage, Leverages, Option, OptionChain, Conversion, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbay, bitbns, bitcoincom, bitfinex, bitfinex2, bitflyer, bitget, bithumb, bitmart, bitmex, bitopro, bitpanda, bitrue, bitso, bitstamp, bitteam, bitvavo, bl3p, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, delta, deribit, digifinex, exmo, fmfwio, gate, gateio, gemini, hitbtc, hitbtc3, hollaex, htx, huobi, huobijp, hyperliquid, idex, independentreserve, indodax, kraken, krakenfutures, kucoin, kucoinfutures, kuna, latoken, lbank, luno, lykke, mercado, mexc, ndax, novadax, oceanex, okcoin, okx, onetrading, p2b, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, wavesexchange, wazirx, whitebit, woo, woofipro, yobit, zaif, zonda, };
534
+ export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout, 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, TransferEntries, LeverageTiers, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbay, bitbns, bitcoincom, bitfinex, bitfinex2, bitflyer, bitget, bithumb, bitmart, bitmex, bitopro, bitpanda, bitrue, bitso, bitstamp, bitteam, bitvavo, bl3p, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, delta, deribit, digifinex, exmo, fmfwio, gate, gateio, gemini, hitbtc, hitbtc3, hollaex, htx, huobi, huobijp, hyperliquid, idex, independentreserve, indodax, kraken, krakenfutures, kucoin, kucoinfutures, kuna, latoken, lbank, luno, lykke, mercado, mexc, ndax, novadax, oceanex, okcoin, okx, onetrading, p2b, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, wavesexchange, wazirx, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
532
535
  export default ccxt;
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, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout } from './src/base/errors.js';
39
39
  //-----------------------------------------------------------------------------
40
40
  // this is updated by vss.js when building
41
- const version = '4.3.42';
41
+ const version = '4.3.44';
42
42
  Exchange.ccxtVersion = version;
43
43
  //-----------------------------------------------------------------------------
44
44
  import ace from './src/ace.js';
@@ -143,6 +143,7 @@ import wazirx from './src/wazirx.js';
143
143
  import whitebit from './src/whitebit.js';
144
144
  import woo from './src/woo.js';
145
145
  import woofipro from './src/woofipro.js';
146
+ import xt from './src/xt.js';
146
147
  import yobit from './src/yobit.js';
147
148
  import zaif from './src/zaif.js';
148
149
  import zonda from './src/zonda.js';
@@ -315,6 +316,7 @@ const exchanges = {
315
316
  'whitebit': whitebit,
316
317
  'woo': woo,
317
318
  'woofipro': woofipro,
319
+ 'xt': xt,
318
320
  'yobit': yobit,
319
321
  'zaif': zaif,
320
322
  'zonda': zonda,
@@ -398,6 +400,6 @@ pro.exchanges = Object.keys(pro);
398
400
  pro['Exchange'] = Exchange; // now the same for rest and ts
399
401
  //-----------------------------------------------------------------------------
400
402
  const ccxt = Object.assign({ version, Exchange, Precise, 'exchanges': Object.keys(exchanges), 'pro': pro }, exchanges, functions, errors);
401
- export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbay, bitbns, bitcoincom, bitfinex, bitfinex2, bitflyer, bitget, bithumb, bitmart, bitmex, bitopro, bitpanda, bitrue, bitso, bitstamp, bitteam, bitvavo, bl3p, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, delta, deribit, digifinex, exmo, fmfwio, gate, gateio, gemini, hitbtc, hitbtc3, hollaex, htx, huobi, huobijp, hyperliquid, idex, independentreserve, indodax, kraken, krakenfutures, kucoin, kucoinfutures, kuna, latoken, lbank, luno, lykke, mercado, mexc, ndax, novadax, oceanex, okcoin, okx, onetrading, p2b, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, wavesexchange, wazirx, whitebit, woo, woofipro, yobit, zaif, zonda, };
403
+ export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbay, bitbns, bitcoincom, bitfinex, bitfinex2, bitflyer, bitget, bithumb, bitmart, bitmex, bitopro, bitpanda, bitrue, bitso, bitstamp, bitteam, bitvavo, bl3p, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, delta, deribit, digifinex, exmo, fmfwio, gate, gateio, gemini, hitbtc, hitbtc3, hollaex, htx, huobi, huobijp, hyperliquid, idex, independentreserve, indodax, kraken, krakenfutures, kucoin, kucoinfutures, kuna, latoken, lbank, luno, lykke, mercado, mexc, ndax, novadax, oceanex, okcoin, okx, onetrading, p2b, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, wavesexchange, wazirx, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
402
404
  export default ccxt;
403
405
  //-----------------------------------------------------------------------------