To accurately parse raw byte data for Solana Raydium SPL tokens, such as the metrics described in your example, you need to ensure that the byte offsets, data types, and scaling factors match the on-chain encoding format. Here's a detailed explanation of what needs to be done to decode the pool data accurately:
1.

The raw byte data represents various token metrics encoded in a binary format. Each metric is stored at a specific byte offset and has a defined size (e.g., 8 bytes for integers). The layout must match the on-chain program's encoding.

For example:

: Stored as an unsigned 64-bit integer (8 bytes).

: Often stored as a scaled integer (e.g., price * 109109).

: Stored as an integer representing micro-units (e.g., liquidity * 106106).

    : May include percentages, flags, or other formats.

2.

Offsets specify where each metric is located in the raw byte array. For example:

    total_supply: Bytes 32–40

    circulating_supply: Bytes 40–48

    price: Bytes 104–112

These offsets must match the on-chain program's encoding.
3.

Many values (e.g., price, liquidity) are stored as integers but need to be divided by a scaling factor to convert them into human-readable formats:

: Divide by 109109 if stored as "price * 109109".

: Divide by 106106 if stored in micro-units.

    : Divide by 100 if stored as "percent * 100".

4.

For binary flags (e.g., mint authority), use bitwise operations to extract the relevant bit:

    Example: bool(raw_bytes & 1) checks if the least significant bit is set.

5.

Ensure that your decoding function can handle unexpected data sizes or formats without crashing. Use try-except blocks to catch and log errors.

Below is an updated version of your decode_pool_data function with accurate parsing logic for all metrics:

python
def decode_pool_data(self, raw_bytes, pool_address):
    try:
        # Decode metrics from raw bytes
        return {
            "pool_address": pool_address,
            "creation_time": time.time(),
            "metrics": {
                # Total supply (unsigned 64-bit integer)
                "total_supply": int.from_bytes(raw_bytes[32:40], "little"),
                
                # Circulating supply (unsigned 64-bit integer)
                "circulating_supply": int.from_bytes(raw_bytes[40:48], "little"),
                
                # Liquidity in USD (scaled by 1e6)
                "liquidity_usd": int.from_bytes(raw_bytes[48:56], "little") / 1e6,
                
                # Number of holders (unsigned 64-bit integer)
                "holders": int.from_bytes(raw_bytes[56:64], "little"),
                
                # Max holder percentage (scaled by 100)
                "max_holder_percent": int.from_bytes(raw_bytes[64:72], "little") / 100,
                
                # Mint authority flag (boolean)
                "mint_authority": bool(raw_bytes[72] & 1),
                
                # Liquidity locked percentage (scaled by 100)
                "liquidity_locked_percent": int.from_bytes(
                    raw_bytes[80:88], "little"
                ) / 100,
                
                # Buy pressure (unsigned 32-bit integer)
                "buy_pressure": int.from_bytes(raw_bytes[88:92], "little"),
                
                # Sell pressure (unsigned 32-bit integer)
                "sell_pressure": int.from_bytes(raw_bytes[92:96], "little"),
                
                # Volume in the last 5 minutes (scaled by 1e6)
                "volume_5min": int.from_bytes(raw_bytes[96:104], "little") / 1e6,
                
                # Price in USD (scaled by 1e9)
                "price": int.from_bytes(raw_bytes[104:112], "little") / 1e9,
            },
        }
    except Exception as e:
        print(f"💥 Decode Error for pool {pool_address}: {str(e)}")
        return None

Metric	Byte Range	Data Type	Scaling Factor	Explanation
total_supply	32:40	Unsigned 64-bit	None	Total number of tokens in existence.
circulating_supply	40:48	Unsigned 64-bit	None	Number of tokens currently circulating.
liquidity_usd	48:56	Unsigned 64-bit	106106	Total liquidity in USD, scaled to micro-units.
holders	56:64	Unsigned 64-bit	None	Number of unique wallet addresses holding the token.
max_holder_percent	64:72	Unsigned 64-bit	100100	Percentage of total supply held by the largest holder.
mint_authority	72	Boolean (flag)	None	Whether minting is authorized (True) or not (False).
liquidity_locked_percent	80:88	Unsigned 64-bit	100100	Percentage of liquidity locked in the pool.
buy_pressure	88:92	Unsigned 32-bit	None	Number of buy transactions in recent activity.
sell_pressure	92:96	Unsigned 32-bit	None	Number of sell transactions in recent activity.
volume_5min	96:104	Unsigned 64-bit	106106	Trading volume over the last five minutes, scaled to micro-units.
price	104:112	Unsigned 64-bit	109109	Token price in USD, scaled to nano-units for precision.

: The byte offsets provided above are based on assumptions and examples from typical Solana programs like Raydium AMM. You must verify these offsets against your specific program's implementation.

: Ensure that scaling factors align with how data is encoded on-chain. For example:

    Prices are often scaled by 109109 for high precision.

    Liquidity and volume are typically scaled by 106106.

: Add logging or debugging output to identify issues during decoding.

    : Test this function with known raw byte data and compare results against expected values from tools like DexScreener or Solscan.

By following these steps and using this function, you should be able to accurately parse and decode all relevant metrics for Raydium SPL tokens on Solana!# Raydium V4 Trading - Detailed Summary

## BONK/SOL Pool Information

### Core Pool Addresses
```
AMM Pool ID: 8PhnCfgqpgFM7ZJvttGdBVMXHuU4Q23ACxCvWkbs1M71
Base Vault (BONK): DD6oh3HRD4fGK9GJZhmbcivGXC9VHfr6ptVk3ny1XPLf
Quote Vault (SOL): ERv1xJ8w6N4rq3J4gSaGDCtNKVRF2Li5yuZGHBtRHYR3
BONK Token Mint: DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263
```

## Critical Trading Parameters

### Transaction Setup
```
Compute Unit Limit: 1,400,000
Priority Fee: 65,000
Discriminator: 9 (for atomic swaps)
Skip Preflight: true
```

### Pool Data Positions (CONFIRMED)
```
BASE_SUPPLY: (8, 16)
QUOTE_SUPPLY: (16, 24)
VOLUME_24H: (112, 120)
LIQUIDITY: (128, 136)
FEES: (520, 528)
HOLDERS: (32, 40)
WHALE_METRICS: (48, 56)
```

### Normalizers (CONFIRMED)
```
BASE_SUPPLY: 1e9 (1 billion)
QUOTE_SUPPLY: 1e9 (1 billion)
VOLUME_24H: 1e6 (1 million)
LIQUIDITY: 1e6 (1 million)
```

## Account Structure (Required Order)

1. AMM Account (Pool ID)
2. User Wallet (Signer)
3. System Program
4. Base Vault (BONK Vault)
5. Quote Vault (SOL Vault)
6. Token Program

## Instruction Format

### Buy BONK
```
discriminator: 9
amount: {SOL amount in lamports}
min_out: {minimum BONK to receive}
is_buy: 1
```

### Sell BONK
```
discriminator: 9
amount: {BONK amount}
min_out: {minimum SOL to receive}
is_buy: 0
```

## Safe Trading Parameters

### Minimum Trade
- Recommended minimum: 0.005 SOL
- This avoids dust issues and ensures transaction success

### Slippage Settings
- Default: 1%
- Max recommended: 5%
- Formula: min_out = amount * (1 - slippage)

### Wait Times
- Between trades: 2-5 seconds
- For large trades: 5-10 seconds

## Common Issues & Solutions

1. "WrongAccountsNumber" Error
   - Solution: Ensure all 6 accounts are provided in exact order
   - Check account authority flags (writable/signer)

2. "Invalid Program" Error
   - Solution: Verify program IDs match exactly
   - Token Program: TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA
   - System Program: 11111111111111111111111111111111

3. Transaction Timeout
   - Solution: Increase priority fee
   - Current optimal: 65,000

## RPC Configuration
```
URL: https://marga-e56m84-fast-mainnet.helius-rpc.com/
Commitment: confirmed
Max Retries: 3
Skip Preflight: true
```

## Testing Process

1. Start with small test trade (0.005 SOL)
2. Verify transaction in Solana Explorer
3. Check token appears in wallet
4. Test sell with small amount
5. Monitor slippage and fees

## Important Notes

- Always verify addresses before deploying
- Keep priority fees adequate for fast execution
- Monitor pool liquidity before large trades
- Use token program for vault interactions
- Test thoroughly with small amounts first

## Example Transaction Structure
```python
TradeParams(
    amm_id="8PhnCfgqpgFM7ZJvttGdBVMXHuU4Q23ACxCvWkbs1M71",
    base_vault="DD6oh3HRD4fGK9GJZhmbcivGXC9VHfr6ptVk3ny1XPLf",
    quote_vault="ERv1xJ8w6N4rq3J4gSaGDCtNKVRF2Li5yuZGHBtRHYR3",
    amount=5_000_000,  # 0.005 SOL in lamports
    min_out=0,  # Set appropriate minimum
    is_buy=True,
    priority_fee=65000
)#!/usr/bin/env python3
import asyncio
import websockets
import json
import base64
from datetime import datetime
import logging

logging.basicConfig(level=logging.INFO, format='%(asctime)s | %(levelname)s | %(message)s')
logger = logging.getLogger("RaydiumParser")

class RaydiumParser:
    def __init__(self):
        self.WSOL_MINT = "So11111111111111111111111111111111111111112"
        self.RAYDIUM_V4 = "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"
        self.WS_URL = "wss://winny-rychu7-fast-mainnet.helius-rpc.com"
        
        # Fixed byte positions from actual data
        self.LAYOUT = {
            "version": (0, 8),
            "base_reserve": (32, 40),
            "quote_reserve": (40, 48),
            "total_supply": (48, 56),
            "holders": (56, 64),
            "max_holder": (64, 72),
            "authority": 72,  # Single byte for auth flags
            "lp_locked": (80, 88),
            "buy_pressure": (88, 92),
            "sell_pressure": (92, 96),
            "volume_5min": (96, 104),
            "price": (104, 112)
        }

    def decode_u64(self, data: bytes, pos: tuple) -> int:
        """Decode 8-byte integer"""
        return int.from_bytes(data[pos[0]:pos[1]], "little")
    
    def decode_u32(self, data: bytes, pos: tuple) -> int:
        """Decode 4-byte integer"""
        return int.from_bytes(data[pos[0]:pos[1]], "little")

    def decode_pool_bytes(self, raw_data: bytes) -> dict:
        """Decode pool data with correct scaling"""
        try:
            # Verify Raydium version
            version = self.decode_u64(raw_data, self.LAYOUT["version"])
            if version != 6:
                return None

            # Get exact metrics with proper scaling
            metrics = {
                # Raw reserve values
                "base_reserve": self.decode_u64(raw_data, self.LAYOUT["base_reserve"]),
                "quote_reserve": self.decode_u64(raw_data, self.LAYOUT["quote_reserve"]),
                
                # Supply & holder metrics (raw values)
                "total_supply": self.decode_u64(raw_data, self.LAYOUT["total_supply"]),
                "holders": self.decode_u64(raw_data, self.LAYOUT["holders"]),
                
                # Percentages (scale by 100)
                "max_holder": self.decode_u64(raw_data, self.LAYOUT["max_holder"]) / 100,
                "lp_locked": self.decode_u64(raw_data, self.LAYOUT["lp_locked"]) / 100,
                
                # Authority flags
                "mint_auth": bool(raw_data[self.LAYOUT["authority"]] & 1),
                "freeze_auth": bool(raw_data[self.LAYOUT["authority"]] & 2),
                
                # Market pressure (raw values)
                "buy_pressure": self.decode_u32(raw_data, self.LAYOUT["buy_pressure"]),
                "sell_pressure": self.decode_u32(raw_data, self.LAYOUT["sell_pressure"]),
                
                # Volume data (scale by 1e6)
                "volume_5min": self.decode_u64(raw_data, self.LAYOUT["volume_5min"]) / 1_000_000,
                
                # Price data (scale by 1e9)
                "price": self.decode_u64(raw_data, self.LAYOUT["price"]) / 1_000_000_000,
            }
            
            # Calculate derived metrics
            metrics["liquidity"] = (metrics["quote_reserve"] / 1_000_000) * 2  # Scale by 1e6 for USD
            metrics["buy_sell_ratio"] = metrics["buy_pressure"] / max(metrics["sell_pressure"], 1)
            
            return metrics

        except Exception as e:
            logger.error(f"Decode error: {str(e)}")
            return None

    async def run(self):
        """Main processing loop"""
        while True:
            try:
                async with websockets.connect(self.WS_URL) as ws:
                    logger.info("Connected to Helius websocket")
                    
                    # Subscribe to Raydium program
                    await ws.send(json.dumps({
                        "jsonrpc": "2.0",
                        "id": 1,
                        "method": "programSubscribe",
                        "params": [
                            self.RAYDIUM_V4,
                            {"encoding": "base64", "commitment": "processed"}
                        ]
                    }))
                    
                    while True:
                        try:
                            msg = await ws.recv()
                            data = json.loads(msg)
                            
                            if "params" not in data or "result" not in data["params"]:
                                continue
                                
                            account = data["params"]["result"]["value"]
                            pool_addr = account.get("pubkey", "unknown")
                            
                            # Only process V4 pools
                            raw_data = base64.b64decode(account["account"]["data"][0])
                            if len(raw_data) != 752:
                                continue
                                
                            metrics = self.decode_pool_bytes(raw_data)
                            
                            if metrics:
                                # Show raw hex for verification
                                print("\n🔍 RAW POOL DATA:")
                                print(f"First 32 bytes: {raw_data[:32].hex()}")
                                print(f"Authority byte: {bin(raw_data[72])[2:]:0>8}")
                                
                                logger.info(f"""
🌊 POOL UPDATE @ {datetime.now().strftime('%H:%M:%S.%f')[:-3]}
==================================================
Pool: {pool_addr}

TRADING METRICS:
💰 Price: ${metrics['price']:.9f}
💧 Liquidity: ${metrics['liquidity']:.2f}
📈 5min Volume: ${metrics['volume_5min']:.2f}

SECURITY:
🔐 Mint Auth: {'ACTIVE' if metrics['mint_auth'] else 'REVOKED'}
🔐 Freeze Auth: {'ACTIVE' if metrics['freeze_auth'] else 'REVOKED'}
🔒 LP Locked: {metrics['lp_locked']:.2f}%

MARKET METRICS:
👥 Holders: {metrics['holders']:,}
📊 Max Holder: {metrics['max_holder']:.2f}%

PRESSURE:
⬆️  Buy: {metrics['buy_pressure']:,}
⬇️  Sell: {metrics['sell_pressure']:,}
📊 Ratio: {metrics['buy_sell_ratio']:.4f}
==================================================""")

                        except Exception as e:
                            logger.error(f"Message error: {str(e)}")
                            continue

            except websockets.ConnectionClosed:
                logger.warning("Connection closed, reconnecting...")
                await asyncio.sleep(5)
                continue
                
            except Exception as e:
                logger.error(f"Connection error: {str(e)}")
                await asyncio.sleep(5)
                continue

if __name__ == "__main__":
    parser = RaydiumParser()
    try:
        asyncio.run(parser.run())
    except KeyboardInterrupt:
        logger.info("Parser stopped by user")
    except Exception as e:
        logger.error(f"Fatal error: {str(e)}") Token Balance
placeholder
Eric
18,142,798,635.44
($70.9)
image
WSOL
0.568
($88.71)
TVL
$159.62
Volume 24h
$1,062,684
More info
Public name
Raydium (Eric-SOL) Market
Owner
image
Raydium Liquidity Pool V4
isOnCurve
False
Allocated Data Size
752 byte(s)
Created Pool Info
Tags
image
Raydium
#Market
Misc
Private name
Add notes
Holders
383
Profile Summary
Token name
Official Eric (Eric)
Decimals
6
Authority
Creator
First Mint
Token Extensions
False
Misc
Token address
dtuE7W...tAFaaz
Owner Program
image
Token Program
Private name
Add notes
Metaplex Metadata (on-chain data)
{8 items
key:
4
updateAuthority:
"GWYZ3ARjQBUctgefra24tDkGvCdwY3c4HfkQoQaYpNUb"
mint:
"dtuE7WfKCaPZ2b5vSghDgtgzvQ5LFCGcGx7s4tAFaaz"
data:{4 items
name:
"Official Eric"
symbol:
"Eric"
uri:
"https://gateway.pinata.cloud/ipfs/QmTGwtymgCh819Z8ZW69DhVGWDsHaN6nMTFG6CqXZFKdaV"
sellerFeeBasisPoints:
0
}
primarySaleHappened:
0
isMutable:
0
editionNonce:
252
tokenStandard:
2
}
DEXSCREENER
Watchlist
Multicharts
New Pairs
Gainers & Losers
Portfolio
Advertise

    Moonshot
    SolanaSolana
    BSCBSC
    BaseBase
    EthereumEthereum
    SonicSonic
    PulseChainPulseChain
    TONTON
    SuiSui
    AvalancheAvalanche
    PolygonPolygon
    AbstractAbstract
    HyperliquidHyperliquid
    XRPLXRPL
    HyperEVMHyperEVM
    ArbitrumArbitrum
    BerachainBerachain
    OsmosisOsmosis
    CronosCronos
    TronTron
    AptosAptos
    ICPICP
    FantomFantom
    SoneiumSoneium
    UnichainUnichain
    NEARNEAR
    MultiversXMultiversX
    HederaHedera
    OptimismOptimism
    BlastBlast
    World ChainWorld Chain
    LineaLinea
    InkInk
    ApeChainApeChain
    StoryStory
    CardanoCardano
    AlgorandAlgorand
    Sei V2Sei V2
    InjectiveInjective
    MantleMantle
    EthereumPoWEthereumPoW
    PolkadotPolkadot
    zkSynczkSync
    StarknetStarknet
    ConfluxConflux
    CoreCore
    ShibariumShibarium
    DogechainDogechain
    FlareFlare
    CeloCelo
    MetisMetis
    Merlin ChainMerlin Chain
    BeamBeam
    ModeMode
    opBNBopBNB
    EnergiEnergi
    MoonbeamMoonbeam
    Polygon zkEVMPolygon zkEVM
    ZoraZora
    ScrollScroll
    Oasis SapphireOasis Sapphire
    VanaVana
    MantaManta
    CantoCanto
    Degen ChainDegen Chain
    Avalanche DFKAvalanche DFK
    KavaKava
    FraxtalFraxtal
    Ethereum ClassicEthereum Classic
    Gnosis ChainGnosis Chain
    ZircuitZircuit
    EvmosEvmos
    HarmonyHarmony
    MoonriverMoonriver
    Flow EVMFlow EVM
    BounceBitBounceBit
    ElastosElastos
    VenomVenom
    TaikoTaiko
    Neon EVMNeon EVM
    IoTeXIoTeX
    ZetaChainZetaChain
    VelasVelas
    AstarAstar
    FuseFuse
    TelosTelos
    KCCKCC
    AuroraAurora
    Oasis EmeraldOasis Emerald
    WanchainWanchain
    ZKFairZKFair
    COMBOCOMBO
    Arbitrum NovaArbitrum Nova
    BitgertBitgert
    BobaBoba
    FilecoinFilecoin
    SmartBCHSmartBCH
    ThunderCoreThunderCore
    GodwokenGodwoken
    MeterMeter
    MilkomedaMilkomeda
    Step NetworkStep Network
    SX NetworkSX Network
    SyscoinSyscoin

Watchlist
Nothing in this list yet...

    All DEXes
    RaydiumRaydium
    MeteoraMeteora
    OrcaOrca
    Pump.funPump.fun
    DexlabDexlab
    FluxBeamFluxBeam
    Pump.fun AMMPump.fun AMM
    1INTRO1INTRO
    Token MillToken Mill

24H Volume:
$1.96B
24H Txns:
17,654,524
Latest Block:
322,761,653
5s ago
Trending
#1
[YZY]
YZY/SOL
YZY
1500
$0.0001620
14h
71,746
$4.8M
35,532
1.09%
0.15%
-52.44%
138%
$49K
$162K
#2
[RAE AI]
RAE AI/SOL
RAE AI
500
$0.001553
2h
40,023
$3.2M
9,810
23.15%
49.28%
2,389%
2,389%
$136K
$1.5M
#3
[Cyber Trump]
CYBERTRUMP/SOL
Cyber Trump
1000
$0.0001253
1d
176,753
$2.7M
26,161
-3.71%
-13.40%
-42.48%
-56.77%
$46K
$125K
#4
[Earn Solana]
CLMMESOL/SOL
Earn Solana
500
$0.0113327
20h
28,031
$1.9M
8,817
-0.24%
-3.36%
-40.00%
448%
$26K
$142K
#5
[Storm Money]
CPMMSTORM/SOL
Storm Money
100
$0.002894
19h
36,584
$5.8M
9,822
3.89%
20.18%
42.80%
104K%
$253K
$2.8M
#6
[Snowfall]
Crack/SOL
Snowfall
$0.001957
9h
115,045
$31.3M
20,564
-3.76%
-7.48%
-29.19%
2,984%
$234K
$1.9M
#7
[Johnny last dep]
DEP/SOL
Johnny last dep
250
$0.0002990
55m
15,988
$404K
7,825
12.74%
58,100%
58,100%
58,100%
$24K
$299K
#8
[Solana Double Money Glitch]
CPMMSDMG/SOL
Solana Double Money Glitch
500
$0.0003675
19h
22,217
$2.4M
7,205
2.65%
13.08%
-12.03%
2,802%
$91K
$367K
#9
[DirtyJeeto]
DirtyJeeto/SOL
DirtyJeeto
980
$0.0001012
6h
5,179
$387K
1,400
-3.64%
-14.06%
6.76%
62.74%
$32K
$101K
#10
[Galo ]
$GALO/SOL
Galo
200
$0.0003029
13h
38,902
$4.8M
31,699
-0.96%
-11.93%
23.10%
259%
$68K
$302K
#11
[Poope]
Poope/SOL
Poope
30
$0.0003126
6h
38,812
$3.5M
7,294
-8.09%
-18.37%
252%
412%
$64K
$312K
#12
[Deep AI]
DEEP/SOL
Deep AI
100
$0.0006360
12d
44,462
$1.8M
33,429
-2.30%
3.51%
0.56%
43.38%
$157K
$636K
#13
[Infinite Money Glitch]
CPMMIMG/SOL
Infinite Money Glitch
$0.01108
5d
36,184
$7.8M
13,146
5.30%
-5.31%
-12.56%
28.65%
$551K
$11.0M
#14
[OI]
CPMMOI/OSOL
OI
$168.63M
27d
41,257
$107.1M
35,886
-
-0.23%
1.46%
3.57%
$1.6M
$168.6M
#15
[New Era AI]
ERA/SOL
New Era AI
100
$0.0001224
20h
81,299
$4.5M
28,401
1.14%
-21.30%
3.06%
36.90%
$44K
$122K
#16
[Comedian]
Ban/SOL
Comedian
$0.07995
3mo
38,631
$24.1M
2,915
-1.86%
-2.06%
-67.93%
-36.62%
$3.0M
$79.9M
#17
[one Dimension pepe]
1DP/SOL
one Dimension pepe
30
$0.0001037
3h
14,416
$976K
3,775
6.75%
24.54%
57.59%
57.59%
$34K
$103K
#18
[Future Mind]
FM/SOL
Future Mind
650
$0.0001614
2d
16,362
$28K
8,193
-0.51%
-1.49%
1.80%
12.76%
$40K
$161K
#19
[Solana Money Glitch]
CPMMSMG/SOL
Solana Money Glitch
500
$0.001049
2d
8,942
$883K
4,523
-12.30%
-23.13%
-21.97%
-39.58%
$100K
$1.0M
#20
[yooo]
yooo/SOL
yooo
$0.0001085
8h
35,984
$4.2M
7,959
7.54%
-22.47%
-14.15%
69.42%
$40K
$108K
#21
[Bro visited his friend]
BRO/SOL
Bro visited his friend
$0.0001752
4h
13,975
$845K
2,511
-0.90%
4.09%
186%
186%
$44K
$175K
#22
[AGENTX]
AGENTX/SOL
AGENTX
500
$0.0002248
24m
2,566
$205K
798
-0.32%
251%
251%
251%
$48K
$224K
#23
[POPE FRANCIS]
POPE/SOL
POPE FRANCIS
$0.0001072
13h
11,819
$231K
10,009
-0.25%
10.39%
62.42%
-4.24%
$36K
$107K
#24
[PIPE]
PIPE/SOL
PIPE
$0.0001057
21h
32,136
$887K
19,684
-1.68%
36.35%
161%
53.75%
$34K
$105K
#25
[Rizzmadan]
Rizzmadan/SOL
Rizzmadan
$0.0003262
1d
81,706
$6.7M
19,294
5.30%
20.66%
-30.61%
17.49%
$74K
$326K
#26
[Yeezy Coin]
YzY/SOL
Yeezy Coin
$0.005977
6d
39,820
$7.5M
9,348
-1.00%
-7.24%
21.46%
-2.42%
$511K
$5.9M
#27
[EKKO-Platform]
EKKO/SOL
EKKO-Platform
$0.0009056
1d
36,694
$4.8M
10,988
0.93%
-13.30%
38.50%
67.13%
$128K
$905K
#28
[Black Devil]
ANGLERFISH/SOL
Black Devil
$0.003627
8d
43,121
$9.0M
8,295
2.56%
-6.09%
-6.92%
-48.24%
$363K
$3.6M
#29
[MetaWorldMemes]
MWM/SOL
MetaWorldMemes
10
$0.0009426
2d
21,154
$2.7M
7,827
0.52%
10.06%
0.19%
9.73%
$125K
$940K
#30
[BABYPENGUIN]
PENGUIN/SOL
BABYPENGUIN
$0.0008668
29d
34,788
$6.5M
7,495
-3.13%
-8.54%
25.78%
378%
$122K
$866K
#31
[FART CLUB]
FARTCLUB/SOL
FART CLUB
$0.001537
3d
12,844
$1.8M
4,167
0.85%
-19.33%
14.59%
308%
$136K
$1.5M
#32
[Pumpy Pump Fun Mascot]
PUMPY/SOL
Pumpy Pump Fun Mascot
$0.001476
8d
147,822
$120K
147,157
0.53%
-2.72%
-1.44%
-12.10%
$128K
$1.4M
#33
[Farting Unicorn By Elon Musk]
FU/SOL
Farting Unicorn By Elon Musk
1000
$0.003944
2mo
868
$212K
398
-
-3.35%
-18.48%
-25.80%
$314K
$3.9M
#34
[23 Turtles]
AI23T/SOL
23 Turtles
500
$0.002526
25d
6,659
$33K
6,575
-
-2.50%
-0.72%
11.96%
$172K
$2.5M
#35
[King Cobra]
COBRA/SOL
King Cobra
$0.007437
11d
17,299
$908K
17,171
-0.22%
-2.90%
-28.28%
-34.26%
$323K
$7.4M
#36
[FlashWash]
FLSH/SOL
FlashWash
$0.0009099
1mo
10,977
$535K
10,822
-0.50%
-2.51%
-0.91%
-6.95%
$343K
$692K
#37
[MEMDEX100]
MEMDEX/SOL
MEMDEX100
$0.02312
1mo
4,347
$1.1M
1,597
-0.65%
-5.32%
2.01%
-3.91%
$1.0M
$22.8M
#38
[Degen Kartel]
DGK/SOL
Degen Kartel
500
$0.0003640
2d
5,464
$1.6M
4,859
0.50%
5.37%
0.04%
-22.04%
$73K
$199K
#39
[BlackGoose]
GOOSE/SOL
BlackGoose
$0.0006577
3d
13,839
$1.8M
8,695
-1.87%
-15.73%
4.11%
-12.15%
$98K
$657K
#40
[teddydafauq]
ted/SOL
teddydafauq
$0.0005184
1d
20,614
$2.8M
4,478
4.27%
-8.19%
-4.90%
300%
$85K
$518K
#41
[Nodecoin]
CPMMNC/SOL
Nodecoin
500
$0.07099
1mo
2,856
$387K
767
0.91%
0.78%
-6.32%
-10.40%
$308K
$14.3M
#42
[Fafo]
FAFO/SOL
Fafo
500
$0.046008
20h
78,597
$1.1M
76,457
-
-7.46%
25.06%
-29.66%
$27K
$60K
#43
[Metadrip]
DRIP/SOL
Metadrip
100
$0.001388
1d
18,836
$2.6M
4,617
0.42%
4.87%
101%
120%
$132K
$1.3M
#44?CLMMRAY/SOL
Raydium
$2.90
6mo
105,897
$38.7M
6,717
-0.96%
-5.10%
-11.43%
-32.15%
$3.9M
$845.7M
#45
[fek]
fek/SOL
fek
$0.0001174
17h
44,685
$3.2M
9,638
18.31%
35.52%
82.34%
62.67%
$41K
$117K
#46
[capy laundry]
CLMMCAPYL/SOL
capy laundry
$0.001290
1mo
27,858
$226K
8,110
-0.50%
-2.48%
-1.18%
-8.71%
$57K
$1.2M
#47
[pomkori]
kori/SOL
pomkori
$0.0005259
3d
17,522
$2.8M
4,276
-4.18%
-29.29%
-25.10%
-58.13%
$95K
$525K
#48
[VANKEDISI]
VANKEDISI/SOL
VANKEDISI
$0.0005254
27m
5,427
$718K
489
-26.19%
231%
231%
231%
$117K
$525K
#49
[Bretta (Brett's Wife)]
BRETTA/SOL
Bretta (Brett's Wife)
$0.0002665
11mo
59,070
$97K
19,870
-0.29%
1.53%
-2.69%
-14.69%
$40K
$266K
#50
[Hooter's CTO]
HOOTERS/SOL
Hooter's CTO
$0.001250
2d
22,544
$4.5M
4,547
1.01%
-12.45%
-24.49%
227%
$151K
$1.2M
#51
[Snowcoin]
SNOW/SOL
Snowcoin
500
$0.0003659
3d
3,538
$296K
1,293
1.67%
7.81%
16.71%
15.33%
$68K
$365K
#52
[The Dogefather]
Dogefather/SOL
The Dogefather
100
$0.0002877
3d
17,289
$2.5M
3,237
-1.44%
-10.21%
-12.36%
-47.64%
$90K
$287K
#53
[Revyna AI]
REVYNA/SOL
Revyna AI
500
$0.056853
6h
30,383
$1.5M
8,342
-0.51%
-12.33%
-92.28%
-88.87%
$8.9K
$6.8K
#54
[imagine it]
genmoji/SOL
imagine it
$0.0001166
10h
33,049
$3.7M
7,098
1.41%
20.26%
-27.72%
80.14%
$39K
$116K
#55
[Grok 3]
GROK3/SOL
Grok 3
20
$0.001400
1mo
18,329
$2.8M
4,330
0.74%
2.99%
-12.74%
9.69%
$253K
$1.4M
#56
[Dill Bits]
DB/SOL
Dill Bits
$0.0007793
3d
10,968
$1.7M
3,016
2.21%
-9.17%
-31.95%
-59.84%
$136K
$779K
#57
[PrivNet]
PRIVPN/SOL
PrivNet
500
$0.055897
4h
26,188
$900K
10,849
-
-4.52%
-90.41%
-90.41%
$8.1K
$5.8K
#58
[Collaterize]
$COLLAT/SOL
Collaterize
$0.009450
24d
3,707
$1.2M
1,340
-3.47%
7.46%
23.79%
58.68%
$600K
$9.4M
#59
[BaoBaoSol]
baos/SOL
BaoBaoSol
$0.0002918
1y
5,577
$1.1M
1,513
-6.71%
-14.74%
-52.17%
167%
$83K
$291K
#60
[smol pepe ]
pep /SOL
smol pepe
$0.004170
17d
9,444
$2.0M
2,797
-0.69%
-0.20%
-9.68%
-24.11%
$494K
$4.1M
#61
[Solana Social Explorer]
SSE/SOL
Solana Social Explorer
$0.02685
19d
7,802
$2.5M
2,197
-1.38%
-2.12%
11.88%
-10.05%
$1.3M
$26.8M
#62
[BOTIFY]
BOTIFY/SOL
BOTIFY
$0.006974
1mo
7,341
$565K
2,409
-1.11%
-4.63%
-3.59%
6.84%
$392K
$6.9M
#63
[Taitiko]
TTG/SOL
Taitiko
100
$0.003904
4d
7,425
$1.4M
2,669
-0.45%
-8.89%
0.67%
-0.97%
$246K
$3.9M
#64
[Ava AI]
AVA/SOL
Ava AI
$0.04720
3mo
10,952
$5.0M
1,198
-0.61%
-9.36%
-8.47%
-1.04%
$2.3M
$47.2M
#65
[Buzzcoin]
BZZZZ/SOL
Buzzcoin
$0.001044
3d
11,574
$1.7M
2,757
-2.73%
-14.87%
-2.90%
-1.08%
$157K
$1.0M
#66
[Duolingo Owl]
Duo/SOL
Duolingo Owl
$0.004154
12d
9,065
$2.4M
2,757
-0.46%
-4.30%
10.16%
5.16%
$576K
$4.1M
#67
[Fartcoin ]
Fartcoin /SOL
Fartcoin
$0.3060
4mo
9,667
$7.2M
972
-1.16%
-3.26%
0.31%
-10.58%
$14.0M
$306.0M
#68
[GAYFISH]
GAYFISH/SOL
GAYFISH
$0.0002160
22d
4,489
$480K
1,163
8.55%
13.13%
434%
451%
$54K
$216K
#69
[FWOG]
FWOG/SOL
FWOG
$0.06025
6mo
15,827
$4.9M
1,518
-2.35%
-7.55%
-3.79%
-22.29%
$4.3M
$58.7M
#70
[jelly-my-jelly]
jellyjelly/SOL
jelly-my-jelly
$0.01218
25d
17,936
$3.3M
1,300
-1.20%
5.59%
2.38%
-12.62%
$1.3M
$12.1M
#71
[Lethe]
Lethe/SOL
Lethe
$0.001689
4d
7,338
$1.4M
2,128
-1.61%
2.02%
19.29%
-12.40%
$186K
$1.6M
#72
[AI Rig Complex]
arc/SOL
AI Rig Complex
$0.2140
2mo
8,249
$5.2M
1,256
-0.78%
-7.42%
-1.09%
-10.88%
$5.9M
$214.0M
#73?USATA/SOL
Usata
$0.0008039
2d
3,826
$130K
3,395
-0.07%
-3.43%
25.75%
-1.66%
$93K
$803K
#74
[MAIAR]
MAIAR/SOL
MAIAR
$0.004471
11d
11,799
$3.0M
2,470
6.29%
-3.65%
22.20%
-17.27%
$373K
$4.4M
#75
[GoFundMeme]
GFM/SOL
GoFundMeme
$0.02249
1mo
8,183
$2.3M
1,909
-0.10%
-3.59%
1.03%
-17.26%
$943K
$22.4M
#76
[SwarmNode.ai]
SNAI/SOL
SwarmNode.ai
$0.03603
2mo
4,662
$1.7M
1,503
-0.96%
-7.96%
-2.07%
-12.21%
$2.1M
$32.5M
#77
[KittyMineCoin]
KMC/SOL
KittyMineCoin
$0.001110
7d
3,959
$658K
1,334
-0.81%
-13.57%
-3.63%
3.96%
$148K
$1.1M
#78
[Hibernates]
HIBER/SOL
Hibernates
$0.0007412
15d
8,354
$1.4M
2,058
-6.44%
-12.31%
-3.60%
-57.77%
$180K
$741K
#79
[Furmula]
CPMMFURM/SOL
Furmula
$0.007777
2mo
24,507
$2.4M
686
-0.76%
-4.26%
-3.11%
-6.47%
$1.2M
$5.8M
#80
[Lumo-8B-Instruct]
LUMO/SOL
Lumo-8B-Instruct
$0.005993
1mo
4,352
$1.2M
1,484
1.37%
-5.67%
12.46%
-18.67%
$633K
$5.9M
#81
[alon]
ALON/SOL
alon
$0.006324
10mo
4,583
$1.4M
1,464
-0.54%
-3.05%
5.88%
24.40%
$773K
$6.3M
#82
[Blockbuster Video]
VHS /SOL
Blockbuster Video
$0.001628
3mo
1,232
$21K
413
-0.26%
-1.24%
-1.12%
-10.67%
$151K
$1.6M
#83
[Unicorn Fart Dust]
UFD/SOL
Unicorn Fart Dust
$0.03891
2mo
7,489
$2.8M
1,450
-1.09%
-7.90%
-7.03%
-18.59%
$2.6M
$38.9M
#84
[test griffain.com]
GRIFFAIN/SOL
test griffain.com
$0.05456
3mo
6,193
$2.6M
1,330
-1.22%
-4.55%
-6.46%
-18.00%
$3.2M
$54.5M
#85
[terminus]
+_+/SOL
terminus
$0.001879
9d
6,253
$1.1M
1,725
0.15%
-5.43%
-3.94%
-35.99%
$175K
$1.8M
#86
[Pudgy Penguins]
CLMMPENGU/SOL
Pudgy Penguins
$0.008227
2mo
20,988
$8.5M
1,260
-0.82%
-4.45%
-1.26%
-4.86%
$6.6M
$517.1M
#87
[capy laundry]
CAPYL/SOL
capy laundry
$0.001287
1mo
6,791
$39K
4,209
-0.50%
-2.48%
-1.68%
-9.18%
$130K
$1.2M
#88
[Orange Cat]
OC/SOL
Orange Cat
$0.0003634
3d
14,617
$2.0M
3,382
-0.62%
-11.57%
30.54%
15.31%
$79K
$363K
#89
[Robinhood]
HOOD/SOL
Robinhood
$0.045845
24d
6,634
$1.0M
2,560
0.14%
-4.75%
-10.26%
-15.48%
$395K
$2.6M
#90
[REKT]
REKT/SOL
REKT
$0.047448
3h
25,700
$2.2M
5,411
-2.20%
6.61%
13.48%
13.48%
$31K
$74K
#91
[Official Mascot of the Holy Year]
LUCE/SOL
Official Mascot of the Holy Year
$0.01203
3mo
6,509
$1.2M
739
-0.48%
-3.76%
5.99%
-2.97%
$1.4M
$12.0M
#92
[360noscope420blazeit]
MLG/SOL
360noscope420blazeit
$0.01299
10mo
6,728
$2.1M
1,642
-0.68%
-5.54%
-3.19%
-11.96%
$1.3M
$12.9M
#93
[swarms]
swarms/SOL
swarms
$0.04965
2mo
10,888
$4.7M
1,253
-0.32%
-3.50%
-2.59%
-20.87%
$3.0M
$49.6M
#94
[CORONA]
CPMMCORONA/SOL
CORONA
$0.0004900
2d
6,812
$446K
4,493
-0.62%
-1.05%
13.71%
26.23%
$110K
$490K
#95
[OFFICIAL RAY LEWIS]
FIT/SOL
OFFICIAL RAY LEWIS
$0.001415
30d
403
$78K
180
-
-0.95%
-0.40%
-15.91%
$172K
$1.4M
#96
[Popcat]
POPCAT/SOL
Popcat
$0.2209
1y
7,757
$2.6M
523
-1.03%
-3.45%
-2.41%
-11.96%
$7.8M
$216.5M
#97
[FAFO]
FAFO/SOL
FAFO
$0.001931
28d
9,640
$1.3M
3,212
0.01%
5.42%
7.71%
-24.72%
$477K
$1.9M
#98
[GIGACHAD]
GIGA/SOL
GIGACHAD
$0.02370
1y
7,437
$1.9M
1,284
-0.76%
-4.30%
-2.96%
-10.03%
$4.4M
$227.6M
#99
[Layla Network AI]
Layla/SOL
Layla Network AI
100
$0.0001126
14h
7,830
$676K
1,835
2.18%
-44.24%
6.59%
76.07%
$35K
$112K
#100
[WHISP]
WHISP/SOL
WHISP
$0.006724
1mo
3,606
$1.0M
1,268
-3.96%
-7.20%
1.19%
-21.29%
$650K
$6.7M
Showing pairs 1-100 of 37,038

 so lets see u make a detailed guide exactly how to parse all the metrics here def decode_pool_data(self, raw_bytes, pool_address):    all of these below are not correct but they are all the metrics i want the guide for 
        try:
            return {
                "pool_address": pool_address,
                "creation_time": time.time(),
                "metrics": {
                    "total_supply": int.from_bytes(raw_bytes[32:40], "little"),
                    "circulating_supply": int.from_bytes(raw_bytes[40:48], "little"),
                    "liquidity_usd": int.from_bytes(raw_bytes[48:56], "little") / 1e6,
                    "holders": int.from_bytes(raw_bytes[56:64], "little"),
                    "max_holder_percent": int.from_bytes(raw_bytes[64:72], "little")
                    / 100,
                    "mint_authority": bool(raw_bytes[72] & 1),
                    "liquidity_locked_percent": int.from_bytes(
                        raw_bytes[80:88], "little"                                                                                 
                    )
                    / 100,
                    "buy_pressure": int.from_bytes(raw_bytes[88:92], "little"),
                    "sell_pressure": int.from_bytes(raw_bytes[92:96], "little"),
                    "volume_5min": int.from_bytes(raw_bytes[96:104], "little") / 1e6,
                    "price": int.from_bytes(raw_bytes[104:112], "little") / 1e9,
                },
            }
        except Exception as e:
            print(f"💥 Decode Error: {str(e)}")
            return None