@lifi/perps-sdk 0.0.0-preview-5969841 → 0.0.0-preview-3f541402

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 (36) hide show
  1. package/dist/cjs/math/position.d.ts +12 -0
  2. package/dist/cjs/math/position.d.ts.map +1 -1
  3. package/dist/cjs/math/position.js +27 -4
  4. package/dist/cjs/math/position.js.map +1 -1
  5. package/dist/cjs/types/deposit.d.ts.map +1 -1
  6. package/dist/cjs/types/provider.d.ts +4 -1
  7. package/dist/cjs/types/provider.d.ts.map +1 -1
  8. package/dist/cjs/version.d.ts +1 -1
  9. package/dist/cjs/version.d.ts.map +1 -1
  10. package/dist/cjs/version.js +1 -1
  11. package/dist/cjs/version.js.map +1 -1
  12. package/dist/esm/math/position.d.ts +28 -5
  13. package/dist/esm/math/position.d.ts.map +1 -1
  14. package/dist/esm/math/position.js +43 -9
  15. package/dist/esm/math/position.js.map +1 -1
  16. package/dist/esm/types/deposit.d.ts +5 -6
  17. package/dist/esm/types/deposit.d.ts.map +1 -1
  18. package/dist/esm/types/provider.d.ts +20 -7
  19. package/dist/esm/types/provider.d.ts.map +1 -1
  20. package/dist/esm/version.d.ts +1 -1
  21. package/dist/esm/version.d.ts.map +1 -1
  22. package/dist/esm/version.js +1 -1
  23. package/dist/esm/version.js.map +1 -1
  24. package/dist/types/math/position.d.ts +28 -5
  25. package/dist/types/math/position.d.ts.map +1 -1
  26. package/dist/types/types/deposit.d.ts +5 -6
  27. package/dist/types/types/deposit.d.ts.map +1 -1
  28. package/dist/types/types/provider.d.ts +20 -7
  29. package/dist/types/types/provider.d.ts.map +1 -1
  30. package/dist/types/version.d.ts +1 -1
  31. package/dist/types/version.d.ts.map +1 -1
  32. package/package.json +2 -2
  33. package/src/math/position.ts +47 -9
  34. package/src/types/deposit.ts +5 -6
  35. package/src/types/provider.ts +20 -6
  36. package/src/version.ts +1 -1
@@ -29,12 +29,24 @@ export declare function estimateLiquidationPrice(params: {
29
29
  leverage: string;
30
30
  isLong: boolean;
31
31
  maintenanceMarginRate: string;
32
+ size?: string;
33
+ current?: {
34
+ size: string;
35
+ entryPrice: string;
36
+ margin: string;
37
+ };
32
38
  }): string | undefined;
33
39
  export declare const safeEstimateLiquidationPrice: (params: {
34
40
  entryPrice: string;
35
41
  leverage: string;
36
42
  isLong: boolean;
37
43
  maintenanceMarginRate: string;
44
+ size?: string;
45
+ current?: {
46
+ size: string;
47
+ entryPrice: string;
48
+ margin: string;
49
+ };
38
50
  }) => string | undefined;
39
51
  export declare function estimateLiquidationPriceAtMarketRate(market: PerpsMarket, params: LiquidationEstimateParams): string | undefined;
40
52
  export declare const safeEstimateLiquidationPriceAtMarketRate: (market: PerpsMarket, params: LiquidationEstimateParams) => string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
@@ -79,12 +79,35 @@ function estimateLiquidationPrice(params) {
79
79
  if (denominator.eq(0)) {
80
80
  throw (0, invalidInput_js_1.invalidInput)('maintenanceMarginRate', `must not be ${params.isLong ? '1' : '-1'} for this side`);
81
81
  }
82
- const marginFractionAvailable = new big_js_1.DivBig(1).div(leverage).minus(mmr);
83
- if (marginFractionAvailable.lte(0)) {
82
+ if (params.current === undefined) {
83
+ const marginFractionAvailable = new big_js_1.DivBig(1).div(leverage).minus(mmr);
84
+ if (marginFractionAvailable.lte(0)) {
85
+ return undefined;
86
+ }
87
+ const marginAvailable = marginFractionAvailable.times(entryPrice);
88
+ return (0, decimalStringToBig_js_1.bigToDecimalString)(entryPrice.minus(marginAvailable.times(side).div(denominator)));
89
+ }
90
+ if (params.size === undefined) {
91
+ throw (0, invalidInput_js_1.invalidInput)('size', 'is required with `current`');
92
+ }
93
+ const addSize = (0, decimalStringToBig_js_1.decimalStringToBig)(params.size);
94
+ const currentSize = (0, decimalStringToBig_js_1.decimalStringToBig)(params.current.size);
95
+ const currentEntry = (0, decimalStringToBig_js_1.decimalStringToBig)(params.current.entryPrice);
96
+ const currentMargin = (0, decimalStringToBig_js_1.decimalStringToBig)(params.current.margin);
97
+ const totalSize = currentSize.plus(addSize);
98
+ if (totalSize.lte(0)) {
99
+ throw (0, invalidInput_js_1.invalidInput)('size + current.size', 'must be positive');
100
+ }
101
+ const equity = currentMargin
102
+ .plus(currentSize.times(entryPrice.minus(currentEntry)).times(side))
103
+ .plus(new big_js_1.DivBig(entryPrice).times(addSize).div(leverage));
104
+ const marginAvailablePerUnit = new big_js_1.DivBig(equity)
105
+ .minus(mmr.times(totalSize).times(entryPrice))
106
+ .div(totalSize);
107
+ if (marginAvailablePerUnit.lte(0)) {
84
108
  return undefined;
85
109
  }
86
- const marginAvailable = marginFractionAvailable.times(entryPrice);
87
- return (0, decimalStringToBig_js_1.bigToDecimalString)(entryPrice.minus(marginAvailable.times(side).div(denominator)));
110
+ return (0, decimalStringToBig_js_1.bigToDecimalString)(entryPrice.minus(marginAvailablePerUnit.times(side).div(denominator)));
88
111
  }
89
112
  exports.safeEstimateLiquidationPrice = (0, createSafeFunction_js_1.createSafeFunction)('estimateLiquidationPrice', estimateLiquidationPrice);
90
113
  function estimateLiquidationPriceAtMarketRate(market, params) {
@@ -1 +1 @@
1
- {"version":3,"file":"position.js","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"position.js","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../../src/types/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AASnC,MAAM,WAAW,oBAAoB;IAEnC,OAAO,EAAE,MAAM,CAAA;IAEf,OAAO,EAAE,OAAO,CAAA;IAEhB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAUD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAA;IAEhB,WAAW,EAAE,oBAAoB,CAAA;IAKjC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAWD,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,sBAAsB,CAAA;IAE5B,OAAO,EAAE,MAAM,CAAA;IAEf,QAAQ,EAAE,oBAAoB,CAAA;IAE9B,UAAU,EAAE,oBAAoB,CAAA;IAEhC,YAAY,EAAE,UAAU,CAAC,OAAO,CAAA;CACjC;AASD,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IAErB,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAQD,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,+BAA+B,GAC/B,wBAAwB,CAAA"}
1
+ {"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../../src/types/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AASnC,MAAM,WAAW,oBAAoB;IAEnC,OAAO,EAAE,MAAM,CAAA;IAEf,OAAO,EAAE,OAAO,CAAA;IAEhB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAUD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAA;IAEhB,WAAW,EAAE,oBAAoB,CAAA;IAKjC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAUD,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,sBAAsB,CAAA;IAE5B,OAAO,EAAE,MAAM,CAAA;IAEf,QAAQ,EAAE,oBAAoB,CAAA;IAE9B,UAAU,EAAE,oBAAoB,CAAA;IAEhC,YAAY,EAAE,UAAU,CAAC,OAAO,CAAA;CACjC;AASD,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IAErB,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAQD,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,+BAA+B,GAC/B,wBAAwB,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, DecimalString, FillsResponse, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
1
+ import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, DecimalString, FillsResponse, MarginMode, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
2
2
  import type { Address } from 'viem';
3
3
  import type { PerpsBaseConfig, PerpsClientSigner, SDKRequestOptions } from './config.js';
4
4
  import type { DepositFlow } from './deposit.js';
@@ -36,6 +36,9 @@ export interface LiquidationEstimateParams {
36
36
  entryPrice: string;
37
37
  leverage: string;
38
38
  isLong: boolean;
39
+ marginMode: MarginMode;
40
+ size?: DecimalString;
41
+ position?: Position;
39
42
  }
40
43
  export interface ProviderGetAccountParams {
41
44
  address: Address;
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export declare const name = "@lifi/perps-sdk";
2
- export declare const version = "0.0.0-preview-5969841";
2
+ export declare const version = "0.0.0-preview-3f541402";
3
3
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,IAAI,oBAAoB,CAAA;AAOrC,eAAO,MAAM,OAAO,0BAA0B,CAAA"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,IAAI,oBAAoB,CAAA;AAOrC,eAAO,MAAM,OAAO,2BAA2B,CAAA"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = exports.name = void 0;
4
4
  exports.name = '@lifi/perps-sdk';
5
- exports.version = '0.0.0-preview-5969841';
5
+ exports.version = '0.0.0-preview-3f541402';
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAKa,QAAA,IAAI,GAAG,iBAAiB,CAAA;AAOxB,QAAA,OAAO,GAAG,uBAAuB,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAKa,QAAA,IAAI,GAAG,iBAAiB,CAAA;AAOxB,QAAA,OAAO,GAAG,wBAAwB,CAAA"}
@@ -91,16 +91,27 @@ export declare const safeCalculateEffectiveLeverage: (params: {
91
91
  * margin_available = entryPrice × (1 / leverage - mmr)
92
92
  * liq_price = entryPrice - side × margin_available / (1 - mmr × side)
93
93
  *
94
+ * With `current`, the order of `size` adds to that position on the same side.
95
+ * The equity of the blended position at `entryPrice` is `current.margin`, the
96
+ * PnL of `current` at `entryPrice`, and the margin of the order. The margin
97
+ * available is that equity minus the maintenance margin of the blended size,
98
+ * and the formula above divides it by the blended size.
99
+ *
94
100
  * For existing positions, prefer `Position.liquidationPrice` from the venue.
95
101
  *
96
102
  * @param maintenanceMarginRate - Venue maintenance margin rate as a fraction
97
103
  * (`'0.01'` = 1%).
98
- * @returns The estimate, or `undefined` when `1 / leverage` is at or below
99
- * `maintenanceMarginRate`: the position opens at or past liquidation, so
100
- * the model has no price on the correct side of entry.
104
+ * @param size - Order size as a non-negative magnitude. Read only with
105
+ * `current`.
106
+ * @param current - Open isolated position on the same side that the order
107
+ * adds to. `margin` is its collateral net of unrealized PnL.
108
+ * @returns The estimate, or `undefined` when the margin above the
109
+ * maintenance requirement is not positive: the position opens at or past
110
+ * liquidation, so the model has no price on the correct side of entry.
101
111
  * @throws {PerpsError} `ValidationError` when an input does not match the
102
- * decimal pattern, `leverage` is zero, or `maintenanceMarginRate` gives a
103
- * zero denominator (`1` for a long, `-1` for a short).
112
+ * decimal pattern, `leverage` is zero, `maintenanceMarginRate` gives a
113
+ * zero denominator (`1` for a long, `-1` for a short), `current` comes
114
+ * without `size`, or `current.size + size` is not positive.
104
115
  * @public
105
116
  */
106
117
  export declare function estimateLiquidationPrice(params: {
@@ -108,6 +119,12 @@ export declare function estimateLiquidationPrice(params: {
108
119
  leverage: string;
109
120
  isLong: boolean;
110
121
  maintenanceMarginRate: string;
122
+ size?: string;
123
+ current?: {
124
+ size: string;
125
+ entryPrice: string;
126
+ margin: string;
127
+ };
111
128
  }): string | undefined;
112
129
  /** @public */
113
130
  export declare const safeEstimateLiquidationPrice: (params: {
@@ -115,6 +132,12 @@ export declare const safeEstimateLiquidationPrice: (params: {
115
132
  leverage: string;
116
133
  isLong: boolean;
117
134
  maintenanceMarginRate: string;
135
+ size?: string;
136
+ current?: {
137
+ size: string;
138
+ entryPrice: string;
139
+ margin: string;
140
+ };
118
141
  }) => string | undefined;
119
142
  /**
120
143
  * Estimate the liquidation price of a new isolated position from the flat
@@ -1 +1 @@
1
- {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
@@ -116,16 +116,27 @@ export const safeCalculateEffectiveLeverage = createSafeFunction('calculateEffec
116
116
  * margin_available = entryPrice × (1 / leverage - mmr)
117
117
  * liq_price = entryPrice - side × margin_available / (1 - mmr × side)
118
118
  *
119
+ * With `current`, the order of `size` adds to that position on the same side.
120
+ * The equity of the blended position at `entryPrice` is `current.margin`, the
121
+ * PnL of `current` at `entryPrice`, and the margin of the order. The margin
122
+ * available is that equity minus the maintenance margin of the blended size,
123
+ * and the formula above divides it by the blended size.
124
+ *
119
125
  * For existing positions, prefer `Position.liquidationPrice` from the venue.
120
126
  *
121
127
  * @param maintenanceMarginRate - Venue maintenance margin rate as a fraction
122
128
  * (`'0.01'` = 1%).
123
- * @returns The estimate, or `undefined` when `1 / leverage` is at or below
124
- * `maintenanceMarginRate`: the position opens at or past liquidation, so
125
- * the model has no price on the correct side of entry.
129
+ * @param size - Order size as a non-negative magnitude. Read only with
130
+ * `current`.
131
+ * @param current - Open isolated position on the same side that the order
132
+ * adds to. `margin` is its collateral net of unrealized PnL.
133
+ * @returns The estimate, or `undefined` when the margin above the
134
+ * maintenance requirement is not positive: the position opens at or past
135
+ * liquidation, so the model has no price on the correct side of entry.
126
136
  * @throws {PerpsError} `ValidationError` when an input does not match the
127
- * decimal pattern, `leverage` is zero, or `maintenanceMarginRate` gives a
128
- * zero denominator (`1` for a long, `-1` for a short).
137
+ * decimal pattern, `leverage` is zero, `maintenanceMarginRate` gives a
138
+ * zero denominator (`1` for a long, `-1` for a short), `current` comes
139
+ * without `size`, or `current.size + size` is not positive.
129
140
  * @public
130
141
  */
131
142
  export function estimateLiquidationPrice(params) {
@@ -140,12 +151,35 @@ export function estimateLiquidationPrice(params) {
140
151
  if (denominator.eq(0)) {
141
152
  throw invalidInput('maintenanceMarginRate', `must not be ${params.isLong ? '1' : '-1'} for this side`);
142
153
  }
143
- const marginFractionAvailable = new DivBig(1).div(leverage).minus(mmr);
144
- if (marginFractionAvailable.lte(0)) {
154
+ if (params.current === undefined) {
155
+ const marginFractionAvailable = new DivBig(1).div(leverage).minus(mmr);
156
+ if (marginFractionAvailable.lte(0)) {
157
+ return undefined;
158
+ }
159
+ const marginAvailable = marginFractionAvailable.times(entryPrice);
160
+ return bigToDecimalString(entryPrice.minus(marginAvailable.times(side).div(denominator)));
161
+ }
162
+ if (params.size === undefined) {
163
+ throw invalidInput('size', 'is required with `current`');
164
+ }
165
+ const addSize = decimalStringToBig(params.size);
166
+ const currentSize = decimalStringToBig(params.current.size);
167
+ const currentEntry = decimalStringToBig(params.current.entryPrice);
168
+ const currentMargin = decimalStringToBig(params.current.margin);
169
+ const totalSize = currentSize.plus(addSize);
170
+ if (totalSize.lte(0)) {
171
+ throw invalidInput('size + current.size', 'must be positive');
172
+ }
173
+ const equity = currentMargin
174
+ .plus(currentSize.times(entryPrice.minus(currentEntry)).times(side))
175
+ .plus(new DivBig(entryPrice).times(addSize).div(leverage));
176
+ const marginAvailablePerUnit = new DivBig(equity)
177
+ .minus(mmr.times(totalSize).times(entryPrice))
178
+ .div(totalSize);
179
+ if (marginAvailablePerUnit.lte(0)) {
145
180
  return undefined;
146
181
  }
147
- const marginAvailable = marginFractionAvailable.times(entryPrice);
148
- return bigToDecimalString(entryPrice.minus(marginAvailable.times(side).div(denominator)));
182
+ return bigToDecimalString(entryPrice.minus(marginAvailablePerUnit.times(side).div(denominator)));
149
183
  }
150
184
  /** @public */
151
185
  export const safeEstimateLiquidationPrice = createSafeFunction('estimateLiquidationPrice', estimateLiquidationPrice);
@@ -1 +1 @@
1
- {"version":3,"file":"position.js","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"position.js","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
@@ -34,11 +34,10 @@ export interface DepositFlowLifiSwap {
34
34
  toAddress?: Address;
35
35
  }
36
36
  /**
37
- * Fund an address that has no venue account yet, or an existing account on a
38
- * venue whose collateral no LI.FI route credits directly. Collateral and the
39
- * native gas to broadcast with are both needed on `chainId`, where the venue's
40
- * {@link ActionType.DEPOSIT} action stages the on-chain legs that credit the
41
- * account and open it when none exists.
37
+ * Fund an address that has no venue account yet. Collateral and the native gas
38
+ * to broadcast with are both needed on `chainId`, where the venue's
39
+ * {@link ActionType.DEPOSIT} action stages the on-chain legs that open the
40
+ * account.
42
41
  *
43
42
  * @public
44
43
  */
@@ -48,7 +47,7 @@ export interface DepositFlowFirstDepositPipeline {
48
47
  chainId: number;
49
48
  /** Native gas asset needed to broadcast the deposit legs. */
50
49
  gasAsset: DeclaredDepositAsset;
51
- /** Collateral asset the venue deposit credits. */
50
+ /** Collateral asset credited by the first deposit. */
52
51
  collateral: DeclaredDepositAsset;
53
52
  /** Action type used to stage the deposit pipeline. */
54
53
  bridgeAction: ActionType.DEPOSIT;
@@ -1 +1 @@
1
- {"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../../src/types/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAA;IACf,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAA;IAChB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAA;IAChB,gEAAgE;IAChE,WAAW,EAAE,oBAAoB,CAAA;IACjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,sBAAsB,CAAA;IAC5B,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAA;IACf,6DAA6D;IAC7D,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,kDAAkD;IAClD,UAAU,EAAE,oBAAoB,CAAA;IAChC,sDAAsD;IACtD,YAAY,EAAE,UAAU,CAAC,OAAO,CAAA;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IACrB,qEAAqE;IACrE,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,+BAA+B,GAC/B,wBAAwB,CAAA"}
1
+ {"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../../src/types/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAA;IACf,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAA;IAChB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAA;IAChB,gEAAgE;IAChE,WAAW,EAAE,oBAAoB,CAAA;IACjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,sBAAsB,CAAA;IAC5B,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAA;IACf,6DAA6D;IAC7D,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,sDAAsD;IACtD,UAAU,EAAE,oBAAoB,CAAA;IAChC,sDAAsD;IACtD,YAAY,EAAE,UAAU,CAAC,OAAO,CAAA;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IACrB,qEAAqE;IACrE,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,+BAA+B,GAC/B,wBAAwB,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, DecimalString, FillsResponse, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
1
+ import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, DecimalString, FillsResponse, MarginMode, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
2
2
  import type { Address } from 'viem';
3
3
  import type { PerpsBaseConfig, PerpsClientSigner, SDKRequestOptions } from './config.js';
4
4
  import type { DepositFlow } from './deposit.js';
@@ -115,7 +115,8 @@ export interface ActionSignerContribution {
115
115
  params?: Record<string, unknown>;
116
116
  }
117
117
  /**
118
- * Inputs for {@link PerpsProviderPlugin.estimateLiquidationPrice}:
118
+ * Inputs for {@link PerpsProviderPlugin.estimateLiquidationPrice}: the order
119
+ * and, when the order adds to one, the open position on the market.
119
120
  * `leverage` is the user-selected leverage for the new position, `isLong`
120
121
  * carries direction.
121
122
  *
@@ -127,6 +128,14 @@ export interface LiquidationEstimateParams {
127
128
  leverage: string;
128
129
  /** `true` for long, `false` for short. */
129
130
  isLong: boolean;
131
+ marginMode: MarginMode;
132
+ /**
133
+ * Order size in base-asset units. The estimate reads it only with
134
+ * `position`, to blend the order into that position.
135
+ */
136
+ size?: DecimalString;
137
+ /** Open position on the market that the order joins. */
138
+ position?: Position;
130
139
  }
131
140
  /**
132
141
  * Read-side params for {@link PerpsProvider.getAccount}. The `provider`
@@ -501,16 +510,20 @@ export interface PerpsProviderPlugin {
501
510
  };
502
511
  };
503
512
  /**
504
- * Estimate the liquidation price of a new isolated position on `market`
505
- * using the venue's margin model. A preview helper — for existing
513
+ * Estimate the liquidation price of the position that the order leaves on
514
+ * `market` using the venue's margin model: a new position, or the blend of
515
+ * the order into `params.position`. A preview helper — for existing
506
516
  * positions, prefer `Position.liquidationPrice` from the venue. Pure —
507
517
  * does no I/O.
508
518
  *
509
519
  * @returns The estimated liquidation price, or `undefined` when `market`
510
- * lacks the margin metadata the model needs or `leverage` leaves no
511
- * margin above the maintenance requirement.
520
+ * lacks the margin metadata the model needs, `leverage` leaves no
521
+ * margin above the maintenance requirement, or the venue model cannot
522
+ * give a correct price for the margin mode and position, such as a cross
523
+ * position whose liquidation depends on the whole account.
512
524
  * @throws {PerpsError} `ValidationError` when an input does not match the
513
- * decimal pattern or is degenerate, such as a zero leverage.
525
+ * decimal pattern or is degenerate, such as a zero leverage or a
526
+ * `position` without a `size`.
514
527
  */
515
528
  estimateLiquidationPrice(market: PerpsMarket, params: LiquidationEstimateParams): string | undefined;
516
529
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,5 @@ export declare const name = "@lifi/perps-sdk";
9
9
  *
10
10
  * @public
11
11
  */
12
- export declare const version = "0.0.0-preview-5969841";
12
+ export declare const version = "0.0.0-preview-3f541402";
13
13
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,IAAI,oBAAoB,CAAA;AAErC;;;;GAIG;AACH,eAAO,MAAM,OAAO,0BAA0B,CAAA"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,IAAI,oBAAoB,CAAA;AAErC;;;;GAIG;AACH,eAAO,MAAM,OAAO,2BAA2B,CAAA"}
@@ -9,5 +9,5 @@ export const name = '@lifi/perps-sdk';
9
9
  *
10
10
  * @public
11
11
  */
12
- export const version = '0.0.0-preview-5969841';
12
+ export const version = '0.0.0-preview-3f541402';
13
13
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,iBAAiB,CAAA;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,uBAAuB,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,iBAAiB,CAAA;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,wBAAwB,CAAA"}
@@ -91,16 +91,27 @@ export declare const safeCalculateEffectiveLeverage: (params: {
91
91
  * margin_available = entryPrice × (1 / leverage - mmr)
92
92
  * liq_price = entryPrice - side × margin_available / (1 - mmr × side)
93
93
  *
94
+ * With `current`, the order of `size` adds to that position on the same side.
95
+ * The equity of the blended position at `entryPrice` is `current.margin`, the
96
+ * PnL of `current` at `entryPrice`, and the margin of the order. The margin
97
+ * available is that equity minus the maintenance margin of the blended size,
98
+ * and the formula above divides it by the blended size.
99
+ *
94
100
  * For existing positions, prefer `Position.liquidationPrice` from the venue.
95
101
  *
96
102
  * @param maintenanceMarginRate - Venue maintenance margin rate as a fraction
97
103
  * (`'0.01'` = 1%).
98
- * @returns The estimate, or `undefined` when `1 / leverage` is at or below
99
- * `maintenanceMarginRate`: the position opens at or past liquidation, so
100
- * the model has no price on the correct side of entry.
104
+ * @param size - Order size as a non-negative magnitude. Read only with
105
+ * `current`.
106
+ * @param current - Open isolated position on the same side that the order
107
+ * adds to. `margin` is its collateral net of unrealized PnL.
108
+ * @returns The estimate, or `undefined` when the margin above the
109
+ * maintenance requirement is not positive: the position opens at or past
110
+ * liquidation, so the model has no price on the correct side of entry.
101
111
  * @throws {PerpsError} `ValidationError` when an input does not match the
102
- * decimal pattern, `leverage` is zero, or `maintenanceMarginRate` gives a
103
- * zero denominator (`1` for a long, `-1` for a short).
112
+ * decimal pattern, `leverage` is zero, `maintenanceMarginRate` gives a
113
+ * zero denominator (`1` for a long, `-1` for a short), `current` comes
114
+ * without `size`, or `current.size + size` is not positive.
104
115
  * @public
105
116
  */
106
117
  export declare function estimateLiquidationPrice(params: {
@@ -108,6 +119,12 @@ export declare function estimateLiquidationPrice(params: {
108
119
  leverage: string;
109
120
  isLong: boolean;
110
121
  maintenanceMarginRate: string;
122
+ size?: string;
123
+ current?: {
124
+ size: string;
125
+ entryPrice: string;
126
+ margin: string;
127
+ };
111
128
  }): string | undefined;
112
129
  /** @public */
113
130
  export declare const safeEstimateLiquidationPrice: (params: {
@@ -115,6 +132,12 @@ export declare const safeEstimateLiquidationPrice: (params: {
115
132
  leverage: string;
116
133
  isLong: boolean;
117
134
  maintenanceMarginRate: string;
135
+ size?: string;
136
+ current?: {
137
+ size: string;
138
+ entryPrice: string;
139
+ margin: string;
140
+ };
118
141
  }) => string | undefined;
119
142
  /**
120
143
  * Estimate the liquidation price of a new isolated position from the flat
@@ -1 +1 @@
1
- {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":"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"}
@@ -34,11 +34,10 @@ export interface DepositFlowLifiSwap {
34
34
  toAddress?: Address;
35
35
  }
36
36
  /**
37
- * Fund an address that has no venue account yet, or an existing account on a
38
- * venue whose collateral no LI.FI route credits directly. Collateral and the
39
- * native gas to broadcast with are both needed on `chainId`, where the venue's
40
- * {@link ActionType.DEPOSIT} action stages the on-chain legs that credit the
41
- * account and open it when none exists.
37
+ * Fund an address that has no venue account yet. Collateral and the native gas
38
+ * to broadcast with are both needed on `chainId`, where the venue's
39
+ * {@link ActionType.DEPOSIT} action stages the on-chain legs that open the
40
+ * account.
42
41
  *
43
42
  * @public
44
43
  */
@@ -48,7 +47,7 @@ export interface DepositFlowFirstDepositPipeline {
48
47
  chainId: number;
49
48
  /** Native gas asset needed to broadcast the deposit legs. */
50
49
  gasAsset: DeclaredDepositAsset;
51
- /** Collateral asset the venue deposit credits. */
50
+ /** Collateral asset credited by the first deposit. */
52
51
  collateral: DeclaredDepositAsset;
53
52
  /** Action type used to stage the deposit pipeline. */
54
53
  bridgeAction: ActionType.DEPOSIT;
@@ -1 +1 @@
1
- {"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../../src/types/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAA;IACf,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAA;IAChB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAA;IAChB,gEAAgE;IAChE,WAAW,EAAE,oBAAoB,CAAA;IACjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,sBAAsB,CAAA;IAC5B,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAA;IACf,6DAA6D;IAC7D,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,kDAAkD;IAClD,UAAU,EAAE,oBAAoB,CAAA;IAChC,sDAAsD;IACtD,YAAY,EAAE,UAAU,CAAC,OAAO,CAAA;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IACrB,qEAAqE;IACrE,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,+BAA+B,GAC/B,wBAAwB,CAAA"}
1
+ {"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../../src/types/deposit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAA;IACf,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAA;IAChB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,UAAU,CAAA;IAChB,gEAAgE;IAChE,WAAW,EAAE,oBAAoB,CAAA;IACjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,sBAAsB,CAAA;IAC5B,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAA;IACf,6DAA6D;IAC7D,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,sDAAsD;IACtD,UAAU,EAAE,oBAAoB,CAAA;IAChC,sDAAsD;IACtD,YAAY,EAAE,UAAU,CAAC,OAAO,CAAA;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IACrB,qEAAqE;IACrE,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,+BAA+B,GAC/B,wBAAwB,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, DecimalString, FillsResponse, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
1
+ import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, DecimalString, FillsResponse, MarginMode, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
2
2
  import type { Address } from 'viem';
3
3
  import type { PerpsBaseConfig, PerpsClientSigner, SDKRequestOptions } from './config.js';
4
4
  import type { DepositFlow } from './deposit.js';
@@ -115,7 +115,8 @@ export interface ActionSignerContribution {
115
115
  params?: Record<string, unknown>;
116
116
  }
117
117
  /**
118
- * Inputs for {@link PerpsProviderPlugin.estimateLiquidationPrice}:
118
+ * Inputs for {@link PerpsProviderPlugin.estimateLiquidationPrice}: the order
119
+ * and, when the order adds to one, the open position on the market.
119
120
  * `leverage` is the user-selected leverage for the new position, `isLong`
120
121
  * carries direction.
121
122
  *
@@ -127,6 +128,14 @@ export interface LiquidationEstimateParams {
127
128
  leverage: string;
128
129
  /** `true` for long, `false` for short. */
129
130
  isLong: boolean;
131
+ marginMode: MarginMode;
132
+ /**
133
+ * Order size in base-asset units. The estimate reads it only with
134
+ * `position`, to blend the order into that position.
135
+ */
136
+ size?: DecimalString;
137
+ /** Open position on the market that the order joins. */
138
+ position?: Position;
130
139
  }
131
140
  /**
132
141
  * Read-side params for {@link PerpsProvider.getAccount}. The `provider`
@@ -501,16 +510,20 @@ export interface PerpsProviderPlugin {
501
510
  };
502
511
  };
503
512
  /**
504
- * Estimate the liquidation price of a new isolated position on `market`
505
- * using the venue's margin model. A preview helper — for existing
513
+ * Estimate the liquidation price of the position that the order leaves on
514
+ * `market` using the venue's margin model: a new position, or the blend of
515
+ * the order into `params.position`. A preview helper — for existing
506
516
  * positions, prefer `Position.liquidationPrice` from the venue. Pure —
507
517
  * does no I/O.
508
518
  *
509
519
  * @returns The estimated liquidation price, or `undefined` when `market`
510
- * lacks the margin metadata the model needs or `leverage` leaves no
511
- * margin above the maintenance requirement.
520
+ * lacks the margin metadata the model needs, `leverage` leaves no
521
+ * margin above the maintenance requirement, or the venue model cannot
522
+ * give a correct price for the margin mode and position, such as a cross
523
+ * position whose liquidation depends on the whole account.
512
524
  * @throws {PerpsError} `ValidationError` when an input does not match the
513
- * decimal pattern or is degenerate, such as a zero leverage.
525
+ * decimal pattern or is degenerate, such as a zero leverage or a
526
+ * `position` without a `size`.
514
527
  */
515
528
  estimateLiquidationPrice(market: PerpsMarket, params: LiquidationEstimateParams): string | undefined;
516
529
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,MAAM,EACN,SAAS,EACT,cAAc,EACd,KAAK,EACL,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,qBAAqB,EACrB,wBAAwB,EACxB,QAAQ,EACR,iBAAiB,EACjB,KAAK,EACL,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,SAAS,EACV,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EACV,2BAA2B,EAC3B,qBAAqB,EACrB,YAAY,EACb,MAAM,iBAAiB,CAAA;AAExB;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAA;IACvC,6DAA6D;IAC7D,QAAQ,CAAC,SAAS,EAAE,aAAa,EAAE,CAAA;IACnC,uDAAuD;IACvD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAA;CACpD;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,UAAU,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,sEAAsE;IACtE,MAAM,EAAE,WAAW,GAAG,WAAW,CAAA;IACjC,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,QAAQ,EAAE,YAAY,EAAE,CAAA;CACzB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,UAAU,CAAC,EAAE,iBAAiB,CAAA;IAC9B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC/D;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,CAAA;CACpD;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,yBAAyB;IACxC,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,0CAA0C;IAC1C,MAAM,EAAE,OAAO,CAAA;IACf,UAAU,EAAE,UAAU,CAAA;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,qCAAqC;IACpD,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,OAAO,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,OAAO,CAAA;IAChB;uDACmD;IACnD,MAAM,EAAE,SAAS,CAAA;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,iCAAiC;IAChD,OAAO,EAAE,OAAO,CAAA;IAChB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAA;CACX;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,CAAA;IAChB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,YAAY,EAAE,CAAA;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,iCAAiC;IAChD,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,qBAAqB,CAAA;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAA;IACd,sEAAsE;IACtE,IAAI,EAAE,SAAS,CAAA;IACf,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,sEAAsE;IACtE,IAAI,EAAE,SAAS,CAAA;CAChB;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAErB;;;;;;;OAOG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,SAAS,UAAU,EAAE,CAAA;IAExD;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAAA;IAElC,UAAU,CACR,MAAM,EAAE,wBAAwB,EAChC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,eAAe,CAAC,CAAA;IAE3B;;;;;;OAMG;IACH,aAAa,CACX,MAAM,EAAE,2BAA2B,EACnC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAAA;IAEnB;;;;;;;;OAQG;IACH,cAAc,CAAC,CACb,MAAM,EAAE,4BAA4B,EACpC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,WAAW,CAAC,CAAA;IAEvB;;;;;;;OAOG;IACH,eAAe,CAAC,CACd,MAAM,EAAE,6BAA6B,EACrC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAAA;IAExB;;;;;;;;;;OAUG;IACH,uBAAuB,CAAC,CACtB,MAAM,EAAE,qCAAqC,EAC7C,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,2BAA2B,EAAE,CAAC,CAAA;IAEzC;;;;;;OAMG;IACH,kBAAkB,CAAC,CACjB,MAAM,EAAE,gCAAgC,EACxC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAA;IAEnC,YAAY,CACV,MAAM,EAAE,0BAA0B,EAClC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE7B;;;;;;;OAOG;IACH,iBAAiB,CACf,MAAM,EAAE,+BAA+B,EACvC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAAA;IAE1B;;;;;;;OAOG;IACH,mBAAmB,CAAC,CAClB,MAAM,EAAE,iCAAiC,EACzC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAA;IAExC,SAAS,CACP,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAAA;IAE1B,QAAQ,CACN,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,KAAK,CAAC,CAAA;IAEjB,QAAQ,CACN,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAAA;IAEzB,WAAW,CACT,MAAM,EAAE,yBAAyB,EACjC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAE9B;;;OAGG;IACH,mBAAmB,CAAC,CAClB,MAAM,EAAE,iCAAiC,EACzC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,wBAAwB,CAAC,CAAA;IAEpC;;;;;;OAMG;IACH,QAAQ,CACN,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,KAAK,CAAC,CAAA;IAEjB;;;;;;;;OAQG;IACH,iBAAiB,CACf,OAAO,EAAE,eAAe,EACxB,SAAS,EAAE,QAAQ,EAAE,GACpB,cAAc,CAAA;IAEjB;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,aAAa,CAAA;IAEnE;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,aAAa,CAAA;IAEjE;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE;QACd,mBAAmB,EAAE,OAAO,CAAA;QAC5B,cAAc,CAAC,EAAE;YACf,GAAG,EAAE,aAAa,CAAA;YAClB,GAAG,EAAE,aAAa,CAAA;YAClB,IAAI,EAAE,aAAa,CAAA;YACnB,OAAO,EAAE,aAAa,CAAA;SACvB,CAAA;KACF,CAAA;IAED;;;;;;;;;;;;;;;OAeG;IACH,wBAAwB,CACtB,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,yBAAyB,GAChC,MAAM,GAAG,SAAS,CAAA;IAErB;;;;;;;;;;OAUG;IACH,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,aAAa,GAAG,SAAS,CAAA;IAEtE;;;;;;;;;;;;OAYG;IACH,aAAa,CACX,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,WAAW,EAAE,GACnB,oBAAoB,EAAE,CAAA;IAEzB;;;;;;;;OAQG;IACH,kBAAkB,CAAC,CACjB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAEnC;;;;;;;;;;;;;;;OAeG;IACH,oBAAoB,CAAC,CACnB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,wBAAwB,CAAC,CAAA;IAEpC;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CAAC,CACV,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,CAAC,EAAE,kBAAkB,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE7B;;;;;OAKG;IACH,gBAAgB,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3E;;;;;;;;OAQG;IACH,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CACzD;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA"}
@@ -9,5 +9,5 @@ export declare const name = "@lifi/perps-sdk";
9
9
  *
10
10
  * @public
11
11
  */
12
- export declare const version = "0.0.0-preview-5969841";
12
+ export declare const version = "0.0.0-preview-3f541402";
13
13
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,IAAI,oBAAoB,CAAA;AAErC;;;;GAIG;AACH,eAAO,MAAM,OAAO,0BAA0B,CAAA"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,IAAI,oBAAoB,CAAA;AAErC;;;;GAIG;AACH,eAAO,MAAM,OAAO,2BAA2B,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/perps-sdk",
3
- "version": "0.0.0-preview-5969841",
3
+ "version": "0.0.0-preview-3f541402",
4
4
  "description": "LI.FI Perps SDK for perpetuals trading",
5
5
  "homepage": "https://github.com/lifinance/perps-sdk",
6
6
  "bugs": {
@@ -46,7 +46,7 @@
46
46
  "big.js": "^7.0.1",
47
47
  "partysocket": "^1.1.19",
48
48
  "viem": "^2.55.18",
49
- "@lifi/perps-types": "^25.0.1"
49
+ "@lifi/perps-types": "^0.0.0-preview-3f541402"
50
50
  },
51
51
  "publishConfig": {
52
52
  "access": "public"
@@ -174,16 +174,27 @@ export const safeCalculateEffectiveLeverage = createSafeFunction(
174
174
  * margin_available = entryPrice × (1 / leverage - mmr)
175
175
  * liq_price = entryPrice - side × margin_available / (1 - mmr × side)
176
176
  *
177
+ * With `current`, the order of `size` adds to that position on the same side.
178
+ * The equity of the blended position at `entryPrice` is `current.margin`, the
179
+ * PnL of `current` at `entryPrice`, and the margin of the order. The margin
180
+ * available is that equity minus the maintenance margin of the blended size,
181
+ * and the formula above divides it by the blended size.
182
+ *
177
183
  * For existing positions, prefer `Position.liquidationPrice` from the venue.
178
184
  *
179
185
  * @param maintenanceMarginRate - Venue maintenance margin rate as a fraction
180
186
  * (`'0.01'` = 1%).
181
- * @returns The estimate, or `undefined` when `1 / leverage` is at or below
182
- * `maintenanceMarginRate`: the position opens at or past liquidation, so
183
- * the model has no price on the correct side of entry.
187
+ * @param size - Order size as a non-negative magnitude. Read only with
188
+ * `current`.
189
+ * @param current - Open isolated position on the same side that the order
190
+ * adds to. `margin` is its collateral net of unrealized PnL.
191
+ * @returns The estimate, or `undefined` when the margin above the
192
+ * maintenance requirement is not positive: the position opens at or past
193
+ * liquidation, so the model has no price on the correct side of entry.
184
194
  * @throws {PerpsError} `ValidationError` when an input does not match the
185
- * decimal pattern, `leverage` is zero, or `maintenanceMarginRate` gives a
186
- * zero denominator (`1` for a long, `-1` for a short).
195
+ * decimal pattern, `leverage` is zero, `maintenanceMarginRate` gives a
196
+ * zero denominator (`1` for a long, `-1` for a short), `current` comes
197
+ * without `size`, or `current.size + size` is not positive.
187
198
  * @public
188
199
  */
189
200
  export function estimateLiquidationPrice(params: {
@@ -191,6 +202,8 @@ export function estimateLiquidationPrice(params: {
191
202
  leverage: string
192
203
  isLong: boolean
193
204
  maintenanceMarginRate: string
205
+ size?: string
206
+ current?: { size: string; entryPrice: string; margin: string }
194
207
  }): string | undefined {
195
208
  const entryPrice = decimalStringToBig(params.entryPrice)
196
209
  const leverage = decimalStringToBig(params.leverage)
@@ -206,13 +219,38 @@ export function estimateLiquidationPrice(params: {
206
219
  `must not be ${params.isLong ? '1' : '-1'} for this side`
207
220
  )
208
221
  }
209
- const marginFractionAvailable = new DivBig(1).div(leverage).minus(mmr)
210
- if (marginFractionAvailable.lte(0)) {
222
+ if (params.current === undefined) {
223
+ const marginFractionAvailable = new DivBig(1).div(leverage).minus(mmr)
224
+ if (marginFractionAvailable.lte(0)) {
225
+ return undefined
226
+ }
227
+ const marginAvailable = marginFractionAvailable.times(entryPrice)
228
+ return bigToDecimalString(
229
+ entryPrice.minus(marginAvailable.times(side).div(denominator))
230
+ )
231
+ }
232
+ if (params.size === undefined) {
233
+ throw invalidInput('size', 'is required with `current`')
234
+ }
235
+ const addSize = decimalStringToBig(params.size)
236
+ const currentSize = decimalStringToBig(params.current.size)
237
+ const currentEntry = decimalStringToBig(params.current.entryPrice)
238
+ const currentMargin = decimalStringToBig(params.current.margin)
239
+ const totalSize = currentSize.plus(addSize)
240
+ if (totalSize.lte(0)) {
241
+ throw invalidInput('size + current.size', 'must be positive')
242
+ }
243
+ const equity = currentMargin
244
+ .plus(currentSize.times(entryPrice.minus(currentEntry)).times(side))
245
+ .plus(new DivBig(entryPrice).times(addSize).div(leverage))
246
+ const marginAvailablePerUnit = new DivBig(equity)
247
+ .minus(mmr.times(totalSize).times(entryPrice))
248
+ .div(totalSize)
249
+ if (marginAvailablePerUnit.lte(0)) {
211
250
  return undefined
212
251
  }
213
- const marginAvailable = marginFractionAvailable.times(entryPrice)
214
252
  return bigToDecimalString(
215
- entryPrice.minus(marginAvailable.times(side).div(denominator))
253
+ entryPrice.minus(marginAvailablePerUnit.times(side).div(denominator))
216
254
  )
217
255
  }
218
256
 
@@ -37,11 +37,10 @@ export interface DepositFlowLifiSwap {
37
37
  }
38
38
 
39
39
  /**
40
- * Fund an address that has no venue account yet, or an existing account on a
41
- * venue whose collateral no LI.FI route credits directly. Collateral and the
42
- * native gas to broadcast with are both needed on `chainId`, where the venue's
43
- * {@link ActionType.DEPOSIT} action stages the on-chain legs that credit the
44
- * account and open it when none exists.
40
+ * Fund an address that has no venue account yet. Collateral and the native gas
41
+ * to broadcast with are both needed on `chainId`, where the venue's
42
+ * {@link ActionType.DEPOSIT} action stages the on-chain legs that open the
43
+ * account.
45
44
  *
46
45
  * @public
47
46
  */
@@ -51,7 +50,7 @@ export interface DepositFlowFirstDepositPipeline {
51
50
  chainId: number
52
51
  /** Native gas asset needed to broadcast the deposit legs. */
53
52
  gasAsset: DeclaredDepositAsset
54
- /** Collateral asset the venue deposit credits. */
53
+ /** Collateral asset credited by the first deposit. */
55
54
  collateral: DeclaredDepositAsset
56
55
  /** Action type used to stage the deposit pipeline. */
57
56
  bridgeAction: ActionType.DEPOSIT
@@ -11,6 +11,7 @@ import type {
11
11
  AvailableToTrade,
12
12
  DecimalString,
13
13
  FillsResponse,
14
+ MarginMode,
14
15
  Market,
15
16
  MarketRef,
16
17
  MarketSettings,
@@ -160,7 +161,8 @@ export interface ActionSignerContribution {
160
161
  }
161
162
 
162
163
  /**
163
- * Inputs for {@link PerpsProviderPlugin.estimateLiquidationPrice}:
164
+ * Inputs for {@link PerpsProviderPlugin.estimateLiquidationPrice}: the order
165
+ * and, when the order adds to one, the open position on the market.
164
166
  * `leverage` is the user-selected leverage for the new position, `isLong`
165
167
  * carries direction.
166
168
  *
@@ -172,6 +174,14 @@ export interface LiquidationEstimateParams {
172
174
  leverage: string
173
175
  /** `true` for long, `false` for short. */
174
176
  isLong: boolean
177
+ marginMode: MarginMode
178
+ /**
179
+ * Order size in base-asset units. The estimate reads it only with
180
+ * `position`, to blend the order into that position.
181
+ */
182
+ size?: DecimalString
183
+ /** Open position on the market that the order joins. */
184
+ position?: Position
175
185
  }
176
186
 
177
187
  /**
@@ -633,16 +643,20 @@ export interface PerpsProviderPlugin {
633
643
  }
634
644
 
635
645
  /**
636
- * Estimate the liquidation price of a new isolated position on `market`
637
- * using the venue's margin model. A preview helper — for existing
646
+ * Estimate the liquidation price of the position that the order leaves on
647
+ * `market` using the venue's margin model: a new position, or the blend of
648
+ * the order into `params.position`. A preview helper — for existing
638
649
  * positions, prefer `Position.liquidationPrice` from the venue. Pure —
639
650
  * does no I/O.
640
651
  *
641
652
  * @returns The estimated liquidation price, or `undefined` when `market`
642
- * lacks the margin metadata the model needs or `leverage` leaves no
643
- * margin above the maintenance requirement.
653
+ * lacks the margin metadata the model needs, `leverage` leaves no
654
+ * margin above the maintenance requirement, or the venue model cannot
655
+ * give a correct price for the margin mode and position, such as a cross
656
+ * position whose liquidation depends on the whole account.
644
657
  * @throws {PerpsError} `ValidationError` when an input does not match the
645
- * decimal pattern or is degenerate, such as a zero leverage.
658
+ * decimal pattern or is degenerate, such as a zero leverage or a
659
+ * `position` without a `size`.
646
660
  */
647
661
  estimateLiquidationPrice(
648
662
  market: PerpsMarket,
package/src/version.ts CHANGED
@@ -10,4 +10,4 @@ export const name = '@lifi/perps-sdk'
10
10
  *
11
11
  * @public
12
12
  */
13
- export const version = '0.0.0-preview-5969841'
13
+ export const version = '0.0.0-preview-3f541402'