@exponent-labs/market-three-math 0.1.8 → 0.9.1

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 (55) hide show
  1. package/build/addLiquidity.d.ts +65 -4
  2. package/build/addLiquidity.js +762 -36
  3. package/build/addLiquidity.js.map +1 -1
  4. package/build/bisect.d.ts +11 -0
  5. package/build/bisect.js +22 -12
  6. package/build/bisect.js.map +1 -1
  7. package/build/index.d.ts +5 -4
  8. package/build/index.js +14 -7
  9. package/build/index.js.map +1 -1
  10. package/build/liquidityHistogram.d.ts +6 -1
  11. package/build/liquidityHistogram.js +57 -12
  12. package/build/liquidityHistogram.js.map +1 -1
  13. package/build/quote.d.ts +1 -1
  14. package/build/quote.js +70 -84
  15. package/build/quote.js.map +1 -1
  16. package/build/swap.js +36 -18
  17. package/build/swap.js.map +1 -1
  18. package/build/swapV2.d.ts +6 -1
  19. package/build/swapV2.js +394 -52
  20. package/build/swapV2.js.map +1 -1
  21. package/build/types.d.ts +51 -0
  22. package/build/utils.d.ts +8 -2
  23. package/build/utils.js +37 -19
  24. package/build/utils.js.map +1 -1
  25. package/build/utilsV2.d.ts +9 -0
  26. package/build/utilsV2.js +131 -9
  27. package/build/utilsV2.js.map +1 -1
  28. package/build/withdrawLiquidity.js +12 -7
  29. package/build/withdrawLiquidity.js.map +1 -1
  30. package/build/ytTrades.d.ts +7 -0
  31. package/build/ytTrades.js +166 -146
  32. package/build/ytTrades.js.map +1 -1
  33. package/build/ytTradesLegacy.js +3 -4
  34. package/build/ytTradesLegacy.js.map +1 -1
  35. package/package.json +2 -2
  36. package/src/addLiquidity.ts +1012 -38
  37. package/src/bisect.ts +22 -11
  38. package/src/index.ts +11 -5
  39. package/src/liquidityHistogram.ts +54 -9
  40. package/src/quote.ts +73 -95
  41. package/src/swap.ts +35 -19
  42. package/src/swapV2.ts +999 -0
  43. package/src/types.ts +55 -0
  44. package/src/utils.ts +24 -3
  45. package/src/utilsV2.ts +337 -0
  46. package/src/withdrawLiquidity.ts +12 -6
  47. package/src/ytTrades.ts +191 -172
  48. package/src/ytTradesLegacy.ts +419 -0
  49. package/build/swap-v2.d.ts +0 -20
  50. package/build/swap-v2.js +0 -261
  51. package/build/swap-v2.js.map +0 -1
  52. package/build/swapLegacy.d.ts +0 -16
  53. package/build/swapLegacy.js +0 -229
  54. package/build/swapLegacy.js.map +0 -1
  55. package/src/swapLegacy.ts +0 -272
package/build/ytTrades.js CHANGED
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.simulateSellYt = exports.simulateBuyYtWithSyIn = exports.simulateBuyYt = void 0;
3
+ exports.simulateBuyYt = simulateBuyYt;
4
+ exports.simulateBuyYtWithSyIn = simulateBuyYtWithSyIn;
5
+ exports.simulateSellYt = simulateSellYt;
4
6
  /**
5
7
  * YT (Yield Token) trade simulations
6
8
  *
@@ -9,19 +11,30 @@ exports.simulateSellYt = exports.simulateBuyYtWithSyIn = exports.simulateBuyYt =
9
11
  * - Sell YT: Merge PT+YT → SY, then buy PT from pool to repay
10
12
  */
11
13
  const bisect_1 = require("./bisect");
12
- const swap_1 = require("./swap");
14
+ const swapV2_1 = require("./swapV2");
13
15
  const types_1 = require("./types");
14
16
  /**
15
- * Helper function to convert PY to SY
16
- * @param syExchangeRate - The SY exchange rate
17
+ * Helper function to convert PY to SY (floor)
18
+ * @param syExchangeRate - The SY exchange rate (SY value in terms of underlying)
17
19
  * @param pyAmount - The PY (PT or YT) amount
18
- * @returns The equivalent SY amount
20
+ * @returns The equivalent SY amount (floored)
19
21
  */
20
22
  function pyToSy(syExchangeRate, pyAmount) {
21
23
  if (syExchangeRate <= 0)
22
24
  return 0;
23
25
  return Math.floor(pyAmount / syExchangeRate);
24
26
  }
27
+ /**
28
+ * Helper function to convert PY to SY (ceil) - for when you need AT LEAST this much SY
29
+ * @param syExchangeRate - The SY exchange rate
30
+ * @param pyAmount - The PY (PT or YT) amount
31
+ * @returns The equivalent SY amount (ceiled)
32
+ */
33
+ function pyToSyCeil(syExchangeRate, pyAmount) {
34
+ if (syExchangeRate <= 0)
35
+ return 0;
36
+ return Math.ceil(pyAmount / syExchangeRate);
37
+ }
25
38
  /**
26
39
  * Helper function to convert SY to PY
27
40
  * @param syExchangeRate - The SY exchange rate
@@ -47,13 +60,12 @@ function syToPy(syExchangeRate, syAmount) {
47
60
  function simulateBuyYt(marketState, args) {
48
61
  const { ytOut, syExchangeRate, priceSpotLimit } = args;
49
62
  // Calculate how much SY needs to be stripped to get the desired YT
50
- // Add 1 to counter-act the flooring function when converting from PY to SY
51
- const syToStrip = pyToSy(syExchangeRate, ytOut) + 1;
52
- // Stripping gives approximately equal amounts of PT and YT
63
+ // Use ceiling to ensure we strip enough SY
64
+ const syToStrip = pyToSyCeil(syExchangeRate, ytOut);
65
+ // Stripping gives equal amounts of PT and YT (1:1 ratio based on underlying value)
53
66
  const ptFromStrip = ytOut;
54
67
  // Simulate selling the PT to get SY back
55
- // Note: We use ytOut as the amount because PT out = YT out from the strip
56
- const swapResult = (0, swap_1.simulateSwap)(marketState, {
68
+ const swapResult = (0, swapV2_1.simulateSwap)(marketState, {
57
69
  direction: types_1.SwapDirection.PtToSy,
58
70
  amountIn: ytOut,
59
71
  priceSpotLimit,
@@ -74,7 +86,22 @@ function simulateBuyYt(marketState, args) {
74
86
  finalSpotPrice: swapResult.finalSpotPrice,
75
87
  };
76
88
  }
77
- exports.simulateBuyYt = simulateBuyYt;
89
+ /**
90
+ * Helper to calculate net SY cost for a given YT amount
91
+ */
92
+ function calculateNetSyCost(marketState, ytAmount, syExchangeRate, priceSpotLimit) {
93
+ const syToStrip = pyToSyCeil(syExchangeRate, ytAmount);
94
+ const swapResult = (0, swapV2_1.simulateSwap)(marketState, {
95
+ direction: types_1.SwapDirection.PtToSy,
96
+ amountIn: ytAmount,
97
+ priceSpotLimit,
98
+ syExchangeRate,
99
+ isCurrentFlashSwap: true,
100
+ });
101
+ const syFromPtSale = swapResult.amountOut;
102
+ const netSyCost = syToStrip - syFromPtSale;
103
+ return { netSyCost, syToStrip, syFromPtSale };
104
+ }
78
105
  /**
79
106
  * Simulates buying YT tokens given a SY input amount
80
107
  *
@@ -93,121 +120,140 @@ exports.simulateBuyYt = simulateBuyYt;
93
120
  */
94
121
  function simulateBuyYtWithSyIn(marketState, args) {
95
122
  const { syIn, syExchangeRate, priceSpotLimit } = args;
96
- // Lower bound: Start very low since PT recycling allows buying much more YT than naive calculation
97
- // The actual minimum depends on PT price (how much SY we get back from selling PT)
98
- // If PT price is high (close to 1), we get most SY back, so we can buy much more YT
99
- // Example: With 1000 SY and PT price 0.9:
100
- // - To get 5000 YT, strip 5000 SY → 5000 PT + 5000 YT
101
- // - Sell 5000 PT at 0.9 → 4500 SY back
102
- // - Net cost: 5000 - 4500 = 500 SY (way less than 1000!)
123
+ if (syIn <= 0) {
124
+ throw new Error("syIn must be positive");
125
+ }
126
+ if (syExchangeRate <= 0) {
127
+ throw new Error("syExchangeRate must be positive");
128
+ }
129
+ // Lower bound: minimum meaningful YT amount
103
130
  const minPossibleYt = 1;
104
- // Better initial upper bound estimate based on market liquidity
105
- // Maximum possible YT is constrained by available PT liquidity in the market
106
- const marketPtLiquidity = Number(marketState.financials.ptBalance);
131
+ // Buy-YT uses a flash-swap PT->SY path, so the tradeable size is determined by active
132
+ // tick liquidity, not by the idle PT balance stored on the market account.
107
133
  const marketSyLiquidity = Number(marketState.financials.syBalance);
108
- // Conservative estimate: we can't buy more YT than there's PT in the market
109
- // High multiplier needed because PT recycling amplifies buying power dramatically
110
- // Formula: ytOut ≈ syIn / (1 - ptPrice)
111
- // Examples: PT@0.99 → 100x, PT@0.95 → 20x, PT@0.90 → 10x, PT@0.80 → 5x
112
- const liquidityBasedMax = Math.min(marketPtLiquidity * 0.9, // 90% of PT liquidity to be safe
113
- syToPy(syExchangeRate, syIn) * 100);
114
- // Start with a reasonable initial guess (10x covers most realistic scenarios)
115
- let maxPossibleYt = Math.min(syToPy(syExchangeRate, syIn) * 10, liquidityBasedMax);
134
+ // Calculate cost at minimum YT to verify function behavior
135
+ let minCost;
136
+ try {
137
+ const minResult = calculateNetSyCost(marketState, minPossibleYt, syExchangeRate, priceSpotLimit);
138
+ minCost = minResult.netSyCost;
139
+ }
140
+ catch {
141
+ throw new Error("Market cannot support even minimum YT trade");
142
+ }
143
+ // If minimum cost already exceeds syIn, we can't do this trade
144
+ if (minCost > syIn) {
145
+ throw new Error(`Trade too small: minimum YT (${minPossibleYt}) costs ${minCost} SY, but only ${syIn} SY available`);
146
+ }
147
+ // Find upper bound using exponential search
148
+ // We need to find ytMax where netSyCost(ytMax) > syIn
149
+ let maxPossibleYt = Math.max(minPossibleYt + 1, syToPy(syExchangeRate, syIn)); // Start with naive estimate
116
150
  let foundUpperBound = false;
117
- let lastValidCost = 0;
118
- // Use exponential search with better growth rate
119
- for (let attempt = 0; attempt < 12; attempt++) {
151
+ let lastValidYt = minPossibleYt;
152
+ let lastValidCost = minCost;
153
+ // Exponential search to find upper bound
154
+ const maxAttempts = 40;
155
+ for (let attempt = 0; attempt < maxAttempts; attempt++) {
156
+ const testYt = Math.max(minPossibleYt + 1, Math.floor(maxPossibleYt));
120
157
  try {
121
- const syToStrip = pyToSy(syExchangeRate, maxPossibleYt) + 1;
122
- const swapResult = (0, swap_1.simulateSwap)(marketState, {
123
- direction: types_1.SwapDirection.PtToSy,
124
- amountIn: maxPossibleYt,
125
- priceSpotLimit,
126
- syExchangeRate,
127
- isCurrentFlashSwap: true,
128
- });
129
- const syFromPtSale = swapResult.amountOut;
130
- const netSyCost = syToStrip - syFromPtSale;
131
- // If this costs more than syIn, we found our upper bound
132
- if (netSyCost > syIn) {
133
- foundUpperBound = true;
134
- break;
135
- }
136
- lastValidCost = netSyCost;
137
- // Use adaptive growth rate based on how far we are from target
138
- const costRatio = syIn / Math.max(netSyCost, 1);
139
- const growthFactor = attempt < 3 ? 2.0 : Math.min(1.5, 1 + costRatio * 0.3);
140
- maxPossibleYt *= growthFactor;
141
- // Don't exceed liquidity constraints
142
- if (maxPossibleYt > liquidityBasedMax) {
143
- maxPossibleYt = liquidityBasedMax;
158
+ const result = calculateNetSyCost(marketState, testYt, syExchangeRate, priceSpotLimit);
159
+ if (result.netSyCost > syIn) {
160
+ // Found upper bound
161
+ maxPossibleYt = testYt;
144
162
  foundUpperBound = true;
145
163
  break;
146
164
  }
165
+ // This YT amount is still affordable, save it
166
+ lastValidYt = testYt;
167
+ lastValidCost = result.netSyCost;
168
+ // Increase estimate using adaptive growth
169
+ // The closer lastValidCost is to syIn, the smaller the growth factor
170
+ const remainingBudget = syIn - lastValidCost;
171
+ const growthFactor = Math.max(1.5, Math.min(3, 1 + remainingBudget / Math.max(lastValidCost, 1)));
172
+ maxPossibleYt = Math.ceil(testYt * growthFactor);
147
173
  }
148
174
  catch (error) {
149
- // If simulation fails, we've exceeded market capacity
150
- // Use last valid value with small buffer, ensuring it's > minPossibleYt
151
- if (lastValidCost > 0) {
152
- // Interpolate to find better upper bound
153
- const estimatedMax = maxPossibleYt * 0.7 * (syIn / lastValidCost);
154
- maxPossibleYt = Math.max(estimatedMax, minPossibleYt * 1.2);
175
+ // Swap failed - we've exceeded what the market can handle
176
+ if (lastValidYt > minPossibleYt) {
177
+ // Use binary search between lastValidYt and testYt to find exact upper bound
178
+ let searchLo = lastValidYt;
179
+ let searchHi = testYt;
180
+ for (let i = 0; i < 10; i++) {
181
+ const mid = Math.floor((searchLo + searchHi) / 2);
182
+ try {
183
+ const midResult = calculateNetSyCost(marketState, mid, syExchangeRate, priceSpotLimit);
184
+ if (midResult.netSyCost > syIn) {
185
+ searchHi = mid;
186
+ foundUpperBound = true;
187
+ }
188
+ else {
189
+ searchLo = mid;
190
+ lastValidYt = mid;
191
+ lastValidCost = midResult.netSyCost;
192
+ }
193
+ }
194
+ catch {
195
+ searchHi = mid;
196
+ }
197
+ }
198
+ if (foundUpperBound) {
199
+ maxPossibleYt = searchHi;
200
+ }
201
+ else {
202
+ // Couldn't find upper bound - trade exceeds market capacity
203
+ throw new Error(`Trade exceeds market capacity: max affordable YT is ~${lastValidYt} (cost: ${lastValidCost}), ` +
204
+ `syIn = ${syIn}`);
205
+ }
206
+ break;
155
207
  }
156
- else {
157
- // No valid cost yet, use a conservative upper bound
158
- maxPossibleYt = Math.max(maxPossibleYt * 0.8, minPossibleYt * 1.5);
208
+ // Re-throw if we haven't found any valid YT amount
209
+ if (error instanceof Error) {
210
+ throw error;
159
211
  }
160
- foundUpperBound = true;
161
- break;
212
+ throw new Error("Failed to find valid YT range");
162
213
  }
163
214
  }
164
215
  if (!foundUpperBound) {
165
- throw new Error(`Could not find upper bound for YT amount. Market may have unusual price dynamics.`);
216
+ throw new Error(`Could not find upper bound for YT amount after ${maxAttempts} attempts. ` +
217
+ `Last valid: ${lastValidYt} (cost: ${lastValidCost}), syIn: ${syIn}`);
166
218
  }
167
- // Final safety check: ensure maxPossibleYt > minPossibleYt
219
+ // Sanity check bounds
168
220
  if (maxPossibleYt <= minPossibleYt) {
169
- maxPossibleYt = minPossibleYt * 2;
221
+ throw new Error(`Invalid bounds: min=${minPossibleYt}, max=${maxPossibleYt}`);
170
222
  }
171
223
  // Use bisection search to find the ytOut that results in netSyCost = syIn
172
- // Adaptive epsilon based on input size for better precision scaling
173
- const adaptiveEpsilon = Math.max(0.01, syIn * 0.0001);
174
- // Reduce max iterations since we have better bounds
175
- const maxIterations = 10000;
176
- // Debug info for bounds validation
177
- if (maxPossibleYt <= minPossibleYt) {
178
- throw new Error(`Invalid bisection bounds for buy YT. ` +
179
- `Min: ${minPossibleYt}, Max: ${maxPossibleYt}, ` +
180
- `SyIn: ${syIn}, SyExchangeRate: ${syExchangeRate}, ` +
181
- `MarketPtBalance: ${marketPtLiquidity}, MarketSyBalance: ${marketSyLiquidity}`);
182
- }
224
+ // Epsilon should be small relative to the expected result magnitude
225
+ const adaptiveEpsilon = Math.max(1, syIn * 0.0001);
226
+ const maxIterations = 100; // Bisection converges fast with good bounds
183
227
  const ytOut = (0, bisect_1.bisectSearch2)((ytGuess) => {
184
- // Calculate the cost for this ytGuess
185
- const syToStrip = pyToSy(syExchangeRate, ytGuess) + 1;
186
- const swapResult = (0, swap_1.simulateSwap)(marketState, {
187
- direction: types_1.SwapDirection.PtToSy,
188
- amountIn: ytGuess,
189
- priceSpotLimit,
190
- syExchangeRate,
191
- isCurrentFlashSwap: true,
192
- });
193
- const syFromPtSale = swapResult.amountOut;
194
- const netSyCost = syToStrip - syFromPtSale;
195
- // Return the difference between actual cost and target syIn
196
- return netSyCost - syIn;
228
+ const result = calculateNetSyCost(marketState, ytGuess, syExchangeRate, priceSpotLimit);
229
+ return result.netSyCost - syIn;
197
230
  }, minPossibleYt, maxPossibleYt, adaptiveEpsilon, maxIterations);
198
231
  if (ytOut === null) {
199
- throw new Error(`Failed to converge on correct YT amount. ` +
200
- `Search range: [${minPossibleYt}, ${maxPossibleYt}], ` +
201
- `Epsilon: ${adaptiveEpsilon}`);
232
+ // This shouldn't happen if bounds are correct
233
+ // Provide detailed debug info
234
+ const minResult = calculateNetSyCost(marketState, minPossibleYt, syExchangeRate, priceSpotLimit);
235
+ let maxResult = null;
236
+ try {
237
+ maxResult = calculateNetSyCost(marketState, maxPossibleYt, syExchangeRate, priceSpotLimit);
238
+ }
239
+ catch {
240
+ // Max might fail
241
+ }
242
+ throw new Error(`Failed to converge: bounds [${minPossibleYt}, ${maxPossibleYt}], ` +
243
+ `f(min)=${minResult.netSyCost - syIn}, f(max)=${maxResult ? maxResult.netSyCost - syIn : "error"}, ` +
244
+ `syIn=${syIn}, epsilon=${adaptiveEpsilon}`);
202
245
  }
203
- // Now calculate the full result with the found ytOut
204
- return simulateBuyYt(marketState, {
205
- ytOut,
246
+ // Return full result using the found ytOut
247
+ const result = simulateBuyYt(marketState, {
248
+ ytOut: Math.floor(ytOut), // Floor to ensure we don't over-promise
206
249
  syExchangeRate,
207
250
  priceSpotLimit,
208
251
  });
252
+ if (marketSyLiquidity * syExchangeRate < result.ytOut * 2) {
253
+ throw new Error(`Insufficient SY liquidity in the market. Required: ${result.ytOut * 2}, Available: ${marketSyLiquidity}`);
254
+ }
255
+ return result;
209
256
  }
210
- exports.simulateBuyYtWithSyIn = simulateBuyYtWithSyIn;
211
257
  /**
212
258
  * Simulates selling YT tokens
213
259
  *
@@ -224,60 +270,35 @@ exports.simulateBuyYtWithSyIn = simulateBuyYtWithSyIn;
224
270
  * @returns Simulation result with net SY received
225
271
  */
226
272
  function simulateSellYt(marketState, args) {
227
- const { ytIn, syExchangeRate, priceSpotLimit } = args;
273
+ const { ytIn, syExchangeRate, priceSpotLimit, safetyMarginBps = 0 } = args;
274
+ if (ytIn <= 0) {
275
+ throw new Error("ytIn must be positive");
276
+ }
228
277
  // Check if there's sufficient PT liquidity
229
- // The market needs at least 2x the YT amount in PT
230
- if (marketState.financials.ptBalance < ytIn * 2) {
231
- throw new Error(`Insufficient PT liquidity in the market. Required: ${ytIn * 2}, Available: ${marketState.financials.ptBalance}`);
278
+ const marketPtBalance = Number(marketState.financials.ptBalance);
279
+ if (marketPtBalance < ytIn * 2) {
280
+ throw new Error(`Insufficient PT liquidity in the market. Required: ${ytIn * 2}, Available: ${marketPtBalance}`);
232
281
  }
233
- // Merging PT + YT gives back the original SY
234
- // The amount of PT needed equals ytIn (1:1 ratio)
282
+ // Merging PT + YT gives back the original SY (floor since you can't get fractional SY)
235
283
  const syFromMerge = pyToSy(syExchangeRate, ytIn);
236
- const ptNeeded = ytIn;
237
- const upperBoundSwap = (0, swap_1.simulateSwap)(marketState, {
238
- direction: types_1.SwapDirection.SyToPt,
239
- amountIn: syFromMerge,
240
- priceSpotLimit,
241
- syExchangeRate,
242
- isCurrentFlashSwap: true,
243
- });
244
- // Check that we can buy enough PT from CLMM
245
- if (upperBoundSwap.amountOut < ptNeeded) {
246
- throw new Error(`Cannot buy enough PT with available SY. Need ${ytIn} PT but can only afford ${upperBoundSwap.amountOut} PT`);
284
+ if (syFromMerge <= 0) {
285
+ throw new Error(`Trade too small: merging ${ytIn} YT yields 0 SY`);
247
286
  }
248
- // Better initial bounds for bisection
249
- // We know the upper bound from the check above, and we can estimate a better lower bound
250
- // based on the current price
251
- const estimatedLowerBound = Math.min(syFromMerge * 0.5, syFromMerge * 0.9); // Start from 50% of max, but not too close to upper
252
- // Adaptive epsilon based on PT needed
253
- const adaptiveEpsilon = Math.max(0.01, ptNeeded * 0.0001);
254
- // Safety check: ensure lower bound is less than upper bound
255
- const safeLowerBound = Math.min(estimatedLowerBound, syFromMerge * 0.95);
256
- const safeUpperBound = syFromMerge;
257
- if (safeLowerBound >= safeUpperBound) {
258
- throw new Error(`Invalid bisection bounds for sell YT. Lower: ${safeLowerBound}, Upper: ${safeUpperBound}`);
259
- }
260
- const syToSpend = (0, bisect_1.bisectSearch2)((syGuess) => {
261
- const swapResult = (0, swap_1.simulateSwap)(marketState, {
262
- direction: types_1.SwapDirection.SyToPt,
263
- amountIn: syGuess,
264
- priceSpotLimit,
265
- syExchangeRate,
266
- isCurrentFlashSwap: true,
267
- });
268
- return swapResult.amountOut - ptNeeded;
269
- }, safeLowerBound, safeUpperBound, adaptiveEpsilon, 100);
270
- if (syToSpend === null) {
271
- throw new Error("Failed to converge on correct SY amount using bisection search");
272
- }
273
- const swapResult = (0, swap_1.simulateSwap)(marketState, {
287
+ // On-chain uses pt_constraint + 2 to account for rounding, so we match that behavior
288
+ const ptNeeded = ytIn + 2;
289
+ // Match on-chain SellYt exactly: TradePtExactOut with pt_target = yt_in + 2 and SY budget = syFromMerge
290
+ const swapResult = (0, swapV2_1.simulateSwapExactOut)(marketState, {
274
291
  direction: types_1.SwapDirection.SyToPt,
275
- amountIn: syToSpend,
292
+ amountOut: ptNeeded,
276
293
  priceSpotLimit,
277
294
  syExchangeRate,
278
295
  isCurrentFlashSwap: true,
296
+ amountInConstraint: syFromMerge,
279
297
  });
280
- const netSyReceived = syFromMerge - swapResult.amountInConsumed;
298
+ // Optional conservative output buffer.
299
+ const rawNetSyReceived = syFromMerge - swapResult.amountInConsumed;
300
+ const safetyDeduction = safetyMarginBps > 0 ? Math.ceil((rawNetSyReceived * safetyMarginBps) / 10000) : 0;
301
+ const netSyReceived = rawNetSyReceived - safetyDeduction;
281
302
  return {
282
303
  ytIn,
283
304
  netSyReceived,
@@ -288,5 +309,4 @@ function simulateSellYt(marketState, args) {
288
309
  finalSpotPrice: swapResult.finalSpotPrice,
289
310
  };
290
311
  }
291
- exports.simulateSellYt = simulateSellYt;
292
312
  //# sourceMappingURL=ytTrades.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ytTrades.js","sourceRoot":"","sources":["../src/ytTrades.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ytTrades.js","sourceRoot":"","sources":["../src/ytTrades.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.simulateSellYt = exports.simulateBuyYtWithSyIn = exports.simulateBuyYt = void 0;
3
+ exports.simulateBuyYt = simulateBuyYt;
4
+ exports.simulateBuyYtWithSyIn = simulateBuyYtWithSyIn;
5
+ exports.simulateSellYt = simulateSellYt;
4
6
  /**
5
7
  * YT (Yield Token) trade simulations
6
8
  *
@@ -74,7 +76,6 @@ function simulateBuyYt(marketState, args) {
74
76
  finalSpotPrice: swapResult.finalSpotPrice,
75
77
  };
76
78
  }
77
- exports.simulateBuyYt = simulateBuyYt;
78
79
  /**
79
80
  * Simulates buying YT tokens given a SY input amount
80
81
  *
@@ -207,7 +208,6 @@ function simulateBuyYtWithSyIn(marketState, args) {
207
208
  priceSpotLimit,
208
209
  });
209
210
  }
210
- exports.simulateBuyYtWithSyIn = simulateBuyYtWithSyIn;
211
211
  /**
212
212
  * Simulates selling YT tokens
213
213
  *
@@ -288,5 +288,4 @@ function simulateSellYt(marketState, args) {
288
288
  finalSpotPrice: swapResult.finalSpotPrice,
289
289
  };
290
290
  }
291
- exports.simulateSellYt = simulateSellYt;
292
291
  //# sourceMappingURL=ytTradesLegacy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ytTradesLegacy.js","sourceRoot":"","sources":["../src/ytTradesLegacy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ytTradesLegacy.js","sourceRoot":"","sources":["../src/ytTradesLegacy.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exponent-labs/market-three-math",
3
- "version": "0.1.8",
3
+ "version": "0.9.1",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "license": "AGPL-3.0",
@@ -10,7 +10,7 @@
10
10
  "test:live": "ts-node examples/test-live-market.ts"
11
11
  },
12
12
  "dependencies": {
13
- "@exponent-labs/exponent-fetcher": "0.1.8",
13
+ "@exponent-labs/exponent-fetcher": "0.9.1",
14
14
  "@solana/web3.js": "^1.95.8"
15
15
  },
16
16
  "devDependencies": {