@pendle/sdk-boros 1.1.50 → 1.1.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/dist/entities/amm/NegativeAMMMath.d.ts +6 -1
- package/dist/entities/amm/NegativeAMMMath.js +7 -0
- package/dist/entities/amm/NegativeAMMMath.js.map +1 -1
- package/dist/entities/amm/PositiveAMMMath.d.ts +12 -0
- package/dist/entities/amm/PositiveAMMMath.js +24 -5
- package/dist/entities/amm/PositiveAMMMath.js.map +1 -1
- package/dist/entities/amm/amm.js +101 -12
- package/dist/entities/amm/amm.js.map +1 -1
- package/dist/errors/ErrorCodes.d.ts +4 -0
- package/dist/errors/ErrorCodes.js +2 -0
- package/dist/errors/ErrorCodes.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @pendle/sdk-boros
|
|
2
2
|
|
|
3
|
+
## 1.1.52
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- de39edd: AMM error codes
|
|
8
|
+
|
|
9
|
+
## 1.1.51
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- b9092c7: perf(amm): optimize combineMarketOrderBookAndAMM (3.7x to 1035x faster)
|
|
14
|
+
|
|
3
15
|
## 1.1.50
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AMMContractState, AMMSeedParams } from './PositiveAMMMath';
|
|
1
|
+
import { AMMContractState, AMMSeedParams, SwapSizeContext } from './PositiveAMMMath';
|
|
2
2
|
export declare class NegativeAMMMath {
|
|
3
3
|
static calcSeedOutput(params: AMMSeedParams, maturity: bigint, latestFTime: bigint): AMMContractState;
|
|
4
4
|
static calcMintOutput(state: AMMContractState, markRate: bigint, totalCash: bigint, totalSize: bigint, desiredCashIn: bigint, exactSizeIn: bigint): {
|
|
@@ -15,5 +15,10 @@ export declare class NegativeAMMMath {
|
|
|
15
15
|
static calcSwapSize(state: AMMContractState, targetRate: bigint): {
|
|
16
16
|
swapSize: bigint;
|
|
17
17
|
};
|
|
18
|
+
static prepareSwapSizeContext(state: AMMContractState): SwapSizeContext;
|
|
19
|
+
static calcSwapSizeFromContext(ctx: SwapSizeContext, targetRate: bigint): {
|
|
20
|
+
swapSize: bigint;
|
|
21
|
+
boundedTargetRate: bigint;
|
|
22
|
+
};
|
|
18
23
|
static calcImpliedRate(totalFloatAmount: bigint, normFixedAmount: bigint): bigint;
|
|
19
24
|
}
|
|
@@ -21,6 +21,13 @@ class NegativeAMMMath {
|
|
|
21
21
|
static calcSwapSize(state, targetRate) {
|
|
22
22
|
return { swapSize: -PositiveAMMMath_1.PositiveAMMMath.calcSwapSize(state, -targetRate).swapSize };
|
|
23
23
|
}
|
|
24
|
+
static prepareSwapSizeContext(state) {
|
|
25
|
+
return PositiveAMMMath_1.PositiveAMMMath.prepareSwapSizeContext(state);
|
|
26
|
+
}
|
|
27
|
+
static calcSwapSizeFromContext(ctx, targetRate) {
|
|
28
|
+
const r = PositiveAMMMath_1.PositiveAMMMath.calcSwapSizeFromContext(ctx, -targetRate);
|
|
29
|
+
return { swapSize: -r.swapSize, boundedTargetRate: -r.boundedTargetRate };
|
|
30
|
+
}
|
|
24
31
|
static calcImpliedRate(totalFloatAmount, normFixedAmount) {
|
|
25
32
|
return -PositiveAMMMath_1.PositiveAMMMath.calcImpliedRate(totalFloatAmount, normFixedAmount);
|
|
26
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NegativeAMMMath.js","sourceRoot":"","sources":["../../../src/entities/amm/NegativeAMMMath.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"NegativeAMMMath.js","sourceRoot":"","sources":["../../../src/entities/amm/NegativeAMMMath.ts"],"names":[],"mappings":";;;AAAA,uDAAsG;AAEtG,MAAa,eAAe;IAC1B,MAAM,CAAC,cAAc,CAAC,MAAqB,EAAE,QAAgB,EAAE,WAAmB;QAChF,MAAM,CAAC,WAAW,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;QACzC,OAAO,iCAAe,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,CAAC,cAAc,CACnB,KAAuB,EACvB,QAAgB,EAChB,SAAiB,EACjB,SAAiB,EACjB,aAAqB,EACrB,WAAmB;QAEnB,OAAO,iCAAe,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,WAAW,CAAC,CAAC;IAC9G,CAAC;IAED,MAAM,CAAC,cAAc,CACnB,KAAuB,EACvB,QAAgB,EAChB,SAAiB,EACjB,SAAiB,EACjB,QAAgB;QAEhB,MAAM,MAAM,GAAG,iCAAe,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACjG,MAAM,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,KAAuB,EAAE,QAAgB;QAC7D,OAAO,iCAAe,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAAuB,EAAE,UAAkB;QAC7D,OAAO,EAAE,QAAQ,EAAE,CAAC,iCAAe,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClF,CAAC;IAOD,MAAM,CAAC,sBAAsB,CAAC,KAAuB;QACnD,OAAO,iCAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,uBAAuB,CAC5B,GAAoB,EACpB,UAAkB;QAElB,MAAM,CAAC,GAAG,iCAAe,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;QACpE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC5E,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,gBAAwB,EAAE,eAAuB;QACtE,OAAO,CAAC,iCAAe,CAAC,eAAe,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAC7E,CAAC;CACF;AAzDD,0CAyDC"}
|
|
@@ -19,6 +19,13 @@ export type AMMContractState = {
|
|
|
19
19
|
maxAbsRate: bigint;
|
|
20
20
|
cutOffTimestamp: bigint;
|
|
21
21
|
};
|
|
22
|
+
export type SwapSizeContext = {
|
|
23
|
+
totalFloatAmount: bigint;
|
|
24
|
+
adjustedMinAbsRate: bigint;
|
|
25
|
+
adjustedMaxAbsRate: bigint;
|
|
26
|
+
liquidityMul1E18: bigint;
|
|
27
|
+
invNormalizedTimePlusOne: bigint;
|
|
28
|
+
};
|
|
22
29
|
export declare class PositiveAMMMath {
|
|
23
30
|
static calcSeedOutput(params: AMMSeedParams, maturity: bigint, latestFTime: bigint): AMMContractState;
|
|
24
31
|
static calcMintOutput(state: AMMContractState, markRate: bigint, totalCash: bigint, totalSize: bigint, desiredCashIn: bigint, exactSizeIn: bigint): {
|
|
@@ -35,6 +42,11 @@ export declare class PositiveAMMMath {
|
|
|
35
42
|
static calcSwapSize(state: AMMContractState, targetRate: bigint): {
|
|
36
43
|
swapSize: bigint;
|
|
37
44
|
};
|
|
45
|
+
static prepareSwapSizeContext(state: AMMContractState): SwapSizeContext;
|
|
46
|
+
static calcSwapSizeFromContext(ctx: SwapSizeContext, targetRate: bigint): {
|
|
47
|
+
swapSize: bigint;
|
|
48
|
+
boundedTargetRate: bigint;
|
|
49
|
+
};
|
|
38
50
|
static calcImpliedRate(totalFloatAmount: bigint, normFixedAmount: bigint): bigint;
|
|
39
51
|
static calcNormalizedTime(state: AMMContractState): bigint;
|
|
40
52
|
}
|
|
@@ -64,6 +64,7 @@ function _require(condition, error) {
|
|
|
64
64
|
function pow(x, y) {
|
|
65
65
|
return new boros_offchain_math_1.FixedX18(x).pow(new boros_offchain_math_1.FixedX18(y)).value;
|
|
66
66
|
}
|
|
67
|
+
const RATE_TWEAK_FACTOR = 10n ** 8n;
|
|
67
68
|
class PositiveAMMMath {
|
|
68
69
|
static calcSeedOutput(params, maturity, latestFTime) {
|
|
69
70
|
const totalFloatAmount = PMath.Uint(params.initialSize + params.flipLiquidity);
|
|
@@ -153,14 +154,32 @@ class PositiveAMMMath {
|
|
|
153
154
|
return { fixedIn: PMath.divDown(normFixedIn, normalizedTime) };
|
|
154
155
|
}
|
|
155
156
|
static calcSwapSize(state, targetRate) {
|
|
156
|
-
const
|
|
157
|
-
const
|
|
158
|
-
|
|
157
|
+
const ctx = this.prepareSwapSizeContext(state);
|
|
158
|
+
const { swapSize } = this.calcSwapSizeFromContext(ctx, targetRate);
|
|
159
|
+
return { swapSize };
|
|
160
|
+
}
|
|
161
|
+
static prepareSwapSizeContext(state) {
|
|
162
|
+
const adjustedMinAbsRate = PMath.tweakUp(state.minAbsRate, RATE_TWEAK_FACTOR);
|
|
163
|
+
const adjustedMaxAbsRate = PMath.tweakDown(state.maxAbsRate, RATE_TWEAK_FACTOR);
|
|
159
164
|
const normalizedTime = this.calcNormalizedTime(state);
|
|
160
165
|
const normalizedTimePlusOne = normalizedTime + PMath.ONE;
|
|
166
|
+
const invNormalizedTimePlusOne = PMath.divDown(PMath.ONE, normalizedTimePlusOne);
|
|
161
167
|
const liquidityMul1E18 = pow(state.totalFloatAmount, normalizedTime) * state.normFixedAmount;
|
|
162
|
-
|
|
163
|
-
|
|
168
|
+
return {
|
|
169
|
+
totalFloatAmount: state.totalFloatAmount,
|
|
170
|
+
adjustedMinAbsRate,
|
|
171
|
+
adjustedMaxAbsRate,
|
|
172
|
+
liquidityMul1E18,
|
|
173
|
+
invNormalizedTimePlusOne,
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
static calcSwapSizeFromContext(ctx, targetRate) {
|
|
177
|
+
const boundedTargetRate = PMath.Uint(PMath.min(PMath.max(targetRate, ctx.adjustedMinAbsRate), ctx.adjustedMaxAbsRate));
|
|
178
|
+
const newTotalFloatAmount = PMath.max(pow(ctx.liquidityMul1E18 / boundedTargetRate, ctx.invNormalizedTimePlusOne), 2n);
|
|
179
|
+
return {
|
|
180
|
+
swapSize: ctx.totalFloatAmount - newTotalFloatAmount,
|
|
181
|
+
boundedTargetRate,
|
|
182
|
+
};
|
|
164
183
|
}
|
|
165
184
|
static calcImpliedRate(totalFloatAmount, normFixedAmount) {
|
|
166
185
|
return PMath.divDown(normFixedAmount, totalFloatAmount);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PositiveAMMMath.js","sourceRoot":"","sources":["../../../src/entities/amm/PositiveAMMMath.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PositiveAMMMath.js","sourceRoot":"","sources":["../../../src/entities/amm/PositiveAMMMath.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,qEAAuD;AAE1C,QAAA,yBAAyB,GAAG,oBAAoB,CAAC;AA6B9D,IAAU,KAAK,CA6Cd;AA7CD,WAAU,KAAK;IACA,SAAG,GAAG,GAAG,IAAI,GAAG,CAAC;IAE9B,SAAgB,IAAI,CAAC,CAAS;QAC5B,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAJe,UAAI,OAInB,CAAA;IAED,SAAgB,IAAI,CAAC,CAAS;QAC5B,IAAA,gBAAM,EAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACd,OAAO,CAAC,CAAC;IACX,CAAC;IAHe,UAAI,OAGnB,CAAA;IAED,SAAgB,OAAO,CAAC,CAAS,EAAE,CAAS;QAC1C,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAA,GAAG,CAAC;IACvB,CAAC;IAFe,aAAO,UAEtB,CAAA;IAED,SAAgB,OAAO,CAAC,CAAS,EAAE,CAAS;QAC1C,OAAO,CAAC,CAAC,GAAG,MAAA,GAAG,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAFe,aAAO,UAEtB,CAAA;IAED,SAAgB,QAAQ,CAAC,CAAS,EAAE,CAAS;QAC3C,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAFe,cAAQ,WAEvB,CAAA;IAED,SAAgB,OAAO,CAAC,CAAS,EAAE,MAAc;QAC/C,OAAO,OAAO,CAAC,CAAC,EAAE,MAAA,GAAG,GAAG,MAAM,CAAC,CAAC;IAClC,CAAC;IAFe,aAAO,UAEtB,CAAA;IAED,SAAgB,SAAS,CAAC,CAAS,EAAE,MAAc;QACjD,OAAO,OAAO,CAAC,CAAC,EAAE,MAAA,GAAG,GAAG,MAAM,CAAC,CAAC;IAClC,CAAC;IAFe,eAAS,YAExB,CAAA;IAED,SAAgB,GAAG,CAAC,CAAS;QAC3B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAFe,SAAG,MAElB,CAAA;IAED,SAAgB,GAAG,CAAC,CAAS,EAAE,CAAS;QACtC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAFe,SAAG,MAElB,CAAA;IAED,SAAgB,GAAG,CAAC,CAAS,EAAE,CAAS;QACtC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAFe,SAAG,MAElB,CAAA;AACH,CAAC,EA7CS,KAAK,KAAL,KAAK,QA6Cd;AAED,SAAS,QAAQ,CAAC,SAAkB,EAAE,KAAa;IACjD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED,SAAS,GAAG,CAAC,CAAS,EAAE,CAAS;IAC/B,OAAO,IAAI,8BAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,8BAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACpD,CAAC;AAED,MAAM,iBAAiB,GAAG,GAAG,IAAI,EAAE,CAAC;AAcpC,MAAa,eAAe;IAC1B,MAAM,CAAC,cAAc,CAAC,MAAqB,EAAE,QAAgB,EAAE,WAAmB;QAChF,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/E,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,IAAI,8BAAQ,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QAEzF,MAAM,UAAU,GAAG,CAAC,eAAe,GAAG,CAAC,QAAQ,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC;QACvF,QAAQ,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,EAAE,yBAAyB,CAAC,CAAC;QAErE,OAAO;YACL,gBAAgB;YAChB,eAAe;YACf,OAAO,EAAE,SAAS;YAClB,WAAW;YACX,QAAQ;YACR,QAAQ,EAAE,WAAW;YACrB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,eAAe,EAAE,MAAM,CAAC,eAAe;SACxC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,cAAc,CACnB,KAAuB,EACvB,QAAgB,EAChB,SAAiB,EACjB,SAAiB,EACjB,aAAqB,EACrB,WAAmB;QAEnB,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC;QACtD,QAAQ,CAAC,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAExC,IAAA,gBAAM,EAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QAEtB,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAEjF,IAAI,QAAgB,CAAC;QACrB,IAAI,SAAiB,CAAC;QAEtB,IAAI,SAAS,IAAI,EAAE,EAAE,CAAC;YACpB,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS,CAAC;YACnE,SAAS,GAAG,aAAa,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC1C,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAE9C,MAAM,uBAAuB,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/E,IAAI,uBAAuB,EAAE,CAAC;gBAC5B,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC,GAAG,YAAY,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,EAAE,YAAY,CAAC,CAAC;YAC1E,CAAC;YAED,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,GAAG,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAEhE,QAAQ,CAAC,SAAS,IAAI,aAAa,EAAE,yBAAyB,CAAC,CAAC;QAClE,CAAC;QAED,KAAK,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9E,KAAK,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QAC5E,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC;QAE1B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,cAAc,CACnB,KAAuB,EACvB,QAAgB,EAChB,SAAiB,EACjB,SAAiB,EACjB,QAAgB;QAEhB,MAAM,UAAU,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QAE1D,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC;QACtD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,UAAkB,CAAC;QACvB,MAAM,uBAAuB,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/E,IAAI,uBAAuB,EAAE,CAAC;YAC5B,UAAU,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,UAAU,GAAG,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtD,KAAK,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9E,KAAK,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QAC5E,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC;QAE1B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,KAAuB,EAAE,QAAgB;QAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAEtD,IAAI,mBAA2B,CAAC;QAChC,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,QAAQ,CAAC,KAAK,CAAC,gBAAgB,GAAG,WAAW,GAAG,EAAE,EAAE,4BAA4B,CAAC,CAAC;YAClF,mBAAmB,GAAG,KAAK,CAAC,gBAAgB,GAAG,WAAW,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,mBAAmB,GAAG,KAAK,CAAC,gBAAgB,GAAG,WAAW,CAAC;QAC7D,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;QACpG,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC,CAAC;QAC9F,QAAQ,CAAC,kBAAkB,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,UAAU,GAAG,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;QACjH,QAAQ,CAAC,kBAAkB,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,UAAU,GAAG,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;QACjH,MAAM,WAAW,GAAG,kBAAkB,GAAG,KAAK,CAAC,eAAe,CAAC;QAE/D,KAAK,CAAC,gBAAgB,GAAG,mBAAmB,CAAC;QAC7C,KAAK,CAAC,eAAe,GAAG,kBAAkB,CAAC;QAE3C,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAAuB,EAAE,UAAkB;QAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACnE,OAAO,EAAE,QAAQ,EAAE,CAAC;IACtB,CAAC;IAQD,MAAM,CAAC,sBAAsB,CAAC,KAAuB;QACnD,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;QAC9E,MAAM,kBAAkB,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;QAChF,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,qBAAqB,GAAG,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC;QACzD,MAAM,wBAAwB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACjF,MAAM,gBAAgB,GAAG,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;QAC7F,OAAO;YACL,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,kBAAkB;YAClB,kBAAkB;YAClB,gBAAgB;YAChB,wBAAwB;SACzB,CAAC;IACJ,CAAC;IAQD,MAAM,CAAC,uBAAuB,CAC5B,GAAoB,EACpB,UAAkB;QAElB,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAClC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAC,CACjF,CAAC;QACF,MAAM,mBAAmB,GAAG,KAAK,CAAC,GAAG,CACnC,GAAG,CAAC,GAAG,CAAC,gBAAgB,GAAG,iBAAiB,EAAE,GAAG,CAAC,wBAAwB,CAAC,EAC3E,EAAE,CACH,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,GAAG,CAAC,gBAAgB,GAAG,mBAAmB;YACpD,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,gBAAwB,EAAE,eAAuB;QACtE,OAAO,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,KAAuB;QAC/C,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,eAAe,EAAE,6BAA6B,CAAC,CAAC;QACnF,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5F,CAAC;CACF;AAnLD,0CAmLC"}
|
package/dist/entities/amm/amm.js
CHANGED
|
@@ -8,6 +8,29 @@ const boros_offchain_math_1 = require("@pendle/boros-offchain-math");
|
|
|
8
8
|
const NegativeAMMMath_1 = require("./NegativeAMMMath");
|
|
9
9
|
const PositiveAMMMath_1 = require("./PositiveAMMMath");
|
|
10
10
|
const constants_1 = require("./constants");
|
|
11
|
+
function fastRateToX18Raw(rate) {
|
|
12
|
+
if (rate === 0)
|
|
13
|
+
return 0n;
|
|
14
|
+
const str = rate.toString();
|
|
15
|
+
if (str.indexOf('e') >= 0 || str.indexOf('E') >= 0) {
|
|
16
|
+
return boros_offchain_math_1.FixedX18.fromNumber(rate).value;
|
|
17
|
+
}
|
|
18
|
+
const neg = str.charCodeAt(0) === 45;
|
|
19
|
+
const body = neg ? str.slice(1) : str;
|
|
20
|
+
const dot = body.indexOf('.');
|
|
21
|
+
let whole;
|
|
22
|
+
let frac;
|
|
23
|
+
if (dot < 0) {
|
|
24
|
+
whole = body;
|
|
25
|
+
frac = '000000000000000000';
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
whole = body.slice(0, dot);
|
|
29
|
+
frac = body.slice(dot + 1).slice(0, 18).padEnd(18, '0');
|
|
30
|
+
}
|
|
31
|
+
const result = BigInt(whole) * 1000000000000000000n + BigInt(frac);
|
|
32
|
+
return neg ? -result : result;
|
|
33
|
+
}
|
|
11
34
|
function calcAMMImpliedRate(ammStateResponse, isPositiveAMM) {
|
|
12
35
|
const ammState = convertAMMStateResponseToAMMContractState(ammStateResponse);
|
|
13
36
|
const { normFixedAmount, totalFloatAmount } = ammState;
|
|
@@ -66,6 +89,13 @@ function _combineMarketOrderBookAndAMM(tickSize, marketOrderBook, ammStateRespon
|
|
|
66
89
|
if (marketOrderBook.long.ia.length > 0) {
|
|
67
90
|
shortIa = Math.max(shortIa, marketOrderBook.long.ia[0] + 1);
|
|
68
91
|
}
|
|
92
|
+
const math = isPositiveAMM ? PositiveAMMMath_1.PositiveAMMMath : NegativeAMMMath_1.NegativeAMMMath;
|
|
93
|
+
const ctx = math.prepareSwapSizeContext(ammState);
|
|
94
|
+
const shortUpperClamp = isPositiveAMM ? ctx.adjustedMaxAbsRate : -ctx.adjustedMinAbsRate;
|
|
95
|
+
const longLowerClamp = isPositiveAMM ? ctx.adjustedMinAbsRate : -ctx.adjustedMaxAbsRate;
|
|
96
|
+
let shortPrevToRateSize = null;
|
|
97
|
+
let shortPrevToBoundedRate = null;
|
|
98
|
+
let shortFullyClamped = false;
|
|
69
99
|
while (short.ia.length < orderBookSizePerSide) {
|
|
70
100
|
let sz = 0n;
|
|
71
101
|
while (shortOrderBookIndex < marketOrderBook.short.ia.length &&
|
|
@@ -74,12 +104,40 @@ function _combineMarketOrderBookAndAMM(tickSize, marketOrderBook, ammStateRespon
|
|
|
74
104
|
shortOrderBookIndex++;
|
|
75
105
|
}
|
|
76
106
|
const nextAMMShortRate = shortIa * tickSize;
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
107
|
+
const fromRate = Math.max(AMMImpliedRate, ammShortRate - ammFeeRate);
|
|
108
|
+
const toRate = Math.max(AMMImpliedRate, nextAMMShortRate - ammFeeRate);
|
|
109
|
+
let ammDelta = 0n;
|
|
110
|
+
if (fromRate <= toRate && !shortFullyClamped) {
|
|
111
|
+
let fromRateSize;
|
|
112
|
+
let fromBoundedRate;
|
|
113
|
+
if (shortPrevToBoundedRate !== null) {
|
|
114
|
+
fromRateSize = shortPrevToRateSize;
|
|
115
|
+
fromBoundedRate = shortPrevToBoundedRate;
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
const fromResult = math.calcSwapSizeFromContext(ctx, fastRateToX18Raw(fromRate));
|
|
119
|
+
fromRateSize = fromResult.swapSize;
|
|
120
|
+
fromBoundedRate = fromResult.boundedTargetRate;
|
|
121
|
+
}
|
|
122
|
+
const toResult = math.calcSwapSizeFromContext(ctx, fastRateToX18Raw(toRate));
|
|
123
|
+
const toRateSize = toResult.swapSize;
|
|
124
|
+
const toBoundedRate = toResult.boundedTargetRate;
|
|
125
|
+
if (toRateSize < 0n) {
|
|
126
|
+
ammDelta = _abs(fromRateSize) - _abs(toRateSize);
|
|
127
|
+
}
|
|
128
|
+
else if (fromRateSize < 0n) {
|
|
129
|
+
ammDelta = toRateSize + _abs(fromRateSize);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
ammDelta = toRateSize - fromRateSize;
|
|
133
|
+
}
|
|
134
|
+
shortPrevToRateSize = toRateSize;
|
|
135
|
+
shortPrevToBoundedRate = toBoundedRate;
|
|
136
|
+
if (toBoundedRate === shortUpperClamp && fromBoundedRate === shortUpperClamp) {
|
|
137
|
+
shortFullyClamped = true;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
sz += ammDelta;
|
|
83
141
|
ammShortRate = Math.max(ammShortRate, nextAMMShortRate);
|
|
84
142
|
if (sz > 0n) {
|
|
85
143
|
short.ia.push(shortIa);
|
|
@@ -90,6 +148,9 @@ function _combineMarketOrderBookAndAMM(tickSize, marketOrderBook, ammStateRespon
|
|
|
90
148
|
}
|
|
91
149
|
shortIa++;
|
|
92
150
|
}
|
|
151
|
+
let longPrevFromRateSize = null;
|
|
152
|
+
let longPrevFromBoundedRate = null;
|
|
153
|
+
let longFullyClamped = false;
|
|
93
154
|
while (long.ia.length < orderBookSizePerSide) {
|
|
94
155
|
let sz = 0n;
|
|
95
156
|
while (longOrderBookIndex < marketOrderBook.long.ia.length &&
|
|
@@ -98,12 +159,40 @@ function _combineMarketOrderBookAndAMM(tickSize, marketOrderBook, ammStateRespon
|
|
|
98
159
|
longOrderBookIndex++;
|
|
99
160
|
}
|
|
100
161
|
const nextAMMLongRate = longIa * tickSize;
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
162
|
+
const fromRate = Math.min(AMMImpliedRate, nextAMMLongRate + ammFeeRate);
|
|
163
|
+
const toRate = Math.min(AMMImpliedRate, ammLongRate + ammFeeRate);
|
|
164
|
+
let ammDelta = 0n;
|
|
165
|
+
if (fromRate <= toRate && !longFullyClamped) {
|
|
166
|
+
let toRateSize;
|
|
167
|
+
let toBoundedRate;
|
|
168
|
+
if (longPrevFromBoundedRate !== null) {
|
|
169
|
+
toRateSize = longPrevFromRateSize;
|
|
170
|
+
toBoundedRate = longPrevFromBoundedRate;
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
const toResult = math.calcSwapSizeFromContext(ctx, fastRateToX18Raw(toRate));
|
|
174
|
+
toRateSize = toResult.swapSize;
|
|
175
|
+
toBoundedRate = toResult.boundedTargetRate;
|
|
176
|
+
}
|
|
177
|
+
const fromResult = math.calcSwapSizeFromContext(ctx, fastRateToX18Raw(fromRate));
|
|
178
|
+
const fromRateSize = fromResult.swapSize;
|
|
179
|
+
const fromBoundedRate = fromResult.boundedTargetRate;
|
|
180
|
+
if (toRateSize < 0n) {
|
|
181
|
+
ammDelta = _abs(fromRateSize) - _abs(toRateSize);
|
|
182
|
+
}
|
|
183
|
+
else if (fromRateSize < 0n) {
|
|
184
|
+
ammDelta = toRateSize + _abs(fromRateSize);
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
ammDelta = toRateSize - fromRateSize;
|
|
188
|
+
}
|
|
189
|
+
longPrevFromRateSize = fromRateSize;
|
|
190
|
+
longPrevFromBoundedRate = fromBoundedRate;
|
|
191
|
+
if (fromBoundedRate === longLowerClamp && toBoundedRate === longLowerClamp) {
|
|
192
|
+
longFullyClamped = true;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
sz += ammDelta;
|
|
107
196
|
ammLongRate = Math.min(ammLongRate, nextAMMLongRate);
|
|
108
197
|
if (sz > 0n) {
|
|
109
198
|
long.ia.push(longIa);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"amm.js","sourceRoot":"","sources":["../../../src/entities/amm/amm.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"amm.js","sourceRoot":"","sources":["../../../src/entities/amm/amm.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,8 @@ export declare const ApiErrorCodes: {
|
|
|
17
17
|
readonly UNDERLYING_APR_NOT_FOUND: "UNDERLYING_APR_NOT_FOUND";
|
|
18
18
|
readonly ORDER_BOOKS_NOT_FOUND: "ORDER_BOOKS_NOT_FOUND";
|
|
19
19
|
readonly AMM_NOT_FOUND: "AMM_NOT_FOUND";
|
|
20
|
+
readonly AMM_CUT_OFF_REACHED: "AMM_CUT_OFF_REACHED";
|
|
21
|
+
readonly AMM_WITHDRAW_ONLY: "AMM_WITHDRAW_ONLY";
|
|
20
22
|
readonly REFERRAL_CODE_NOT_FOUND: "REFERRAL_CODE_NOT_FOUND";
|
|
21
23
|
readonly LEADERBOARD_NOT_FOUND: "LEADERBOARD_NOT_FOUND";
|
|
22
24
|
readonly MERKLE_NOT_FOUND: "MERKLE_NOT_FOUND";
|
|
@@ -235,6 +237,8 @@ export declare const ErrorCodes: {
|
|
|
235
237
|
readonly UNDERLYING_APR_NOT_FOUND: "UNDERLYING_APR_NOT_FOUND";
|
|
236
238
|
readonly ORDER_BOOKS_NOT_FOUND: "ORDER_BOOKS_NOT_FOUND";
|
|
237
239
|
readonly AMM_NOT_FOUND: "AMM_NOT_FOUND";
|
|
240
|
+
readonly AMM_CUT_OFF_REACHED: "AMM_CUT_OFF_REACHED";
|
|
241
|
+
readonly AMM_WITHDRAW_ONLY: "AMM_WITHDRAW_ONLY";
|
|
238
242
|
readonly REFERRAL_CODE_NOT_FOUND: "REFERRAL_CODE_NOT_FOUND";
|
|
239
243
|
readonly LEADERBOARD_NOT_FOUND: "LEADERBOARD_NOT_FOUND";
|
|
240
244
|
readonly MERKLE_NOT_FOUND: "MERKLE_NOT_FOUND";
|
|
@@ -27,6 +27,8 @@ exports.ApiErrorCodes = {
|
|
|
27
27
|
UNDERLYING_APR_NOT_FOUND: 'UNDERLYING_APR_NOT_FOUND',
|
|
28
28
|
ORDER_BOOKS_NOT_FOUND: 'ORDER_BOOKS_NOT_FOUND',
|
|
29
29
|
AMM_NOT_FOUND: 'AMM_NOT_FOUND',
|
|
30
|
+
AMM_CUT_OFF_REACHED: 'AMM_CUT_OFF_REACHED',
|
|
31
|
+
AMM_WITHDRAW_ONLY: 'AMM_WITHDRAW_ONLY',
|
|
30
32
|
REFERRAL_CODE_NOT_FOUND: 'REFERRAL_CODE_NOT_FOUND',
|
|
31
33
|
LEADERBOARD_NOT_FOUND: 'LEADERBOARD_NOT_FOUND',
|
|
32
34
|
MERKLE_NOT_FOUND: 'MERKLE_NOT_FOUND',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorCodes.js","sourceRoot":"","sources":["../../src/errors/ErrorCodes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ErrorCodes.js","sourceRoot":"","sources":["../../src/errors/ErrorCodes.ts"],"names":[],"mappings":"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"}
|