Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
本页内容由 AI 自动翻译,所有内容以英文版本为准。查看英文版 →
LaunchLab 解决的问题
在 LaunchLab 出现之前,在 Raydium 上启动新代币需要创建者预先为 AMM 池的两边注入流动性——这意味着团队必须自掏腰包提供报价端流动性(SOL 或 USDC)。这种方式偏向资金充足的项目,并以初始资本作为进入启动板机制的门槛。 LaunchLab 用绑定曲线取代了这一步骤:代币部署到以报价铸币(通常是 SOL 或 USDC)定价的曲线中。买家通过向曲线发送报价资产来获取代币,程序根据曲线公式和当前供应量自动铸造或释放基础代币单位。无需预先注入的流动性。 一旦曲线积累了足够的报价资产来匹配真实 AMM 池的流动性公式,就会毕业:程序在主网上创建一个 CPMM 池,用曲线的基础储备和报价储备进行初始化,此后交易转向 AMM。生命周期
Buy 和 Sell 是唯一用户可调用的指令;Graduate 是无权限的(一旦跨越阈值任何人都可调用),但实际上 SDK 会在触发毕业阈值的交易内自动调用它。
两个固定角色
LaunchLab 状态有两个特殊账户:- 基础铸币 — 被启动的代币。其铸币权限由 LaunchLab 程序持有,直到毕业;毕业后被撤销。
- 报价铸币 — 抵押品。总是主流铸币(SOL / USDC / RAY)。启动配置在
Initialize时选择;之后不能更改。
base_vault— 保存已预铸造到曲线但尚未出售的基础代币供应部分。随着用户购买而减少。quote_vault— 累积买家支付的报价资产。随着用户购买而增加。此余额被用于检查毕业阈值。
定价模型
LaunchLab 支持多个曲线公式(见bonding-curve)。最常见的是二次绑定曲线,类似于 Pump.fun / Curve.fi / Bancor 系列:
s 是已出售给用户的基础代币数量,S_max 是曲线的最大供应量。每笔买入时价格单调上升,每笔卖出时价格下降。由于程序精确计算 AMM 集成成本,任何规模的买入都返回正确的集成数量;除了曲线的自然凸性外没有额外的交易滑点。
毕业
启动在quote_vault.balance ≥ graduation_threshold 时毕业。阈值在 Initialize 时设置,通常选择使得在毕业时曲线的隐含价格与 AMM 池用收集的储备开盘时的价格相匹配。具体来说:
S_graduate 是已出售的基础代币数量,price(S_graduate) 是该点的曲线边际价格,f 是用于考虑费用的小因子(1–2%)。
在毕业时:
- 程序快照
(base_vault_remaining, quote_vault)。 - 它使用这两个储备调用 CPMM
CreatePoolCPI,将初始 LP 铸造到程序所有的权限账户(通常根据策略被销毁/锁定)。 - 它撤销基础铸币的铸币权限(所以再也不能铸造更多基础代币)。
LaunchState.status切换到Graduated。
Buy 和 Sell 被拒绝。交易继续在生成的 CPMM 池上进行,其行为与任何其他 Raydium CPMM 池无异。
费用
在曲线阶段,每笔Buy 和 Sell 产生的费用分配给:
- 曲线 LP 方 — 增加曲线的隐含
k,这使后续买家受益(价格更紧)。 - 协议 — 累积到 LaunchLab 管理员,通过
CollectFees收集。 - 创建者 — 可选,在
Initialize时可配置。一些启动将部分费用分配给创建者作为持续收入流。
bonding-curve 中记录。确切的费用分配存储在 LaunchState.fees 中,每次启动可能不同。
毕业后的费用遵循池创建时的 CPMM 配置(通常是 AmmConfig[0],0.25% 级别)。
毕业后谁持有 LP?
LaunchLab 支持多个毕业后 LP 策略:- 销毁 — LP 铸造到死账户。池变为永久;没人可以移除流动性。
- 锁定 — LP 铸造到时间锁定的托管账户,在归属期后释放给创建者。
- 创建者立即接收 — 仅用于受权启动。
Initialize 时设置且无法更改。大多数开放启动使用销毁——一旦池存在,其流动性就永远存在。
重要不变式
- 基础铸币在毕业后无通胀。 其
mint_authority被撤销;freeze_authority从未设置。 - Token-2022 通过
initialize_with_token_2022受支持。 标准的Initialize/InitializeV2创建 SPL Token 启动;专用的InitializeWithToken2022指令创建基础铸币为 Token-2022 的启动(可选配置TransferFeeConfig)。Token-2022 启动必须毕业到 CPMM 池——它们无法毕业到仅支持 SPL Token 的 AMM v4。 - 曲线状态在一个方向上单调。
base_sold仅在 Buy 时上升,quote_vault仅在 Buy 时上升(在 Sell 时下降——对称地减少base_sold)。程序不会让曲线为负。 - 毕业是单向门闩。 即使毕业后的交易将 AMM 池价格推回毕业价格以下,启动也不会还原到曲线。
何时使用 LaunchLab
本页仅描述协议机制。本页内容不构成财务、法律或投资建议。代币启动涉及重大财务风险。在启动涉及公开融资的代币前,请咨询相关专业人士。
- 你正在启动没有现有市场的新代币。
- 你希望市场而非预先声明来决定开盘 CPMM 价格。
- 你希望允许任何人(包括团队本身)以相同的曲线定价购买,而不是以折扣价预分配给内部人士。
- 具有既定市场的现有代币(直接在 CPMM 上使用
CreatePool)。 - 需要对开盘 AMM 价格进行精确控制的启动(你可以通过仔细的曲线配置近似,但机制仍然是曲线驱动)。
- 需要 LaunchLab 不允许列表的 Token-2022 扩展的代币(启动程序即使在 Token-2022 路径上也会拒绝
TransferHook和PermanentDelegate等扩展)。
章节内容
bonding-curve— 曲线公式、成本和收益数学、毕业阈值推导。accounts—LaunchConfig、LaunchState、金库、权限 PDA。instructions—Initialize、Buy、Sell、Graduate、CollectFees、SetParams。code-demos— 端到端 TypeScript 示例。
下一步
products/cpmm/overview— 启动毕业后发生的事。user-flows/create-cpmm-pool— 不需要曲线的代币的替代路径。reference/program-addresses— LaunchLab 程序 ID。
- Raydium SDK v2
LaunchLab模块(IDL 位于src/raydium/launchpad/)。 - LaunchLab 程序源代码当前不作为独立仓库发布。上述与 SDK 捆绑的 IDL 是权威接口。


