ccxt 4.5.39 → 4.5.41

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 (138) hide show
  1. package/README.md +6 -5
  2. package/dist/ccxt.browser.min.js +18 -18
  3. package/dist/cjs/ccxt.js +6 -1
  4. package/dist/cjs/src/abstract/lighter.js +11 -0
  5. package/dist/cjs/src/ascendex.js +73 -1
  6. package/dist/cjs/src/base/Exchange.js +211 -22
  7. package/dist/cjs/src/base/functions/generic.js +1 -0
  8. package/dist/cjs/src/base/functions/io.js +160 -0
  9. package/dist/cjs/src/base/functions.js +6 -0
  10. package/dist/cjs/src/base/ws/Client.js +1 -0
  11. package/dist/cjs/src/base/ws/WsClient.js +1 -0
  12. package/dist/cjs/src/binance.js +143 -0
  13. package/dist/cjs/src/bingx.js +150 -123
  14. package/dist/cjs/src/bitmart.js +20 -6
  15. package/dist/cjs/src/bitmex.js +436 -0
  16. package/dist/cjs/src/blofin.js +86 -1
  17. package/dist/cjs/src/bybit.js +135 -0
  18. package/dist/cjs/src/coinspot.js +7 -2
  19. package/dist/cjs/src/delta.js +367 -0
  20. package/dist/cjs/src/gate.js +11 -4
  21. package/dist/cjs/src/gemini.js +76 -1
  22. package/dist/cjs/src/htx.js +266 -3
  23. package/dist/cjs/src/hyperliquid.js +20 -7
  24. package/dist/cjs/src/independentreserve.js +7 -7
  25. package/dist/cjs/src/kraken.js +1 -1
  26. package/dist/cjs/src/krakenfutures.js +96 -5
  27. package/dist/cjs/src/kucoin.js +3 -3
  28. package/dist/cjs/src/kucoinfutures.js +121 -0
  29. package/dist/cjs/src/lighter.js +2931 -0
  30. package/dist/cjs/src/mexc.js +9 -2
  31. package/dist/cjs/src/phemex.js +359 -0
  32. package/dist/cjs/src/poloniex.js +5 -0
  33. package/dist/cjs/src/pro/binance.js +2 -2
  34. package/dist/cjs/src/pro/bingx.js +248 -35
  35. package/dist/cjs/src/pro/bitget.js +49 -90
  36. package/dist/cjs/src/pro/bitmart.js +68 -0
  37. package/dist/cjs/src/pro/blofin.js +52 -1
  38. package/dist/cjs/src/pro/coinbaseinternational.js +5 -2
  39. package/dist/cjs/src/pro/defx.js +1 -1
  40. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  41. package/dist/cjs/src/pro/lighter.js +787 -0
  42. package/dist/cjs/src/pro/mexc.js +73 -1
  43. package/dist/cjs/src/pro/okx.js +7 -4
  44. package/dist/cjs/src/pro/paradex.js +138 -1
  45. package/dist/cjs/src/pro/woo.js +43 -0
  46. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +1 -0
  47. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -0
  48. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +1 -0
  49. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +1 -0
  50. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +1 -0
  51. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +1 -0
  52. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +1 -0
  53. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +1 -0
  54. package/dist/cjs/src/static_dependencies/ethers/fragments.js +1 -0
  55. package/dist/cjs/src/static_dependencies/ethers/index.js +1 -0
  56. package/dist/cjs/src/static_dependencies/ethers/interface.js +1 -0
  57. package/dist/cjs/src/static_dependencies/ethers/typed.js +1 -0
  58. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +1 -0
  59. package/dist/cjs/src/whitebit.js +118 -16
  60. package/dist/cjs/src/woo.js +103 -3
  61. package/js/ccxt.d.ts +9 -3
  62. package/js/ccxt.js +6 -2
  63. package/js/src/abstract/gemini.d.ts +27 -0
  64. package/js/src/abstract/lighter.d.ts +53 -0
  65. package/js/src/abstract/lighter.js +5 -0
  66. package/js/src/ascendex.d.ts +12 -1
  67. package/js/src/ascendex.js +73 -1
  68. package/js/src/base/Exchange.d.ts +29 -14
  69. package/js/src/base/Exchange.js +216 -23
  70. package/js/src/base/functions/generic.js +1 -0
  71. package/js/src/base/functions/io.d.ts +32 -0
  72. package/js/src/base/functions/io.js +131 -0
  73. package/js/src/base/functions.d.ts +1 -0
  74. package/js/src/base/functions.js +1 -0
  75. package/js/src/base/types.d.ts +9 -0
  76. package/js/src/binance.d.ts +27 -1
  77. package/js/src/binance.js +143 -0
  78. package/js/src/bingx.d.ts +113 -108
  79. package/js/src/bingx.js +150 -123
  80. package/js/src/bitmart.js +20 -6
  81. package/js/src/bitmex.d.ts +50 -1
  82. package/js/src/bitmex.js +436 -0
  83. package/js/src/blofin.d.ts +12 -1
  84. package/js/src/blofin.js +86 -1
  85. package/js/src/bybit.d.ts +12 -1
  86. package/js/src/bybit.js +135 -0
  87. package/js/src/coinspot.js +7 -2
  88. package/js/src/delta.d.ts +12 -1
  89. package/js/src/delta.js +367 -0
  90. package/js/src/gate.d.ts +1 -0
  91. package/js/src/gate.js +11 -4
  92. package/js/src/gemini.d.ts +11 -0
  93. package/js/src/gemini.js +76 -1
  94. package/js/src/htx.d.ts +15 -1
  95. package/js/src/htx.js +266 -3
  96. package/js/src/hyperliquid.js +20 -7
  97. package/js/src/independentreserve.js +7 -7
  98. package/js/src/kraken.js +1 -1
  99. package/js/src/krakenfutures.d.ts +1 -1
  100. package/js/src/krakenfutures.js +96 -5
  101. package/js/src/kucoin.d.ts +3 -3
  102. package/js/src/kucoin.js +3 -3
  103. package/js/src/kucoinfutures.d.ts +12 -1
  104. package/js/src/kucoinfutures.js +121 -0
  105. package/js/src/lighter.d.ts +424 -0
  106. package/js/src/lighter.js +2924 -0
  107. package/js/src/mexc.js +9 -2
  108. package/js/src/phemex.d.ts +16 -1
  109. package/js/src/phemex.js +359 -0
  110. package/js/src/poloniex.js +5 -0
  111. package/js/src/pro/binance.js +2 -2
  112. package/js/src/pro/bingx.d.ts +50 -34
  113. package/js/src/pro/bingx.js +249 -36
  114. package/js/src/pro/bitget.d.ts +6 -6
  115. package/js/src/pro/bitget.js +49 -90
  116. package/js/src/pro/bitmart.d.ts +22 -1
  117. package/js/src/pro/bitmart.js +69 -1
  118. package/js/src/pro/blofin.d.ts +12 -1
  119. package/js/src/pro/blofin.js +52 -1
  120. package/js/src/pro/coinbaseinternational.d.ts +2 -2
  121. package/js/src/pro/coinbaseinternational.js +6 -3
  122. package/js/src/pro/defx.js +1 -1
  123. package/js/src/pro/kucoinfutures.js +1 -1
  124. package/js/src/pro/lighter.d.ts +161 -0
  125. package/js/src/pro/lighter.js +780 -0
  126. package/js/src/pro/mexc.d.ts +22 -1
  127. package/js/src/pro/mexc.js +73 -1
  128. package/js/src/pro/okx.d.ts +4 -4
  129. package/js/src/pro/okx.js +7 -4
  130. package/js/src/pro/paradex.d.ts +23 -1
  131. package/js/src/pro/paradex.js +138 -1
  132. package/js/src/pro/woo.d.ts +12 -1
  133. package/js/src/pro/woo.js +43 -0
  134. package/js/src/whitebit.d.ts +2 -1
  135. package/js/src/whitebit.js +118 -16
  136. package/js/src/woo.d.ts +12 -1
  137. package/js/src/woo.js +103 -3
  138. package/package.json +1 -1
package/js/src/blofin.js CHANGED
@@ -99,8 +99,10 @@ export default class blofin extends Exchange {
99
99
  'fetchOrders': false,
100
100
  'fetchOrderTrades': true,
101
101
  'fetchPosition': true,
102
+ 'fetchPositionADLRank': true,
102
103
  'fetchPositionMode': true,
103
104
  'fetchPositions': true,
105
+ 'fetchPositionsADLRank': true,
104
106
  'fetchPositionsForSymbol': false,
105
107
  'fetchPositionsRisk': false,
106
108
  'fetchPremiumIndexOHLCV': false,
@@ -1743,7 +1745,7 @@ export default class blofin extends Exchange {
1743
1745
  // {
1744
1746
  // "currency": "USDT",
1745
1747
  // "chain": "TRC20",
1746
- // "address": "TGfJLtnsh3B9EqekFEBZ1nR14QanBUf5Bi",
1748
+ // "address": "TGfJLtnsh3B9EqekFEBZ1nR14QanBUf5Be",
1747
1749
  // "txId": "892f4e0c32268b29b2e541ef30d32a30bbf10f902adcc4b1428319ed7c3758fd",
1748
1750
  // "type": "0",
1749
1751
  // "amount": "86.975843",
@@ -2496,6 +2498,89 @@ export default class blofin extends Exchange {
2496
2498
  //
2497
2499
  return await this.privatePostAccountSetPositionMode(this.extend(request, params));
2498
2500
  }
2501
+ /**
2502
+ * @method
2503
+ * @name blofin#fetchPositionsADLRank
2504
+ * @description fetches the auto deleveraging rank and risk percentage for a list of symbols
2505
+ * @see https://docs.blofin.com/index.html#get-positions
2506
+ * @param {string[]} [symbols] a list of unified market symbols
2507
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
2508
+ * @returns {object[]} an array of [auto de leverage structures]{@link https://docs.ccxt.com/?id=auto-de-leverage-structure}
2509
+ */
2510
+ async fetchPositionsADLRank(symbols = undefined, params = {}) {
2511
+ await this.loadMarkets();
2512
+ symbols = this.marketSymbols(symbols, undefined, true, true, true);
2513
+ const response = await this.privateGetAccountPositions(params);
2514
+ //
2515
+ // {
2516
+ // "code": "0",
2517
+ // "msg": "success",
2518
+ // "data": [
2519
+ // {
2520
+ // "positionId": "756786",
2521
+ // "instId": "BTC-USDT",
2522
+ // "instType": "SWAP",
2523
+ // "marginMode": "cross",
2524
+ // "positionSide": "net",
2525
+ // "adl": "1",
2526
+ // "positions": "0.1",
2527
+ // "availablePositions": "0.1",
2528
+ // "averagePrice": "88564.9",
2529
+ // "markPrice": "88546.3696492756",
2530
+ // "marginRatio": "822.305183525552961566",
2531
+ // "liquidationPrice": "",
2532
+ // "unrealizedPnl": "-0.00185303507244",
2533
+ // "unrealizedPnlRatio": "-0.000627687178252332",
2534
+ // "initialMargin": "2.951545654975853333",
2535
+ // "maintenanceMargin": "0.02656391089478268",
2536
+ // "createTime": "1767169876207",
2537
+ // "updateTime": "1767169876207",
2538
+ // "leverage": "3"
2539
+ // }
2540
+ // ]
2541
+ // }
2542
+ //
2543
+ const data = this.safeList(response, 'data', []);
2544
+ return this.parseADLRanks(data, symbols);
2545
+ }
2546
+ parseADLRank(info, market = undefined) {
2547
+ //
2548
+ // fetchPositionsADLRank
2549
+ //
2550
+ // {
2551
+ // "positionId": "756786",
2552
+ // "instId": "BTC-USDT",
2553
+ // "instType": "SWAP",
2554
+ // "marginMode": "cross",
2555
+ // "positionSide": "net",
2556
+ // "adl": "1",
2557
+ // "positions": "0.1",
2558
+ // "availablePositions": "0.1",
2559
+ // "averagePrice": "88564.9",
2560
+ // "markPrice": "88546.3696492756",
2561
+ // "marginRatio": "822.305183525552961566",
2562
+ // "liquidationPrice": "",
2563
+ // "unrealizedPnl": "-0.00185303507244",
2564
+ // "unrealizedPnlRatio": "-0.000627687178252332",
2565
+ // "initialMargin": "2.951545654975853333",
2566
+ // "maintenanceMargin": "0.02656391089478268",
2567
+ // "createTime": "1767169876207",
2568
+ // "updateTime": "1767169876207",
2569
+ // "leverage": "3"
2570
+ // }
2571
+ //
2572
+ const marketId = this.safeString(info, 'instId');
2573
+ const timestamp = this.safeIntegerOmitZero(info, 'createTime');
2574
+ return {
2575
+ 'info': info,
2576
+ 'symbol': this.safeSymbol(marketId, market, undefined, 'contract'),
2577
+ 'rank': this.safeInteger(info, 'adl'),
2578
+ 'rating': undefined,
2579
+ 'percentage': undefined,
2580
+ 'timestamp': timestamp,
2581
+ 'datetime': this.iso8601(timestamp),
2582
+ };
2583
+ }
2499
2584
  handleErrors(httpCode, reason, url, method, headers, body, response, requestHeaders, requestBody) {
2500
2585
  if (response === undefined) {
2501
2586
  return undefined; // fallback to default error handler
package/js/src/bybit.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/bybit.js';
2
- import type { Int, OrderSide, OrderType, Trade, Order, OHLCV, FundingRateHistory, OpenInterest, OrderRequest, Balances, Str, Transaction, Ticker, OrderBook, Tickers, Greeks, Strings, Market, Currency, MarketInterface, TransferEntry, Liquidation, Leverage, Num, FundingHistory, Option, OptionChain, TradingFeeInterface, Currencies, TradingFees, CancellationRequest, Position, CrossBorrowRate, Dict, LeverageTier, LeverageTiers, int, LedgerEntry, Conversion, FundingRate, FundingRates, DepositAddress, LongShortRatio, BorrowInterest, MarginMode } from './base/types.js';
2
+ import type { Int, OrderSide, OrderType, Trade, Order, OHLCV, FundingRateHistory, OpenInterest, OrderRequest, Balances, Str, Transaction, Ticker, OrderBook, Tickers, Greeks, Strings, Market, Currency, MarketInterface, TransferEntry, Liquidation, Leverage, Num, FundingHistory, Option, OptionChain, TradingFeeInterface, Currencies, TradingFees, CancellationRequest, Position, CrossBorrowRate, Dict, LeverageTier, LeverageTiers, int, LedgerEntry, Conversion, FundingRate, FundingRates, DepositAddress, LongShortRatio, BorrowInterest, MarginMode, ADL } from './base/types.js';
3
3
  /**
4
4
  * @class bybit
5
5
  * @augments Exchange
@@ -1099,6 +1099,17 @@ export default class bybit extends Exchange {
1099
1099
  */
1100
1100
  fetchLongShortRatioHistory(symbol?: Str, timeframe?: Str, since?: Int, limit?: Int, params?: {}): Promise<LongShortRatio[]>;
1101
1101
  parseLongShortRatio(info: Dict, market?: Market): LongShortRatio;
1102
+ /**
1103
+ * @method
1104
+ * @name bybit#fetchPositionsADLRank
1105
+ * @description fetches the auto deleveraging rank and risk percentage for a list of symbols
1106
+ * @see https://bybit-exchange.github.io/docs/v5/position#response-parameters
1107
+ * @param {string[]} [symbols] list of unified market symbols
1108
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
1109
+ * @returns {object[]} an array of [auto de leverage structures]{@link https://docs.ccxt.com/?id=auto-de-leverage-structure}
1110
+ */
1111
+ fetchPositionsADLRank(symbols?: Strings, params?: {}): Promise<ADL[]>;
1112
+ parseADLRank(info: Dict, market?: Market): ADL;
1102
1113
  /**
1103
1114
  * @method
1104
1115
  * @name bybit#fetchMarginMode
package/js/src/bybit.js CHANGED
@@ -111,8 +111,10 @@ export default class bybit extends Exchange {
111
111
  'fetchOrders': false,
112
112
  'fetchOrderTrades': true,
113
113
  'fetchPosition': true,
114
+ 'fetchPositionADLRank': true,
114
115
  'fetchPositionHistory': 'emulated',
115
116
  'fetchPositions': true,
117
+ 'fetchPositionsADLRank': true,
116
118
  'fetchPositionsHistory': true,
117
119
  'fetchPremiumIndexOHLCV': true,
118
120
  'fetchSettlementHistory': true,
@@ -9433,6 +9435,139 @@ export default class bybit extends Exchange {
9433
9435
  'longShortRatio': this.parseToNumeric(Precise.stringDiv(longString, shortString)),
9434
9436
  };
9435
9437
  }
9438
+ /**
9439
+ * @method
9440
+ * @name bybit#fetchPositionsADLRank
9441
+ * @description fetches the auto deleveraging rank and risk percentage for a list of symbols
9442
+ * @see https://bybit-exchange.github.io/docs/v5/position#response-parameters
9443
+ * @param {string[]} [symbols] list of unified market symbols
9444
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
9445
+ * @returns {object[]} an array of [auto de leverage structures]{@link https://docs.ccxt.com/?id=auto-de-leverage-structure}
9446
+ */
9447
+ async fetchPositionsADLRank(symbols = undefined, params = {}) {
9448
+ if (symbols === undefined) {
9449
+ throw new ArgumentsRequired(this.id + ' fetchPositionsADLRank() requires a symbols argument');
9450
+ }
9451
+ await this.loadMarkets();
9452
+ symbols = this.marketSymbols(symbols, undefined, true, true, true);
9453
+ const market = this.getMarketFromSymbols(symbols);
9454
+ const request = {};
9455
+ if (market !== undefined) {
9456
+ request['symbol'] = market['id'];
9457
+ }
9458
+ let type = undefined;
9459
+ [type, params] = this.getBybitType('fetchPositionsADLRank', market, params);
9460
+ request['category'] = type;
9461
+ const response = await this.privateGetV5PositionList(this.extend(request, params));
9462
+ //
9463
+ // {
9464
+ // "retCode": 0,
9465
+ // "retMsg": "OK",
9466
+ // "result": {
9467
+ // "nextPageCursor": "BTCUSDT%2C1767085496112%2C0",
9468
+ // "category": "linear",
9469
+ // "list": [
9470
+ // {
9471
+ // "symbol": "BTCUSDT",
9472
+ // "leverage": "",
9473
+ // "autoAddMargin": 0,
9474
+ // "avgPrice": "177489.6",
9475
+ // "liqPrice": "",
9476
+ // "riskLimitValue": "",
9477
+ // "takeProfit": "",
9478
+ // "positionValue": "1774.896",
9479
+ // "isReduceOnly": false,
9480
+ // "positionIMByMp": "",
9481
+ // "tpslMode": "Full",
9482
+ // "riskId": 0,
9483
+ // "trailingStop": "0",
9484
+ // "unrealisedPnl": "-3.016",
9485
+ // "markPrice": "177188",
9486
+ // "adlRankIndicator": 2,
9487
+ // "cumRealisedPnl": "-9782.391468",
9488
+ // "positionMM": "",
9489
+ // "createdTime": "1699928551230",
9490
+ // "positionIdx": 0,
9491
+ // "positionIM": "",
9492
+ // "positionMMByMp": "",
9493
+ // "seq": 9558506126,
9494
+ // "updatedTime": "1767085496112",
9495
+ // "side": "Buy",
9496
+ // "bustPrice": "",
9497
+ // "positionBalance": "",
9498
+ // "leverageSysUpdatedTime": "",
9499
+ // "curRealisedPnl": "-0.9761928",
9500
+ // "size": "0.01",
9501
+ // "positionStatus": "Normal",
9502
+ // "mmrSysUpdatedTime": "",
9503
+ // "stopLoss": "",
9504
+ // "tradeMode": 0,
9505
+ // "sessionAvgPrice": ""
9506
+ // }
9507
+ // ]
9508
+ // },
9509
+ // "retExtInfo": {},
9510
+ // "time": 1767085741416
9511
+ // }
9512
+ //
9513
+ const result = this.safeDict(response, 'result', {});
9514
+ const ranks = this.safeList(result, 'list', []);
9515
+ return this.parseADLRanks(ranks, symbols);
9516
+ }
9517
+ parseADLRank(info, market = undefined) {
9518
+ //
9519
+ // fetchPositionsADLRank
9520
+ //
9521
+ // {
9522
+ // "symbol": "BTCUSDT",
9523
+ // "leverage": "",
9524
+ // "autoAddMargin": 0,
9525
+ // "avgPrice": "177489.6",
9526
+ // "liqPrice": "",
9527
+ // "riskLimitValue": "",
9528
+ // "takeProfit": "",
9529
+ // "positionValue": "1774.896",
9530
+ // "isReduceOnly": false,
9531
+ // "positionIMByMp": "",
9532
+ // "tpslMode": "Full",
9533
+ // "riskId": 0,
9534
+ // "trailingStop": "0",
9535
+ // "unrealisedPnl": "-3.016",
9536
+ // "markPrice": "177188",
9537
+ // "adlRankIndicator": 2,
9538
+ // "cumRealisedPnl": "-9782.391468",
9539
+ // "positionMM": "",
9540
+ // "createdTime": "1699928551230",
9541
+ // "positionIdx": 0,
9542
+ // "positionIM": "",
9543
+ // "positionMMByMp": "",
9544
+ // "seq": 9558506126,
9545
+ // "updatedTime": "1767085496112",
9546
+ // "side": "Buy",
9547
+ // "bustPrice": "",
9548
+ // "positionBalance": "",
9549
+ // "leverageSysUpdatedTime": "",
9550
+ // "curRealisedPnl": "-0.9761928",
9551
+ // "size": "0.01",
9552
+ // "positionStatus": "Normal",
9553
+ // "mmrSysUpdatedTime": "",
9554
+ // "stopLoss": "",
9555
+ // "tradeMode": 0,
9556
+ // "sessionAvgPrice": ""
9557
+ // }
9558
+ //
9559
+ const marketId = this.safeString(info, 'symbol');
9560
+ const timestamp = this.safeInteger(info, 'updatedTime');
9561
+ return {
9562
+ 'info': info,
9563
+ 'symbol': this.safeSymbol(marketId, market, undefined, 'contract'),
9564
+ 'rank': this.safeInteger(info, 'adlRankIndicator'),
9565
+ 'rating': undefined,
9566
+ 'percentage': undefined,
9567
+ 'timestamp': timestamp,
9568
+ 'datetime': this.iso8601(timestamp),
9569
+ };
9570
+ }
9436
9571
  /**
9437
9572
  * @method
9438
9573
  * @name bybit#fetchMarginMode
@@ -701,8 +701,13 @@ export default class coinspot extends Exchange {
701
701
  });
702
702
  }
703
703
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
704
- const url = this.urls['api'][api] + '/' + path;
705
- if (api === 'private') {
704
+ const isVersionedApi = Array.isArray(api);
705
+ const version = isVersionedApi ? api[0] : undefined;
706
+ const accessType = isVersionedApi ? api[1] : api;
707
+ const endpoint = '/' + this.implodeParams(path, params);
708
+ const fullPath = (version !== undefined) ? '/' + version + endpoint : endpoint;
709
+ const url = this.urls['api'][accessType] + fullPath;
710
+ if (accessType === 'private') {
706
711
  this.checkRequiredCredentials();
707
712
  const nonce = this.nonce();
708
713
  body = this.json(this.extend({ 'nonce': nonce }, params));
package/js/src/delta.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/delta.js';
2
- import type { Balances, Currency, Greeks, Int, Market, MarketInterface, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Position, Leverage, MarginMode, Num, Option, MarginModification, Currencies, Dict, int, LedgerEntry, FundingRate, FundingRates, DepositAddress } from './base/types.js';
2
+ import type { Balances, Currency, Greeks, Int, Market, MarketInterface, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Position, Leverage, MarginMode, Num, Option, MarginModification, Currencies, Dict, int, LedgerEntry, FundingRate, FundingRates, DepositAddress, ADL } from './base/types.js';
3
3
  /**
4
4
  * @class delta
5
5
  * @augments Exchange
@@ -410,6 +410,17 @@ export default class delta extends Exchange {
410
410
  */
411
411
  fetchOption(symbol: string, params?: {}): Promise<Option>;
412
412
  parseOption(chain: Dict, currency?: Currency, market?: Market): Option;
413
+ /**
414
+ * @method
415
+ * @name delta#fetchPositionsADLRank
416
+ * @description fetches the auto deleveraging rank and risk percentage for a list of symbols
417
+ * @see https://docs.delta.exchange/#get-margined-positions
418
+ * @param {string[]} [symbols] a list of unified market symbols
419
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
420
+ * @returns {object[]} an array of [auto de leverage structures]{@link https://docs.ccxt.com/?id=auto-de-leverage-structure}
421
+ */
422
+ fetchPositionsADLRank(symbols?: Strings, params?: {}): Promise<ADL[]>;
423
+ parseADLRank(info: Dict, market?: Market): ADL;
413
424
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
414
425
  url: string;
415
426
  method: string;