@byreal-io/byreal-clmm-sdk 0.2.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/LICENSE +21 -0
- package/README.md +341 -0
- package/dist/esm/client/chain.d.ts +227 -0
- package/dist/esm/client/chain.d.ts.map +1 -0
- package/dist/esm/client/chain.js +1123 -0
- package/dist/esm/client/chain.js.map +1 -0
- package/dist/esm/client/index.d.ts +4 -0
- package/dist/esm/client/index.d.ts.map +1 -0
- package/dist/esm/client/index.js +4 -0
- package/dist/esm/client/index.js.map +1 -0
- package/dist/esm/client/models.d.ts +160 -0
- package/dist/esm/client/models.d.ts.map +1 -0
- package/dist/esm/client/models.js +2 -0
- package/dist/esm/client/models.js.map +1 -0
- package/dist/esm/client/utils.d.ts +103 -0
- package/dist/esm/client/utils.d.ts.map +1 -0
- package/dist/esm/client/utils.js +238 -0
- package/dist/esm/client/utils.js.map +1 -0
- package/dist/esm/constants.d.ts +19 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +27 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/instructions/baseInstruction.d.ts +74 -0
- package/dist/esm/instructions/baseInstruction.d.ts.map +1 -0
- package/dist/esm/instructions/baseInstruction.js +577 -0
- package/dist/esm/instructions/baseInstruction.js.map +1 -0
- package/dist/esm/instructions/constants.d.ts +29 -0
- package/dist/esm/instructions/constants.d.ts.map +1 -0
- package/dist/esm/instructions/constants.js +32 -0
- package/dist/esm/instructions/constants.js.map +1 -0
- package/dist/esm/instructions/getRawData.d.ts +60 -0
- package/dist/esm/instructions/getRawData.d.ts.map +1 -0
- package/dist/esm/instructions/getRawData.js +105 -0
- package/dist/esm/instructions/getRawData.js.map +1 -0
- package/dist/esm/instructions/index.d.ts +9 -0
- package/dist/esm/instructions/index.d.ts.map +1 -0
- package/dist/esm/instructions/index.js +9 -0
- package/dist/esm/instructions/index.js.map +1 -0
- package/dist/esm/instructions/instruction.d.ts +137 -0
- package/dist/esm/instructions/instruction.d.ts.map +1 -0
- package/dist/esm/instructions/instruction.js +152 -0
- package/dist/esm/instructions/instruction.js.map +1 -0
- package/dist/esm/instructions/layout.d.ts +217 -0
- package/dist/esm/instructions/layout.d.ts.map +1 -0
- package/dist/esm/instructions/layout.js +203 -0
- package/dist/esm/instructions/layout.js.map +1 -0
- package/dist/esm/instructions/libs/marshmallow/bufferLayout.d.ts +107 -0
- package/dist/esm/instructions/libs/marshmallow/bufferLayout.d.ts.map +1 -0
- package/dist/esm/instructions/libs/marshmallow/bufferLayout.js +49 -0
- package/dist/esm/instructions/libs/marshmallow/bufferLayout.js.map +1 -0
- package/dist/esm/instructions/libs/marshmallow/index.d.ts +88 -0
- package/dist/esm/instructions/libs/marshmallow/index.d.ts.map +1 -0
- package/dist/esm/instructions/libs/marshmallow/index.js +256 -0
- package/dist/esm/instructions/libs/marshmallow/index.js.map +1 -0
- package/dist/esm/instructions/models.d.ts +39 -0
- package/dist/esm/instructions/models.d.ts.map +1 -0
- package/dist/esm/instructions/models.js +14 -0
- package/dist/esm/instructions/models.js.map +1 -0
- package/dist/esm/instructions/pda.d.ts +52 -0
- package/dist/esm/instructions/pda.d.ts.map +1 -0
- package/dist/esm/instructions/pda.js +47 -0
- package/dist/esm/instructions/pda.js.map +1 -0
- package/dist/esm/instructions/target/idl/byreal_amm_v3.json +7242 -0
- package/dist/esm/instructions/target/idl/byreal_amm_v3_test.json +7680 -0
- package/dist/esm/instructions/target/types/byreal_amm_v3.d.ts +5329 -0
- package/dist/esm/instructions/target/types/byreal_amm_v3.d.ts.map +1 -0
- package/dist/esm/instructions/target/types/byreal_amm_v3.js +2 -0
- package/dist/esm/instructions/target/types/byreal_amm_v3.js.map +1 -0
- package/dist/esm/instructions/target/types/raydium_amm_v3.d.ts +4149 -0
- package/dist/esm/instructions/target/types/raydium_amm_v3.d.ts.map +1 -0
- package/dist/esm/instructions/target/types/raydium_amm_v3.js +2 -0
- package/dist/esm/instructions/target/types/raydium_amm_v3.js.map +1 -0
- package/dist/esm/instructions/utils/binaryUtils.d.ts +11 -0
- package/dist/esm/instructions/utils/binaryUtils.d.ts.map +1 -0
- package/dist/esm/instructions/utils/binaryUtils.js +77 -0
- package/dist/esm/instructions/utils/binaryUtils.js.map +1 -0
- package/dist/esm/instructions/utils/fetchWalletTokenAccounts.d.ts +42 -0
- package/dist/esm/instructions/utils/fetchWalletTokenAccounts.d.ts.map +1 -0
- package/dist/esm/instructions/utils/fetchWalletTokenAccounts.js +63 -0
- package/dist/esm/instructions/utils/fetchWalletTokenAccounts.js.map +1 -0
- package/dist/esm/instructions/utils/getTickArrayBitmapExtension.d.ts +8 -0
- package/dist/esm/instructions/utils/getTickArrayBitmapExtension.d.ts.map +1 -0
- package/dist/esm/instructions/utils/getTickArrayBitmapExtension.js +22 -0
- package/dist/esm/instructions/utils/getTickArrayBitmapExtension.js.map +1 -0
- package/dist/esm/instructions/utils/getTickArrayInfo.d.ts +16 -0
- package/dist/esm/instructions/utils/getTickArrayInfo.d.ts.map +1 -0
- package/dist/esm/instructions/utils/getTickArrayInfo.js +75 -0
- package/dist/esm/instructions/utils/getTickArrayInfo.js.map +1 -0
- package/dist/esm/instructions/utils/index.d.ts +21 -0
- package/dist/esm/instructions/utils/index.d.ts.map +1 -0
- package/dist/esm/instructions/utils/index.js +21 -0
- package/dist/esm/instructions/utils/index.js.map +1 -0
- package/dist/esm/instructions/utils/liquidityMath.d.ts +30 -0
- package/dist/esm/instructions/utils/liquidityMath.d.ts.map +1 -0
- package/dist/esm/instructions/utils/liquidityMath.js +138 -0
- package/dist/esm/instructions/utils/liquidityMath.js.map +1 -0
- package/dist/esm/instructions/utils/mathUtils.d.ts +11 -0
- package/dist/esm/instructions/utils/mathUtils.d.ts.map +1 -0
- package/dist/esm/instructions/utils/mathUtils.js +36 -0
- package/dist/esm/instructions/utils/mathUtils.js.map +1 -0
- package/dist/esm/instructions/utils/models.d.ts +93 -0
- package/dist/esm/instructions/utils/models.d.ts.map +1 -0
- package/dist/esm/instructions/utils/models.js +13 -0
- package/dist/esm/instructions/utils/models.js.map +1 -0
- package/dist/esm/instructions/utils/poolStateUtils.d.ts +134 -0
- package/dist/esm/instructions/utils/poolStateUtils.d.ts.map +1 -0
- package/dist/esm/instructions/utils/poolStateUtils.js +137 -0
- package/dist/esm/instructions/utils/poolStateUtils.js.map +1 -0
- package/dist/esm/instructions/utils/poolUtils.d.ts +136 -0
- package/dist/esm/instructions/utils/poolUtils.d.ts.map +1 -0
- package/dist/esm/instructions/utils/poolUtils.js +219 -0
- package/dist/esm/instructions/utils/poolUtils.js.map +1 -0
- package/dist/esm/instructions/utils/position.d.ts +36 -0
- package/dist/esm/instructions/utils/position.d.ts.map +1 -0
- package/dist/esm/instructions/utils/position.js +86 -0
- package/dist/esm/instructions/utils/position.js.map +1 -0
- package/dist/esm/instructions/utils/sqrtPriceMath.d.ts +14 -0
- package/dist/esm/instructions/utils/sqrtPriceMath.d.ts.map +1 -0
- package/dist/esm/instructions/utils/sqrtPriceMath.js +168 -0
- package/dist/esm/instructions/utils/sqrtPriceMath.js.map +1 -0
- package/dist/esm/instructions/utils/swapMath.d.ts +48 -0
- package/dist/esm/instructions/utils/swapMath.d.ts.map +1 -0
- package/dist/esm/instructions/utils/swapMath.js +263 -0
- package/dist/esm/instructions/utils/swapMath.js.map +1 -0
- package/dist/esm/instructions/utils/tick.d.ts +106 -0
- package/dist/esm/instructions/utils/tick.d.ts.map +1 -0
- package/dist/esm/instructions/utils/tick.js +390 -0
- package/dist/esm/instructions/utils/tick.js.map +1 -0
- package/dist/esm/instructions/utils/tickArrayUtils.d.ts +50 -0
- package/dist/esm/instructions/utils/tickArrayUtils.d.ts.map +1 -0
- package/dist/esm/instructions/utils/tickArrayUtils.js +157 -0
- package/dist/esm/instructions/utils/tickArrayUtils.js.map +1 -0
- package/dist/esm/instructions/utils/tickMath.d.ts +18 -0
- package/dist/esm/instructions/utils/tickMath.d.ts.map +1 -0
- package/dist/esm/instructions/utils/tickMath.js +34 -0
- package/dist/esm/instructions/utils/tickMath.js.map +1 -0
- package/dist/esm/instructions/utils/tickarrayBitmap.d.ts +38 -0
- package/dist/esm/instructions/utils/tickarrayBitmap.d.ts.map +1 -0
- package/dist/esm/instructions/utils/tickarrayBitmap.js +157 -0
- package/dist/esm/instructions/utils/tickarrayBitmap.js.map +1 -0
- package/dist/esm/instructions/utils/transfer.d.ts +7 -0
- package/dist/esm/instructions/utils/transfer.d.ts.map +1 -0
- package/dist/esm/instructions/utils/transfer.js +78 -0
- package/dist/esm/instructions/utils/transfer.js.map +1 -0
- package/dist/esm/utils/accountInfo.d.ts +27 -0
- package/dist/esm/utils/accountInfo.d.ts.map +1 -0
- package/dist/esm/utils/accountInfo.js +80 -0
- package/dist/esm/utils/accountInfo.js.map +1 -0
- package/dist/esm/utils/checkV0TxSize.d.ts +8 -0
- package/dist/esm/utils/checkV0TxSize.d.ts.map +1 -0
- package/dist/esm/utils/checkV0TxSize.js +18 -0
- package/dist/esm/utils/checkV0TxSize.js.map +1 -0
- package/dist/esm/utils/estimateComputeUnits.d.ts +11 -0
- package/dist/esm/utils/estimateComputeUnits.d.ts.map +1 -0
- package/dist/esm/utils/estimateComputeUnits.js +48 -0
- package/dist/esm/utils/estimateComputeUnits.js.map +1 -0
- package/dist/esm/utils/generatePubKey.d.ts +10 -0
- package/dist/esm/utils/generatePubKey.d.ts.map +1 -0
- package/dist/esm/utils/generatePubKey.js +14 -0
- package/dist/esm/utils/generatePubKey.js.map +1 -0
- package/dist/esm/utils/index.d.ts +9 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +11 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/token.d.ts +9 -0
- package/dist/esm/utils/token.d.ts.map +1 -0
- package/dist/esm/utils/token.js +16 -0
- package/dist/esm/utils/token.js.map +1 -0
- package/dist/esm/utils/transactionUtils.d.ts +84 -0
- package/dist/esm/utils/transactionUtils.d.ts.map +1 -0
- package/dist/esm/utils/transactionUtils.js +138 -0
- package/dist/esm/utils/transactionUtils.js.map +1 -0
- package/dist/esm/utils/validateAndParsePublicKey.d.ts +15 -0
- package/dist/esm/utils/validateAndParsePublicKey.d.ts.map +1 -0
- package/dist/esm/utils/validateAndParsePublicKey.js +42 -0
- package/dist/esm/utils/validateAndParsePublicKey.js.map +1 -0
- package/package.json +66 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../src/client/chain.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { PublicKey, Signer, TransactionInstruction, VersionedTransaction } from '@solana/web3.js';
|
|
2
|
+
import BN from 'bn.js';
|
|
3
|
+
import { Decimal } from 'decimal.js';
|
|
4
|
+
import { IPersonalPositionLayout, IPoolLayoutWithId, ITokenInfo } from '../instructions/index.js';
|
|
5
|
+
import { IMakeTransactionOptions } from '../utils/index.js';
|
|
6
|
+
export type SignerCallback = (transaction: VersionedTransaction) => Promise<VersionedTransaction>;
|
|
7
|
+
export type ParamsWithSignerCallback<T> = T & {
|
|
8
|
+
signerCallback: SignerCallback;
|
|
9
|
+
};
|
|
10
|
+
export interface IInstructionReturn {
|
|
11
|
+
instructions: TransactionInstruction[];
|
|
12
|
+
signers?: Signer[];
|
|
13
|
+
transaction: VersionedTransaction;
|
|
14
|
+
nftAddress?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface ICreatePositionParams {
|
|
17
|
+
userAddress: PublicKey;
|
|
18
|
+
poolInfo: IPoolLayoutWithId;
|
|
19
|
+
tickLower: number;
|
|
20
|
+
tickUpper: number;
|
|
21
|
+
base: 'MintA' | 'MintB';
|
|
22
|
+
baseAmount: BN;
|
|
23
|
+
otherAmountMax: BN;
|
|
24
|
+
transactionOptions?: IMakeTransactionOptions;
|
|
25
|
+
}
|
|
26
|
+
export interface IClosePositionParams {
|
|
27
|
+
userAddress: PublicKey;
|
|
28
|
+
nftMint: PublicKey;
|
|
29
|
+
}
|
|
30
|
+
export interface IDecreaseLiquidityParams {
|
|
31
|
+
userAddress: PublicKey;
|
|
32
|
+
nftMint: PublicKey;
|
|
33
|
+
liquidity: BN;
|
|
34
|
+
slippage?: number;
|
|
35
|
+
}
|
|
36
|
+
export interface IDecreaseFullLiquidityParams {
|
|
37
|
+
userAddress: PublicKey;
|
|
38
|
+
nftMint: PublicKey;
|
|
39
|
+
closePosition?: boolean;
|
|
40
|
+
slippage?: number;
|
|
41
|
+
}
|
|
42
|
+
export interface IAddLiquidityParams {
|
|
43
|
+
userAddress: PublicKey;
|
|
44
|
+
nftMint: PublicKey;
|
|
45
|
+
base: 'MintA' | 'MintB';
|
|
46
|
+
baseAmount: BN;
|
|
47
|
+
otherAmountMax: BN;
|
|
48
|
+
computeBudgetOptions?: IComputeBudgetOptions;
|
|
49
|
+
}
|
|
50
|
+
export interface ICreatePoolParams {
|
|
51
|
+
userAddress: PublicKey;
|
|
52
|
+
poolManager: PublicKey;
|
|
53
|
+
mintA: ITokenInfo;
|
|
54
|
+
mintB: ITokenInfo;
|
|
55
|
+
ammConfigId: PublicKey;
|
|
56
|
+
initialPrice: number;
|
|
57
|
+
openTime?: BN;
|
|
58
|
+
computeBudgetOptions?: IComputeBudgetOptions;
|
|
59
|
+
}
|
|
60
|
+
export interface ICollectFeesParams {
|
|
61
|
+
userAddress: PublicKey;
|
|
62
|
+
nftMint: PublicKey;
|
|
63
|
+
}
|
|
64
|
+
export interface ICollectAllFeesParams {
|
|
65
|
+
userAddress: PublicKey;
|
|
66
|
+
nftMintList: PublicKey[];
|
|
67
|
+
}
|
|
68
|
+
export interface IGetPositionInfoByNftMintReturn {
|
|
69
|
+
priceLower: Decimal;
|
|
70
|
+
priceUpper: Decimal;
|
|
71
|
+
uiPriceLower: string;
|
|
72
|
+
uiPriceUpper: string;
|
|
73
|
+
tokenA: {
|
|
74
|
+
address: PublicKey;
|
|
75
|
+
decimals: number;
|
|
76
|
+
amount: BN;
|
|
77
|
+
feeAmount: BN;
|
|
78
|
+
uiAmount: string;
|
|
79
|
+
uiFeeAmount: string;
|
|
80
|
+
};
|
|
81
|
+
tokenB: {
|
|
82
|
+
address: PublicKey;
|
|
83
|
+
decimals: number;
|
|
84
|
+
amount: BN;
|
|
85
|
+
feeAmount: BN;
|
|
86
|
+
uiAmount: string;
|
|
87
|
+
uiFeeAmount: string;
|
|
88
|
+
};
|
|
89
|
+
rawPositionInfo: IPersonalPositionLayout;
|
|
90
|
+
rawPoolInfo: IPoolLayoutWithId;
|
|
91
|
+
}
|
|
92
|
+
export interface ICalculateCreatePositionFee {
|
|
93
|
+
transactionNetFee: number;
|
|
94
|
+
refundableFees: number;
|
|
95
|
+
unRefundableFees: number;
|
|
96
|
+
createTickFee: number;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* maxFee and exactFee are mutually exclusive
|
|
100
|
+
*/
|
|
101
|
+
export type IComputeBudgetOptions = {
|
|
102
|
+
maxFee: number;
|
|
103
|
+
exactFee?: never;
|
|
104
|
+
computeUnitPrice?: number;
|
|
105
|
+
} | {
|
|
106
|
+
maxFee?: never;
|
|
107
|
+
exactFee: number;
|
|
108
|
+
computeUnitPrice?: never;
|
|
109
|
+
} | {
|
|
110
|
+
maxFee?: undefined;
|
|
111
|
+
exactFee?: undefined;
|
|
112
|
+
computeUnitPrice?: number;
|
|
113
|
+
};
|
|
114
|
+
export interface IQouteSwapParams {
|
|
115
|
+
poolInfo: IPoolLayoutWithId;
|
|
116
|
+
inputTokenMint: PublicKey;
|
|
117
|
+
amountIn: BN;
|
|
118
|
+
slippage?: number;
|
|
119
|
+
priceLimit?: Decimal;
|
|
120
|
+
catchLiquidityInsufficient?: boolean;
|
|
121
|
+
}
|
|
122
|
+
export interface IQouteSwapReturn {
|
|
123
|
+
allTrade: boolean;
|
|
124
|
+
amountIn: BN;
|
|
125
|
+
isInputMintA: boolean;
|
|
126
|
+
expectedAmountOut: BN;
|
|
127
|
+
minAmountOut: BN;
|
|
128
|
+
remainingAccounts: PublicKey[];
|
|
129
|
+
executionPrice: BN;
|
|
130
|
+
feeAmount: BN;
|
|
131
|
+
}
|
|
132
|
+
export interface ISwapParams {
|
|
133
|
+
poolInfo: IPoolLayoutWithId;
|
|
134
|
+
userAddress: PublicKey;
|
|
135
|
+
quoteReturn: IQouteSwapReturn;
|
|
136
|
+
}
|
|
137
|
+
export interface ISwapExactOutParams {
|
|
138
|
+
poolInfo: IPoolLayoutWithId;
|
|
139
|
+
userAddress: PublicKey;
|
|
140
|
+
quoteReturn: IQuoteSwapExactOutReturn;
|
|
141
|
+
}
|
|
142
|
+
export interface IQuoteSwapExactOutParams {
|
|
143
|
+
poolInfo: IPoolLayoutWithId;
|
|
144
|
+
outputTokenMint: PublicKey;
|
|
145
|
+
amountOut: BN;
|
|
146
|
+
slippage?: number;
|
|
147
|
+
priceLimit?: Decimal;
|
|
148
|
+
catchLiquidityInsufficient?: boolean;
|
|
149
|
+
}
|
|
150
|
+
export interface IQuoteSwapExactOutReturn {
|
|
151
|
+
allTrade: boolean;
|
|
152
|
+
amountOut: BN;
|
|
153
|
+
isOutputMintA: boolean;
|
|
154
|
+
expectedAmountIn: BN;
|
|
155
|
+
maxAmountIn: BN;
|
|
156
|
+
remainingAccounts: PublicKey[];
|
|
157
|
+
executionPrice: BN;
|
|
158
|
+
feeAmount: BN;
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../src/client/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAClG,OAAO,EAAE,MAAM,OAAO,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,CAAC,WAAW,EAAE,oBAAoB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAElG,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,CAAC,GAAG;IAC5C,cAAc,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,oBAAoB,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,SAAS,CAAC;IACvB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,UAAU,EAAE,EAAE,CAAC;IACf,cAAc,EAAE,EAAE,CAAC;IACnB,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;CAC9C;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,SAAS,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,SAAS,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,EAAE,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,4BAA4B;IAC3C,WAAW,EAAE,SAAS,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,SAAS,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,UAAU,EAAE,EAAE,CAAC;IACf,cAAc,EAAE,EAAE,CAAC;IACnB,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;CAC9C;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,SAAS,CAAC;IACvB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,SAAS,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,EAAE,CAAC;IACd,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;CAC9C;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,SAAS,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,SAAS,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,+BAA+B;IAC9C,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE;QACN,OAAO,EAAE,SAAS,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,EAAE,CAAC;QACX,SAAS,EAAE,EAAE,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,SAAS,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,EAAE,CAAC;QACX,SAAS,EAAE,EAAE,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,eAAe,EAAE,uBAAuB,CAAC;IACzC,WAAW,EAAE,iBAAiB,CAAC;CAChC;AAED,MAAM,WAAW,2BAA2B;IAC1C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IAEzB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/D;IAAE,MAAM,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,KAAK,CAAA;CAAE,GAC9D;IAAE,MAAM,CAAC,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,cAAc,EAAE,SAAS,CAAC;IAC1B,QAAQ,EAAE,EAAE,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,EAAE,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,EAAE,CAAC;IACtB,YAAY,EAAE,EAAE,CAAC;IACjB,iBAAiB,EAAE,SAAS,EAAE,CAAC;IAC/B,cAAc,EAAE,EAAE,CAAC;IACnB,SAAS,EAAE,EAAE,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,gBAAgB,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,wBAAwB,CAAC;CACvC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,eAAe,EAAE,SAAS,CAAC;IAC3B,SAAS,EAAE,EAAE,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,EAAE,CAAC;IACd,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,EAAE,CAAC;IACrB,WAAW,EAAE,EAAE,CAAC;IAChB,iBAAiB,EAAE,SAAS,EAAE,CAAC;IAC/B,cAAc,EAAE,EAAE,CAAC;IACnB,SAAS,EAAE,EAAE,CAAC;CACf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/client/models.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import BN from 'bn.js';
|
|
2
|
+
import { Decimal } from 'decimal.js';
|
|
3
|
+
import { IPoolLayout, IPoolLayoutWithId } from '../instructions/index.js';
|
|
4
|
+
import { Connection, PublicKey } from '@solana/web3.js';
|
|
5
|
+
/**
|
|
6
|
+
* Used to round the price to the corresponding tick when creating a position
|
|
7
|
+
* @param price Input price
|
|
8
|
+
* @param poolInfo Pool information
|
|
9
|
+
* @returns Decimal rounded price
|
|
10
|
+
*/
|
|
11
|
+
export declare function alignPriceToTickPrice(price: Decimal, poolInfo: IPoolLayout): Decimal;
|
|
12
|
+
/**
|
|
13
|
+
* Calculate the amount of tokenB needed to be invested after the specified tokenA amount has been invested
|
|
14
|
+
* @param params.priceLower Lower price
|
|
15
|
+
* @param params.priceUpper Upper price
|
|
16
|
+
* @param params.amountA Amount of tokenA to be invested
|
|
17
|
+
* @param params.poolInfo Pool information
|
|
18
|
+
* @returns BN amount of tokenB to be invested
|
|
19
|
+
*/
|
|
20
|
+
export declare function getAmountBFromAmountA(params: {
|
|
21
|
+
priceLower: Decimal | number | string;
|
|
22
|
+
priceUpper: Decimal | number | string;
|
|
23
|
+
amountA: BN;
|
|
24
|
+
poolInfo: IPoolLayout;
|
|
25
|
+
}): BN;
|
|
26
|
+
/**
|
|
27
|
+
* Calculate the amount of tokenA needed to be invested after the specified tokenB amount has been invested
|
|
28
|
+
* @param params.priceLower Lower price
|
|
29
|
+
* @param params.priceUpper Upper price
|
|
30
|
+
* @param params.amountB Amount of tokenB to be invested
|
|
31
|
+
* @param params.poolInfo Pool information
|
|
32
|
+
* @returns BN amount of tokenA to be invested
|
|
33
|
+
*/
|
|
34
|
+
export declare function getAmountAFromAmountB(params: {
|
|
35
|
+
priceLower: Decimal | number | string;
|
|
36
|
+
priceUpper: Decimal | number | string;
|
|
37
|
+
amountB: BN;
|
|
38
|
+
poolInfo: IPoolLayout;
|
|
39
|
+
}): BN;
|
|
40
|
+
/**
|
|
41
|
+
* Calculate the expected annualized return rate of adding liquidity (APR)
|
|
42
|
+
*/
|
|
43
|
+
export declare function calculateApr(params: {
|
|
44
|
+
volume24h: number;
|
|
45
|
+
feeRate: number;
|
|
46
|
+
positionUsdValue: number;
|
|
47
|
+
amountA: BN;
|
|
48
|
+
amountB: BN;
|
|
49
|
+
tickLower: number;
|
|
50
|
+
tickUpper: number;
|
|
51
|
+
poolInfo: IPoolLayoutWithId;
|
|
52
|
+
existLiquidity?: BN;
|
|
53
|
+
scene?: 'create' | 'add' | 'exist';
|
|
54
|
+
}): number;
|
|
55
|
+
/**
|
|
56
|
+
* Calculate the expected annualized return rate of reward
|
|
57
|
+
*/
|
|
58
|
+
export declare function calculateRewardApr(params: {
|
|
59
|
+
reward24hUsdValue: number;
|
|
60
|
+
positionUsdValue: number;
|
|
61
|
+
amountA: BN;
|
|
62
|
+
amountB: BN;
|
|
63
|
+
tickLower: number;
|
|
64
|
+
tickUpper: number;
|
|
65
|
+
poolInfo: IPoolLayoutWithId;
|
|
66
|
+
existLiquidity?: BN;
|
|
67
|
+
scene?: 'create' | 'add' | 'exist';
|
|
68
|
+
}): number;
|
|
69
|
+
/**
|
|
70
|
+
* Calculate the expected annualized return rate of adding liquidity (APR)
|
|
71
|
+
*
|
|
72
|
+
*/
|
|
73
|
+
export declare function _calculateApr(params: {
|
|
74
|
+
fee24hUsdValue: number;
|
|
75
|
+
positionUsdValue: number;
|
|
76
|
+
amountA: BN;
|
|
77
|
+
amountB: BN;
|
|
78
|
+
tickLower: number;
|
|
79
|
+
tickUpper: number;
|
|
80
|
+
poolInfo: IPoolLayoutWithId;
|
|
81
|
+
existLiquidity?: BN;
|
|
82
|
+
scene?: 'create' | 'add' | 'exist';
|
|
83
|
+
}): number;
|
|
84
|
+
/**
|
|
85
|
+
* Calculate the annualized return rate for different price ranges
|
|
86
|
+
* Calculate APR for different price ranges based on the percentage offset from the current price
|
|
87
|
+
*
|
|
88
|
+
* @param params Calculation parameters
|
|
89
|
+
* @returns Mapping of annualized return rates for different price ranges, using -1 to represent the full range
|
|
90
|
+
*/
|
|
91
|
+
export declare function calculateRangeAprs(params: {
|
|
92
|
+
percentRanges: number[];
|
|
93
|
+
volume24h: number;
|
|
94
|
+
feeRate: number;
|
|
95
|
+
tokenAPriceUsd: number;
|
|
96
|
+
tokenBPriceUsd: number;
|
|
97
|
+
poolInfo: IPoolLayoutWithId;
|
|
98
|
+
}): Record<number, number>;
|
|
99
|
+
/**
|
|
100
|
+
* 获取 mint 对应的 token program ID
|
|
101
|
+
*/
|
|
102
|
+
export declare function getTokenProgramId(connection: Connection, mintAddress: PublicKey): Promise<PublicKey>;
|
|
103
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
import BN from 'bn.js';
|
|
2
|
+
import { Decimal } from 'decimal.js';
|
|
3
|
+
import { LiquidityMath, PoolUtils, SqrtPriceMath, TickMath, } from '../instructions/index.js';
|
|
4
|
+
import { TOKEN_2022_PROGRAM_ID, TOKEN_PROGRAM_ID } from '@solana/spl-token';
|
|
5
|
+
/**
|
|
6
|
+
* Used to round the price to the corresponding tick when creating a position
|
|
7
|
+
* @param price Input price
|
|
8
|
+
* @param poolInfo Pool information
|
|
9
|
+
* @returns Decimal rounded price
|
|
10
|
+
*/
|
|
11
|
+
export function alignPriceToTickPrice(price, poolInfo) {
|
|
12
|
+
const { price: roundedPrice } = TickMath.getTickAlignedPriceDetails(price, poolInfo.tickSpacing, poolInfo.mintDecimalsA, poolInfo.mintDecimalsB);
|
|
13
|
+
return roundedPrice;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Calculate the amount of tokenB needed to be invested after the specified tokenA amount has been invested
|
|
17
|
+
* @param params.priceLower Lower price
|
|
18
|
+
* @param params.priceUpper Upper price
|
|
19
|
+
* @param params.amountA Amount of tokenA to be invested
|
|
20
|
+
* @param params.poolInfo Pool information
|
|
21
|
+
* @returns BN amount of tokenB to be invested
|
|
22
|
+
*/
|
|
23
|
+
export function getAmountBFromAmountA(params) {
|
|
24
|
+
// console.log('[clmm sdk] getAmountBFromAmountA fn params:', JSON.stringify(params, null, 2));
|
|
25
|
+
const { priceLower, priceUpper, amountA, poolInfo } = params;
|
|
26
|
+
const priceLowerDecimal = alignPriceToTickPrice(new Decimal(priceLower), poolInfo);
|
|
27
|
+
const priceUpperDecimal = alignPriceToTickPrice(new Decimal(priceUpper), poolInfo);
|
|
28
|
+
const sqrtPriceX64A = SqrtPriceMath.priceToSqrtPriceX64(priceLowerDecimal, poolInfo.mintDecimalsA, poolInfo.mintDecimalsB);
|
|
29
|
+
const sqrtPriceX64B = SqrtPriceMath.priceToSqrtPriceX64(priceUpperDecimal, poolInfo.mintDecimalsA, poolInfo.mintDecimalsB);
|
|
30
|
+
const amountB = LiquidityMath.getAmountBFromAmountA(sqrtPriceX64A, sqrtPriceX64B, poolInfo.sqrtPriceX64, amountA);
|
|
31
|
+
return amountB;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Calculate the amount of tokenA needed to be invested after the specified tokenB amount has been invested
|
|
35
|
+
* @param params.priceLower Lower price
|
|
36
|
+
* @param params.priceUpper Upper price
|
|
37
|
+
* @param params.amountB Amount of tokenB to be invested
|
|
38
|
+
* @param params.poolInfo Pool information
|
|
39
|
+
* @returns BN amount of tokenA to be invested
|
|
40
|
+
*/
|
|
41
|
+
export function getAmountAFromAmountB(params) {
|
|
42
|
+
const { priceLower, priceUpper, amountB, poolInfo } = params;
|
|
43
|
+
const priceLowerDecimal = alignPriceToTickPrice(new Decimal(priceLower), poolInfo);
|
|
44
|
+
const priceUpperDecimal = alignPriceToTickPrice(new Decimal(priceUpper), poolInfo);
|
|
45
|
+
const sqrtPriceX64A = SqrtPriceMath.priceToSqrtPriceX64(priceLowerDecimal, poolInfo.mintDecimalsA, poolInfo.mintDecimalsB);
|
|
46
|
+
const sqrtPriceX64B = SqrtPriceMath.priceToSqrtPriceX64(priceUpperDecimal, poolInfo.mintDecimalsA, poolInfo.mintDecimalsB);
|
|
47
|
+
return LiquidityMath.getAmountAFromAmountB(sqrtPriceX64A, sqrtPriceX64B, poolInfo.sqrtPriceX64, amountB);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Calculate the expected annualized return rate of adding liquidity (APR)
|
|
51
|
+
*/
|
|
52
|
+
export function calculateApr(params) {
|
|
53
|
+
// console.log('[clmm sdk] calculateApr fn params:', JSON.stringify(params, null, 2));
|
|
54
|
+
const { volume24h, feeRate, positionUsdValue, amountA, amountB, tickLower, tickUpper, poolInfo, scene = 'exist', existLiquidity = new BN(0), } = params;
|
|
55
|
+
return _calculateApr({
|
|
56
|
+
fee24hUsdValue: volume24h * feeRate,
|
|
57
|
+
positionUsdValue,
|
|
58
|
+
amountA,
|
|
59
|
+
amountB,
|
|
60
|
+
tickLower,
|
|
61
|
+
tickUpper,
|
|
62
|
+
poolInfo,
|
|
63
|
+
scene,
|
|
64
|
+
existLiquidity,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Calculate the expected annualized return rate of reward
|
|
69
|
+
*/
|
|
70
|
+
export function calculateRewardApr(params) {
|
|
71
|
+
const { reward24hUsdValue, positionUsdValue, amountA, amountB, tickLower, tickUpper, poolInfo, scene = 'exist', existLiquidity = new BN(0), } = params;
|
|
72
|
+
return _calculateApr({
|
|
73
|
+
fee24hUsdValue: reward24hUsdValue,
|
|
74
|
+
positionUsdValue,
|
|
75
|
+
amountA,
|
|
76
|
+
amountB,
|
|
77
|
+
tickLower,
|
|
78
|
+
tickUpper,
|
|
79
|
+
poolInfo,
|
|
80
|
+
scene,
|
|
81
|
+
existLiquidity,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Calculate the expected annualized return rate of adding liquidity (APR)
|
|
86
|
+
*
|
|
87
|
+
*/
|
|
88
|
+
export function _calculateApr(params) {
|
|
89
|
+
const { fee24hUsdValue, positionUsdValue, amountA, amountB, tickLower, tickUpper, poolInfo, scene = 'exist', existLiquidity = new BN(0), } = params;
|
|
90
|
+
// Get the active liquidity of the pool
|
|
91
|
+
const poolActiveLiquidity = poolInfo.liquidity;
|
|
92
|
+
// Calculate the sqrtPrice of the price range
|
|
93
|
+
const sqrtPriceCurrentX64 = poolInfo.sqrtPriceX64;
|
|
94
|
+
const sqrtPriceLowerX64 = SqrtPriceMath.getSqrtPriceX64FromTick(tickLower);
|
|
95
|
+
const sqrtPriceUpperX64 = SqrtPriceMath.getSqrtPriceX64FromTick(tickUpper);
|
|
96
|
+
// Calculate the active liquidity of the user
|
|
97
|
+
const userActiveLiquidity = LiquidityMath.getLiquidityFromTokenAmounts(sqrtPriceCurrentX64, sqrtPriceLowerX64, sqrtPriceUpperX64, amountA, amountB);
|
|
98
|
+
// Check if the current price is within the user's range
|
|
99
|
+
const isInRange = poolInfo.tickCurrent >= tickLower && poolInfo.tickCurrent < tickUpper;
|
|
100
|
+
// If not in range, active liquidity is 0
|
|
101
|
+
if (!isInRange) {
|
|
102
|
+
return 0;
|
|
103
|
+
}
|
|
104
|
+
if (poolActiveLiquidity.isZero()) {
|
|
105
|
+
return 0;
|
|
106
|
+
}
|
|
107
|
+
// Calculate the annualized return rate
|
|
108
|
+
// Formula source: https://uponly.larksuite.com/wiki/GznTwz3kGi3D0ikaLp8uDlYcsKd?fromScene=spaceOverview
|
|
109
|
+
// For creating liquidity: (Volume * FeeRate / Position) * (userAL / (AL + userAL)) * 365 * 100
|
|
110
|
+
// For adding liquidity: (Volume * FeeRate / Position) * ((userAL + addAL) / (AL + addAL)) * 365 * 100
|
|
111
|
+
// For existing positions: (Volume * FeeRate / Position) * (userAL / AL) * 365 * 100
|
|
112
|
+
const fee24hDec = new Decimal(fee24hUsdValue);
|
|
113
|
+
const positionUsdValueDec = new Decimal(positionUsdValue);
|
|
114
|
+
const userActiveLiquidityDec = new Decimal(userActiveLiquidity.toString());
|
|
115
|
+
const poolActiveLiquidityDec = new Decimal(poolActiveLiquidity.toString());
|
|
116
|
+
const existLiquidityDec = new Decimal(existLiquidity.toString());
|
|
117
|
+
// Daily return rate
|
|
118
|
+
const dailyReturn = fee24hDec.div(positionUsdValueDec);
|
|
119
|
+
// Calculate the liquidity share using Decimal
|
|
120
|
+
let liquidityShare;
|
|
121
|
+
if (scene === 'create') {
|
|
122
|
+
liquidityShare = userActiveLiquidityDec.div(poolActiveLiquidityDec.plus(userActiveLiquidityDec));
|
|
123
|
+
}
|
|
124
|
+
else if (scene === 'add') {
|
|
125
|
+
liquidityShare = existLiquidityDec
|
|
126
|
+
.plus(userActiveLiquidityDec)
|
|
127
|
+
.div(poolActiveLiquidityDec.plus(userActiveLiquidityDec));
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
liquidityShare = userActiveLiquidityDec.div(poolActiveLiquidityDec);
|
|
131
|
+
}
|
|
132
|
+
// Calculate the annualized return rate
|
|
133
|
+
const apr = dailyReturn.mul(liquidityShare).mul(365).mul(100).toNumber();
|
|
134
|
+
return apr;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Calculate the annualized return rate for different price ranges
|
|
138
|
+
* Calculate APR for different price ranges based on the percentage offset from the current price
|
|
139
|
+
*
|
|
140
|
+
* @param params Calculation parameters
|
|
141
|
+
* @returns Mapping of annualized return rates for different price ranges, using -1 to represent the full range
|
|
142
|
+
*/
|
|
143
|
+
export function calculateRangeAprs(params) {
|
|
144
|
+
const { percentRanges, volume24h, feeRate, tokenAPriceUsd, tokenBPriceUsd, poolInfo } = params;
|
|
145
|
+
// Get the current price, liquidity and sample liquidity
|
|
146
|
+
const currentPrice = TickMath.getPriceFromTick({
|
|
147
|
+
tick: poolInfo.tickCurrent,
|
|
148
|
+
decimalsA: poolInfo.mintDecimalsA,
|
|
149
|
+
decimalsB: poolInfo.mintDecimalsB,
|
|
150
|
+
});
|
|
151
|
+
const poolLiquidity = poolInfo.liquidity;
|
|
152
|
+
const _sampleLiquidity = poolLiquidity.div(new BN(10000));
|
|
153
|
+
const _minLiquidity = new BN(1000);
|
|
154
|
+
const liquidityToUse = _sampleLiquidity.lt(_minLiquidity) ? _minLiquidity : _sampleLiquidity;
|
|
155
|
+
// Result mapping
|
|
156
|
+
const result = {};
|
|
157
|
+
const { minTickBoundary, maxTickBoundary } = PoolUtils.tickRange(poolInfo.tickSpacing);
|
|
158
|
+
// Calculate APR for each range
|
|
159
|
+
for (const range of percentRanges) {
|
|
160
|
+
let tickLower;
|
|
161
|
+
let tickUpper;
|
|
162
|
+
if (range === -1) {
|
|
163
|
+
tickLower = minTickBoundary;
|
|
164
|
+
tickUpper = maxTickBoundary;
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
const lowerPriceRatio = new Decimal(1).minus(new Decimal(range).div(100));
|
|
168
|
+
const upperPriceRatio = new Decimal(1).plus(new Decimal(range).div(100));
|
|
169
|
+
const lowerPrice = currentPrice.mul(lowerPriceRatio);
|
|
170
|
+
const upperPrice = currentPrice.mul(upperPriceRatio);
|
|
171
|
+
tickLower = TickMath.getTickWithPriceAndTickspacing(lowerPrice, poolInfo.tickSpacing, poolInfo.mintDecimalsA, poolInfo.mintDecimalsB);
|
|
172
|
+
tickUpper = TickMath.getTickWithPriceAndTickspacing(upperPrice, poolInfo.tickSpacing, poolInfo.mintDecimalsA, poolInfo.mintDecimalsB);
|
|
173
|
+
}
|
|
174
|
+
// Ensure that lower and upper are at least 1 tickSpacing apart
|
|
175
|
+
if (tickLower >= tickUpper) {
|
|
176
|
+
tickLower = Math.max(minTickBoundary, poolInfo.tickCurrent - poolInfo.tickSpacing);
|
|
177
|
+
tickUpper = Math.min(maxTickBoundary, poolInfo.tickCurrent + poolInfo.tickSpacing);
|
|
178
|
+
}
|
|
179
|
+
// Calculate the square root of the price (X64 format)
|
|
180
|
+
const sqrtPriceCurrentX64 = poolInfo.sqrtPriceX64;
|
|
181
|
+
const sqrtPriceLowerX64 = SqrtPriceMath.getSqrtPriceX64FromTick(tickLower);
|
|
182
|
+
const sqrtPriceUpperX64 = SqrtPriceMath.getSqrtPriceX64FromTick(tickUpper);
|
|
183
|
+
// Calculate the corresponding token amounts based on the liquidity
|
|
184
|
+
const { amountA, amountB } = LiquidityMath.getAmountsFromLiquidity(sqrtPriceCurrentX64, sqrtPriceLowerX64, sqrtPriceUpperX64, liquidityToUse, false // Do not round up
|
|
185
|
+
);
|
|
186
|
+
// Calculate the USD value of the tokens
|
|
187
|
+
const tokenAUsdAmount = new Decimal(amountA.toString())
|
|
188
|
+
.div(new Decimal(10).pow(poolInfo.mintDecimalsA))
|
|
189
|
+
.mul(tokenAPriceUsd);
|
|
190
|
+
const tokenBUsdAmount = new Decimal(amountB.toString())
|
|
191
|
+
.div(new Decimal(10).pow(poolInfo.mintDecimalsB))
|
|
192
|
+
.mul(tokenBPriceUsd);
|
|
193
|
+
// Calculate the total investment value
|
|
194
|
+
const positionUsdValue = tokenAUsdAmount.plus(tokenBUsdAmount);
|
|
195
|
+
// If the USD value is too small, set a minimum value to avoid division issues
|
|
196
|
+
const effectivePositionUsdValue = positionUsdValue.lt(0.01) ? new Decimal(0.01) : positionUsdValue;
|
|
197
|
+
// Calculate the actual annualized return rate
|
|
198
|
+
const apr = calculateApr({
|
|
199
|
+
volume24h,
|
|
200
|
+
feeRate,
|
|
201
|
+
positionUsdValue: effectivePositionUsdValue.toNumber(),
|
|
202
|
+
amountA,
|
|
203
|
+
amountB,
|
|
204
|
+
tickLower,
|
|
205
|
+
tickUpper,
|
|
206
|
+
poolInfo,
|
|
207
|
+
scene: 'create',
|
|
208
|
+
});
|
|
209
|
+
result[range] = apr;
|
|
210
|
+
}
|
|
211
|
+
return result;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* 获取 mint 对应的 token program ID
|
|
215
|
+
*/
|
|
216
|
+
export async function getTokenProgramId(connection, mintAddress) {
|
|
217
|
+
try {
|
|
218
|
+
const mintAccountInfo = await connection.getAccountInfo(mintAddress);
|
|
219
|
+
if (!mintAccountInfo) {
|
|
220
|
+
throw new Error(`Mint account not found: ${mintAddress.toBase58()}`);
|
|
221
|
+
}
|
|
222
|
+
// 检查 mint 账户的 owner 来确定使用的是哪个 token program
|
|
223
|
+
if (mintAccountInfo.owner.equals(TOKEN_2022_PROGRAM_ID)) {
|
|
224
|
+
return TOKEN_2022_PROGRAM_ID;
|
|
225
|
+
}
|
|
226
|
+
else if (mintAccountInfo.owner.equals(TOKEN_PROGRAM_ID)) {
|
|
227
|
+
return TOKEN_PROGRAM_ID;
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
throw new Error(`Unknown token program for mint: ${mintAddress.toBase58()}`);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
catch (error) {
|
|
234
|
+
console.warn(`Failed to get token program for ${mintAddress.toBase58()}, defaulting to TOKEN_PROGRAM_ID`);
|
|
235
|
+
return TOKEN_PROGRAM_ID;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { PublicKey } from '@solana/web3.js';
|
|
2
|
+
export declare const TICK_ARRAY_SIZE = 60;
|
|
3
|
+
export declare const TICK_ARRAY_BITMAP_SIZE = 512;
|
|
4
|
+
export declare const EXTENSION_TICKARRAY_BITMAP_SIZE = 14;
|
|
5
|
+
export declare const DYN_TICK_ARRAY_STRUCT_LEN = 208;
|
|
6
|
+
export declare const DYN_TICK_ARRAY_HEADER_LEN = 216;
|
|
7
|
+
export declare const TICK_STATE_LEN = 168;
|
|
8
|
+
export declare const U64_IGNORE_RANGE: any;
|
|
9
|
+
export declare const BYREAL_CLMM_PROGRAM_ID: PublicKey;
|
|
10
|
+
export declare const BYREAL_CLMM_PROGRAM_ID_TEST: PublicKey;
|
|
11
|
+
export declare const MEMO_PROGRAM_ID: PublicKey;
|
|
12
|
+
export declare const RENT_PROGRAM_ID: PublicKey;
|
|
13
|
+
export declare const CLOCK_PROGRAM_ID: PublicKey;
|
|
14
|
+
export declare const METADATA_PROGRAM_ID: PublicKey;
|
|
15
|
+
export declare const INSTRUCTION_PROGRAM_ID: PublicKey;
|
|
16
|
+
export declare const WSOLMint: PublicKey;
|
|
17
|
+
export declare const SOLMint: PublicKey;
|
|
18
|
+
export declare const SYSTEM_PROGRAM_ID: PublicKey;
|
|
19
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,iBAAiB,CAAC;AAI3D,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAKlD,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAC7C,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,eAAO,MAAM,gBAAgB,KAAiC,CAAC;AAE/D,eAAO,MAAM,sBAAsB,WAA+D,CAAC;AACnG,eAAO,MAAM,2BAA2B,WAAgE,CAAC;AAEzG,eAAO,MAAM,eAAe,WAA+D,CAAC;AAC5F,eAAO,MAAM,eAAe,WAA+D,CAAC;AAC5F,eAAO,MAAM,gBAAgB,WAA+D,CAAC;AAC7F,eAAO,MAAM,mBAAmB,WAA+D,CAAC;AAChG,eAAO,MAAM,sBAAsB,WAA+D,CAAC;AACnG,eAAO,MAAM,QAAQ,WAA+D,CAAC;AACrF,eAAO,MAAM,OAAO,WAAoB,CAAC;AACzC,eAAO,MAAM,iBAAiB,WAA0B,CAAC"}
|