ccxt 4.4.42 → 4.4.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 (94) hide show
  1. package/README.md +35 -33
  2. package/dist/ccxt.browser.min.js +15 -15
  3. package/dist/cjs/ccxt.js +6 -1
  4. package/dist/cjs/src/binance.js +55 -43
  5. package/dist/cjs/src/bingx.js +37 -12
  6. package/dist/cjs/src/bitfinex.js +6 -2
  7. package/dist/cjs/src/bitget.js +3 -1
  8. package/dist/cjs/src/bitmart.js +4 -7
  9. package/dist/cjs/src/bitmex.js +3 -5
  10. package/dist/cjs/src/bitstamp.js +59 -0
  11. package/dist/cjs/src/bybit.js +7 -22
  12. package/dist/cjs/src/coinbase.js +13 -9
  13. package/dist/cjs/src/coinbaseinternational.js +13 -9
  14. package/dist/cjs/src/coincatch.js +2 -2
  15. package/dist/cjs/src/coinex.js +5 -5
  16. package/dist/cjs/src/cryptocom.js +3 -1
  17. package/dist/cjs/src/defx.js +2 -2
  18. package/dist/cjs/src/delta.js +1 -1
  19. package/dist/cjs/src/gate.js +7 -2
  20. package/dist/cjs/src/gemini.js +65 -2
  21. package/dist/cjs/src/hashkey.js +9 -9
  22. package/dist/cjs/src/htx.js +105 -2
  23. package/dist/cjs/src/hyperliquid.js +6 -1
  24. package/dist/cjs/src/kraken.js +9 -2
  25. package/dist/cjs/src/krakenfutures.js +5 -0
  26. package/dist/cjs/src/kucoin.js +9 -7
  27. package/dist/cjs/src/kucoinfutures.js +5 -5
  28. package/dist/cjs/src/mexc.js +16 -10
  29. package/dist/cjs/src/myokx.js +35 -0
  30. package/dist/cjs/src/ndax.js +1 -1
  31. package/dist/cjs/src/oceanex.js +1 -1
  32. package/dist/cjs/src/okx.js +4 -5
  33. package/dist/cjs/src/phemex.js +7 -5
  34. package/dist/cjs/src/pro/bitcoincom.js +4 -1
  35. package/dist/cjs/src/pro/bitopro.js +1 -1
  36. package/dist/cjs/src/pro/myokx.js +24 -0
  37. package/dist/cjs/src/vertex.js +69 -4
  38. package/dist/cjs/src/whitebit.js +4 -2
  39. package/dist/cjs/src/woo.js +8 -6
  40. package/dist/cjs/src/woofipro.js +5 -2
  41. package/js/ccxt.d.ts +8 -2
  42. package/js/ccxt.js +6 -2
  43. package/js/src/abstract/binance.d.ts +1 -0
  44. package/js/src/abstract/binancecoinm.d.ts +1 -0
  45. package/js/src/abstract/binanceus.d.ts +1 -0
  46. package/js/src/abstract/binanceusdm.d.ts +1 -0
  47. package/js/src/abstract/bingx.d.ts +4 -0
  48. package/js/src/abstract/bitstamp.d.ts +1 -0
  49. package/js/src/abstract/myokx.d.ts +343 -0
  50. package/js/src/abstract/myokx.js +11 -0
  51. package/js/src/binance.d.ts +33 -32
  52. package/js/src/binance.js +55 -43
  53. package/js/src/bingx.js +37 -12
  54. package/js/src/bitfinex.js +6 -2
  55. package/js/src/bitget.js +3 -1
  56. package/js/src/bitmart.js +4 -7
  57. package/js/src/bitmex.js +3 -5
  58. package/js/src/bitstamp.js +59 -0
  59. package/js/src/bybit.js +7 -22
  60. package/js/src/coinbase.js +13 -9
  61. package/js/src/coinbaseinternational.js +13 -9
  62. package/js/src/coincatch.js +2 -2
  63. package/js/src/coinex.js +5 -5
  64. package/js/src/cryptocom.js +3 -1
  65. package/js/src/defx.js +2 -2
  66. package/js/src/delta.js +1 -1
  67. package/js/src/gate.js +7 -2
  68. package/js/src/gemini.js +65 -2
  69. package/js/src/hashkey.js +9 -9
  70. package/js/src/htx.d.ts +13 -1
  71. package/js/src/htx.js +105 -2
  72. package/js/src/hyperliquid.js +6 -1
  73. package/js/src/kraken.js +9 -2
  74. package/js/src/krakenfutures.js +5 -0
  75. package/js/src/kucoin.js +9 -7
  76. package/js/src/kucoinfutures.js +5 -5
  77. package/js/src/mexc.js +16 -10
  78. package/js/src/myokx.d.ts +4 -0
  79. package/js/src/myokx.js +36 -0
  80. package/js/src/ndax.js +1 -1
  81. package/js/src/oceanex.js +1 -1
  82. package/js/src/okx.js +4 -5
  83. package/js/src/phemex.d.ts +1 -0
  84. package/js/src/phemex.js +7 -5
  85. package/js/src/pro/bitcoincom.js +4 -1
  86. package/js/src/pro/bitopro.js +1 -1
  87. package/js/src/pro/myokx.d.ts +4 -0
  88. package/js/src/pro/myokx.js +25 -0
  89. package/js/src/vertex.d.ts +11 -1
  90. package/js/src/vertex.js +69 -4
  91. package/js/src/whitebit.js +4 -2
  92. package/js/src/woo.js +8 -6
  93. package/js/src/woofipro.js +5 -2
  94. package/package.json +15 -8
@@ -695,10 +695,12 @@ class mexc extends mexc$1 {
695
695
  'PO': true,
696
696
  'GTD': false,
697
697
  },
698
- 'hedged': false,
699
- // exchange-supported features
700
- 'selfTradePrevention': false,
698
+ 'hedged': true,
701
699
  'trailing': false,
700
+ 'leverage': true,
701
+ 'marketBuyByCost': true,
702
+ 'marketBuyRequiresPrice': false,
703
+ 'selfTradePrevention': false,
702
704
  'iceberg': false,
703
705
  },
704
706
  'createOrders': {
@@ -758,10 +760,10 @@ class mexc extends mexc$1 {
758
760
  'stopLossPrice': false,
759
761
  'takeProfitPrice': false,
760
762
  'hedged': true,
763
+ 'leverage': true,
764
+ 'marketBuyByCost': false,
761
765
  },
762
- 'createOrders': {
763
- 'max': 50,
764
- },
766
+ 'createOrders': undefined,
765
767
  'fetchMyTrades': {
766
768
  'marginMode': false,
767
769
  'limit': 100,
@@ -2248,8 +2250,10 @@ class mexc extends mexc$1 {
2248
2250
  if (!market['spot']) {
2249
2251
  throw new errors.NotSupported(this.id + ' createMarketBuyOrderWithCost() supports spot orders only');
2250
2252
  }
2251
- params['cost'] = cost;
2252
- return await this.createOrder(symbol, 'market', 'buy', 0, undefined, params);
2253
+ const req = {
2254
+ 'cost': cost,
2255
+ };
2256
+ return await this.createOrder(symbol, 'market', 'buy', 0, undefined, this.extend(req, params));
2253
2257
  }
2254
2258
  /**
2255
2259
  * @method
@@ -2267,8 +2271,10 @@ class mexc extends mexc$1 {
2267
2271
  if (!market['spot']) {
2268
2272
  throw new errors.NotSupported(this.id + ' createMarketBuyOrderWithCost() supports spot orders only');
2269
2273
  }
2270
- params['cost'] = cost;
2271
- return await this.createOrder(symbol, 'market', 'sell', 0, undefined, params);
2274
+ const req = {
2275
+ 'cost': cost,
2276
+ };
2277
+ return await this.createOrder(symbol, 'market', 'sell', 0, undefined, this.extend(req, params));
2272
2278
  }
2273
2279
  /**
2274
2280
  * @method
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ var okx = require('./okx.js');
4
+
5
+ // ---------------------------------------------------------------------------
6
+ // ---------------------------------------------------------------------------
7
+ class myokx extends okx {
8
+ describe() {
9
+ return this.deepExtend(super.describe(), {
10
+ 'id': 'myokx',
11
+ 'name': 'MyOKX (EEA)',
12
+ 'certified': false,
13
+ 'pro': true,
14
+ 'hostname': 'eea.okx.com',
15
+ 'urls': {
16
+ 'logo': 'https://user-images.githubusercontent.com/1294454/152485636-38b19e4a-bece-4dec-979a-5982859ffc04.jpg',
17
+ 'api': {
18
+ 'rest': 'https://{hostname}',
19
+ },
20
+ 'www': 'https://my.okx.com',
21
+ 'doc': 'https://my.okx.com/docs-v5/en/#overview',
22
+ 'fees': 'https://my.okx.com/pages/products/fees.html',
23
+ 'referral': {
24
+ 'url': 'https://www.my.okx.com/join/CCXT2023',
25
+ 'discount': 0.2,
26
+ },
27
+ 'test': {
28
+ 'rest': 'https://{hostname}',
29
+ },
30
+ },
31
+ });
32
+ }
33
+ }
34
+
35
+ module.exports = myokx;
@@ -352,7 +352,7 @@ class ndax extends ndax$1 {
352
352
  //
353
353
  // {
354
354
  // "Authenticated": true,
355
- // "UserId":57765,
355
+ // "UserId":57764,
356
356
  // "SessionToken":"4a2a5857-c4e5-4fac-b09e-2c4c30b591a0"
357
357
  // }
358
358
  //
@@ -497,7 +497,7 @@ class oceanex extends oceanex$1 {
497
497
  // "funds":"6.0732952",
498
498
  // "market":"ethusdt",
499
499
  // "created_at":"2022-04-19T19:03:15Z",
500
- // "created_on":1650394995,
500
+ // "created_on":1650394994,
501
501
  // "side":"bid"
502
502
  // },
503
503
  // ]
@@ -1180,7 +1180,6 @@ class okx extends okx$1 {
1180
1180
  'brokerId': 'e847386590ce4dBC',
1181
1181
  },
1182
1182
  'features': {
1183
- // https://www.okx.com/docs-v5/en/#order-book-trading-trade-post-place-order
1184
1183
  'default': {
1185
1184
  'sandbox': true,
1186
1185
  'createOrder': {
@@ -1209,12 +1208,12 @@ class okx extends okx$1 {
1209
1208
  'GTD': false,
1210
1209
  },
1211
1210
  'hedged': true,
1212
- // even though the below params not unified yet, it's useful metadata for users to know that exchange supports them
1213
- 'selfTradePrevention': true,
1214
1211
  'trailing': true,
1215
- 'twap': true,
1216
1212
  'iceberg': true,
1217
- 'oco': true,
1213
+ 'leverage': false,
1214
+ 'selfTradePrevention': true,
1215
+ 'marketBuyByCost': true,
1216
+ 'marketBuyRequiresPrice': false,
1218
1217
  },
1219
1218
  'createOrders': {
1220
1219
  'max': 20,
@@ -3681,6 +3681,7 @@ class phemex extends phemex$1 {
3681
3681
  * @see https://phemex-docs.github.io/#query-account-positions-with-unrealized-pnl
3682
3682
  * @param {string[]} [symbols] list of unified market symbols
3683
3683
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3684
+ * @param {string} [params.code] the currency code to fetch positions for, USD, BTC or USDT, USD is the default
3684
3685
  * @param {string} [params.method] *USDT contracts only* 'privateGetGAccountsAccountPositions' or 'privateGetAccountsPositions' default is 'privateGetGAccountsAccountPositions'
3685
3686
  * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
3686
3687
  */
@@ -3688,7 +3689,8 @@ class phemex extends phemex$1 {
3688
3689
  await this.loadMarkets();
3689
3690
  symbols = this.marketSymbols(symbols);
3690
3691
  let subType = undefined;
3691
- let code = this.safeString(params, 'currency');
3692
+ let code = this.safeString2(params, 'currency', 'code', 'USD');
3693
+ params = this.omit(params, ['currency', 'code']);
3692
3694
  let settle = undefined;
3693
3695
  let market = undefined;
3694
3696
  const firstSymbol = this.safeString(symbols, 0);
@@ -3698,19 +3700,19 @@ class phemex extends phemex$1 {
3698
3700
  code = market['settle'];
3699
3701
  }
3700
3702
  else {
3701
- [settle, params] = this.handleOptionAndParams(params, 'fetchPositions', 'settle', 'USD');
3703
+ [settle, params] = this.handleOptionAndParams(params, 'fetchPositions', 'settle', code);
3702
3704
  }
3703
3705
  [subType, params] = this.handleSubTypeAndParams('fetchPositions', market, params);
3704
3706
  const isUSDTSettled = settle === 'USDT';
3705
3707
  if (isUSDTSettled) {
3706
3708
  code = 'USDT';
3707
3709
  }
3710
+ else if (settle === 'BTC') {
3711
+ code = 'BTC';
3712
+ }
3708
3713
  else if (code === undefined) {
3709
3714
  code = (subType === 'linear') ? 'USD' : 'BTC';
3710
3715
  }
3711
- else {
3712
- params = this.omit(params, 'code');
3713
- }
3714
3716
  const currency = this.currency(code);
3715
3717
  const request = {
3716
3718
  'currency': currency['id'],
@@ -17,7 +17,10 @@ class bitcoincom extends hitbtc {
17
17
  'urls': {
18
18
  'logo': 'https://user-images.githubusercontent.com/1294454/97296144-514fa300-1861-11eb-952b-3d55d492200b.jpg',
19
19
  'api': {
20
- 'ws': 'wss://api.fmfw.io/api/2/ws',
20
+ 'ws': {
21
+ 'public': 'wss://api.fmfw.io/api/3/ws/public',
22
+ 'private': 'wss://api.fmfw.io/api/3/ws/trading',
23
+ },
21
24
  },
22
25
  },
23
26
  'fees': {
@@ -74,7 +74,7 @@ class bitopro extends bitopro$1 {
74
74
  endPart = market['id'];
75
75
  }
76
76
  else {
77
- endPart = market['id'] + ':' + limit;
77
+ endPart = market['id'] + ':' + this.numberToString(limit);
78
78
  }
79
79
  const orderbook = await this.watchPublic('order-books', messageHash, endPart);
80
80
  return orderbook.limit();
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ var okx = require('./okx.js');
4
+
5
+ // ---------------------------------------------------------------------------
6
+ // ---------------------------------------------------------------------------
7
+ class myokx extends okx {
8
+ describe() {
9
+ return this.deepExtend(super.describe(), {
10
+ 'id': 'myokx',
11
+ 'name': 'MyOKX',
12
+ 'urls': {
13
+ 'api': {
14
+ 'ws': 'wss://wseea.okx.com:8443/ws/v5',
15
+ },
16
+ 'test': {
17
+ 'ws': 'wss://wseeapap.okx.com:8443/ws/v5',
18
+ },
19
+ },
20
+ });
21
+ }
22
+ }
23
+
24
+ module.exports = myokx;
@@ -86,6 +86,7 @@ class vertex extends vertex$1 {
86
86
  'fetchOHLCV': true,
87
87
  'fetchOpenInterest': true,
88
88
  'fetchOpenInterestHistory': false,
89
+ 'fetchOpenInterests': true,
89
90
  'fetchOpenOrders': true,
90
91
  'fetchOrder': true,
91
92
  'fetchOrderBook': true,
@@ -1349,16 +1350,80 @@ class vertex extends vertex$1 {
1349
1350
  // }
1350
1351
  // }
1351
1352
  //
1352
- const value = this.safeNumber(interest, 'open_interest_usd');
1353
+ const marketId = this.safeString(interest, 'ticker_id');
1353
1354
  return this.safeOpenInterest({
1354
- 'symbol': market['symbol'],
1355
- 'openInterestAmount': undefined,
1356
- 'openInterestValue': value,
1355
+ 'symbol': this.safeSymbol(marketId, market),
1356
+ 'openInterestAmount': this.safeNumber(interest, 'open_interest'),
1357
+ 'openInterestValue': this.safeNumber(interest, 'open_interest_usd'),
1357
1358
  'timestamp': undefined,
1358
1359
  'datetime': undefined,
1359
1360
  'info': interest,
1360
1361
  }, market);
1361
1362
  }
1363
+ /**
1364
+ * @method
1365
+ * @name vertex#fetchOpenInterests
1366
+ * @description Retrieves the open interest for a list of symbols
1367
+ * @see https://docs.vertexprotocol.com/developer-resources/api/v2/contracts
1368
+ * @param {string[]} [symbols] a list of unified CCXT market symbols
1369
+ * @param {object} [params] exchange specific parameters
1370
+ * @returns {object[]} a list of [open interest structures]{@link https://docs.ccxt.com/#/?id=open-interest-structure}
1371
+ */
1372
+ async fetchOpenInterests(symbols = undefined, params = {}) {
1373
+ await this.loadMarkets();
1374
+ symbols = this.marketSymbols(symbols);
1375
+ const response = await this.v2ArchiveGetContracts(params);
1376
+ //
1377
+ // {
1378
+ // "ADA-PERP_USDC": {
1379
+ // "ticker_id": "ADA-PERP_USDC",
1380
+ // "base_currency": "ADA-PERP",
1381
+ // "quote_currency": "USDC",
1382
+ // "last_price": 0.85506,
1383
+ // "base_volume": 1241320.0,
1384
+ // "quote_volume": 1122670.9080057142,
1385
+ // "product_type": "perpetual",
1386
+ // "contract_price": 0.8558601432685385,
1387
+ // "contract_price_currency": "USD",
1388
+ // "open_interest": 104040.0,
1389
+ // "open_interest_usd": 89043.68930565874,
1390
+ // "index_price": 0.8561952606869176,
1391
+ // "mark_price": 0.856293781088936,
1392
+ // "funding_rate": 0.000116153806226841,
1393
+ // "next_funding_rate_timestamp": 1734685200,
1394
+ // "price_change_percent_24h": -12.274325340321374
1395
+ // },
1396
+ // }
1397
+ //
1398
+ const parsedSymbols = [];
1399
+ const results = [];
1400
+ const markets = Object.keys(response);
1401
+ if (symbols === undefined) {
1402
+ symbols = [];
1403
+ for (let y = 0; y < markets.length; y++) {
1404
+ const tickerId = markets[y];
1405
+ const parsedTickerId = tickerId.split('-');
1406
+ const currentSymbol = parsedTickerId[0] + '/USDC:USDC';
1407
+ if (!this.inArray(currentSymbol, symbols)) {
1408
+ symbols.push(currentSymbol);
1409
+ }
1410
+ }
1411
+ }
1412
+ for (let i = 0; i < markets.length; i++) {
1413
+ const marketId = markets[i];
1414
+ const marketInner = this.safeMarket(marketId);
1415
+ const openInterest = this.safeDict(response, marketId, {});
1416
+ for (let j = 0; j < symbols.length; j++) {
1417
+ const market = this.market(symbols[j]);
1418
+ const tickerId = market['base'] + '_USDC';
1419
+ if (marketInner['marketId'] === tickerId) {
1420
+ parsedSymbols.push(market['symbol']);
1421
+ results.push(this.parseOpenInterest(openInterest, market));
1422
+ }
1423
+ }
1424
+ }
1425
+ return this.filterByArray(results, 'symbol', parsedSymbols);
1426
+ }
1362
1427
  /**
1363
1428
  * @method
1364
1429
  * @name vertex#fetchOpenInterest
@@ -1228,9 +1228,11 @@ class whitebit extends whitebit$1 {
1228
1228
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1229
1229
  */
1230
1230
  async createMarketOrderWithCost(symbol, side, cost, params = {}) {
1231
- params['cost'] = cost;
1231
+ const req = {
1232
+ 'cost': cost,
1233
+ };
1232
1234
  // only buy side is supported
1233
- return await this.createOrder(symbol, 'market', side, 0, undefined, params);
1235
+ return await this.createOrder(symbol, 'market', side, 0, undefined, this.extend(req, params));
1234
1236
  }
1235
1237
  /**
1236
1238
  * @method
@@ -333,9 +333,11 @@ class woo extends woo$1 {
333
333
  },
334
334
  'hedged': false,
335
335
  'trailing': true,
336
- // exchange specific params:
337
- // 'iceberg': true,
338
- // 'oco': true,
336
+ 'leverage': false,
337
+ 'marketBuyByCost': true,
338
+ 'marketBuyRequiresPrice': false,
339
+ 'selfTradePrevention': false,
340
+ 'iceberg': true, // todo implement
339
341
  },
340
342
  'createOrders': undefined,
341
343
  'fetchMyTrades': {
@@ -1061,7 +1063,7 @@ class woo extends woo$1 {
1061
1063
  if (marginMode !== undefined) {
1062
1064
  request['margin_mode'] = this.encodeMarginMode(marginMode);
1063
1065
  }
1064
- const triggerPrice = this.safeNumber2(params, 'triggerPrice', 'stopPrice');
1066
+ const triggerPrice = this.safeString2(params, 'triggerPrice', 'stopPrice');
1065
1067
  const stopLoss = this.safeValue(params, 'stopLoss');
1066
1068
  const takeProfit = this.safeValue(params, 'takeProfit');
1067
1069
  const algoType = this.safeString(params, 'algoType');
@@ -1157,7 +1159,7 @@ class woo extends woo$1 {
1157
1159
  };
1158
1160
  const closeSide = (orderSide === 'BUY') ? 'SELL' : 'BUY';
1159
1161
  if (stopLoss !== undefined) {
1160
- const stopLossPrice = this.safeNumber2(stopLoss, 'triggerPrice', 'price', stopLoss);
1162
+ const stopLossPrice = this.safeString(stopLoss, 'triggerPrice', stopLoss);
1161
1163
  const stopLossOrder = {
1162
1164
  'side': closeSide,
1163
1165
  'algoType': 'STOP_LOSS',
@@ -1168,7 +1170,7 @@ class woo extends woo$1 {
1168
1170
  outterOrder['childOrders'].push(stopLossOrder);
1169
1171
  }
1170
1172
  if (takeProfit !== undefined) {
1171
- const takeProfitPrice = this.safeNumber2(takeProfit, 'triggerPrice', 'price', takeProfit);
1173
+ const takeProfitPrice = this.safeString(takeProfit, 'triggerPrice', takeProfit);
1172
1174
  const takeProfitOrder = {
1173
1175
  'side': closeSide,
1174
1176
  'algoType': 'TAKE_PROFIT',
@@ -320,8 +320,11 @@ class woofipro extends woofipro$1 {
320
320
  },
321
321
  'hedged': false,
322
322
  'trailing': true,
323
- // exchange specific
324
- // 'iceberg': true,
323
+ 'leverage': true,
324
+ 'marketBuyByCost': false,
325
+ 'marketBuyRequiresPrice': false,
326
+ 'selfTradePrevention': false,
327
+ 'iceberg': true, // todo implement
325
328
  },
326
329
  'createOrders': {
327
330
  'max': 10,
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, MarketMarginModes, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers, LongShortRatio, OpenInterests } 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.4.41";
7
+ declare const version = "4.4.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';
@@ -88,6 +88,7 @@ import luno from './src/luno.js';
88
88
  import lykke from './src/lykke.js';
89
89
  import mercado from './src/mercado.js';
90
90
  import mexc from './src/mexc.js';
91
+ import myokx from './src/myokx.js';
91
92
  import ndax from './src/ndax.js';
92
93
  import novadax from './src/novadax.js';
93
94
  import oceanex from './src/oceanex.js';
@@ -172,6 +173,7 @@ import kucoinfuturesPro from './src/pro/kucoinfutures.js';
172
173
  import lbankPro from './src/pro/lbank.js';
173
174
  import lunoPro from './src/pro/luno.js';
174
175
  import mexcPro from './src/pro/mexc.js';
176
+ import myokxPro from './src/pro/myokx.js';
175
177
  import ndaxPro from './src/pro/ndax.js';
176
178
  import okcoinPro from './src/pro/okcoin.js';
177
179
  import okxPro from './src/pro/okx.js';
@@ -274,6 +276,7 @@ declare const exchanges: {
274
276
  lykke: typeof lykke;
275
277
  mercado: typeof mercado;
276
278
  mexc: typeof mexc;
279
+ myokx: typeof myokx;
277
280
  ndax: typeof ndax;
278
281
  novadax: typeof novadax;
279
282
  oceanex: typeof oceanex;
@@ -360,6 +363,7 @@ declare const pro: {
360
363
  lbank: typeof lbankPro;
361
364
  luno: typeof lunoPro;
362
365
  mexc: typeof mexcPro;
366
+ myokx: typeof myokxPro;
363
367
  ndax: typeof ndaxPro;
364
368
  okcoin: typeof okcoinPro;
365
369
  okx: typeof okxPro;
@@ -441,6 +445,7 @@ declare const ccxt: {
441
445
  lbank: typeof lbankPro;
442
446
  luno: typeof lunoPro;
443
447
  mexc: typeof mexcPro;
448
+ myokx: typeof myokxPro;
444
449
  ndax: typeof ndaxPro;
445
450
  okcoin: typeof okcoinPro;
446
451
  okx: typeof okxPro;
@@ -544,6 +549,7 @@ declare const ccxt: {
544
549
  lykke: typeof lykke;
545
550
  mercado: typeof mercado;
546
551
  mexc: typeof mexc;
552
+ myokx: typeof myokx;
547
553
  ndax: typeof ndax;
548
554
  novadax: typeof novadax;
549
555
  oceanex: typeof oceanex;
@@ -573,5 +579,5 @@ declare const ccxt: {
573
579
  zaif: typeof zaif;
574
580
  zonda: typeof zonda;
575
581
  } & typeof functions & typeof errors;
576
- export { version, Exchange, exchanges, pro, Precise, functions, errors, 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, 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, MarketMarginModes, 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, OpenInterests, Liquidation, OrderRequest, CancellationRequest, FundingHistory, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, LongShortRatio, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbns, bitcoincom, bitfinex, bitfinex1, 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, coincatch, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, defx, delta, deribit, digifinex, ellipx, exmo, fmfwio, gate, gateio, gemini, hashkey, hitbtc, 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, oxfun, p2b, paradex, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, vertex, wavesexchange, wazirx, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
582
+ export { version, Exchange, exchanges, pro, Precise, functions, errors, 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, 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, MarketMarginModes, 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, OpenInterests, Liquidation, OrderRequest, CancellationRequest, FundingHistory, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, LongShortRatio, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbns, bitcoincom, bitfinex, bitfinex1, 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, coincatch, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, defx, delta, deribit, digifinex, ellipx, exmo, fmfwio, gate, gateio, gemini, hashkey, hitbtc, hollaex, htx, huobi, huobijp, hyperliquid, idex, independentreserve, indodax, kraken, krakenfutures, kucoin, kucoinfutures, kuna, latoken, lbank, luno, lykke, mercado, mexc, myokx, ndax, novadax, oceanex, okcoin, okx, onetrading, oxfun, p2b, paradex, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, vertex, wavesexchange, wazirx, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
577
583
  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, 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.4.42';
41
+ const version = '4.4.44';
42
42
  Exchange.ccxtVersion = version;
43
43
  //-----------------------------------------------------------------------------
44
44
  import ace from './src/ace.js';
@@ -124,6 +124,7 @@ import luno from './src/luno.js';
124
124
  import lykke from './src/lykke.js';
125
125
  import mercado from './src/mercado.js';
126
126
  import mexc from './src/mexc.js';
127
+ import myokx from './src/myokx.js';
127
128
  import ndax from './src/ndax.js';
128
129
  import novadax from './src/novadax.js';
129
130
  import oceanex from './src/oceanex.js';
@@ -209,6 +210,7 @@ import kucoinfuturesPro from './src/pro/kucoinfutures.js';
209
210
  import lbankPro from './src/pro/lbank.js';
210
211
  import lunoPro from './src/pro/luno.js';
211
212
  import mexcPro from './src/pro/mexc.js';
213
+ import myokxPro from './src/pro/myokx.js';
212
214
  import ndaxPro from './src/pro/ndax.js';
213
215
  import okcoinPro from './src/pro/okcoin.js';
214
216
  import okxPro from './src/pro/okx.js';
@@ -311,6 +313,7 @@ const exchanges = {
311
313
  'lykke': lykke,
312
314
  'mercado': mercado,
313
315
  'mexc': mexc,
316
+ 'myokx': myokx,
314
317
  'ndax': ndax,
315
318
  'novadax': novadax,
316
319
  'oceanex': oceanex,
@@ -397,6 +400,7 @@ const pro = {
397
400
  'lbank': lbankPro,
398
401
  'luno': lunoPro,
399
402
  'mexc': mexcPro,
403
+ 'myokx': myokxPro,
400
404
  'ndax': ndaxPro,
401
405
  'okcoin': okcoinPro,
402
406
  'okx': okxPro,
@@ -428,6 +432,6 @@ pro.exchanges = Object.keys(pro);
428
432
  pro['Exchange'] = Exchange; // now the same for rest and ts
429
433
  //-----------------------------------------------------------------------------
430
434
  const ccxt = Object.assign({ version, Exchange, Precise, 'exchanges': Object.keys(exchanges), 'pro': pro }, exchanges, functions, errors);
431
- export { version, Exchange, exchanges, pro, Precise, functions, errors, 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, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbns, bitcoincom, bitfinex, bitfinex1, 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, coincatch, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, defx, delta, deribit, digifinex, ellipx, exmo, fmfwio, gate, gateio, gemini, hashkey, hitbtc, 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, oxfun, p2b, paradex, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, vertex, wavesexchange, wazirx, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
435
+ export { version, Exchange, exchanges, pro, Precise, functions, errors, 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, ace, alpaca, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit2c, bitbank, bitbns, bitcoincom, bitfinex, bitfinex1, 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, coincatch, coincheck, coinex, coinlist, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, currencycom, defx, delta, deribit, digifinex, ellipx, exmo, fmfwio, gate, gateio, gemini, hashkey, hitbtc, hollaex, htx, huobi, huobijp, hyperliquid, idex, independentreserve, indodax, kraken, krakenfutures, kucoin, kucoinfutures, kuna, latoken, lbank, luno, lykke, mercado, mexc, myokx, ndax, novadax, oceanex, okcoin, okx, onetrading, oxfun, p2b, paradex, paymium, phemex, poloniex, poloniexfutures, probit, timex, tokocrypto, tradeogre, upbit, vertex, wavesexchange, wazirx, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
432
436
  export default ccxt;
433
437
  //-----------------------------------------------------------------------------
@@ -761,6 +761,7 @@ interface Exchange {
761
761
  papiDeleteMarginAllOpenOrders(params?: {}): Promise<implicitReturnType>;
762
762
  papiDeleteMarginOrderList(params?: {}): Promise<implicitReturnType>;
763
763
  papiDeleteListenKey(params?: {}): Promise<implicitReturnType>;
764
+ papiV2GetUmAccount(params?: {}): Promise<implicitReturnType>;
764
765
  }
765
766
  declare abstract class Exchange extends _Exchange {
766
767
  }
@@ -761,6 +761,7 @@ interface binance {
761
761
  papiDeleteMarginAllOpenOrders(params?: {}): Promise<implicitReturnType>;
762
762
  papiDeleteMarginOrderList(params?: {}): Promise<implicitReturnType>;
763
763
  papiDeleteListenKey(params?: {}): Promise<implicitReturnType>;
764
+ papiV2GetUmAccount(params?: {}): Promise<implicitReturnType>;
764
765
  }
765
766
  declare abstract class binance extends _binance {
766
767
  }
@@ -813,6 +813,7 @@ interface binance {
813
813
  papiDeleteMarginAllOpenOrders(params?: {}): Promise<implicitReturnType>;
814
814
  papiDeleteMarginOrderList(params?: {}): Promise<implicitReturnType>;
815
815
  papiDeleteListenKey(params?: {}): Promise<implicitReturnType>;
816
+ papiV2GetUmAccount(params?: {}): Promise<implicitReturnType>;
816
817
  }
817
818
  declare abstract class binance extends _binance {
818
819
  }
@@ -761,6 +761,7 @@ interface binance {
761
761
  papiDeleteMarginAllOpenOrders(params?: {}): Promise<implicitReturnType>;
762
762
  papiDeleteMarginOrderList(params?: {}): Promise<implicitReturnType>;
763
763
  papiDeleteListenKey(params?: {}): Promise<implicitReturnType>;
764
+ papiV2GetUmAccount(params?: {}): Promise<implicitReturnType>;
764
765
  }
765
766
  declare abstract class binance extends _binance {
766
767
  }
@@ -138,7 +138,11 @@ interface Exchange {
138
138
  subAccountV1PrivatePostUpdateStatus(params?: {}): Promise<implicitReturnType>;
139
139
  accountV1PrivateGetUid(params?: {}): Promise<implicitReturnType>;
140
140
  accountV1PrivateGetApiKeyQuery(params?: {}): Promise<implicitReturnType>;
141
+ accountV1PrivateGetAccountApiPermissions(params?: {}): Promise<implicitReturnType>;
141
142
  accountV1PrivatePostInnerTransferAuthorizeSubAccount(params?: {}): Promise<implicitReturnType>;
143
+ accountTransferV1PrivateGetSubAccountAssetTransferHistory(params?: {}): Promise<implicitReturnType>;
144
+ accountTransferV1PrivatePostSubAccountTransferAssetSupportCoins(params?: {}): Promise<implicitReturnType>;
145
+ accountTransferV1PrivatePostSubAccountTransferAsset(params?: {}): Promise<implicitReturnType>;
142
146
  userAuthPrivatePostUserDataStream(params?: {}): Promise<implicitReturnType>;
143
147
  userAuthPrivatePutUserDataStream(params?: {}): Promise<implicitReturnType>;
144
148
  userAuthPrivateDeleteUserDataStream(params?: {}): Promise<implicitReturnType>;
@@ -24,6 +24,7 @@ interface Exchange {
24
24
  privatePostUserTransactions(params?: {}): Promise<implicitReturnType>;
25
25
  privatePostUserTransactionsPair(params?: {}): Promise<implicitReturnType>;
26
26
  privatePostCryptoTransactions(params?: {}): Promise<implicitReturnType>;
27
+ privatePostOpenOrder(params?: {}): Promise<implicitReturnType>;
27
28
  privatePostOpenOrdersAll(params?: {}): Promise<implicitReturnType>;
28
29
  privatePostOpenOrdersPair(params?: {}): Promise<implicitReturnType>;
29
30
  privatePostOrderStatus(params?: {}): Promise<implicitReturnType>;