@kamino-finance/kliquidity-sdk 8.3.1 → 8.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Kamino.d.ts +16 -14
- package/dist/Kamino.d.ts.map +1 -1
- package/dist/Kamino.js +114 -125
- package/dist/Kamino.js.map +1 -1
- package/dist/constants/numericalValues.d.ts +3 -0
- package/dist/constants/numericalValues.d.ts.map +1 -1
- package/dist/constants/numericalValues.js +4 -1
- package/dist/constants/numericalValues.js.map +1 -1
- package/dist/rebalance_methods/autodriftRebalance.d.ts.map +1 -1
- package/dist/rebalance_methods/autodriftRebalance.js +10 -10
- package/dist/rebalance_methods/autodriftRebalance.js.map +1 -1
- package/dist/rebalance_methods/driftRebalance.d.ts.map +1 -1
- package/dist/rebalance_methods/driftRebalance.js +10 -10
- package/dist/rebalance_methods/driftRebalance.js.map +1 -1
- package/dist/rebalance_methods/expanderRebalance.d.ts.map +1 -1
- package/dist/rebalance_methods/expanderRebalance.js +3 -4
- package/dist/rebalance_methods/expanderRebalance.js.map +1 -1
- package/dist/rebalance_methods/pricePercentageRebalance.d.ts.map +1 -1
- package/dist/rebalance_methods/pricePercentageRebalance.js +5 -6
- package/dist/rebalance_methods/pricePercentageRebalance.js.map +1 -1
- package/dist/rebalance_methods/pricePercentageWithResetRebalance.d.ts.map +1 -1
- package/dist/rebalance_methods/pricePercentageWithResetRebalance.js +5 -6
- package/dist/rebalance_methods/pricePercentageWithResetRebalance.js.map +1 -1
- package/dist/rebalance_methods/takeProfitRebalance.d.ts.map +1 -1
- package/dist/rebalance_methods/takeProfitRebalance.js +5 -5
- package/dist/rebalance_methods/takeProfitRebalance.js.map +1 -1
- package/dist/services/JupService.d.ts.map +1 -1
- package/dist/services/MeteoraService.d.ts.map +1 -1
- package/dist/services/MeteoraService.js +4 -1
- package/dist/services/MeteoraService.js.map +1 -1
- package/dist/services/OrcaService.d.ts +7 -11
- package/dist/services/OrcaService.d.ts.map +1 -1
- package/dist/services/OrcaService.js +133 -101
- package/dist/services/OrcaService.js.map +1 -1
- package/dist/services/OrcaWhirlpoolsResponse.d.ts +63 -92
- package/dist/services/OrcaWhirlpoolsResponse.d.ts.map +1 -1
- package/dist/services/RaydiumService.d.ts.map +1 -1
- package/dist/services/RaydiumService.js +7 -1
- package/dist/services/RaydiumService.js.map +1 -1
- package/dist/utils/farms.d.ts +1 -0
- package/dist/utils/farms.d.ts.map +1 -0
- package/dist/utils/farms.js +2 -0
- package/dist/utils/farms.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/lookupTable.d.ts.map +1 -1
- package/dist/utils/lookupTable.js +1 -1
- package/dist/utils/lookupTable.js.map +1 -1
- package/dist/utils/orca.d.ts +37 -1
- package/dist/utils/orca.d.ts.map +1 -1
- package/dist/utils/orca.js +242 -0
- package/dist/utils/orca.js.map +1 -1
- package/dist/utils/tokenUtils.d.ts +5 -5
- package/dist/utils/tokenUtils.d.ts.map +1 -1
- package/dist/utils/tokenUtils.js +11 -7
- package/dist/utils/tokenUtils.js.map +1 -1
- package/dist/utils/transactions.d.ts.map +1 -1
- package/dist/utils/types.d.ts +5 -0
- package/dist/utils/types.d.ts.map +1 -1
- package/dist/utils/types.js.map +1 -1
- package/dist/utils/utils.d.ts +0 -1
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +3 -4
- package/dist/utils/utils.js.map +1 -1
- package/dist/utils/whirlpools.d.ts +12 -1
- package/dist/utils/whirlpools.d.ts.map +1 -1
- package/dist/utils/whirlpools.js +30 -29
- package/dist/utils/whirlpools.js.map +1 -1
- package/package.json +10 -9
- package/src/Kamino.ts +271 -215
- package/src/constants/numericalValues.ts +5 -0
- package/src/rebalance_methods/autodriftRebalance.ts +30 -22
- package/src/rebalance_methods/driftRebalance.ts +30 -22
- package/src/rebalance_methods/expanderRebalance.ts +7 -4
- package/src/rebalance_methods/pricePercentageRebalance.ts +13 -6
- package/src/rebalance_methods/pricePercentageWithResetRebalance.ts +13 -6
- package/src/rebalance_methods/takeProfitRebalance.ts +13 -5
- package/src/services/MeteoraService.ts +5 -2
- package/src/services/OrcaService.ts +163 -126
- package/src/services/OrcaWhirlpoolsResponse.ts +69 -101
- package/src/services/RaydiumService.ts +8 -2
- package/src/utils/farms.ts +0 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/lookupTable.ts +2 -2
- package/src/utils/orca.ts +377 -1
- package/src/utils/tokenUtils.ts +5 -5
- package/src/utils/types.ts +7 -0
- package/src/utils/utils.ts +2 -4
- package/src/utils/whirlpools.ts +50 -31
|
@@ -1,106 +1,77 @@
|
|
|
1
1
|
export interface OrcaWhirlpoolsResponse {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
data: Whirlpool[];
|
|
3
|
+
meta: {
|
|
4
|
+
cursor: {
|
|
5
|
+
previous: string | null;
|
|
6
|
+
next: string | null;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
4
9
|
}
|
|
5
10
|
export interface Whirlpool {
|
|
6
11
|
address: string;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
whitelisted: boolean;
|
|
12
|
+
whirlpoolsConfig: string;
|
|
13
|
+
whirlpoolBump: number[];
|
|
10
14
|
tickSpacing: number;
|
|
11
|
-
|
|
12
|
-
|
|
15
|
+
tickSpacingSeed: number[];
|
|
16
|
+
feeRate: number;
|
|
13
17
|
protocolFeeRate: number;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
18
|
+
liquidity: string;
|
|
19
|
+
sqrtPrice: string;
|
|
20
|
+
tickCurrentIndex: number;
|
|
21
|
+
protocolFeeOwedA: string;
|
|
22
|
+
protocolFeeOwedB: string;
|
|
23
|
+
tokenMintA: string;
|
|
24
|
+
tokenVaultA: string;
|
|
25
|
+
feeGrowthGlobalA: string;
|
|
26
|
+
tokenMintB: string;
|
|
27
|
+
tokenVaultB: string;
|
|
28
|
+
feeGrowthGlobalB: string;
|
|
29
|
+
rewardLastUpdatedTimestamp: string;
|
|
30
|
+
updatedAt: string;
|
|
31
|
+
updatedSlot: number;
|
|
32
|
+
writeVersion: number;
|
|
33
|
+
hasWarning: boolean;
|
|
34
|
+
poolType: string;
|
|
35
|
+
tokenA: WhirlpoolToken;
|
|
36
|
+
tokenB: WhirlpoolToken;
|
|
37
|
+
price: string;
|
|
38
|
+
tvlUsdc: string;
|
|
39
|
+
yieldOverTvl: string;
|
|
40
|
+
tokenBalanceA: string;
|
|
41
|
+
tokenBalanceB: string;
|
|
42
|
+
stats: Stats;
|
|
43
|
+
rewards: WhirlpoolReward[];
|
|
44
|
+
feeTierIndex: number;
|
|
45
|
+
adaptiveFeeEnabled: boolean;
|
|
46
|
+
tradeEnableTimestamp: string;
|
|
47
|
+
}
|
|
48
|
+
export interface WhirlpoolToken {
|
|
49
|
+
address: string;
|
|
50
|
+
programId: string;
|
|
51
|
+
imageURL: string;
|
|
30
52
|
name: string;
|
|
31
|
-
decimals: number;
|
|
32
|
-
logoURI?: string;
|
|
33
|
-
coingeckoId?: string;
|
|
34
|
-
whitelisted: boolean;
|
|
35
|
-
poolToken: boolean;
|
|
36
|
-
wrapper?: string;
|
|
37
|
-
}
|
|
38
|
-
export interface TokenB {
|
|
39
|
-
mint: string;
|
|
40
53
|
symbol: string;
|
|
41
|
-
name: string;
|
|
42
54
|
decimals: number;
|
|
43
|
-
|
|
44
|
-
coingeckoId?: string;
|
|
45
|
-
whitelisted: boolean;
|
|
46
|
-
poolToken: boolean;
|
|
47
|
-
wrapper?: string;
|
|
55
|
+
tags: string[];
|
|
48
56
|
}
|
|
49
|
-
export interface
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
57
|
+
export interface WhirlpoolStat {
|
|
58
|
+
volume: string;
|
|
59
|
+
fees: string;
|
|
60
|
+
rewards: string;
|
|
61
|
+
yieldOverTvl: string;
|
|
53
62
|
}
|
|
54
|
-
export interface
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
63
|
+
export interface Stats {
|
|
64
|
+
'24h': WhirlpoolStat;
|
|
65
|
+
'7d': WhirlpoolStat;
|
|
66
|
+
'30d': WhirlpoolStat;
|
|
58
67
|
}
|
|
59
|
-
export interface
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
month: Month;
|
|
68
|
-
}
|
|
69
|
-
export interface Day {
|
|
70
|
-
min: number;
|
|
71
|
-
max: number;
|
|
72
|
-
}
|
|
73
|
-
export interface Week {
|
|
74
|
-
min: number;
|
|
75
|
-
max: number;
|
|
76
|
-
}
|
|
77
|
-
export interface Month {
|
|
78
|
-
min: number;
|
|
79
|
-
max: number;
|
|
80
|
-
}
|
|
81
|
-
export interface FeeApr {
|
|
82
|
-
day: number;
|
|
83
|
-
week: number;
|
|
84
|
-
month: number;
|
|
85
|
-
}
|
|
86
|
-
export interface Reward0Apr {
|
|
87
|
-
day: number;
|
|
88
|
-
week?: number;
|
|
89
|
-
month?: number;
|
|
90
|
-
}
|
|
91
|
-
export interface Reward1Apr {
|
|
92
|
-
day: number;
|
|
93
|
-
week: number;
|
|
94
|
-
month: number;
|
|
95
|
-
}
|
|
96
|
-
export interface Reward2Apr {
|
|
97
|
-
day: number;
|
|
98
|
-
week: number;
|
|
99
|
-
month: number;
|
|
100
|
-
}
|
|
101
|
-
export interface TotalApr {
|
|
102
|
-
day: number;
|
|
103
|
-
week?: number;
|
|
104
|
-
month?: number;
|
|
68
|
+
export interface WhirlpoolReward {
|
|
69
|
+
mint: string;
|
|
70
|
+
vault: string;
|
|
71
|
+
authority: string;
|
|
72
|
+
emissions_per_second_x64: string;
|
|
73
|
+
growth_global_x64: string;
|
|
74
|
+
active: boolean;
|
|
75
|
+
emissionsPerSecond: string;
|
|
105
76
|
}
|
|
106
77
|
//# sourceMappingURL=OrcaWhirlpoolsResponse.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrcaWhirlpoolsResponse.d.ts","sourceRoot":"","sources":["../../src/services/OrcaWhirlpoolsResponse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OrcaWhirlpoolsResponse.d.ts","sourceRoot":"","sources":["../../src/services/OrcaWhirlpoolsResponse.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;YACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;SACrB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,0BAA0B,EAAE,MAAM,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,aAAa,CAAC;IACrB,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,wBAAwB,EAAE,MAAM,CAAC;IACjC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;CAC5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RaydiumService.d.ts","sourceRoot":"","sources":["../../src/services/RaydiumService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"RaydiumService.d.ts","sourceRoot":"","sources":["../../src/services/RaydiumService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,GAAG,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAEL,IAAI,EACJ,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAEL,eAAe,EAEf,qBAAqB,EAGtB,MAAM,UAAU,CAAC;AAKlB,OAAO,EACL,6BAA6B,EAQ9B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAa;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAU;gBAEhC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,GAAE,OAA4B;IAMhH,mBAAmB,IAAI,OAAO;IAIxB,oBAAoB,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIrD,kBAAkB,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAS/E,mCAAmC,CACvC,IAAI,EAAE,OAAO,EACb,SAAS,GAAE,OAAc,EACzB,UAAU,CAAC,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC;IAuDjC,8BAA8B,GAAU,UAAU,iBAAiB,EAAE,QAAQ,IAAI,EAAE,KAAG,OAAO,CAAC,eAAe,CAAC,CAsE5G;IAEF,wBAAwB,GACtB,YAAY,OAAO,EACnB,YAAY,OAAO,EACnB,YAAY,OAAO,EACnB,QAAQ,IAAI,EAAE,KACb,OAAO,CAAC,eAAe,CAAC,CA+EzB;IAEI,kBAAkB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAmCjF,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAmB9D"}
|
|
@@ -211,7 +211,13 @@ class RaydiumService {
|
|
|
211
211
|
commitment: 'confirmed',
|
|
212
212
|
filters: [
|
|
213
213
|
{ dataSize: BigInt(lib_1.PositionInfoLayout.span) },
|
|
214
|
-
{
|
|
214
|
+
{
|
|
215
|
+
memcmp: {
|
|
216
|
+
bytes: pool.toString(),
|
|
217
|
+
offset: BigInt(lib_1.PositionInfoLayout.offsetOf('poolId')),
|
|
218
|
+
encoding: 'base58',
|
|
219
|
+
},
|
|
220
|
+
},
|
|
215
221
|
],
|
|
216
222
|
})
|
|
217
223
|
.send();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RaydiumService.js","sourceRoot":"","sources":["../../src/services/RaydiumService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RaydiumService.js","sourceRoot":"","sources":["../../src/services/RaydiumService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=farms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"farms.d.ts","sourceRoot":"","sources":["../../src/utils/farms.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"farms.js","sourceRoot":"","sources":["../../src/utils/farms.ts"],"names":[],"mappings":""}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC"}
|
package/dist/utils/index.js
CHANGED
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,+CAA6B;AAC7B,0CAAwB;AACxB,yCAAuB;AACvB,0CAAwB;AACxB,yCAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,+CAA6B;AAC7B,0CAAwB;AACxB,yCAAuB;AACvB,0CAAwB;AACxB,yCAAuB;AACvB,2CAAyB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lookupTable.d.ts","sourceRoot":"","sources":["../../src/utils/lookupTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,qBAAqB,EAAE,OAAO,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"lookupTable.d.ts","sourceRoot":"","sources":["../../src/utils/lookupTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,qBAAqB,EAAE,OAAO,EAAE,sBAAsB,EAAsB,MAAM,aAAa,CAAC;AAEvH,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAEL,kBAAkB,EAEnB,MAAM,sCAAsC,CAAC;AAI9C,wBAAsB,cAAc,CAClC,OAAO,EAAE,aAAa,EACtB,GAAG,EAAE,GAAG,CAAC,qBAAqB,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAKxC;AAED,wBAAsB,sBAAsB,CAC1C,CAAC,EAAE,GAAG,CAAC,qBAAqB,CAAC,EAC7B,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CA4BxC;AAED,wBAAsB,gCAAgC,CACpD,GAAG,EAAE,GAAG,CAAC,sBAAsB,CAAC,EAChC,SAAS,EAAE,OAAO,EAAE,GACnB,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAqBxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lookupTable.js","sourceRoot":"","sources":["../../src/utils/lookupTable.ts"],"names":[],"mappings":";;AAWA,wCAQC;AAED,wDA+BC;AAED,4EAwBC;AA7ED,kDAAqD;AAErD,+EAI8C;AAE9C,MAAM,UAAU,GAAG,IAAA,mDAA4B,GAAE,CAAC;AAE3C,KAAK,UAAU,cAAc,CAClC,OAAsB,EACtB,GAA+B;IAE/B,IAAI,OAAO,IAAI,cAAc,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;QACrD,OAAO,sBAAsB,CAAC,GAAG,EAAE,uBAAa,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAC1C,CAA6B,EAC7B,IAAa;IAEb,MAAM,YAAY,GAAG,MAAM,CAAC;SACzB,kBAAkB,CAAC,2DAAoC,EAAE;QACxD,OAAO,EAAE;YACP;gBACE,MAAM,EAAE;oBACN,MAAM,EAAE,GAAG;oBACX,KAAK,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"lookupTable.js","sourceRoot":"","sources":["../../src/utils/lookupTable.ts"],"names":[],"mappings":";;AAWA,wCAQC;AAED,wDA+BC;AAED,4EAwBC;AA7ED,kDAAqD;AAErD,+EAI8C;AAE9C,MAAM,UAAU,GAAG,IAAA,mDAA4B,GAAE,CAAC;AAE3C,KAAK,UAAU,cAAc,CAClC,OAAsB,EACtB,GAA+B;IAE/B,IAAI,OAAO,IAAI,cAAc,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;QACrD,OAAO,sBAAsB,CAAC,GAAG,EAAE,uBAAa,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAC1C,CAA6B,EAC7B,IAAa;IAEb,MAAM,YAAY,GAAG,MAAM,CAAC;SACzB,kBAAkB,CAAC,2DAAoC,EAAE;QACxD,OAAO,EAAE;YACP;gBACE,MAAM,EAAE;oBACN,MAAM,EAAE,GAAG;oBACX,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAwB;oBAC5C,QAAQ,EAAE,QAAQ;iBACnB;aACF;SACF;QACD,QAAQ,EAAE,QAAQ;KACnB,CAAC;SACD,IAAI,EAAE,CAAC;IAEV,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC5E,MAAM,GAAG,GAAgC;YACvC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YAClC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAC/B,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;SAC1B,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,gCAAgC,CACpD,GAAgC,EAChC,SAAoB;IAEpB,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACrE,MAAM,IAAI,GAAkC,EAAE,CAAC;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;QACpE,MAAM,GAAG,GAAgC;YACvC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,cAAc,EAAE,IAAI,CAAC,KAAK;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO;YACP,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/utils/orca.d.ts
CHANGED
|
@@ -1,4 +1,40 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BN } from '@coral-xyz/anchor';
|
|
2
|
+
import { Address, GetAccountInfoApi, GetMultipleAccountsApi, Rpc } from '@solana/kit';
|
|
2
3
|
import { ProgramDerivedAddress } from '@solana/addresses/dist/types/program-derived-address';
|
|
4
|
+
import { Percentage } from './types';
|
|
5
|
+
import { IncreaseLiquidityQuoteParam } from '@orca-so/whirlpools';
|
|
6
|
+
import { Whirlpool } from '../@codegen/whirlpools/accounts';
|
|
7
|
+
import { IncreaseLiquidityQuote, TransferFee } from '@orca-so/whirlpools-core';
|
|
8
|
+
import { Whirlpool as WhirlpoolAPIResponse } from '../services/OrcaWhirlpoolsResponse';
|
|
9
|
+
import Decimal from 'decimal.js/decimal';
|
|
10
|
+
export declare const defaultSlippagePercentageBPS = 10;
|
|
3
11
|
export declare function getTickArray(programId: Address, whirlpoolAddress: Address, startTick: number): Promise<ProgramDerivedAddress>;
|
|
12
|
+
export declare function getTokenAFromLiquidity(liquidity: BN, sqrtPrice0X64: BN, sqrtPrice1X64: BN, roundUp: boolean): BN;
|
|
13
|
+
export declare function getTokenBFromLiquidity(liquidity: BN, sqrtPrice0X64: BN, sqrtPrice1X64: BN, roundUp: boolean): BN;
|
|
14
|
+
export declare function getNearestValidTickIndexFromTickIndex(tickIndex: number, tickSpacing: number): number;
|
|
15
|
+
export declare function getIncreaseLiquidityQuote(param: IncreaseLiquidityQuoteParam, pool: Whirlpool, tickLowerIndex: number, tickUpperIndex: number, slippageToleranceBps: number, transferFeeA: TransferFee | undefined, transferFeeB: TransferFee | undefined): IncreaseLiquidityQuote;
|
|
16
|
+
export declare function adjustForSlippage(n: BN, { numerator, denominator }: Percentage, adjustUp: boolean): BN;
|
|
17
|
+
export type EstimatedAprs = {
|
|
18
|
+
fee: number;
|
|
19
|
+
rewards: number[];
|
|
20
|
+
};
|
|
21
|
+
export declare const ZERO_APR: {
|
|
22
|
+
fee: number;
|
|
23
|
+
rewards: number[];
|
|
24
|
+
};
|
|
25
|
+
export declare function estimateAprsForPriceRange(pool: WhirlpoolAPIResponse, tokenPrices: Map<Address, Decimal>, fees24h: number, tickLowerIndex: number, tickUpperIndex: number, rewardsDecimals: Map<Address, number>): EstimatedAprs;
|
|
26
|
+
export declare function getLowestInitializedTickArrayTickIndex(rpc: Rpc<GetAccountInfoApi>, whirlpoolAddress: Address, tickSpacing: number): Promise<number>;
|
|
27
|
+
export declare function getHighestInitializedTickArrayTickIndex(rpc: Rpc<GetAccountInfoApi>, whirlpoolAddress: Address, tickSpacing: number): Promise<number>;
|
|
28
|
+
export type LiquidityDataPoint = {
|
|
29
|
+
liquidity: Decimal;
|
|
30
|
+
price: Decimal;
|
|
31
|
+
tickIndex: number;
|
|
32
|
+
};
|
|
33
|
+
export type WhirlpoolLiquidityDistribution = {
|
|
34
|
+
currentPrice: Decimal;
|
|
35
|
+
currentTickIndex: number;
|
|
36
|
+
datapoints: LiquidityDataPoint[];
|
|
37
|
+
};
|
|
38
|
+
export declare function getLiquidityDistribution(rpc: Rpc<GetMultipleAccountsApi>, poolAddress: Address, poolData: WhirlpoolAPIResponse, tickLower: number, tickUpper: number, whirlpoolProgramId: Address): Promise<WhirlpoolLiquidityDistribution>;
|
|
39
|
+
export declare function getTickArrayPda(programId: Address, poolAddress: Address, startIndex: number): Promise<[Address, number]>;
|
|
4
40
|
//# sourceMappingURL=orca.d.ts.map
|
package/dist/utils/orca.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orca.d.ts","sourceRoot":"","sources":["../../src/utils/orca.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"orca.d.ts","sourceRoot":"","sources":["../../src/utils/orca.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAEL,OAAO,EACP,iBAAiB,EAEjB,sBAAsB,EAEtB,GAAG,EACJ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAE7F,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAmB,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAAa,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAIL,sBAAsB,EAEtB,WAAW,EACZ,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,SAAS,IAAI,oBAAoB,EAAmB,MAAM,oCAAoC,CAAC;AACxG,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAOzC,eAAO,MAAM,4BAA4B,KAAK,CAAC;AA4B/C,wBAAsB,YAAY,CAChC,SAAS,EAAE,OAAO,EAClB,gBAAgB,EAAE,OAAO,EACzB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,qBAAqB,CAAC,CAKhC;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,MAU3G;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,MAS3G;AAED,wBAAgB,qCAAqC,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEpG;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,2BAA2B,EAClC,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,oBAAoB,EAAE,MAAM,EAC5B,YAAY,EAAE,WAAW,GAAG,SAAS,EACrC,YAAY,EAAE,WAAW,GAAG,SAAS,GACpC,sBAAsB,CAgCxB;AA6BD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,GAAG,EAAE,CAMtG;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,QAAQ;;;CAGpB,CAAC;AAEF,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,oBAAoB,EAC1B,WAAW,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAClC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,GACpC,aAAa,CAmCf;AAMD,wBAAsB,sCAAsC,CAC1D,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC,EAC3B,gBAAgB,EAAE,OAAO,EACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,wBAAsB,uCAAuC,CAC3D,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC,EAC3B,gBAAgB,EAAE,OAAO,EACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,kBAAkB,EAAE,CAAC;CAClC,CAAC;AAEF,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,GAAG,CAAC,sBAAsB,CAAC,EAChC,WAAW,EAAE,OAAO,EACpB,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,OAAO,GAC1B,OAAO,CAAC,8BAA8B,CAAC,CA2DzC;AAyBD,wBAAsB,eAAe,CACnC,SAAS,EAAE,OAAO,EAClB,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAO5B"}
|
package/dist/utils/orca.js
CHANGED
|
@@ -1,12 +1,254 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ZERO_APR = exports.defaultSlippagePercentageBPS = void 0;
|
|
3
7
|
exports.getTickArray = getTickArray;
|
|
8
|
+
exports.getTokenAFromLiquidity = getTokenAFromLiquidity;
|
|
9
|
+
exports.getTokenBFromLiquidity = getTokenBFromLiquidity;
|
|
10
|
+
exports.getNearestValidTickIndexFromTickIndex = getNearestValidTickIndexFromTickIndex;
|
|
11
|
+
exports.getIncreaseLiquidityQuote = getIncreaseLiquidityQuote;
|
|
12
|
+
exports.adjustForSlippage = adjustForSlippage;
|
|
13
|
+
exports.estimateAprsForPriceRange = estimateAprsForPriceRange;
|
|
14
|
+
exports.getLowestInitializedTickArrayTickIndex = getLowestInitializedTickArrayTickIndex;
|
|
15
|
+
exports.getHighestInitializedTickArrayTickIndex = getHighestInitializedTickArrayTickIndex;
|
|
16
|
+
exports.getLiquidityDistribution = getLiquidityDistribution;
|
|
17
|
+
exports.getTickArrayPda = getTickArrayPda;
|
|
18
|
+
const anchor_1 = require("@coral-xyz/anchor");
|
|
4
19
|
const kit_1 = require("@solana/kit");
|
|
20
|
+
const constants_1 = require("../constants");
|
|
21
|
+
const whirlpools_1 = require("@orca-so/whirlpools");
|
|
22
|
+
const accounts_1 = require("../@codegen/whirlpools/accounts");
|
|
23
|
+
const whirlpools_core_1 = require("@orca-so/whirlpools-core");
|
|
24
|
+
const whirlpools_core_2 = require("@orca-so/whirlpools-core");
|
|
25
|
+
const decimal_1 = __importDefault(require("decimal.js/decimal"));
|
|
26
|
+
const whirlpools_2 = require("./whirlpools");
|
|
27
|
+
const CreationParameters_1 = require("./CreationParameters");
|
|
28
|
+
const whirlpools_client_1 = require("@orca-so/whirlpools-client");
|
|
29
|
+
const utils_1 = require("./utils");
|
|
30
|
+
const math_1 = require("./math");
|
|
31
|
+
exports.defaultSlippagePercentageBPS = 10;
|
|
5
32
|
const addressEncoder = (0, kit_1.getAddressEncoder)();
|
|
33
|
+
const TICK_ARRAY_SIZE = 88;
|
|
34
|
+
const SECONDS_PER_YEAR = 60 * // SECONDS
|
|
35
|
+
60 * // MINUTES
|
|
36
|
+
24 * // HOURS
|
|
37
|
+
365; // DAYS
|
|
38
|
+
function estimateRewardApr(reward, rewardTokenDecimals, concentratedValue, tokenPrices) {
|
|
39
|
+
const { mint } = reward;
|
|
40
|
+
const rewardTokenPrice = tokenPrices.get((0, kit_1.address)(mint));
|
|
41
|
+
const emissionsPerSecond = new decimal_1.default(reward.emissionsPerSecond).div(new decimal_1.default(10).pow(rewardTokenDecimals));
|
|
42
|
+
if (emissionsPerSecond.eq(math_1.ZERO) || !rewardTokenPrice) {
|
|
43
|
+
return 0;
|
|
44
|
+
}
|
|
45
|
+
const res = emissionsPerSecond.mul(SECONDS_PER_YEAR).mul(rewardTokenPrice).div(concentratedValue).toNumber();
|
|
46
|
+
return res;
|
|
47
|
+
}
|
|
6
48
|
async function getTickArray(programId, whirlpoolAddress, startTick) {
|
|
7
49
|
return await (0, kit_1.getProgramDerivedAddress)({
|
|
8
50
|
seeds: [Buffer.from('tick_array'), addressEncoder.encode(whirlpoolAddress), Buffer.from(startTick.toString())],
|
|
9
51
|
programAddress: programId,
|
|
10
52
|
});
|
|
11
53
|
}
|
|
54
|
+
function getTokenAFromLiquidity(liquidity, sqrtPrice0X64, sqrtPrice1X64, roundUp) {
|
|
55
|
+
const [sqrtPriceLowerX64, sqrtPriceUpperX64] = orderSqrtPrice(sqrtPrice0X64, sqrtPrice1X64);
|
|
56
|
+
const numerator = liquidity.mul(sqrtPriceUpperX64.sub(sqrtPriceLowerX64)).shln(64);
|
|
57
|
+
const denominator = sqrtPriceUpperX64.mul(sqrtPriceLowerX64);
|
|
58
|
+
if (roundUp) {
|
|
59
|
+
return divRoundUp(numerator, denominator);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
return numerator.div(denominator);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
function getTokenBFromLiquidity(liquidity, sqrtPrice0X64, sqrtPrice1X64, roundUp) {
|
|
66
|
+
const [sqrtPriceLowerX64, sqrtPriceUpperX64] = orderSqrtPrice(sqrtPrice0X64, sqrtPrice1X64);
|
|
67
|
+
const result = liquidity.mul(sqrtPriceUpperX64.sub(sqrtPriceLowerX64));
|
|
68
|
+
if (roundUp) {
|
|
69
|
+
return shiftRightRoundUp(result);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
return result.shrn(64);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
function getNearestValidTickIndexFromTickIndex(tickIndex, tickSpacing) {
|
|
76
|
+
return tickIndex - (tickIndex % tickSpacing);
|
|
77
|
+
}
|
|
78
|
+
function getIncreaseLiquidityQuote(param, pool, tickLowerIndex, tickUpperIndex, slippageToleranceBps, transferFeeA, transferFeeB) {
|
|
79
|
+
if ('liquidity' in param) {
|
|
80
|
+
return (0, whirlpools_core_2.increaseLiquidityQuote)(param.liquidity, slippageToleranceBps, BigInt(pool.sqrtPrice.toString()), tickLowerIndex, tickUpperIndex, transferFeeA, transferFeeB);
|
|
81
|
+
}
|
|
82
|
+
else if ('tokenA' in param) {
|
|
83
|
+
return (0, whirlpools_core_2.increaseLiquidityQuoteA)(param.tokenA, slippageToleranceBps, BigInt(pool.sqrtPrice.toString()), tickLowerIndex, tickUpperIndex, transferFeeA, transferFeeB);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
return (0, whirlpools_core_2.increaseLiquidityQuoteB)(param.tokenB, slippageToleranceBps, BigInt(pool.sqrtPrice.toString()), tickLowerIndex, tickUpperIndex, transferFeeA, transferFeeB);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
function orderSqrtPrice(sqrtPrice0X64, sqrtPrice1X64) {
|
|
90
|
+
if (sqrtPrice0X64.lt(sqrtPrice1X64)) {
|
|
91
|
+
return [sqrtPrice0X64, sqrtPrice1X64];
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
return [sqrtPrice1X64, sqrtPrice0X64];
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
function shiftRightRoundUp(n) {
|
|
98
|
+
let result = n.shrn(64);
|
|
99
|
+
if (n.mod(new anchor_1.BN(constants_1.U64_MAX)).gt(constants_1.ZERO_BN)) {
|
|
100
|
+
result = result.add(constants_1.ONE_BN);
|
|
101
|
+
}
|
|
102
|
+
return result;
|
|
103
|
+
}
|
|
104
|
+
function divRoundUp(n0, n1) {
|
|
105
|
+
const hasRemainder = !n0.mod(n1).eq(constants_1.ZERO_BN);
|
|
106
|
+
if (hasRemainder) {
|
|
107
|
+
return n0.div(n1).add(constants_1.ONE_BN);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
return n0.div(n1);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
function adjustForSlippage(n, { numerator, denominator }, adjustUp) {
|
|
114
|
+
if (adjustUp) {
|
|
115
|
+
return n.mul(denominator.add(numerator)).div(denominator);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
return n.mul(denominator).div(denominator.add(numerator));
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
exports.ZERO_APR = {
|
|
122
|
+
fee: 0,
|
|
123
|
+
rewards: [0, 0, 0],
|
|
124
|
+
};
|
|
125
|
+
function estimateAprsForPriceRange(pool, tokenPrices, fees24h, tickLowerIndex, tickUpperIndex, rewardsDecimals) {
|
|
126
|
+
const tokenPriceA = tokenPrices.get((0, kit_1.address)(pool.tokenMintA));
|
|
127
|
+
const tokenPriceB = tokenPrices.get((0, kit_1.address)(pool.tokenMintB));
|
|
128
|
+
if (!fees24h || !tokenPriceA || !tokenPriceB || tickLowerIndex >= tickUpperIndex) {
|
|
129
|
+
return exports.ZERO_APR;
|
|
130
|
+
}
|
|
131
|
+
// Value of liquidity if the entire liquidity were concentrated between tickLower/Upper
|
|
132
|
+
// Since this is virtual liquidity, concentratedValue should actually be less than totalValue
|
|
133
|
+
const { minTokenA, minTokenB } = (0, whirlpools_2.getRemoveLiquidityQuote)({
|
|
134
|
+
positionAddress: whirlpools_1.DEFAULT_ADDRESS,
|
|
135
|
+
tickCurrentIndex: pool.tickCurrentIndex,
|
|
136
|
+
sqrtPrice: new anchor_1.BN(pool.sqrtPrice.toString()),
|
|
137
|
+
tickLowerIndex,
|
|
138
|
+
tickUpperIndex,
|
|
139
|
+
liquidity: new anchor_1.BN(pool.liquidity.toString()),
|
|
140
|
+
slippageTolerance: { numerator: constants_1.ZERO_BN, denominator: new anchor_1.BN(CreationParameters_1.FullBPS) },
|
|
141
|
+
});
|
|
142
|
+
const tokenValueA = getTokenValue(minTokenA, pool.tokenA.decimals, tokenPriceA);
|
|
143
|
+
const tokenValueB = getTokenValue(minTokenB, pool.tokenB.decimals, tokenPriceB);
|
|
144
|
+
const concentratedValue = tokenValueA.add(tokenValueB);
|
|
145
|
+
const feesPerYear = new decimal_1.default(fees24h).mul(365).div(new decimal_1.default(10).pow(6)); // scale from lamports of USDC to tokens
|
|
146
|
+
const feeApr = feesPerYear.div(concentratedValue).toNumber();
|
|
147
|
+
const rewards = pool.rewards.map((reward) => {
|
|
148
|
+
if (rewardsDecimals.has((0, kit_1.address)(reward.mint))) {
|
|
149
|
+
return estimateRewardApr(reward, rewardsDecimals.get((0, kit_1.address)(reward.mint)), concentratedValue, tokenPrices);
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
return 0;
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
return { fee: feeApr, rewards };
|
|
156
|
+
}
|
|
157
|
+
function getTokenValue(tokenAmount, decimals, tokenPrice) {
|
|
158
|
+
return tokenPrice.mul(new decimal_1.default(tokenAmount.toString()).div(new decimal_1.default(10).pow(decimals)));
|
|
159
|
+
}
|
|
160
|
+
async function getLowestInitializedTickArrayTickIndex(rpc, whirlpoolAddress, tickSpacing) {
|
|
161
|
+
const minTick = (0, whirlpools_core_1._MIN_TICK_INDEX)();
|
|
162
|
+
let startTickIndex = (0, whirlpools_core_1.getTickArrayStartTickIndex)(minTick, tickSpacing);
|
|
163
|
+
// eslint-disable-next-line
|
|
164
|
+
while (true) {
|
|
165
|
+
const [tickArrayAddress] = await (0, whirlpools_client_1.getTickArrayAddress)(whirlpoolAddress, startTickIndex);
|
|
166
|
+
const tickArray = await (0, whirlpools_client_1.fetchMaybeTickArray)(rpc, tickArrayAddress);
|
|
167
|
+
if (tickArray.exists) {
|
|
168
|
+
return startTickIndex;
|
|
169
|
+
}
|
|
170
|
+
startTickIndex += TICK_ARRAY_SIZE * tickSpacing;
|
|
171
|
+
await (0, utils_1.sleep)(500);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
async function getHighestInitializedTickArrayTickIndex(rpc, whirlpoolAddress, tickSpacing) {
|
|
175
|
+
const maxTick = (0, whirlpools_core_1._MAX_TICK_INDEX)();
|
|
176
|
+
let startTickIndex = (0, whirlpools_core_1.getTickArrayStartTickIndex)(maxTick, tickSpacing);
|
|
177
|
+
// eslint-disable-next-line
|
|
178
|
+
while (true) {
|
|
179
|
+
const [tickArrayAddress] = await (0, whirlpools_client_1.getTickArrayAddress)(whirlpoolAddress, startTickIndex);
|
|
180
|
+
const tickArray = await (0, whirlpools_client_1.fetchMaybeTickArray)(rpc, tickArrayAddress);
|
|
181
|
+
if (tickArray.exists) {
|
|
182
|
+
return startTickIndex;
|
|
183
|
+
}
|
|
184
|
+
startTickIndex -= TICK_ARRAY_SIZE * tickSpacing;
|
|
185
|
+
await (0, utils_1.sleep)(500);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
async function getLiquidityDistribution(rpc, poolAddress, poolData, tickLower, tickUpper, whirlpoolProgramId) {
|
|
189
|
+
const datapoints = [];
|
|
190
|
+
const tokenDecimalsA = poolData.tokenA.decimals;
|
|
191
|
+
const tokenDecimalsB = poolData.tokenB.decimals;
|
|
192
|
+
const tickArrayAddresses = await getSurroundingTickArrayAddresses(poolAddress, poolData, tickLower, tickUpper, whirlpoolProgramId);
|
|
193
|
+
const tickArrays = await accounts_1.TickArray.fetchMultiple(rpc, tickArrayAddresses, whirlpoolProgramId);
|
|
194
|
+
const currentLiquidity = new decimal_1.default(poolData.liquidity.toString());
|
|
195
|
+
let relativeLiquidity = currentLiquidity;
|
|
196
|
+
let minLiquidity = new decimal_1.default(0);
|
|
197
|
+
let liquidity = new decimal_1.default(0);
|
|
198
|
+
tickArrays.forEach((tickArray) => {
|
|
199
|
+
if (!tickArray) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
const startIndex = tickArray.startTickIndex;
|
|
203
|
+
tickArray.ticks.forEach((tick, index) => {
|
|
204
|
+
const tickIndex = startIndex + index * poolData.tickSpacing;
|
|
205
|
+
const price = (0, whirlpools_core_1.tickIndexToPrice)(tickIndex, tokenDecimalsA, tokenDecimalsB);
|
|
206
|
+
const liquidityNet = new decimal_1.default(tick.liquidityNet.toString());
|
|
207
|
+
liquidity = liquidity.add(liquidityNet);
|
|
208
|
+
datapoints.push({ liquidity: new decimal_1.default(liquidity), price: new decimal_1.default(price), tickIndex });
|
|
209
|
+
minLiquidity = liquidity.lt(minLiquidity) ? liquidity : minLiquidity;
|
|
210
|
+
if (tickIndex === poolData.tickCurrentIndex) {
|
|
211
|
+
relativeLiquidity = relativeLiquidity.sub(liquidityNet);
|
|
212
|
+
}
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
if (!relativeLiquidity.eq(currentLiquidity)) {
|
|
216
|
+
minLiquidity = minLiquidity.add(relativeLiquidity);
|
|
217
|
+
datapoints.forEach((datapoint) => {
|
|
218
|
+
datapoint.liquidity = datapoint.liquidity.add(relativeLiquidity);
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
if (minLiquidity.lt(0)) {
|
|
222
|
+
datapoints.forEach((datapoint) => {
|
|
223
|
+
datapoint.liquidity = datapoint.liquidity.add(minLiquidity.neg());
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
return {
|
|
227
|
+
currentPrice: new decimal_1.default(poolData.price),
|
|
228
|
+
currentTickIndex: poolData.tickCurrentIndex,
|
|
229
|
+
datapoints,
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
async function getSurroundingTickArrayAddresses(poolAddress, pool, tickLower, tickUpper, programId) {
|
|
233
|
+
const tickArrayAddresses = [];
|
|
234
|
+
let startIndex = (0, whirlpools_core_1.getTickArrayStartTickIndex)(tickLower, pool.tickSpacing);
|
|
235
|
+
while (startIndex <= tickUpper) {
|
|
236
|
+
const [address, _bump] = await getTickArrayPda(programId, poolAddress, startIndex);
|
|
237
|
+
tickArrayAddresses.push(address);
|
|
238
|
+
try {
|
|
239
|
+
startIndex = (0, whirlpools_core_1.getTickArrayStartTickIndex)(startIndex, pool.tickSpacing);
|
|
240
|
+
}
|
|
241
|
+
catch (_e) {
|
|
242
|
+
return tickArrayAddresses;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
return tickArrayAddresses;
|
|
246
|
+
}
|
|
247
|
+
async function getTickArrayPda(programId, poolAddress, startIndex) {
|
|
248
|
+
const pdaWithBump = await (0, kit_1.getProgramDerivedAddress)({
|
|
249
|
+
seeds: [Buffer.from('tick_array'), addressEncoder.encode(poolAddress), Buffer.from(startIndex.toString())],
|
|
250
|
+
programAddress: programId,
|
|
251
|
+
});
|
|
252
|
+
return [pdaWithBump[0], pdaWithBump[1]];
|
|
253
|
+
}
|
|
12
254
|
//# sourceMappingURL=orca.js.map
|