in-solana by Supanode

Raydium CLMM — Program ID & Overview

CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK

Raydium CLMM (Concentrated Liquidity Market Maker) allows liquidity providers to concentrate their capital within specific price ranges, similar to Uniswap v3. This provides higher capital efficiency compared to constant-product pools.

Program ID

CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK

How concentrated liquidity works

Instead of spreading liquidity across the entire price curve (0 to infinity), LPs choose a price range [priceLower, priceUpper]. Liquidity is only active when the current price is within that range.

Full range (AMM V4):    |████████████████████████████|  0 → ∞
Concentrated (CLMM):    |        ████████            |  priceLower → priceUpper

Capital efficiency gain: a position concentrated in a ±5% range provides roughly 10× the depth of a full-range position with the same capital.

Key concepts

ConceptDescription
TickDiscrete price point; price = 1.0001^tick
Tick spacingMinimum distance between ticks (depends on fee tier)
PositionAn LP’s liquidity between two ticks
Tick arrayOn-chain account storing a range of tick states

Fee tiers

Fee tierTick spacingTypical use
1 bps (0.01%)1Stable pairs (USDC/USDT)
5 bps (0.05%)10Correlated pairs
25 bps (0.25%)60Standard pairs
100 bps (1%)120Volatile / exotic pairs

Key instructions

InstructionDescription
CreatePoolCreates a new CLMM pool with a fee tier
OpenPositionOpens an LP position at a tick range
IncreaseLiquidityAdds liquidity to an existing position
DecreaseLiquidityRemoves liquidity from a position
SwapExecutes a swap through the pool
CollectFeeClaims accrued trading fees
CollectRewardClaims farming rewards

FAQ

What happens when the price moves outside my range? Your position becomes inactive and stops earning fees. Your liquidity converts entirely to the less valuable token. You can close and reopen at a new range.

How is Raydium CLMM different from Orca Whirlpools? Both are concentrated liquidity implementations. The core mechanics are similar (tick-based pricing, range positions). They differ in SDK design, fee structures, and reward mechanisms. Many tokens have pools on both.

Can I provide full-range liquidity on CLMM? Yes. Set the range to the minimum and maximum ticks. This behaves like a constant-product AMM but with slightly higher gas costs.

Updated: