MCPcopy Create free account
hub / github.com/cutupdev/Solana-Volume-Bot / fetchPoolKeyInfo

Method fetchPoolKeyInfo

utils/getPoolKeys.ts:86–124  ·  view source on GitHub ↗
(connection: Connection, baseMint: PublicKey, quoteMint: PublicKey)

Source from the content-addressed store, hash-verified

84 }
85
86 static async fetchPoolKeyInfo(connection: Connection, baseMint: PublicKey, quoteMint: PublicKey) {
87 const marketId = await this.fetchMarketId(connection, baseMint, quoteMint, 'confirmed')
88
89 // const marketInfo = await this.fetchMarketInfo(connection, marketId);
90 // const baseMintInfo = await connection.getParsedAccountInfo(baseMint, "confirmed") as MintInfo;
91 // const baseDecimals = baseMintInfo.value.data.parsed.info.decimals
92
93 const V4PoolInfo = await this.generateV4PoolInfo(baseMint, quoteMint, marketId)
94 const lpMintInfo = await connection.getParsedAccountInfo(V4PoolInfo.poolInfo.lpMint, "confirmed") as MintInfo;
95
96 return {
97 id: V4PoolInfo.poolInfo.id,
98 marketId: marketId,
99 baseMint: baseMint,
100 quoteMint: quoteMint,
101 baseVault: V4PoolInfo.poolInfo.baseVault,
102 quoteVault: V4PoolInfo.poolInfo.quoteVault,
103 lpMint: V4PoolInfo.poolInfo.lpMint,
104 // baseDecimals: baseDecimals,
105 quoteDecimals: this.SOL_DECIMALS,
106 lpDecimals: lpMintInfo.value.data.parsed.info.decimals,
107 version: 4,
108 programId: new PublicKey(this.RAYDIUM_POOL_V4_PROGRAM_ID),
109 authority: V4PoolInfo.poolInfo.authority,
110 openOrders: V4PoolInfo.poolInfo.openOrders,
111 targetOrders: V4PoolInfo.poolInfo.targetOrders,
112 withdrawQueue: new PublicKey("11111111111111111111111111111111"),
113 lpVault: new PublicKey("11111111111111111111111111111111"),
114 marketVersion: 3,
115 marketProgramId: new PublicKey(this.OPENBOOK_ADDRESS),
116 marketAuthority: Market.getAssociatedAuthority({ programId: new PublicKey(this.OPENBOOK_ADDRESS), marketId: marketId }).publicKey,
117 // marketBaseVault: marketInfo.baseVault,
118 // marketQuoteVault: marketInfo.quoteVault,
119 // marketBids: marketInfo.bids,
120 // marketAsks: marketInfo.asks,
121 // marketEventQueue: marketInfo.eventQueue,
122 lookupTableAccount: PublicKey.default
123 }
124 }
125}
126
127interface MintInfo {

Callers 1

mainFunction · 0.80

Calls 2

fetchMarketIdMethod · 0.95
generateV4PoolInfoMethod · 0.95

Tested by

no test coverage detected