Raydium exchange

Raydium exchange is a Solana DEX Where CLMM LP Positions Need Manual Rebalancing

Raydium exchange is a Solana decentralized exchange where a concentrated liquidity market maker (CLMM) position keeps fixed lower and upper price boundaries. Adding or removing liquidity changes the position size, not those boundaries. Rebalancing therefore means withdrawing from the old range, adjusting the token mix if required, and opening a new position around a different range. The old position remains under the wallet's control until its liquidity, fees, and rewards reach zero and its position NFT is closed.

The Cost Stack Before Moving a Range

One signed Solana action starts at 5000 lamports per signature, while a complete Raydium CLMM range move adds account rent, an optional priority fee, and any swap fee used to restore the deposit ratio.

Solana charges a base fee of 5000 lamports for each signature, and its priority fee equals the requested compute-unit price multiplied by the requested compute-unit limit, rounded up after division by 1,000,000. The position transaction also funds rent-exempt accounts, including a new position mint, its associated token account, and PersonalPositionState. Missing tick arrays add further rent because each Raydium tick array stores 60 usable tick records and remains allocated for the pool's lifetime. Closing returns eligible position-account rent, while rent paid for an initialized tick array stays with that persistent account.

Pool trading charges sit in a different layer. The four common CLMM configurations pair 0.01%, 0.05%, 0.25%, and 1.00% trade-fee rates with tick spacings of 1, 10, 60, and 120. A pool's AmmConfig identifies which configuration applies. Customizable pools may add a volatility-linked component, but the on-chain total fee has a 10% hard cap. A rebalance that swaps one token before redepositing pays the swap's pool fee as well.

Account creation is the setup-only portion; repeated management mainly pays network execution and any chosen conversion trade. That cost stack sets the minimum benefit a replacement range must justify.

How Does Raydium CLMM Compare With Orca Whirlpools and Meteora DLMM?

Three major Solana designs make range management a different operational choice: Raydium CLMM and Orca Whirlpools fix boundaries per position, while Meteora DLMM distributes liquidity across discrete bins. All three leave transaction approval with the wallet.

Raydium represents one range with a position NFT and requires a new position when the two endpoints change. Orca Whirlpools follows the same fixed-range principle, although its PositionBundle can manage up to 256 positions under one NFT for frequent cycling. Meteora DLMM works with bins and exposes Spot, Curve, and BidAsk distributions, plus a rebalance instruction in its SDK. Uniswap v3 supplies the familiar Ethereum reference model. The deciding factor is whether the LP wants Raydium's tick-based lifecycle, Orca's bundled positions, or Meteora's bin-level distribution controls.

Reading the Position Before Touching It

Two stored boundaries, one current tick, and one position NFT tell a Raydium CLMM provider whether capital is active and which wallet controls the next action.

The in-range flag matters first because fee growth pauses outside the stored interval.

The position view should separate four balances: token A, token B, uncollected fees, and pending rewards. Raydium stores fee counters for both pool tokens and supports up to three reward streams in PoolState. A position NFT has a supply of 1, and its associated token account identifies the authority for increase, decrease, collection, and close instructions. A Phantom or Solflare-controlled address holds the NFT in that associated token account. Program state, rather than wallet artwork or metadata, holds the lower tick, upper tick, liquidity, fee-growth snapshots, and reward counters.

Read token quantities beside status. Near either boundary, an in-range position already skews toward one asset; once fully outside, it holds only one side. That composition shows whether the replacement range accepts the withdrawn tokens directly or requires a conversion.

Raydium promotional graphic with blue-purple light trails and three slogan lines

Can a Raydium CLMM Range Be Edited in Place?

Two endpoint ticks remain fixed when a position opens on Raydium exchange, so changing either boundary requires withdrawing liquidity and creating a separate position with a fresh NFT.

Increasing liquidity changes L, the position's liquidity amount, while preserving the same lower and upper ticks. Decreasing liquidity does the reverse and settles accrued amounts. Rebalancing follows seven stages, each leaving wallet or program authority clear.

Can a Raydium CLMM Range Be Edited in Place?
Stage Custody or Control
1. Inspect the old position The wallet performs a read-only check of range, balances, fees, and rewards.
2. Select replacement boundaries The wallet owner chooses two valid ticks; no tokens move.
3. Decrease old liquidity The wallet authorizes the action; Raydium-controlled vaults return the withdrawn pool tokens.
4. Collect outstanding amounts The wallet authorizes collection; program-controlled pool and reward vaults pay amounts that remain owed.
5. Adjust the token mix The wallet authorizes any needed swap, and the selected route's programs execute it.
6. Open the replacement position The wallet authorizes the deposit; Raydium controls the pool vaults, while the wallet receives the new NFT.
7. Close the empty old position The wallet authorizes closure; the CLMM program burns the old NFT and closes eligible position state.

Keep the old NFT until every withdrawal and collection succeeds.

In most cases, Raydium requires zero liquidity, zero token-fee balances, and zero reward balances before ClosePosition burns the NFT and closes PersonalPositionState. Only then should the owner decide whether the new range remains deployed or the assets return fully to the wallet. The corresponding notes are kept in Exchange details.

Choosing a Replacement Range

Two tick-aligned boundaries define the replacement range, and their distance from the live price decides capital concentration, token ratio, and how much price movement the position tolerates.

Before any of that matters, Raydium's price grid advances by 0.01% per integer tick, but usable endpoints follow the pool's spacing. A spacing of 1 allows every tick, 10 allows every tenth tick, 60 every sixtieth, and 120 every 120th. The interface snaps requested prices to valid endpoints. A stable pair such as USDC/USDT supports tighter planning than SOL/USDC because their price behavior differs, yet the fee configuration and available liquidity still belong to the selected pool.

Narrower ranges place more liquidity near spot and reach a boundary sooner. Wider ranges trade concentration for longer coverage. Use a width tied to the maintenance interval that the owner will actually follow, then review the quoted token split before signing. Changing the range later repeats the same withdraw-and-open cycle; adding capital to the old NFT cannot shift its endpoints.

What Happens When Price Leaves a Raydium CLMM Range?

One boundary crossing makes a Raydium CLMM position out of range, converting its active liquidity into 100% of one pool token and stopping swap-fee accrual.

Fee growth resumes automatically if the current tick returns inside the interval; the NFT and liquidity remain intact while price stays outside. Waiting preserves the original boundaries, whereas repositioning crystallizes the current one-token composition and opens exposure around a different zone. Raydium reward streams also use range-aware accounting, with as many as three streams tracked per pool, so out-of-range liquidity does not receive default active-liquidity emissions. The choice is temporal: keep the original range and wait for re-entry, or pay the lifecycle costs to restore active coverage at the newly selected price.

The On-Chain Mechanics Behind Manual Rebalancing

Two endpoint ticks, one PersonalPositionState account, and a position NFT with supply 1 form the on-chain unit that Raydium moves through its manual rebalance lifecycle.

Where that applies, Raydium's CLMM tick lattice runs from -443636 to 443636, and adjacent integer ticks differ by a price factor of 1.0001, or about 0.01%. The pool stores square-root price in Q64.64 form, so the displayed price comes from squaring sqrt_price_x64 divided by 2^64. A position stays active when its lower tick is less than or equal to the current tick and the current tick remains below its upper tick.

The boundary test is asymmetric at the top: equality with the upper tick is already out of range.

IncreaseLiquidityV2 preserves both endpoints and raises liquidity. DecreaseLiquidityV2 computes the two returned amounts at the current square-root price, settles fees and rewards, and reduces liquidity. OpenPositionV2 then records the new ticks and mints a separate SPL Token position NFT; Token-2022 pools use the corresponding Token-2022 path. Metaplex metadata remains optional because ownership and range data come from program accounts. Raydium SDK V2 assembles the required tick arrays and token accounts. After confirmation, compare the new boundaries, token amounts, and NFT mint with the signed quote before retiring the old position.

Raydium exchange: quick answers

Does collecting CLMM fees change the position's price range?

Collecting CLMM fees leaves the lower and upper ticks unchanged. Raydium settles the position's two fee counters and transfers owed pool tokens to the owner's token accounts, but it does not alter liquidity placement. Reinvesting those tokens increases liquidity only within the existing boundaries. Moving the boundaries still requires decreasing the old position and opening a new position NFT.

Can I leave the old Raydium NFT open after removing all liquidity?

The old Raydium position NFT can remain open with zero liquidity after withdrawal. It retains the same pool and tick boundaries, so the owner can add liquidity back to that exact range later. The empty position earns no fees or rewards, and its rent remains tied to the position accounts until ClosePosition burns the NFT and closes eligible state.

When should the old position NFT be closed after rebalancing?

Close the old position NFT only after its liquidity reaches zero and all accrued fee and reward counters have been collected. Raydium's ClosePosition instruction checks those conditions before burning the NFT and closing PersonalPositionState. Keeping it through the withdrawal and collection steps preserves the authority needed to finish every remaining settlement step cleanly.

Which assets must remain in the wallet during a range change?

The wallet needs SOL for Solana transaction fees and the pool tokens required by the new quote. A replacement range near the current price commonly asks for both assets, while an out-of-range position returns one side. If that composition does not match the new deposit ratio, the wallet also needs enough of the returned token to complete the chosen conversion.

Is a token swap always required before opening the replacement position?

A token swap is required only when the withdrawn token mix does not satisfy the replacement range's quoted deposit ratio, because a range centered near the current price commonly needs both pool assets, while a fully out-of-range withdrawal returns one asset, and Raydium does not automatically convert that balance during the decrease-liquidity instruction.

Why does the replacement position quote a different token ratio?

The replacement position quotes a different token ratio because CLMM deposit amounts follow the current price relative to the new lower and upper boundaries. A range centered around spot draws from both pool assets; a boundary placed close to spot skews the required mix. Raydium calculates the actual amounts from square-root price, tick endpoints, and the liquidity amount requested.

Can the full Raydium rebalance fit into one transaction?

A full Raydium rebalance does not always fit into one Solana transaction. Decreasing liquidity, collecting rewards, swapping a token, initializing missing tick arrays, opening a new position, and closing the old NFT create a large instruction and account set. The interface or SDK may split that sequence into several signatures, with each confirmed action leaving an on-chain state that the next action reads.

Do Token-2022 transfer fees affect a CLMM range move?

Token-2022 transfer fees affect a CLMM range move when either pool mint enables that extension. Raydium's V2 instructions calculate deposits and withdrawals against net transferred amounts, so the wallet receives less than the vault sends on a fee-charging output mint. The displayed minimum amounts and replacement quote must therefore use post-transfer values, while the position NFT follows the Token-2022-compatible opening path.