@lifi/perps-sdk-provider-hyperliquid 24.0.0 → 26.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/accountSummary.d.ts.map +1 -1
- package/dist/cjs/accountSummary.js +8 -14
- package/dist/cjs/accountSummary.js.map +1 -1
- package/dist/cjs/services/getAccount.d.ts.map +1 -1
- package/dist/cjs/services/getAccount.js +19 -16
- package/dist/cjs/services/getAccount.js.map +1 -1
- package/dist/cjs/services/getFills.d.ts.map +1 -1
- package/dist/cjs/services/getFills.js +2 -1
- package/dist/cjs/services/getFills.js.map +1 -1
- package/dist/cjs/services/getMarketSettings.d.ts.map +1 -1
- package/dist/cjs/services/getMarketSettings.js +1 -1
- package/dist/cjs/services/getMarketSettings.js.map +1 -1
- package/dist/cjs/services/getOrder.d.ts.map +1 -1
- package/dist/cjs/services/getOrder.js +14 -4
- package/dist/cjs/services/getOrder.js.map +1 -1
- package/dist/cjs/services/getOrders.d.ts.map +1 -1
- package/dist/cjs/services/getOrders.js +3 -1
- package/dist/cjs/services/getOrders.js.map +1 -1
- package/dist/cjs/services/getPortfolioHistory.d.ts.map +1 -1
- package/dist/cjs/services/getPortfolioHistory.js +15 -6
- package/dist/cjs/services/getPortfolioHistory.js.map +1 -1
- package/dist/cjs/services/getPositions.d.ts.map +1 -1
- package/dist/cjs/services/getPositions.js +4 -1
- package/dist/cjs/services/getPositions.js.map +1 -1
- package/dist/cjs/types/ws.d.ts +3 -2
- package/dist/cjs/types/ws.d.ts.map +1 -1
- package/dist/cjs/utils/liquidation.d.ts +1 -1
- package/dist/cjs/utils/liquidation.d.ts.map +1 -1
- package/dist/cjs/utils/liquidation.js +3 -4
- package/dist/cjs/utils/liquidation.js.map +1 -1
- package/dist/cjs/utils/mapActivity.d.ts.map +1 -1
- package/dist/cjs/utils/mapActivity.js +32 -23
- package/dist/cjs/utils/mapActivity.js.map +1 -1
- package/dist/cjs/utils/mapFill.d.ts +1 -1
- package/dist/cjs/utils/mapFill.d.ts.map +1 -1
- package/dist/cjs/utils/mapFill.js +14 -6
- package/dist/cjs/utils/mapFill.js.map +1 -1
- package/dist/cjs/utils/mapMarket.d.ts.map +1 -1
- package/dist/cjs/utils/mapMarket.js +8 -12
- package/dist/cjs/utils/mapMarket.js.map +1 -1
- package/dist/cjs/utils/mapMarketContext.d.ts.map +1 -1
- package/dist/cjs/utils/mapMarketContext.js +3 -12
- package/dist/cjs/utils/mapMarketContext.js.map +1 -1
- package/dist/cjs/utils/mapOrder.d.ts +1 -1
- package/dist/cjs/utils/mapOrder.d.ts.map +1 -1
- package/dist/cjs/utils/mapOrder.js +60 -18
- package/dist/cjs/utils/mapOrder.js.map +1 -1
- package/dist/cjs/utils/mapPosition.d.ts +1 -1
- package/dist/cjs/utils/mapPosition.d.ts.map +1 -1
- package/dist/cjs/utils/mapPosition.js +40 -14
- package/dist/cjs/utils/mapPosition.js.map +1 -1
- package/dist/cjs/utils/orderFormatting.d.ts.map +1 -1
- package/dist/cjs/utils/orderFormatting.js +4 -5
- package/dist/cjs/utils/orderFormatting.js.map +1 -1
- package/dist/cjs/utils/rowTimestamp.d.ts +2 -0
- package/dist/cjs/utils/rowTimestamp.d.ts.map +1 -0
- package/dist/cjs/utils/rowTimestamp.js +14 -0
- package/dist/cjs/utils/rowTimestamp.js.map +1 -0
- package/dist/cjs/utils/spotBalance.d.ts +3 -3
- package/dist/cjs/utils/spotBalance.d.ts.map +1 -1
- package/dist/cjs/utils/spotBalance.js +6 -5
- package/dist/cjs/utils/spotBalance.js.map +1 -1
- package/dist/cjs/utils/spotCollateral.d.ts.map +1 -1
- package/dist/cjs/utils/spotCollateral.js +3 -2
- package/dist/cjs/utils/spotCollateral.js.map +1 -1
- package/dist/cjs/utils/transferMargin.d.ts.map +1 -1
- package/dist/cjs/utils/transferMargin.js +15 -23
- package/dist/cjs/utils/transferMargin.js.map +1 -1
- package/dist/cjs/utils/venueTotals.d.ts +5 -5
- package/dist/cjs/utils/venueTotals.d.ts.map +1 -1
- package/dist/cjs/utils/venueTotals.js +10 -11
- package/dist/cjs/utils/venueTotals.js.map +1 -1
- package/dist/cjs/utils/withdrawableBalances.d.ts.map +1 -1
- package/dist/cjs/utils/withdrawableBalances.js +10 -10
- package/dist/cjs/utils/withdrawableBalances.js.map +1 -1
- package/dist/cjs/websocket/HyperliquidWsProvider.d.ts.map +1 -1
- package/dist/cjs/websocket/HyperliquidWsProvider.js +109 -89
- package/dist/cjs/websocket/HyperliquidWsProvider.js.map +1 -1
- package/dist/esm/accountSummary.d.ts +2 -1
- package/dist/esm/accountSummary.d.ts.map +1 -1
- package/dist/esm/accountSummary.js +11 -13
- package/dist/esm/accountSummary.js.map +1 -1
- package/dist/esm/services/getAccount.d.ts.map +1 -1
- package/dist/esm/services/getAccount.js +24 -21
- package/dist/esm/services/getAccount.js.map +1 -1
- package/dist/esm/services/getFills.d.ts.map +1 -1
- package/dist/esm/services/getFills.js +2 -1
- package/dist/esm/services/getFills.js.map +1 -1
- package/dist/esm/services/getMarketSettings.d.ts.map +1 -1
- package/dist/esm/services/getMarketSettings.js +2 -2
- package/dist/esm/services/getMarketSettings.js.map +1 -1
- package/dist/esm/services/getOrder.d.ts.map +1 -1
- package/dist/esm/services/getOrder.js +14 -4
- package/dist/esm/services/getOrder.js.map +1 -1
- package/dist/esm/services/getOrders.d.ts.map +1 -1
- package/dist/esm/services/getOrders.js +5 -2
- package/dist/esm/services/getOrders.js.map +1 -1
- package/dist/esm/services/getPortfolioHistory.d.ts.map +1 -1
- package/dist/esm/services/getPortfolioHistory.js +17 -7
- package/dist/esm/services/getPortfolioHistory.js.map +1 -1
- package/dist/esm/services/getPositions.d.ts.map +1 -1
- package/dist/esm/services/getPositions.js +4 -1
- package/dist/esm/services/getPositions.js.map +1 -1
- package/dist/esm/services/getWithdrawableBalances.d.ts +1 -1
- package/dist/esm/services/getWithdrawableBalances.js +1 -1
- package/dist/esm/types/ws.d.ts +3 -2
- package/dist/esm/types/ws.d.ts.map +1 -1
- package/dist/esm/utils/liquidation.d.ts +1 -1
- package/dist/esm/utils/liquidation.d.ts.map +1 -1
- package/dist/esm/utils/liquidation.js +4 -5
- package/dist/esm/utils/liquidation.js.map +1 -1
- package/dist/esm/utils/mapActivity.d.ts +2 -1
- package/dist/esm/utils/mapActivity.d.ts.map +1 -1
- package/dist/esm/utils/mapActivity.js +35 -22
- package/dist/esm/utils/mapActivity.js.map +1 -1
- package/dist/esm/utils/mapFill.d.ts +3 -2
- package/dist/esm/utils/mapFill.d.ts.map +1 -1
- package/dist/esm/utils/mapFill.js +18 -9
- package/dist/esm/utils/mapFill.js.map +1 -1
- package/dist/esm/utils/mapMarket.d.ts +2 -2
- package/dist/esm/utils/mapMarket.d.ts.map +1 -1
- package/dist/esm/utils/mapMarket.js +10 -11
- package/dist/esm/utils/mapMarket.js.map +1 -1
- package/dist/esm/utils/mapMarketContext.d.ts.map +1 -1
- package/dist/esm/utils/mapMarketContext.js +3 -9
- package/dist/esm/utils/mapMarketContext.js.map +1 -1
- package/dist/esm/utils/mapOrder.d.ts +5 -2
- package/dist/esm/utils/mapOrder.d.ts.map +1 -1
- package/dist/esm/utils/mapOrder.js +65 -17
- package/dist/esm/utils/mapOrder.js.map +1 -1
- package/dist/esm/utils/mapPosition.d.ts +4 -2
- package/dist/esm/utils/mapPosition.d.ts.map +1 -1
- package/dist/esm/utils/mapPosition.js +43 -12
- package/dist/esm/utils/mapPosition.js.map +1 -1
- package/dist/esm/utils/orderFormatting.d.ts.map +1 -1
- package/dist/esm/utils/orderFormatting.js +6 -6
- package/dist/esm/utils/orderFormatting.js.map +1 -1
- package/dist/esm/utils/rowTimestamp.d.ts +6 -0
- package/dist/esm/utils/rowTimestamp.d.ts.map +1 -0
- package/dist/esm/utils/rowTimestamp.js +14 -0
- package/dist/esm/utils/rowTimestamp.js.map +1 -0
- package/dist/esm/utils/spotBalance.d.ts +5 -5
- package/dist/esm/utils/spotBalance.d.ts.map +1 -1
- package/dist/esm/utils/spotBalance.js +9 -8
- package/dist/esm/utils/spotBalance.js.map +1 -1
- package/dist/esm/utils/spotCollateral.d.ts.map +1 -1
- package/dist/esm/utils/spotCollateral.js +3 -2
- package/dist/esm/utils/spotCollateral.js.map +1 -1
- package/dist/esm/utils/transferMargin.d.ts +2 -1
- package/dist/esm/utils/transferMargin.d.ts.map +1 -1
- package/dist/esm/utils/transferMargin.js +18 -22
- package/dist/esm/utils/transferMargin.js.map +1 -1
- package/dist/esm/utils/venueTotals.d.ts +10 -5
- package/dist/esm/utils/venueTotals.d.ts.map +1 -1
- package/dist/esm/utils/venueTotals.js +13 -7
- package/dist/esm/utils/venueTotals.js.map +1 -1
- package/dist/esm/utils/withdrawableBalances.d.ts +6 -4
- package/dist/esm/utils/withdrawableBalances.d.ts.map +1 -1
- package/dist/esm/utils/withdrawableBalances.js +17 -15
- package/dist/esm/utils/withdrawableBalances.js.map +1 -1
- package/dist/esm/websocket/HyperliquidWsProvider.d.ts +2 -0
- package/dist/esm/websocket/HyperliquidWsProvider.d.ts.map +1 -1
- package/dist/esm/websocket/HyperliquidWsProvider.js +119 -88
- package/dist/esm/websocket/HyperliquidWsProvider.js.map +1 -1
- package/dist/types/accountSummary.d.ts +2 -1
- package/dist/types/accountSummary.d.ts.map +1 -1
- package/dist/types/services/getAccount.d.ts.map +1 -1
- package/dist/types/services/getFills.d.ts.map +1 -1
- package/dist/types/services/getMarketSettings.d.ts.map +1 -1
- package/dist/types/services/getOrder.d.ts.map +1 -1
- package/dist/types/services/getOrders.d.ts.map +1 -1
- package/dist/types/services/getPortfolioHistory.d.ts.map +1 -1
- package/dist/types/services/getPositions.d.ts.map +1 -1
- package/dist/types/services/getWithdrawableBalances.d.ts +1 -1
- package/dist/types/types/ws.d.ts +3 -2
- package/dist/types/types/ws.d.ts.map +1 -1
- package/dist/types/utils/liquidation.d.ts +1 -1
- package/dist/types/utils/liquidation.d.ts.map +1 -1
- package/dist/types/utils/mapActivity.d.ts +2 -1
- package/dist/types/utils/mapActivity.d.ts.map +1 -1
- package/dist/types/utils/mapFill.d.ts +3 -2
- package/dist/types/utils/mapFill.d.ts.map +1 -1
- package/dist/types/utils/mapMarket.d.ts +2 -2
- package/dist/types/utils/mapMarket.d.ts.map +1 -1
- package/dist/types/utils/mapMarketContext.d.ts.map +1 -1
- package/dist/types/utils/mapOrder.d.ts +5 -2
- package/dist/types/utils/mapOrder.d.ts.map +1 -1
- package/dist/types/utils/mapPosition.d.ts +4 -2
- package/dist/types/utils/mapPosition.d.ts.map +1 -1
- package/dist/types/utils/orderFormatting.d.ts.map +1 -1
- package/dist/types/utils/rowTimestamp.d.ts +6 -0
- package/dist/types/utils/rowTimestamp.d.ts.map +1 -0
- package/dist/types/utils/spotBalance.d.ts +5 -5
- package/dist/types/utils/spotBalance.d.ts.map +1 -1
- package/dist/types/utils/spotCollateral.d.ts.map +1 -1
- package/dist/types/utils/transferMargin.d.ts +2 -1
- package/dist/types/utils/transferMargin.d.ts.map +1 -1
- package/dist/types/utils/venueTotals.d.ts +10 -5
- package/dist/types/utils/venueTotals.d.ts.map +1 -1
- package/dist/types/utils/withdrawableBalances.d.ts +6 -4
- package/dist/types/utils/withdrawableBalances.d.ts.map +1 -1
- package/dist/types/websocket/HyperliquidWsProvider.d.ts +2 -0
- package/dist/types/websocket/HyperliquidWsProvider.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/HyperliquidProvider.ts +1 -1
- package/src/accountSummary.ts +35 -23
- package/src/services/getAccount.ts +50 -33
- package/src/services/getFills.ts +2 -1
- package/src/services/getMarketSettings.ts +6 -2
- package/src/services/getOrder.ts +18 -7
- package/src/services/getOrders.ts +6 -3
- package/src/services/getPortfolioHistory.ts +38 -7
- package/src/services/getPositions.ts +4 -3
- package/src/services/getWithdrawableBalances.ts +1 -1
- package/src/types/ws.ts +3 -2
- package/src/utils/liquidation.ts +14 -8
- package/src/utils/mapActivity.ts +42 -20
- package/src/utils/mapFill.ts +22 -9
- package/src/utils/mapMarket.ts +12 -10
- package/src/utils/mapMarketContext.ts +6 -8
- package/src/utils/mapOrder.ts +81 -20
- package/src/utils/mapPosition.ts +67 -13
- package/src/utils/orderFormatting.ts +9 -8
- package/src/utils/rowTimestamp.ts +15 -0
- package/src/utils/spotBalance.ts +19 -16
- package/src/utils/spotCollateral.ts +15 -2
- package/src/utils/transferMargin.ts +36 -20
- package/src/utils/venueTotals.ts +54 -13
- package/src/utils/withdrawableBalances.ts +33 -15
- package/src/websocket/HyperliquidWsProvider.ts +169 -102
- package/dist/cjs/utils/decimal.d.ts +0 -3
- package/dist/cjs/utils/decimal.d.ts.map +0 -1
- package/dist/cjs/utils/decimal.js +0 -19
- package/dist/cjs/utils/decimal.js.map +0 -1
- package/dist/esm/utils/decimal.d.ts +0 -10
- package/dist/esm/utils/decimal.d.ts.map +0 -1
- package/dist/esm/utils/decimal.js +0 -19
- package/dist/esm/utils/decimal.js.map +0 -1
- package/dist/types/utils/decimal.d.ts +0 -10
- package/dist/types/utils/decimal.d.ts.map +0 -1
- package/src/utils/decimal.ts +0 -21
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.HyperliquidWsProvider = exports.hyperliquidWsProvider = void 0;
|
|
7
4
|
const perps_sdk_1 = require("@lifi/perps-sdk");
|
|
8
5
|
const perps_types_1 = require("@lifi/perps-types");
|
|
9
|
-
const big_js_1 = __importDefault(require("big.js"));
|
|
10
6
|
const viem_1 = require("viem");
|
|
11
7
|
const constants_js_1 = require("../constants.js");
|
|
12
8
|
const getAccountExists_js_1 = require("../services/getAccountExists.js");
|
|
13
9
|
const index_js_1 = require("../types/index.js");
|
|
14
|
-
const decimal_js_1 = require("../utils/decimal.js");
|
|
15
10
|
const index_js_2 = require("../utils/index.js");
|
|
16
11
|
const HL_L2_BOOK_MAX_LEVELS_PER_SIDE = 20;
|
|
17
12
|
const normalizeHlAddress = (address) => (0, viem_1.isAddress)(address, { strict: false }) ? address.toLowerCase() : address;
|
|
@@ -333,7 +328,14 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
333
328
|
if (priceStep === undefined) {
|
|
334
329
|
return {};
|
|
335
330
|
}
|
|
336
|
-
|
|
331
|
+
const referencePrice = this.orderbookReferencePrice(marketId);
|
|
332
|
+
const referencePriceNumber = referencePrice === undefined
|
|
333
|
+
? undefined
|
|
334
|
+
: (0, perps_sdk_1.safeDecimalStringToNumber)(referencePrice);
|
|
335
|
+
if (referencePriceNumber === undefined) {
|
|
336
|
+
return {};
|
|
337
|
+
}
|
|
338
|
+
return (0, index_js_2.priceStepToAggregation)(priceStep, referencePriceNumber);
|
|
337
339
|
}
|
|
338
340
|
orderbookAggregationKey(marketId, priceStep) {
|
|
339
341
|
const aggregation = this.orderbookAggregation(marketId, priceStep);
|
|
@@ -623,23 +625,22 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
623
625
|
}
|
|
624
626
|
mergedMids() {
|
|
625
627
|
const map = new Map();
|
|
628
|
+
const setMid = (id, mid) => {
|
|
629
|
+
const decimal = mid == null ? undefined : wsFigureToDecimalString(mid);
|
|
630
|
+
if ((0, perps_sdk_1.isDecimalString)(decimal)) {
|
|
631
|
+
map.set(id, decimal);
|
|
632
|
+
}
|
|
633
|
+
};
|
|
626
634
|
for (const byMarketId of this.perpCtxBySubDex.values()) {
|
|
627
635
|
for (const [id, ctx] of Object.entries(byMarketId)) {
|
|
628
|
-
|
|
629
|
-
map.set(id, Number(mid));
|
|
636
|
+
setMid(id, ctx.midPx ?? ctx.markPx);
|
|
630
637
|
}
|
|
631
638
|
}
|
|
632
639
|
for (const [id, ctx] of Object.entries(this.spotCtxByMarketId)) {
|
|
633
|
-
|
|
634
|
-
if (mid != null) {
|
|
635
|
-
map.set(id, Number(mid));
|
|
636
|
-
}
|
|
640
|
+
setMid(id, ctx.midPx ?? ctx.markPx);
|
|
637
641
|
}
|
|
638
642
|
for (const [id, fast] of Object.entries(this.fastCtxByMarketId)) {
|
|
639
|
-
|
|
640
|
-
if (mid != null) {
|
|
641
|
-
map.set(id, Number(mid));
|
|
642
|
-
}
|
|
643
|
+
setMid(id, fast.midPx ?? fast.markPx);
|
|
643
644
|
}
|
|
644
645
|
return map;
|
|
645
646
|
}
|
|
@@ -651,21 +652,22 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
651
652
|
const book = this.latestOrderbookByMarketId.get(marketId);
|
|
652
653
|
const bid = book?.bids[0]?.price;
|
|
653
654
|
const ask = book?.asks[0]?.price;
|
|
654
|
-
if (bid
|
|
655
|
-
return
|
|
655
|
+
if (bid === undefined || ask === undefined) {
|
|
656
|
+
return undefined;
|
|
656
657
|
}
|
|
657
|
-
|
|
658
|
+
const sum = (0, perps_sdk_1.safeAddDecimalString)(bid, ask);
|
|
659
|
+
return sum === undefined ? undefined : (0, perps_sdk_1.safeDivideDecimalString)(sum, '2');
|
|
658
660
|
}
|
|
659
661
|
handleL2Book(data) {
|
|
660
662
|
const book = {
|
|
661
663
|
provider: this.providerKey,
|
|
662
664
|
marketId: data.coin,
|
|
663
665
|
bids: data.levels[0]
|
|
664
|
-
.
|
|
665
|
-
.
|
|
666
|
+
.flatMap((l) => toOrderbookLevel(l.px, l.sz))
|
|
667
|
+
.slice(0, HL_L2_BOOK_MAX_LEVELS_PER_SIDE),
|
|
666
668
|
asks: data.levels[1]
|
|
667
|
-
.
|
|
668
|
-
.
|
|
669
|
+
.flatMap((l) => toOrderbookLevel(l.px, l.sz))
|
|
670
|
+
.slice(0, HL_L2_BOOK_MAX_LEVELS_PER_SIDE),
|
|
669
671
|
timestamp: data.time,
|
|
670
672
|
};
|
|
671
673
|
this.latestOrderbookByMarketId.set(data.coin, book);
|
|
@@ -820,7 +822,8 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
820
822
|
return [];
|
|
821
823
|
}
|
|
822
824
|
const market = this.registry?.get(f.coin);
|
|
823
|
-
|
|
825
|
+
const mapped = market && (0, index_js_2.mapFill)(f, market);
|
|
826
|
+
return mapped ? [mapped] : [];
|
|
824
827
|
});
|
|
825
828
|
this.emit(`userFills:${data.user.toLowerCase()}`, {
|
|
826
829
|
channel: 'fills',
|
|
@@ -834,9 +837,10 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
834
837
|
return [];
|
|
835
838
|
}
|
|
836
839
|
const market = this.registry?.get(ap.position.coin);
|
|
837
|
-
|
|
838
|
-
?
|
|
839
|
-
:
|
|
840
|
+
const position = market === undefined
|
|
841
|
+
? undefined
|
|
842
|
+
: (0, index_js_2.mapPosition)(ap, (0, perps_sdk_1.toPerpsMarketDisplay)(market));
|
|
843
|
+
return position === undefined ? [] : [position];
|
|
840
844
|
}));
|
|
841
845
|
this.emit(`positions:${data.user.toLowerCase()}`, {
|
|
842
846
|
channel: 'positions',
|
|
@@ -844,16 +848,13 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
844
848
|
});
|
|
845
849
|
const { accountValue, marginUsed } = (0, index_js_2.perpsTotals)(data.clearinghouseStates.map(([, state]) => state));
|
|
846
850
|
const key = data.user.toLowerCase();
|
|
847
|
-
this.latestPerpsByUser.set(key, {
|
|
848
|
-
positions,
|
|
849
|
-
marginUsed: marginUsed.toFixed(),
|
|
850
|
-
});
|
|
851
|
+
this.latestPerpsByUser.set(key, { positions, marginUsed });
|
|
851
852
|
this.emitUnifiedSummary(key);
|
|
852
853
|
this.emitSummaryIfModeAllows(data.user, {
|
|
853
|
-
portfolioValue: accountValue
|
|
854
|
-
availableMargin:
|
|
855
|
-
marginUsed
|
|
856
|
-
unrealizedPnl: (0, index_js_2.sumUnrealizedPnl)(positions)
|
|
854
|
+
portfolioValue: accountValue,
|
|
855
|
+
availableMargin: (0, perps_sdk_1.subtractDecimalString)(accountValue, marginUsed),
|
|
856
|
+
marginUsed,
|
|
857
|
+
unrealizedPnl: (0, index_js_2.sumUnrealizedPnl)(positions),
|
|
857
858
|
});
|
|
858
859
|
}
|
|
859
860
|
static summaryComputableFor(mode) {
|
|
@@ -937,14 +938,14 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
937
938
|
const portfolioValue = [
|
|
938
939
|
...pipeline.spot.collateralBalances,
|
|
939
940
|
...pipeline.spot.balances,
|
|
940
|
-
].reduce((sum, balance) =>
|
|
941
|
+
].reduce((sum, balance) => (0, perps_sdk_1.addDecimalString)(sum, (0, perps_sdk_1.unknownToDecimalString)(balance.valueUsd, 'spotBalance.valueUsd', this.providerKey)), '0');
|
|
941
942
|
this.emit(`accountSummary:${key}`, {
|
|
942
943
|
channel: 'accountSummary',
|
|
943
944
|
data: {
|
|
944
|
-
portfolioValue
|
|
945
|
+
portfolioValue,
|
|
945
946
|
availableMargin: pipeline.availableMargin,
|
|
946
947
|
marginUsed: perps.marginUsed,
|
|
947
|
-
unrealizedPnl: (0, index_js_2.sumUnrealizedPnl)(perps.positions)
|
|
948
|
+
unrealizedPnl: (0, index_js_2.sumUnrealizedPnl)(perps.positions),
|
|
948
949
|
},
|
|
949
950
|
});
|
|
950
951
|
}
|
|
@@ -1056,25 +1057,28 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
1056
1057
|
}
|
|
1057
1058
|
const markets = this.registry?.activeMarkets ?? [];
|
|
1058
1059
|
const priceById = (0, index_js_2.spotPriceById)(markets, this.mergedMids());
|
|
1059
|
-
const balances = data.spotState.balances
|
|
1060
|
-
(0,
|
|
1060
|
+
const balances = data.spotState.balances
|
|
1061
|
+
.filter((balance) => !(0, index_js_2.assetIsOutcome)(balance.coin))
|
|
1062
|
+
.map((balance) => ({
|
|
1063
|
+
balance,
|
|
1064
|
+
total: (0, perps_sdk_1.unknownToDecimalString)(balance.total, 'spotState.balances.total', this.providerKey),
|
|
1065
|
+
}))
|
|
1066
|
+
.filter(({ total }) => (0, perps_sdk_1.isDecimalStringGreaterThan)(total, '0'));
|
|
1061
1067
|
const pipeline = this.unifiedSummaryByUser.get(user);
|
|
1062
|
-
if (balances.some((balance) =>
|
|
1068
|
+
if (balances.some(({ balance }) => {
|
|
1069
|
+
const price = priceById.get(String(balance.token));
|
|
1070
|
+
return price !== undefined && (0, perps_sdk_1.isDecimalStringZero)(price);
|
|
1071
|
+
})) {
|
|
1063
1072
|
if (pipeline !== undefined) {
|
|
1064
1073
|
pipeline.spot = undefined;
|
|
1065
1074
|
}
|
|
1066
1075
|
return;
|
|
1067
1076
|
}
|
|
1068
|
-
const rows = balances.map((balance) => {
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
transferable: (0, perps_sdk_1.calculateTransferable)(total
|
|
1074
|
-
.minus((0, decimal_js_1.toWireBig)(balance.hold, 'spotState.balances.hold'))
|
|
1075
|
-
.toFixed(), total.toFixed()),
|
|
1076
|
-
};
|
|
1077
|
-
});
|
|
1077
|
+
const rows = balances.map(({ balance, total }) => ({
|
|
1078
|
+
...(0, index_js_2.spotBalance)((0, index_js_2.spotAssetFromToken)(balance), total, priceById),
|
|
1079
|
+
locked: balance.hold,
|
|
1080
|
+
transferable: (0, perps_sdk_1.calculateTransferable)((0, perps_sdk_1.subtractDecimalString)(total, (0, perps_sdk_1.unknownToDecimalString)(balance.hold, 'spotState.balances.hold', this.providerKey)), total),
|
|
1081
|
+
}));
|
|
1078
1082
|
this.emit(`spotState:${user}`, {
|
|
1079
1083
|
channel: 'spotBalances',
|
|
1080
1084
|
data: rows,
|
|
@@ -1112,29 +1116,20 @@ class HyperliquidWsProvider extends perps_sdk_1.WsProviderBase {
|
|
|
1112
1116
|
}
|
|
1113
1117
|
exports.HyperliquidWsProvider = HyperliquidWsProvider;
|
|
1114
1118
|
const isObject = (v) => typeof v === 'object' && v !== null;
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
return
|
|
1120
|
-
}
|
|
1119
|
+
function wsFigureToDecimalString(value) {
|
|
1120
|
+
return typeof value === 'number' ? (0, perps_sdk_1.safeNumberToDecimalString)(value) : value;
|
|
1121
|
+
}
|
|
1122
|
+
function optionalWsFigureToDecimalString(value) {
|
|
1123
|
+
return value == null ? undefined : wsFigureToDecimalString(value);
|
|
1124
|
+
}
|
|
1121
1125
|
const toMarketCapString = (price, circulatingSupply) => {
|
|
1122
|
-
const
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
}
|
|
1127
|
-
try {
|
|
1128
|
-
const parsedPrice = new big_js_1.default(priceString);
|
|
1129
|
-
const parsedSupply = new big_js_1.default(supplyString);
|
|
1130
|
-
if (parsedPrice.lte(0) || parsedSupply.lte(0)) {
|
|
1131
|
-
return undefined;
|
|
1132
|
-
}
|
|
1133
|
-
return parsedPrice.times(parsedSupply).toFixed();
|
|
1134
|
-
}
|
|
1135
|
-
catch {
|
|
1126
|
+
const supply = optionalWsFigureToDecimalString(circulatingSupply);
|
|
1127
|
+
if (supply === undefined ||
|
|
1128
|
+
(0, perps_sdk_1.safeIsDecimalStringGreaterThan)(price, '0') !== true ||
|
|
1129
|
+
(0, perps_sdk_1.safeIsDecimalStringGreaterThan)(supply, '0') !== true) {
|
|
1136
1130
|
return undefined;
|
|
1137
1131
|
}
|
|
1132
|
+
return (0, perps_sdk_1.safeMultiplyDecimalString)(price, supply);
|
|
1138
1133
|
};
|
|
1139
1134
|
function mergePerpAssetCtx(previous, marketId, update) {
|
|
1140
1135
|
const funding = update.funding ?? previous?.funding;
|
|
@@ -1168,15 +1163,13 @@ function allDexsAssetCtxEntries(data) {
|
|
|
1168
1163
|
return data.assetCtxs ?? data.ctxs ?? [];
|
|
1169
1164
|
}
|
|
1170
1165
|
function activePerpAssetCtx(marketId, ctx) {
|
|
1171
|
-
const funding =
|
|
1172
|
-
const openInterest =
|
|
1173
|
-
const dayNtlVlm =
|
|
1174
|
-
const prevDayPx =
|
|
1175
|
-
const markPx =
|
|
1176
|
-
const midPx = ctx.midPx
|
|
1177
|
-
|
|
1178
|
-
: (toMarketContextString(ctx.midPx) ?? null);
|
|
1179
|
-
const oraclePx = toMarketContextString(ctx.oraclePx);
|
|
1166
|
+
const funding = optionalWsFigureToDecimalString(ctx.funding);
|
|
1167
|
+
const openInterest = optionalWsFigureToDecimalString(ctx.openInterest);
|
|
1168
|
+
const dayNtlVlm = optionalWsFigureToDecimalString(ctx.dayNtlVlm);
|
|
1169
|
+
const prevDayPx = optionalWsFigureToDecimalString(ctx.prevDayPx);
|
|
1170
|
+
const markPx = optionalWsFigureToDecimalString(ctx.markPx);
|
|
1171
|
+
const midPx = optionalWsFigureToDecimalString(ctx.midPx) ?? null;
|
|
1172
|
+
const oraclePx = optionalWsFigureToDecimalString(ctx.oraclePx);
|
|
1180
1173
|
if (funding === undefined ||
|
|
1181
1174
|
openInterest === undefined ||
|
|
1182
1175
|
dayNtlVlm === undefined ||
|
|
@@ -1197,8 +1190,8 @@ function activePerpAssetCtx(marketId, ctx) {
|
|
|
1197
1190
|
};
|
|
1198
1191
|
}
|
|
1199
1192
|
function mapSpotMarketContext(marketId, ctx, fast) {
|
|
1200
|
-
const midPrice =
|
|
1201
|
-
const markPrice =
|
|
1193
|
+
const midPrice = optionalWsFigureToDecimalString(ctx.midPx ?? ctx.markPx);
|
|
1194
|
+
const markPrice = optionalWsFigureToDecimalString(ctx.markPx);
|
|
1202
1195
|
if (midPrice === undefined || markPrice === undefined) {
|
|
1203
1196
|
return undefined;
|
|
1204
1197
|
}
|
|
@@ -1207,11 +1200,33 @@ function mapSpotMarketContext(marketId, ctx, fast) {
|
|
|
1207
1200
|
marketId,
|
|
1208
1201
|
midPrice: fast?.midPx != null ? fast.midPx : midPrice,
|
|
1209
1202
|
markPrice: emittedMarkPrice,
|
|
1210
|
-
prevDayPrice:
|
|
1211
|
-
volume24h:
|
|
1203
|
+
prevDayPrice: optionalWsFigureToDecimalString(ctx.prevDayPx),
|
|
1204
|
+
volume24h: optionalWsFigureToDecimalString(ctx.dayNtlVlm),
|
|
1212
1205
|
marketCap: toMarketCapString(emittedMarkPrice, ctx.circulatingSupply),
|
|
1213
1206
|
};
|
|
1214
1207
|
}
|
|
1208
|
+
const BOOK_LEVEL_ROW = 'order book level';
|
|
1209
|
+
function bookLevelPrice(price) {
|
|
1210
|
+
if (!(0, perps_sdk_1.isDecimalString)(price)) {
|
|
1211
|
+
perps_sdk_1.wsLog.skippedRow(constants_js_1.PROVIDER_KEY, BOOK_LEVEL_ROW, 'price', price);
|
|
1212
|
+
return undefined;
|
|
1213
|
+
}
|
|
1214
|
+
return price;
|
|
1215
|
+
}
|
|
1216
|
+
function bookLevelSize(size) {
|
|
1217
|
+
if (!(0, perps_sdk_1.isDecimalString)(size)) {
|
|
1218
|
+
perps_sdk_1.wsLog.skippedRow(constants_js_1.PROVIDER_KEY, BOOK_LEVEL_ROW, 'size', size);
|
|
1219
|
+
return undefined;
|
|
1220
|
+
}
|
|
1221
|
+
return size;
|
|
1222
|
+
}
|
|
1223
|
+
function toOrderbookLevel(price, size) {
|
|
1224
|
+
const levelPrice = bookLevelPrice(price);
|
|
1225
|
+
const levelSize = levelPrice === undefined ? undefined : bookLevelSize(size);
|
|
1226
|
+
return levelPrice === undefined || levelSize === undefined
|
|
1227
|
+
? []
|
|
1228
|
+
: [{ price: levelPrice, size: levelSize }];
|
|
1229
|
+
}
|
|
1215
1230
|
function compactRemovalPrice(levels, value) {
|
|
1216
1231
|
if (typeof value === 'number') {
|
|
1217
1232
|
return levels[value]?.price;
|
|
@@ -1227,18 +1242,23 @@ function applyCompressedL2Side(previous, updates, removals, side) {
|
|
|
1227
1242
|
}
|
|
1228
1243
|
}
|
|
1229
1244
|
for (const update of updates) {
|
|
1230
|
-
|
|
1231
|
-
|
|
1245
|
+
const price = bookLevelPrice(update.p);
|
|
1246
|
+
if (price === undefined) {
|
|
1247
|
+
continue;
|
|
1248
|
+
}
|
|
1249
|
+
const size = bookLevelSize(update.s);
|
|
1250
|
+
if (size === undefined || (0, perps_sdk_1.safeIsDecimalStringZero)(size) !== false) {
|
|
1251
|
+
byPrice.delete(price);
|
|
1232
1252
|
}
|
|
1233
1253
|
else {
|
|
1234
|
-
byPrice.set(
|
|
1254
|
+
byPrice.set(price, size);
|
|
1235
1255
|
}
|
|
1236
1256
|
}
|
|
1237
1257
|
return [...byPrice.entries()]
|
|
1238
1258
|
.map(([price, size]) => ({ price, size }))
|
|
1239
1259
|
.sort((a, b) => side === 'bid'
|
|
1240
|
-
?
|
|
1241
|
-
:
|
|
1260
|
+
? (0, perps_sdk_1.compareDecimalStrings)(b.price, a.price)
|
|
1261
|
+
: (0, perps_sdk_1.compareDecimalStrings)(a.price, b.price))
|
|
1242
1262
|
.slice(0, HL_L2_BOOK_MAX_LEVELS_PER_SIDE);
|
|
1243
1263
|
}
|
|
1244
1264
|
function isValidHlFrame(channel, data) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperliquidWsProvider.js","sourceRoot":"","sources":["../../../src/websocket/HyperliquidWsProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HyperliquidWsProvider.js","sourceRoot":"","sources":["../../../src/websocket/HyperliquidWsProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,8 @@ import type { AccountResponse, AccountSummary, Position } from '@lifi/perps-type
|
|
|
4
4
|
* {@link AccountSummary}, from the venue figures the response carries.
|
|
5
5
|
*
|
|
6
6
|
* @throws {PerpsError} `SDKError` when the account is not a Hyperliquid one,
|
|
7
|
-
*
|
|
7
|
+
* when a unified/portfolio-margin account carries no venue buying power, or
|
|
8
|
+
* when a summed venue figure is not a decimal.
|
|
8
9
|
* @public
|
|
9
10
|
*/
|
|
10
11
|
export declare function getAccountSummary(account: AccountResponse, positions: Position[]): AccountSummary;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accountSummary.d.ts","sourceRoot":"","sources":["../../src/accountSummary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"accountSummary.d.ts","sourceRoot":"","sources":["../../src/accountSummary.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAId,QAAQ,EACT,MAAM,mBAAmB,CAAA;AAqD1B;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,QAAQ,EAAE,GACpB,cAAc,CAahB"}
|