名称: raydium
描述: “Raydium - 在Solana上的交换、CLMM仓位、AMM流动性”
命令: ray
表情: “💜”
权限:
环境变量:
- SOLANA_PRIVATE_KEY
Raydium 去中心化交易所
Raydium 是 Solana 上的一个高交易量去中心化交易所,提供 AMM 池和 CLMM(集中流动性做市商)池。
命令
交换
/ray swap <数量> <从> 到 <到> 在 Raydium 上执行交换
/ray quote <数量> <从> 到 <到> 获取报价而不执行
/ray pools <代币> 列出代币的池子
CLMM(集中流动性)
/ray clmm positions 列出您的 CLMM 仓位
/ray clmm create <池子> <下限> <上限> <数量> 开仓
/ray clmm add <池子> <NFT> <数量> 添加流动性到仓位
/ray clmm remove <池子> <NFT> [%] 移除流动性
/ray clmm close <池子> <NFT> 关闭仓位
/ray clmm harvest 收获所有奖励
AMM 流动性
/ray amm add <池子> <数量A> [数量B] 添加流动性
/ray amm remove <池子> <LP数量> 移除流动性
示例
交换
/ray swap 1 SOL 到 USDC
/ray quote 100 USDC 到 RAY
/ray pools SOL
CLMM 仓位
/ray clmm positions # 列出所有仓位
/ray clmm create ABC123... 100 200 1000000000 # 开仓,设置价格范围
/ray clmm add ABC123... NFT456... 500000000 # 添加流动性
/ray clmm remove ABC123... NFT456... 50 # 移除 50%
/ray clmm harvest # 收获奖励
池子类型
| 类型 |
描述 |
特性 |
| AMM (V4) |
标准常数乘积 AMM |
简单,高交易量 |
| CLMM |
集中流动性 |
资本高效,在范围内赚取费用 |
| CPMM |
常数乘积(较新) |
低费用 |
可用工具
交换工具
| 工具 |
描述 |
raydium_swap |
通过 Raydium 执行交换 |
raydium_quote |
获取报价而不执行 |
raydium_pools |
列出可用池子 |
CLMM 工具
| 工具 |
描述 |
raydium_clmm_positions |
列出您的 CLMM 仓位 |
raydium_clmm_create_position |
开新的集中流动性仓位 |
raydium_clmm_increase_liquidity |
向现有仓位添加流动性 |
raydium_clmm_decrease_liquidity |
从仓位移除流动性 |
raydium_clmm_close_position |
关闭空仓位 |
raydium_clmm_harvest |
收获费用和奖励 |
raydium_clmm_swap |
在特定 CLMM 池子上直接交换 |
raydium_clmm_create_pool |
创建新的 CLMM 池子 |
raydium_clmm_configs |
获取可用费用层级配置 |
AMM 工具
| 工具 |
描述 |
raydium_amm_add_liquidity |
向 AMM 池子添加流动性 |
raydium_amm_remove_liquidity |
从 AMM 池子移除流动性 |
TypeScript API
import {
// 交换
executeRaydiumSwap,
getRaydiumQuote,
listRaydiumPools,
// CLMM(集中流动性)
getClmmPositions,
createClmmPosition,
increaseClmmLiquidity,
decreaseClmmLiquidity,
closeClmmPosition,
harvestClmmRewards,
swapClmm,
createClmmPool,
getClmmConfigs,
// AMM 流动性
addAmmLiquidity,
removeAmmLiquidity,
} from 'clodds/solana/raydium';
// 执行交换
const swap = await executeRaydiumSwap(connection, keypair, {
inputMint: 'So11111111111111111111111111111111111111112',
outputMint: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
amount: '1000000000', // 1 SOL,以 lamports 为单位
slippageBps: 50,
});
// 开 CLMM 仓位
const position = await createClmmPosition(connection, keypair, {
poolId: 'POOL_ID_HERE',
priceLower: 100,
priceUpper: 200,
baseAmount: '1000000000', // 1 SOL
slippage: 0.01,
});
console.log(`仓位 NFT: ${position.nftMint}`);
// 列出仓位
const positions = await getClmmPositions(connection, keypair);
for (const pos of positions) {
console.log(`池子: ${pos.poolId}, 流动性: ${pos.liquidity}`);
}
// 向仓位添加流动性
await increaseClmmLiquidity(connection, keypair, {
poolId: 'POOL_ID_HERE',
positionNftMint: 'NFT_MINT_HERE',
amountA: '500000000', // 0.5 SOL
});
// 收获奖励
const rewards = await harvestClmmRewards(connection, keypair);
console.log(`已收获: ${rewards.signatures.length} 笔交易`);
// AMM: 添加流动性
await addAmmLiquidity(connection, keypair, {
poolId: 'AMM_POOL_ID',
amountA: '1000000000',
fixedSide: 'a',
slippage: 0.01,
});
// AMM: 移除流动性
await removeAmmLiquidity(connection, keypair, {
poolId: 'AMM_POOL_ID',
lpAmount: '1000000', // 要销毁的 LP 代币
slippage: 0.1,
});
环境变量
SOLANA_PRIVATE_KEY=<base58 或 JSON 数组>
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com # 可选
CLMM 仓位管理
开仓
- 选择一个池子(例如,SOL-USDC)
- 设置价格范围(下限,上限)
- 存入代币 - 您需要按比例提供两种代币
管理仓位
- 添加流动性: 向现有仓位存入更多代币
- 移除流动性: 提取代币(部分或全部)
- 收获: 收集赚取的交易费用
- 关闭: 移除所有流动性后关闭仓位
价格范围策略
| 策略 |
范围 |
风险/回报 |
| 宽范围 |
当前价格的 50% - 200% |
较低费用,较少无常损失 |
| 窄范围 |
当前价格的 95% - 105% |
较高费用,更多无常损失风险 |
| 全范围 |
0 - 无穷大 |
类似于标准 AMM |