| name | raydium |
| description | Raydium - swaps, CLMM positions, AMM liquidity on Solana |
| command | ray |
| emoji | 💜 |
| gates | {"envs":["SOLANA_PRIVATE_KEY"]} |
Raydium DEX
Raydium is a high-volume DEX on Solana with AMM pools and CLMM (Concentrated Liquidity Market Maker) pools.
Commands
Swaps
/ray swap <amount> <from> to <to> Execute swap on Raydium
/ray quote <amount> <from> to <to> Get quote without executing
/ray pools <token> List pools for token
CLMM (Concentrated Liquidity)
/ray clmm positions List your CLMM positions
/ray clmm create <pool> <lower> <upper> <amount> Open position
/ray clmm add <pool> <nft> <amount> Add liquidity to position
/ray clmm remove <pool> <nft> [%] Remove liquidity
/ray clmm close <pool> <nft> Close position
/ray clmm harvest Harvest all rewards
AMM Liquidity
/ray amm add <pool> <amountA> [amountB] Add liquidity
/ray amm remove <pool> <lpAmount> Remove liquidity
Examples
Swaps
/ray swap 1 SOL to USDC
/ray quote 100 USDC to RAY
/ray pools SOL
CLMM Positions
/ray clmm positions # List all positions
/ray clmm create ABC123... 100 200 1000000000 # Open position with price range
/ray clmm add ABC123... NFT456... 500000000 # Add liquidity
/ray clmm remove ABC123... NFT456... 50 # Remove 50%
/ray clmm harvest # Harvest rewards
Pool Types
| Type | Description | Features |
|---|
| AMM (V4) | Standard constant-product AMM | Simple, high volume |
| CLMM | Concentrated liquidity | Capital efficient, earn fees in range |
| CPMM | Constant product (newer) | Lower fees |
Tools Available
Swap Tools
| Tool | Description |
|---|
raydium_swap | Execute swap via Raydium |
raydium_quote | Get quote without executing |
raydium_pools | List available pools |
CLMM Tools
| Tool | Description |
|---|
raydium_clmm_positions | List your CLMM positions |
raydium_clmm_create_position | Open new concentrated liquidity position |
raydium_clmm_increase_liquidity | Add liquidity to existing position |
raydium_clmm_decrease_liquidity | Remove liquidity from position |
raydium_clmm_close_position | Close an empty position |
raydium_clmm_harvest | Harvest fees and rewards |
raydium_clmm_swap | Swap directly on a specific CLMM pool |
raydium_clmm_create_pool | Create new CLMM pool |
raydium_clmm_configs | Get available fee tier configs |
AMM Tools
| Tool | Description |
|---|
raydium_amm_add_liquidity | Add liquidity to AMM pool |
raydium_amm_remove_liquidity | Remove liquidity from AMM pool |
TypeScript API
import {
executeRaydiumSwap,
getRaydiumQuote,
listRaydiumPools,
getClmmPositions,
createClmmPosition,
increaseClmmLiquidity,
decreaseClmmLiquidity,
closeClmmPosition,
harvestClmmRewards,
swapClmm,
createClmmPool,
getClmmConfigs,
addAmmLiquidity,
removeAmmLiquidity,
} from 'clodds/solana/raydium';
const swap = await executeRaydiumSwap(connection, keypair, {
inputMint: 'So11111111111111111111111111111111111111112',
outputMint: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
amount: '1000000000',
slippageBps: 50,
});
const position = await createClmmPosition(connection, keypair, {
poolId: 'POOL_ID_HERE',
priceLower: 100,
priceUpper: 200,
baseAmount: '1000000000',
slippage: 0.01,
});
console.log(`Position NFT: ${position.nftMint}`);
const positions = await getClmmPositions(connection, keypair);
for (const pos of positions) {
.();
}
(connection, keypair, {
: ,
: ,
: ,
});
rewards = (connection, keypair);
.();
(connection, keypair, {
: ,
: ,
: ,
: ,
});
(connection, keypair, {
: ,
: ,
: ,
});
Environment Variables
SOLANA_PRIVATE_KEY=<base58 or JSON array>
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com
CLMM Position Management
Opening a Position
- Choose a pool (e.g., SOL-USDC)
- Set price range (lower, upper)
- Deposit tokens - you'll provide both tokens proportionally
Managing Positions
- Add liquidity: Deposit more tokens to existing position
- Remove liquidity: Withdraw tokens (partial or full)
- Harvest: Collect trading fees earned
- Close: Close position after removing all liquidity
Price Range Strategy
| Strategy | Range | Risk/Reward |
|---|
| Wide range | 50% - 200% of current | Lower fees, less IL |
| Narrow range | 95% - 105% | Higher fees, more IL risk |
| Full range | 0 - infinity | Like standard AMM |