@drift-labs/sdk 2.145.0 → 2.146.0-alpha.13

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 (99) hide show
  1. package/.env +4 -0
  2. package/VERSION +1 -1
  3. package/lib/browser/accounts/grpcMultiUserAccountSubscriber.js +8 -1
  4. package/lib/browser/accounts/webSocketProgramAccountSubscriberV2.d.ts +99 -7
  5. package/lib/browser/accounts/webSocketProgramAccountSubscriberV2.js +435 -144
  6. package/lib/browser/adminClient.d.ts +5 -1
  7. package/lib/browser/adminClient.js +57 -23
  8. package/lib/browser/constants/numericConstants.d.ts +2 -0
  9. package/lib/browser/constants/numericConstants.js +5 -1
  10. package/lib/browser/constants/perpMarkets.js +0 -2
  11. package/lib/browser/decode/user.js +4 -0
  12. package/lib/browser/driftClient.d.ts +25 -10
  13. package/lib/browser/driftClient.js +238 -41
  14. package/lib/browser/driftClientConfig.d.ts +7 -2
  15. package/lib/browser/idl/drift.json +245 -22
  16. package/lib/browser/index.d.ts +4 -0
  17. package/lib/browser/index.js +9 -1
  18. package/lib/browser/marginCalculation.d.ts +86 -0
  19. package/lib/browser/marginCalculation.js +209 -0
  20. package/lib/browser/math/margin.d.ts +1 -1
  21. package/lib/browser/math/margin.js +8 -1
  22. package/lib/browser/math/position.d.ts +1 -0
  23. package/lib/browser/math/position.js +10 -2
  24. package/lib/browser/math/spotPosition.d.ts +1 -1
  25. package/lib/browser/math/spotPosition.js +3 -2
  26. package/lib/browser/math/superStake.d.ts +3 -2
  27. package/lib/browser/types.d.ts +13 -0
  28. package/lib/browser/types.js +12 -1
  29. package/lib/browser/user.d.ts +59 -11
  30. package/lib/browser/user.js +348 -43
  31. package/lib/node/accounts/grpcMultiUserAccountSubscriber.d.ts.map +1 -1
  32. package/lib/node/accounts/grpcMultiUserAccountSubscriber.js +8 -1
  33. package/lib/node/accounts/webSocketProgramAccountSubscriberV2.d.ts +99 -7
  34. package/lib/node/accounts/webSocketProgramAccountSubscriberV2.d.ts.map +1 -1
  35. package/lib/node/accounts/webSocketProgramAccountSubscriberV2.js +435 -144
  36. package/lib/node/adminClient.d.ts +5 -1
  37. package/lib/node/adminClient.d.ts.map +1 -1
  38. package/lib/node/adminClient.js +57 -23
  39. package/lib/node/constants/numericConstants.d.ts +2 -0
  40. package/lib/node/constants/numericConstants.d.ts.map +1 -1
  41. package/lib/node/constants/numericConstants.js +5 -1
  42. package/lib/node/constants/perpMarkets.d.ts.map +1 -1
  43. package/lib/node/constants/perpMarkets.js +0 -2
  44. package/lib/node/decode/user.d.ts.map +1 -1
  45. package/lib/node/decode/user.js +4 -0
  46. package/lib/node/driftClient.d.ts +25 -10
  47. package/lib/node/driftClient.d.ts.map +1 -1
  48. package/lib/node/driftClient.js +238 -41
  49. package/lib/node/driftClientConfig.d.ts +7 -2
  50. package/lib/node/driftClientConfig.d.ts.map +1 -1
  51. package/lib/node/idl/drift.json +245 -22
  52. package/lib/node/index.d.ts +4 -0
  53. package/lib/node/index.d.ts.map +1 -1
  54. package/lib/node/index.js +9 -1
  55. package/lib/node/marginCalculation.d.ts +87 -0
  56. package/lib/node/marginCalculation.d.ts.map +1 -0
  57. package/lib/node/marginCalculation.js +209 -0
  58. package/lib/node/math/margin.d.ts +1 -1
  59. package/lib/node/math/margin.d.ts.map +1 -1
  60. package/lib/node/math/margin.js +8 -1
  61. package/lib/node/math/position.d.ts +1 -0
  62. package/lib/node/math/position.d.ts.map +1 -1
  63. package/lib/node/math/position.js +10 -2
  64. package/lib/node/math/spotPosition.d.ts +1 -1
  65. package/lib/node/math/spotPosition.d.ts.map +1 -1
  66. package/lib/node/math/spotPosition.js +3 -2
  67. package/lib/node/math/superStake.d.ts +3 -2
  68. package/lib/node/math/superStake.d.ts.map +1 -1
  69. package/lib/node/types.d.ts +13 -0
  70. package/lib/node/types.d.ts.map +1 -1
  71. package/lib/node/types.js +12 -1
  72. package/lib/node/user.d.ts +59 -11
  73. package/lib/node/user.d.ts.map +1 -1
  74. package/lib/node/user.js +348 -43
  75. package/package.json +1 -1
  76. package/scripts/deposit-isolated-positions.ts +110 -0
  77. package/scripts/single-grpc-client-test.ts +71 -21
  78. package/scripts/withdraw-isolated-positions.ts +174 -0
  79. package/src/accounts/grpcMultiUserAccountSubscriber.ts +8 -1
  80. package/src/accounts/webSocketProgramAccountSubscriberV2.ts +566 -167
  81. package/src/adminClient.ts +74 -25
  82. package/src/constants/numericConstants.ts +5 -0
  83. package/src/constants/perpMarkets.ts +0 -3
  84. package/src/decode/user.ts +7 -1
  85. package/src/driftClient.ts +465 -52
  86. package/src/driftClientConfig.ts +15 -8
  87. package/src/idl/drift.json +246 -23
  88. package/src/index.ts +4 -0
  89. package/src/margin/README.md +143 -0
  90. package/src/marginCalculation.ts +306 -0
  91. package/src/math/margin.ts +13 -1
  92. package/src/math/position.ts +12 -2
  93. package/src/math/spotPosition.ts +6 -2
  94. package/src/types.ts +16 -0
  95. package/src/user.ts +623 -81
  96. package/tests/amm/test.ts +1 -1
  97. package/tests/dlob/helpers.ts +6 -3
  98. package/tests/user/getMarginCalculation.ts +405 -0
  99. package/tests/user/test.ts +0 -7
@@ -0,0 +1,209 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MarginCalculation = exports.IsolatedMarginCalculation = exports.MarginContext = exports.MarketIdentifier = void 0;
4
+ const anchor_1 = require("@coral-xyz/anchor");
5
+ const numericConstants_1 = require("./constants/numericConstants");
6
+ const types_1 = require("./types");
7
+ class MarketIdentifier {
8
+ constructor(marketType, marketIndex) {
9
+ this.marketType = marketType;
10
+ this.marketIndex = marketIndex;
11
+ }
12
+ static spot(marketIndex) {
13
+ return new MarketIdentifier(types_1.MarketType.SPOT, marketIndex);
14
+ }
15
+ static perp(marketIndex) {
16
+ return new MarketIdentifier(types_1.MarketType.PERP, marketIndex);
17
+ }
18
+ equals(other) {
19
+ return (!!other &&
20
+ this.marketType === other.marketType &&
21
+ this.marketIndex === other.marketIndex);
22
+ }
23
+ }
24
+ exports.MarketIdentifier = MarketIdentifier;
25
+ class MarginContext {
26
+ constructor(marginType) {
27
+ this.marginType = marginType;
28
+ this.mode = { type: 'Standard' };
29
+ this.strict = false;
30
+ this.ignoreInvalidDepositOracles = false;
31
+ this.marginBuffer = new anchor_1.BN(0);
32
+ }
33
+ static standard(marginType) {
34
+ return new MarginContext(marginType);
35
+ }
36
+ static liquidation(marginBuffer) {
37
+ const ctx = new MarginContext('Maintenance');
38
+ ctx.mode = { type: 'Liquidation' };
39
+ ctx.marginBuffer = marginBuffer !== null && marginBuffer !== void 0 ? marginBuffer : new anchor_1.BN(0);
40
+ return ctx;
41
+ }
42
+ strictMode(strict) {
43
+ this.strict = strict;
44
+ return this;
45
+ }
46
+ ignoreInvalidDeposits(ignore) {
47
+ this.ignoreInvalidDepositOracles = ignore;
48
+ return this;
49
+ }
50
+ setMarginBuffer(buffer) {
51
+ this.marginBuffer = buffer !== null && buffer !== void 0 ? buffer : new anchor_1.BN(0);
52
+ return this;
53
+ }
54
+ setMarginRatioOverride(ratio) {
55
+ this.marginRatioOverride = ratio;
56
+ return this;
57
+ }
58
+ }
59
+ exports.MarginContext = MarginContext;
60
+ class IsolatedMarginCalculation {
61
+ constructor() {
62
+ this.marginRequirement = new anchor_1.BN(0);
63
+ this.totalCollateral = new anchor_1.BN(0);
64
+ this.totalCollateralBuffer = new anchor_1.BN(0);
65
+ this.marginRequirementPlusBuffer = new anchor_1.BN(0);
66
+ }
67
+ getTotalCollateralPlusBuffer() {
68
+ return this.totalCollateral.add(this.totalCollateralBuffer);
69
+ }
70
+ meetsMarginRequirement() {
71
+ return this.totalCollateral.gte(this.marginRequirement);
72
+ }
73
+ meetsMarginRequirementWithBuffer() {
74
+ return this.getTotalCollateralPlusBuffer().gte(this.marginRequirementPlusBuffer);
75
+ }
76
+ marginShortage() {
77
+ const shortage = this.marginRequirementPlusBuffer.sub(this.getTotalCollateralPlusBuffer());
78
+ return shortage.isNeg() ? new anchor_1.BN(0) : shortage;
79
+ }
80
+ }
81
+ exports.IsolatedMarginCalculation = IsolatedMarginCalculation;
82
+ class MarginCalculation {
83
+ constructor(context) {
84
+ this.context = context;
85
+ this.totalCollateral = new anchor_1.BN(0);
86
+ this.totalCollateralBuffer = new anchor_1.BN(0);
87
+ this.marginRequirement = new anchor_1.BN(0);
88
+ this.marginRequirementPlusBuffer = new anchor_1.BN(0);
89
+ this.isolatedMarginCalculations = new Map();
90
+ this.numSpotLiabilities = 0;
91
+ this.numPerpLiabilities = 0;
92
+ this.allDepositOraclesValid = true;
93
+ this.allLiabilityOraclesValid = true;
94
+ this.withPerpIsolatedLiability = false;
95
+ this.withSpotIsolatedLiability = false;
96
+ this.totalSpotLiabilityValue = new anchor_1.BN(0);
97
+ this.totalPerpLiabilityValue = new anchor_1.BN(0);
98
+ this.trackedMarketMarginRequirement = new anchor_1.BN(0);
99
+ this.fuelDeposits = 0;
100
+ this.fuelBorrows = 0;
101
+ this.fuelPositions = 0;
102
+ }
103
+ addCrossMarginTotalCollateral(delta) {
104
+ this.totalCollateral = this.totalCollateral.add(delta);
105
+ if (this.context.marginBuffer.gt(new anchor_1.BN(0)) && delta.isNeg()) {
106
+ this.totalCollateralBuffer = this.totalCollateralBuffer.add(delta.mul(this.context.marginBuffer).div(numericConstants_1.MARGIN_PRECISION));
107
+ }
108
+ }
109
+ addCrossMarginRequirement(marginRequirement, liabilityValue) {
110
+ this.marginRequirement = this.marginRequirement.add(marginRequirement);
111
+ if (this.context.marginBuffer.gt(new anchor_1.BN(0))) {
112
+ this.marginRequirementPlusBuffer = this.marginRequirementPlusBuffer.add(marginRequirement.add(liabilityValue.mul(this.context.marginBuffer).div(numericConstants_1.MARGIN_PRECISION)));
113
+ }
114
+ }
115
+ addIsolatedMarginCalculation(marketIndex, depositValue, pnl, liabilityValue, marginRequirement) {
116
+ const totalCollateral = depositValue.add(pnl);
117
+ const totalCollateralBuffer = this.context.marginBuffer.gt(new anchor_1.BN(0)) && pnl.isNeg()
118
+ ? pnl.mul(this.context.marginBuffer).div(numericConstants_1.MARGIN_PRECISION)
119
+ : new anchor_1.BN(0);
120
+ const marginRequirementPlusBuffer = this.context.marginBuffer.gt(new anchor_1.BN(0))
121
+ ? marginRequirement.add(liabilityValue.mul(this.context.marginBuffer).div(numericConstants_1.MARGIN_PRECISION))
122
+ : new anchor_1.BN(0);
123
+ const iso = new IsolatedMarginCalculation();
124
+ iso.marginRequirement = marginRequirement;
125
+ iso.totalCollateral = totalCollateral;
126
+ iso.totalCollateralBuffer = totalCollateralBuffer;
127
+ iso.marginRequirementPlusBuffer = marginRequirementPlusBuffer;
128
+ this.isolatedMarginCalculations.set(marketIndex, iso);
129
+ }
130
+ addSpotLiability() {
131
+ this.numSpotLiabilities += 1;
132
+ }
133
+ addPerpLiability() {
134
+ this.numPerpLiabilities += 1;
135
+ }
136
+ addSpotLiabilityValue(spotLiabilityValue) {
137
+ this.totalSpotLiabilityValue =
138
+ this.totalSpotLiabilityValue.add(spotLiabilityValue);
139
+ }
140
+ addPerpLiabilityValue(perpLiabilityValue) {
141
+ this.totalPerpLiabilityValue =
142
+ this.totalPerpLiabilityValue.add(perpLiabilityValue);
143
+ }
144
+ updateAllDepositOraclesValid(valid) {
145
+ this.allDepositOraclesValid = this.allDepositOraclesValid && valid;
146
+ }
147
+ updateAllLiabilityOraclesValid(valid) {
148
+ this.allLiabilityOraclesValid = this.allLiabilityOraclesValid && valid;
149
+ }
150
+ updateWithSpotIsolatedLiability(isolated) {
151
+ this.withSpotIsolatedLiability = this.withSpotIsolatedLiability || isolated;
152
+ }
153
+ updateWithPerpIsolatedLiability(isolated) {
154
+ this.withPerpIsolatedLiability = this.withPerpIsolatedLiability || isolated;
155
+ }
156
+ validateNumSpotLiabilities() {
157
+ if (this.numSpotLiabilities > 0 && this.marginRequirement.eq(new anchor_1.BN(0))) {
158
+ throw new Error('InvalidMarginRatio: num_spot_liabilities>0 but margin_requirement=0');
159
+ }
160
+ }
161
+ getNumOfLiabilities() {
162
+ return this.numSpotLiabilities + this.numPerpLiabilities;
163
+ }
164
+ getCrossTotalCollateralPlusBuffer() {
165
+ return this.totalCollateral.add(this.totalCollateralBuffer);
166
+ }
167
+ meetsCrossMarginRequirement() {
168
+ return this.totalCollateral.gte(this.marginRequirement);
169
+ }
170
+ meetsCrossMarginRequirementWithBuffer() {
171
+ return this.getCrossTotalCollateralPlusBuffer().gte(this.marginRequirementPlusBuffer);
172
+ }
173
+ meetsMarginRequirement() {
174
+ if (!this.meetsCrossMarginRequirement())
175
+ return false;
176
+ for (const [, iso] of this.isolatedMarginCalculations) {
177
+ if (!iso.meetsMarginRequirement())
178
+ return false;
179
+ }
180
+ return true;
181
+ }
182
+ meetsMarginRequirementWithBuffer() {
183
+ if (!this.meetsCrossMarginRequirementWithBuffer())
184
+ return false;
185
+ for (const [, iso] of this.isolatedMarginCalculations) {
186
+ if (!iso.meetsMarginRequirementWithBuffer())
187
+ return false;
188
+ }
189
+ return true;
190
+ }
191
+ getCrossFreeCollateral() {
192
+ const free = this.totalCollateral.sub(this.marginRequirement);
193
+ return free.isNeg() ? new anchor_1.BN(0) : free;
194
+ }
195
+ getIsolatedFreeCollateral(marketIndex) {
196
+ const iso = this.isolatedMarginCalculations.get(marketIndex);
197
+ if (!iso)
198
+ throw new Error('InvalidMarginCalculation: missing isolated calc');
199
+ const free = iso.totalCollateral.sub(iso.marginRequirement);
200
+ return free.isNeg() ? new anchor_1.BN(0) : free;
201
+ }
202
+ getIsolatedMarginCalculation(marketIndex) {
203
+ return this.isolatedMarginCalculations.get(marketIndex);
204
+ }
205
+ hasIsolatedMarginCalculation(marketIndex) {
206
+ return this.isolatedMarginCalculations.has(marketIndex);
207
+ }
208
+ }
209
+ exports.MarginCalculation = MarginCalculation;
@@ -19,7 +19,7 @@ export declare function calculateOraclePriceForPerpMargin(perpPosition: PerpPosi
19
19
  */
20
20
  export declare function calculateBaseAssetValueWithOracle(market: PerpMarketAccount, perpPosition: PerpPosition, oraclePriceData: Pick<OraclePriceData, 'price'>, includeOpenOrders?: boolean): BN;
21
21
  export declare function calculateWorstCaseBaseAssetAmount(perpPosition: PerpPosition, perpMarket: PerpMarketAccount, oraclePrice: BN): BN;
22
- export declare function calculateWorstCasePerpLiabilityValue(perpPosition: PerpPosition, perpMarket: PerpMarketAccount, oraclePrice: BN): {
22
+ export declare function calculateWorstCasePerpLiabilityValue(perpPosition: PerpPosition, perpMarket: PerpMarketAccount, oraclePrice: BN, includeOpenOrders?: boolean): {
23
23
  worstCaseBaseAssetAmount: BN;
24
24
  worstCaseLiabilityValue: BN;
25
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"margin.d.ts","sourceRoot":"","sources":["../../../src/math/margin.ts"],"names":[],"mappings":";AAcA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EACN,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAK5C,wBAAgB,mCAAmC,CAClD,IAAI,EAAE,EAAE,EAAE,wBAAwB;AAClC,SAAS,EAAE,EAAE,EACb,eAAe,EAAE,EAAE,EACnB,SAAS,EAAE,EAAE,EACb,SAAS,UAAO,GACd,EAAE,CA4BJ;AAED,wBAAgB,gCAAgC,CAC/C,IAAI,EAAE,EAAE,EAAE,wBAAwB;AAClC,SAAS,EAAE,EAAE,EACb,WAAW,EAAE,EAAE,GACb,EAAE,CAuBJ;AAED,wBAAgB,iCAAiC,CAChD,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,iBAAiB,EACzB,eAAe,EAAE,eAAe,GAC9B,EAAE,CAoBJ;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAChD,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,EAC/C,iBAAiB,UAAQ,GACvB,EAAE,CAeJ;AAED,wBAAgB,iCAAiC,CAChD,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,iBAAiB,EAC7B,WAAW,EAAE,EAAE,GACb,EAAE,CAMJ;AAED,wBAAgB,oCAAoC,CACnD,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,iBAAiB,EAC7B,WAAW,EAAE,EAAE,GACb;IAAE,wBAAwB,EAAE,EAAE,CAAC;IAAC,uBAAuB,EAAE,EAAE,CAAA;CAAE,CA2B/D;AAED,wBAAgB,2BAA2B,CAC1C,eAAe,EAAE,EAAE,EACnB,KAAK,EAAE,EAAE,EACT,kBAAkB,EAAE,OAAO,GACzB,EAAE,CAaJ;AAED;;;;;GAKG;AACH,wBAAgB,mCAAmC,CAClD,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,MAAM,EACzB,QAAQ,EAAE,EAAE,EACZ,kBAAkB,CAAC,EAAE,MAAM,EAC3B,oBAAoB,CAAC,EAAE,OAAO,EAC9B,UAAU,CAAC,EAAE,EAAE,GACb,EAAE,CA0BJ;AAED;;;;GAIG;AACH,wBAAgB,0CAA0C,CACzD,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,MAAM,EACzB,QAAQ,EAAE,EAAE,EACZ,eAAe,EAAE,MAAM,EACvB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,oBAAoB,CAAC,EAAE,OAAO,EAC9B,aAAa,CAAC,EAAE,EAAE,GAChB,EAAE,CAgCJ;AAED,wBAAgB,iCAAiC,CAChD,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,EAAE,GACV,EAAE,CAuBJ;AAED,wBAAgB,yBAAyB,CACxC,cAAc,EAAE,EAAE,EAClB,mBAAmB,EAAE,EAAE,EACvB,WAAW,EAAE,EAAE,GACb,EAAE,CAYJ;AAED,wBAAgB,6BAA6B,CAC5C,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,SAAS,EACzB,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,MAAM,EACzB,SAAS,EAAE,iBAAiB,GAC1B;IAAE,SAAS,EAAE,EAAE,CAAC;IAAC,qBAAqB,EAAE,EAAE,CAAA;CAAE,CAmB9C;AAED,wBAAgB,8CAA8C,CAC7D,qBAAqB,EAAE,EAAE,EACzB,kBAAkB,EAAE,EAAE,EACtB,kBAAkB,EAAE,EAAE,GACpB,EAAE,CA4BJ"}
1
+ {"version":3,"file":"margin.d.ts","sourceRoot":"","sources":["../../../src/math/margin.ts"],"names":[],"mappings":"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"}
@@ -89,7 +89,14 @@ function calculateWorstCaseBaseAssetAmount(perpPosition, perpMarket, oraclePrice
89
89
  return calculateWorstCasePerpLiabilityValue(perpPosition, perpMarket, oraclePrice).worstCaseBaseAssetAmount;
90
90
  }
91
91
  exports.calculateWorstCaseBaseAssetAmount = calculateWorstCaseBaseAssetAmount;
92
- function calculateWorstCasePerpLiabilityValue(perpPosition, perpMarket, oraclePrice) {
92
+ function calculateWorstCasePerpLiabilityValue(perpPosition, perpMarket, oraclePrice, includeOpenOrders = true) {
93
+ // return early if no open orders required
94
+ if (!includeOpenOrders) {
95
+ return {
96
+ worstCaseBaseAssetAmount: perpPosition.baseAssetAmount,
97
+ worstCaseLiabilityValue: calculatePerpLiabilityValue(perpPosition.baseAssetAmount, oraclePrice, (0, types_1.isVariant)(perpMarket.contractType, 'prediction')),
98
+ };
99
+ }
93
100
  const allBids = perpPosition.baseAssetAmount.add(perpPosition.openBids);
94
101
  const allAsks = perpPosition.baseAssetAmount.add(perpPosition.openAsks);
95
102
  const isPredictionMarket = (0, types_1.isVariant)(perpMarket.contractType, 'prediction');
@@ -46,6 +46,7 @@ export declare function calculateUnsettledFundingPnl(market: PerpMarketAccount,
46
46
  */
47
47
  export declare function calculatePositionFundingPNL(market: PerpMarketAccount, perpPosition: PerpPosition): BN;
48
48
  export declare function positionIsAvailable(position: PerpPosition): boolean;
49
+ export declare function positionIsBeingLiquidated(position: PerpPosition): boolean;
49
50
  /**
50
51
  *
51
52
  * @param userPosition
@@ -1 +1 @@
1
- {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAUvC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EACN,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,MAAM,UAAU,CAAC;AAUlB;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,SAAS,UAAO,EAChB,UAAU,UAAQ,EAClB,UAAU,CAAC,EAAE,EAAE,GACb,EAAE,CAoDJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,WAAW,SAAQ,EACnB,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,GAC7C,EAAE,CAyBJ;AAED,wBAAgB,qBAAqB,CACpC,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,iBAAiB,EAC7B,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,GAC7C,EAAE,CAyBJ;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,gBAAgB,UAAO,GACrB,EAAE,CAeJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC3C,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,GACxB,EAAE,CAoBJ;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAC1C,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,GACxB,EAAE,CAEJ;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAOnE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,YAAY,GAAG,EAAE,CAUtE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,YAAY,GAAG,EAAE,CAUlE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CACjC,YAAY,EAAE,YAAY,EAC1B,iBAAiB,UAAQ,GACvB,EAAE,CAWJ;AAED,wBAAgB,oBAAoB,CACnC,YAAY,EAAE,YAAY,GACxB,iBAAiB,CAInB;AAED,wBAAgB,wBAAwB,CACvC,YAAY,EAAE,YAAY,GACxB,iBAAiB,CAInB;AAED,wBAAgB,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAEnE;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAM7D"}
1
+ {"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../src/math/position.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAUvC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EACN,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EAEjB,MAAM,UAAU,CAAC;AAUlB;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,SAAS,UAAO,EAChB,UAAU,UAAQ,EAClB,UAAU,CAAC,EAAE,EAAE,GACb,EAAE,CAoDJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,WAAW,SAAQ,EACnB,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,GAC7C,EAAE,CAwBJ;AAED,wBAAgB,qBAAqB,CACpC,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,iBAAiB,EAC7B,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,GAC7C,EAAE,CAyBJ;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,gBAAgB,UAAO,GACrB,EAAE,CAeJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC3C,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,GACxB,EAAE,CAoBJ;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAC1C,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,GACxB,EAAE,CAEJ;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CASnE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAMzE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,YAAY,GAAG,EAAE,CAUtE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,YAAY,GAAG,EAAE,CAUlE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CACjC,YAAY,EAAE,YAAY,EAC1B,iBAAiB,UAAQ,GACvB,EAAE,CAWJ;AAED,wBAAgB,oBAAoB,CACnC,YAAY,EAAE,YAAY,GACxB,iBAAiB,CAInB;AAED,wBAAgB,wBAAwB,CACvC,YAAY,EAAE,YAAY,GACxB,iBAAiB,CAInB;AAED,wBAAgB,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAEnE;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAM7D"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hasOpenOrders = exports.isEmptyPosition = exports.positionCurrentDirection = exports.findDirectionToClose = exports.calculateCostBasis = exports.calculateEntryPrice = exports.calculateBreakEvenPrice = exports.positionIsAvailable = exports.calculatePositionFundingPNL = exports.calculateUnsettledFundingPnl = exports.calculateFeesAndFundingPnl = exports.calculateClaimablePnl = exports.calculatePositionPNL = exports.calculateBaseAssetValue = void 0;
3
+ exports.hasOpenOrders = exports.isEmptyPosition = exports.positionCurrentDirection = exports.findDirectionToClose = exports.calculateCostBasis = exports.calculateEntryPrice = exports.calculateBreakEvenPrice = exports.positionIsBeingLiquidated = exports.positionIsAvailable = exports.calculatePositionFundingPNL = exports.calculateUnsettledFundingPnl = exports.calculateFeesAndFundingPnl = exports.calculateClaimablePnl = exports.calculatePositionPNL = exports.calculateBaseAssetValue = void 0;
4
4
  const anchor_1 = require("@coral-xyz/anchor");
5
5
  const numericConstants_1 = require("../constants/numericConstants");
6
6
  const types_1 = require("../types");
@@ -149,9 +149,17 @@ function positionIsAvailable(position) {
149
149
  return (position.baseAssetAmount.eq(numericConstants_1.ZERO) &&
150
150
  position.openOrders === 0 &&
151
151
  position.quoteAssetAmount.eq(numericConstants_1.ZERO) &&
152
- position.lpShares.eq(numericConstants_1.ZERO));
152
+ position.lpShares.eq(numericConstants_1.ZERO) &&
153
+ position.isolatedPositionScaledBalance.eq(numericConstants_1.ZERO) &&
154
+ !positionIsBeingLiquidated(position));
153
155
  }
154
156
  exports.positionIsAvailable = positionIsAvailable;
157
+ function positionIsBeingLiquidated(position) {
158
+ return ((position.positionFlag &
159
+ (types_1.PositionFlag.BeingLiquidated | types_1.PositionFlag.Bankruptcy)) >
160
+ 0);
161
+ }
162
+ exports.positionIsBeingLiquidated = positionIsBeingLiquidated;
155
163
  /**
156
164
  *
157
165
  * @param userPosition
@@ -11,7 +11,7 @@ export type OrderFillSimulation = {
11
11
  weightedTokenValue: BN;
12
12
  freeCollateralContribution: any;
13
13
  };
14
- export declare function getWorstCaseTokenAmounts(spotPosition: SpotPosition, spotMarketAccount: SpotMarketAccount, strictOraclePrice: StrictOraclePrice, marginCategory: MarginCategory, customMarginRatio?: number): OrderFillSimulation;
14
+ export declare function getWorstCaseTokenAmounts(spotPosition: SpotPosition, spotMarketAccount: SpotMarketAccount, strictOraclePrice: StrictOraclePrice, marginCategory: MarginCategory, customMarginRatio?: number, includeOpenOrders?: boolean): OrderFillSimulation;
15
15
  export declare function calculateWeightedTokenValue(tokenAmount: BN, tokenValue: BN, oraclePrice: BN, spotMarket: SpotMarketAccount, marginCategory: MarginCategory, customMarginRatio?: number): {
16
16
  weight: BN;
17
17
  weightedTokenValue: BN;
@@ -1 +1 @@
1
- {"version":3,"file":"spotPosition.d.ts","sourceRoot":"","sources":["../../../src/math/spotPosition.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAM3E,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AASvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAEvE;AAED,MAAM,MAAM,mBAAmB,GAAG;IACjC,WAAW,EAAE,EAAE,CAAC;IAChB,WAAW,EAAE,EAAE,CAAC;IAChB,UAAU,EAAE,EAAE,CAAC;IACf,MAAM,EAAE,EAAE,CAAC;IACX,kBAAkB,EAAE,EAAE,CAAC;IACvB,0BAA0B,MAAC;CAC3B,CAAC;AAEF,wBAAgB,wBAAwB,CACvC,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,iBAAiB,EAAE,iBAAiB,EACpC,cAAc,EAAE,cAAc,EAC9B,iBAAiB,CAAC,EAAE,MAAM,GACxB,mBAAmB,CA+DrB;AAED,wBAAgB,2BAA2B,CAC1C,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,EAAE,EACd,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,cAAc,EAC9B,iBAAiB,CAAC,EAAE,MAAM,GACxB;IAAE,MAAM,EAAE,EAAE,CAAC;IAAC,kBAAkB,EAAE,EAAE,CAAA;CAAE,CAqCxC;AAED,wBAAgB,iBAAiB,CAChC,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,EAAE,EACd,UAAU,EAAE,EAAE,EACd,iBAAiB,EAAE,iBAAiB,EACpC,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,cAAc,EAC9B,iBAAiB,CAAC,EAAE,MAAM,GACxB,mBAAmB,CA4BrB"}
1
+ {"version":3,"file":"spotPosition.d.ts","sourceRoot":"","sources":["../../../src/math/spotPosition.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAM3E,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AASvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAEvE;AAED,MAAM,MAAM,mBAAmB,GAAG;IACjC,WAAW,EAAE,EAAE,CAAC;IAChB,WAAW,EAAE,EAAE,CAAC;IAChB,UAAU,EAAE,EAAE,CAAC;IACf,MAAM,EAAE,EAAE,CAAC;IACX,kBAAkB,EAAE,EAAE,CAAC;IACvB,0BAA0B,MAAC;CAC3B,CAAC;AAEF,wBAAgB,wBAAwB,CACvC,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,iBAAiB,EAAE,iBAAiB,EACpC,cAAc,EAAE,cAAc,EAC9B,iBAAiB,CAAC,EAAE,MAAM,EAC1B,iBAAiB,GAAE,OAAc,GAC/B,mBAAmB,CAkErB;AAED,wBAAgB,2BAA2B,CAC1C,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,EAAE,EACd,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,cAAc,EAC9B,iBAAiB,CAAC,EAAE,MAAM,GACxB;IAAE,MAAM,EAAE,EAAE,CAAC;IAAC,kBAAkB,EAAE,EAAE,CAAA;CAAE,CAqCxC;AAED,wBAAgB,iBAAiB,CAChC,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,EAAE,EACd,UAAU,EAAE,EAAE,EACd,iBAAiB,EAAE,iBAAiB,EACpC,UAAU,EAAE,iBAAiB,EAC7B,cAAc,EAAE,cAAc,EAC9B,iBAAiB,CAAC,EAAE,MAAM,GACxB,mBAAmB,CA4BrB"}
@@ -8,10 +8,11 @@ function isSpotPositionAvailable(position) {
8
8
  return position.scaledBalance.eq(numericConstants_1.ZERO) && position.openOrders === 0;
9
9
  }
10
10
  exports.isSpotPositionAvailable = isSpotPositionAvailable;
11
- function getWorstCaseTokenAmounts(spotPosition, spotMarketAccount, strictOraclePrice, marginCategory, customMarginRatio) {
11
+ function getWorstCaseTokenAmounts(spotPosition, spotMarketAccount, strictOraclePrice, marginCategory, customMarginRatio, includeOpenOrders = true) {
12
12
  const tokenAmount = (0, spotBalance_1.getSignedTokenAmount)((0, spotBalance_1.getTokenAmount)(spotPosition.scaledBalance, spotMarketAccount, spotPosition.balanceType), spotPosition.balanceType);
13
13
  const tokenValue = (0, spotBalance_1.getStrictTokenValue)(tokenAmount, spotMarketAccount.decimals, strictOraclePrice);
14
- if (spotPosition.openBids.eq(numericConstants_1.ZERO) && spotPosition.openAsks.eq(numericConstants_1.ZERO)) {
14
+ if ((spotPosition.openBids.eq(numericConstants_1.ZERO) && spotPosition.openAsks.eq(numericConstants_1.ZERO)) ||
15
+ !includeOpenOrders) {
15
16
  const { weight, weightedTokenValue } = calculateWeightedTokenValue(tokenAmount, tokenValue, strictOraclePrice.current, spotMarketAccount, marginCategory, customMarginRatio);
16
17
  return {
17
18
  tokenAmount,
@@ -5,6 +5,7 @@ import { DriftClient } from '../driftClient';
5
5
  import { BN } from '@coral-xyz/anchor';
6
6
  import { User } from '../user';
7
7
  import { DepositRecord } from '../types';
8
+ import fetch from 'node-fetch';
8
9
  export type BSOL_STATS_API_RESPONSE = {
9
10
  success: boolean;
10
11
  stats?: {
@@ -27,8 +28,8 @@ export type BSOL_EMISSIONS_API_RESPONSE = {
27
28
  lend: number;
28
29
  };
29
30
  };
30
- export declare function fetchBSolMetrics(): Promise<any>;
31
- export declare function fetchBSolDriftEmissions(): Promise<any>;
31
+ export declare function fetchBSolMetrics(): Promise<fetch.Response>;
32
+ export declare function fetchBSolDriftEmissions(): Promise<fetch.Response>;
32
33
  export declare function findBestSuperStakeIxs({ marketIndex, amount, jupiterClient, driftClient, userAccountPublicKey, price, forceMarinade, onlyDirectRoutes, jupiterQuote, }: {
33
34
  marketIndex: number;
34
35
  amount: BN;
@@ -1 +1 @@
1
- {"version":3,"file":"superStake.d.ts","sourceRoot":"","sources":["../../../src/math/superStake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"superStake.d.ts","sourceRoot":"","sources":["../../../src/math/superStake.ts"],"names":[],"mappings":"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"}
@@ -696,6 +696,9 @@ export type SpotBankruptcyRecord = {
696
696
  cumulativeDepositInterestDelta: BN;
697
697
  ifPayment: BN;
698
698
  };
699
+ export declare class LiquidationBitFlag {
700
+ static readonly IsolatedPosition = 1;
701
+ }
699
702
  export type SettlePnlRecord = {
700
703
  ts: BN;
701
704
  user: PublicKey;
@@ -1191,6 +1194,8 @@ export type PerpPosition = {
1191
1194
  lastBaseAssetAmountPerLp: BN;
1192
1195
  lastQuoteAssetAmountPerLp: BN;
1193
1196
  perLpBase: number;
1197
+ positionFlag: number;
1198
+ isolatedPositionScaledBalance: BN;
1194
1199
  };
1195
1200
  export type UserStatsAccount = {
1196
1201
  numberOfSubAccounts: number;
@@ -1340,6 +1345,11 @@ export declare class OrderParamsBitFlag {
1340
1345
  static readonly ImmediateOrCancel = 1;
1341
1346
  static readonly UpdateHighLeverageMode = 2;
1342
1347
  }
1348
+ export declare class PositionFlag {
1349
+ static readonly IsolatedPosition = 1;
1350
+ static readonly BeingLiquidated = 2;
1351
+ static readonly Bankruptcy = 3;
1352
+ }
1343
1353
  export type NecessaryOrderParams = {
1344
1354
  orderType: OrderType;
1345
1355
  marketIndex: number;
@@ -1349,6 +1359,9 @@ export type NecessaryOrderParams = {
1349
1359
  export type OptionalOrderParams = {
1350
1360
  [Property in keyof OrderParams]?: OrderParams[Property];
1351
1361
  } & NecessaryOrderParams;
1362
+ export type PerpOrderIsolatedExtras = {
1363
+ isolatedPositionDepositAmount?: BN;
1364
+ };
1352
1365
  export type ModifyOrderParams = {
1353
1366
  [Property in keyof OrderParams]?: OrderParams[Property] | null;
1354
1367
  } & {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}