| 6000 | NotApproved | Not approved | 调用者不是此指令的配置管理员;或(权限指令)签署者既不是 admin 也不是 permission_pda_admin;或(OpenLimitOrder)输入/输出代币账户被冻结或池禁用了交换/限价单;或(ClosePosition、冻结路径)提供的剩余账户不是 personal_position.pool_id。 | “只有池管理员可以执行此操作。” / “此代币账户被冻结——在下单前解冻。” / “内部:错误的头寸池账户。“ |
| 6001 | InvalidUpdateConfigFlag | invalid update amm config flag | 管理员向 update_amm_config 传递了无法识别的 param 值。 | N/A——仅限管理员路径。 |
| 6002 | AccountLack | Account lack | 缺少必需的剩余账户(通常是 tick 数组或预言机扩展);或 ClosePosition 在关闭冻结的 NFT 时没有将池作为其第一个剩余账户。 | “内部:缺少账户——刷新池数据或更新头寸关闭构建器。“ |
| 6003 | ClosePositionErr | Remove liquidity, collect fees owed and reward then you can close position account | 尝试关闭仍有流动性、未收集费用或未收集奖励的头寸。 | “在关闭头寸前提取所有流动性并领取费用/奖励。“ |
| 6004 | InvalidTickIndex | Tick out of range | tick_lower 或 tick_upper 在 [-443636, 443636] 范围外。 | “价格范围超出此池的界限。“ |
| 6005 | TickInvalidOrder | The lower tick must be below the upper tick | tick_lower >= tick_upper。 | “下限价格必须低于上限价格。“ |
| 6006 | TickLowerOverflow | The tick must be greater, or equal to the minimum tick(-443636) | 下限 tick 下溢。 | “下限价格太低。“ |
| 6007 | TickUpperOverflow | The tick must be lesser than, or equal to the maximum tick(443636) | 上限 tick 溢出。 | “上限价格太高。“ |
| 6008 | TickAndSpacingNotMatch | tick % tick_spacing must be zero | 提交的 tick 不是池的 tick_spacing 的倍数。 | “将价格对齐到最近的有效增量。“ |
| 6009 | InvalidTickArray | Invalid tick array account | 为 tick 数组槽传递了错误的 PDA。 | “内部:错误的 tick 数组——刷新池数据。“ |
| 6010 | InvalidTickArrayBoundary | Invalid tick array boundary | tick 数组索引中的差一错误。 | “内部:tick 数组边界错误。“ |
| 6011 | SqrtPriceLimitOverflow | Square root price limit overflow | 调用者提供的 sqrt_price_limit 超出有效范围。 | “价格限制超出范围。“ |
| 6012 | SqrtPriceX64 | sqrt_price_x64 out of range | 池的当前平方根价格在交换中途漂出范围。 | “重试交换。“ |
| 6013 | LiquiditySubValueErr | Liquidity sub delta L must be smaller than before | 减少流动性时的内部不变量违反。 | “内部:流动性会计错误。“ |
| 6014 | LiquidityAddValueErr | Liquidity add delta L must be greater, or equal to before | 增加流动性时的内部不变量违反。 | “内部:流动性会计错误。“ |
| 6015 | ForbidBothZeroForSupplyLiquidity | Both token amount must not be zero while supply liquidity | 增加流动性调用,其中 amount_0_max 和 amount_1_max 都为零。 | “至少提供一种代币。“ |
| 6016 | LiquidityInsufficient | Liquidity insufficient | 头寸没有足够的流动性来满足提取。 | “提取金额超过头寸流动性。“ |
| 6017 | PriceSlippageCheck | Price slippage check | 执行价格未通过调用者的滑点保护。 | “价格超过了你的滑点容限。增加滑点或重试。“ |
| 6018 | TooLittleOutputReceived | Too little output received | SwapBaseInput:输出金额低于 other_amount_threshold。 | “滑点超出——未达到最小输出。“ |
| 6019 | TooMuchInputPaid | Too much input paid | SwapBaseOutput:输入金额超过 other_amount_threshold。 | “滑点超出——超过最大输入。“ |
| 6020 | ZeroAmountSpecified | Swap special amount can not be zero | 交换指令上的零 amount。 | “输入大于零的金额。“ |
| 6021 | InvalidInputPoolVault | Input pool vault is invalid | 交换的输入金库账户与池的记录金库不匹配。 | “内部:错误的输入金库——刷新池数据。“ |
| 6022 | TooSmallInputOrOutputAmount | Swap input or output amount is too small | 交换数学四舍五入为零,通常是非常小的灰尘。 | “金额太小,无法在此池中交换。“ |
| 6023 | NotEnoughTickArrayAccount | Not enough tick array account | 为交换范围提供的 tick 数组剩余账户不足。 | “内部:tick 数组不足——刷新池数据。“ |
| 6024 | InvalidFirstTickArrayAccount | Invalid first tick array account | 传入的第一个 tick 数组账户不覆盖当前 tick。 | “内部:错误的第一个 tick 数组——刷新池数据。“ |
| 6025 | InvalidRewardIndex | Invalid reward index | reward_index 在 [0, 2] 范围外。 | N/A——管理员路径。 |
| 6026 | FullRewardInfo | The init reward token reach to the max | 池已配置最大(3 个)奖励铸币。 | N/A——管理员路径。 |
| 6027 | RewardTokenAlreadyInUse | The init reward token already in use | 奖励铸币与现有的重复。 | N/A——管理员路径。 |
| 6028 | ExceptRewardMint | The reward tokens must contain one of pool vault mint except the last reward | 在前置槽 2,奖励铸币必须等于池金库铸币之一。 | N/A——管理员路径。 |
| 6029 | InvalidRewardInitParam | Invalid reward init param | 错误的发放开始/结束时间或每秒速率。 | N/A——管理员路径。 |
| 6030 | InvalidRewardInputAccountNumber | Invalid collect reward input account number | 传入 CollectReward 的剩余账户数量错误。 | “内部:账户数量错误——刷新并重试。“ |
| 6031 | InvalidRewardPeriod | Invalid reward period | 奖励发放期无效(end <= start、零持续时间)。 | N/A——管理员路径。 |
| 6032 | NotApproveUpdateRewardEmissions | Modification of emissions is allowed within 72 hours from the end of the previous cycle | 管理员尝试在周期边界周围的 72 小时窗口外修改发放。 | N/A——管理员路径。 |
| 6033 | UnInitializedRewardInfo | uninitialized reward info | 奖励槽未初始化但被引用。 | N/A——管理员路径。 |
| 6034 | NotSupportMint | Not support token_2022 mint extension | CLMM 遇到了无法处理的 Token-2022 扩展。 | “此代币具有 Raydium CLMM 不支持的扩展。“ |
| 6035 | MissingTickArrayBitmapExtensionAccount | Missing tickarray bitmap extension account | 交换跨越了基础位图未覆盖的 tick 范围;需要扩展位图账户。 | “内部:缺少 tick 数组扩展——刷新池数据。“ |
| 6036 | InsufficientLiquidityForDirection | Insufficient liquidity for this direction | 交换方向上没有足够的流动性。 | “此交换规模的流动性不足。“ |
| 6037 | MaxTokenOverflow | Max token overflow | 输入/输出金额超过 u64。 | “金额对此池来说太大。“ |
| 6038 | CalculateOverflow | Calculate overflow | 费用/流动性算术溢出。 | “金额对此池来说太大。“ |
| 6039 | TransferFeeCalculateNotMatch | TransferFee calculate not match | Token-2022 转账费观察到的金额与预期不符。 | “代币转账费在交易中途改变。重试。“ |
| 6040 | OrderAlreadyFilled | Order already fully filled, cannot modify | 在未填充部分为零的订单上调用 IncreaseLimitOrder / DecreaseLimitOrder。 | “此限价单已填充——结算以接收输出。“ |
| 6041 | InvalidOrderPhase | Invalid order phase | 变更其 FIFO 队列阶段不再与 tick 当前队列匹配的订单。 | “无法在订单的当前状态下执行此操作。“ |
| 6042 | InvalidLimitOrderAmount | Invalid limit order amount | 订单输入在打开/增加/减少时低于池的最小值(或为零)。 | “订单规模低于池的最小值。“ |
| 6043 | OrderPhaseSaturated | Tick order phase saturated | tick 上队列的 order_phase 计数器已饱和;在现有队列结算并翻转之前,无法在该 tick 处打开进一步的订单。 | “此价格处的活跃订单过多;尝试附近的 tick 或等待订单结算。“ |
| 6044 | InvalidDynamicFeeConfigParams | Invalid dynamic fee config params | CreateDynamicFeeConfig / UpdateDynamicFeeConfig 被拒绝;或 CreateCustomizablePool 启用了动态费用但没有有效的配置。 | N/A 在管理员路径;用户路径上为”动态费用配置无效”。 |
| 6045 | InvalidFeeOn | Invalid fee on which token (must be 0, 1, or 2) | CreateCustomizablePool 传递了 collect_fee_on 值在 {0, 1, 2} 范围外。 | “内部:无效的费用模式。“ |
| 6046 | ZeroSqrtPrice | sqrt_price_x64 must be greater than 0 | CreateCustomizablePool(或另一个接受可自定义初始平方根价格的路径)被调用时 sqrt_price_x64 == 0。 | “初始价格必须大于零。“ |
| 6047 | ZeroLiquidity | liquidity must be greater than 0 | 流动性提供路径被调用时 liquidity == 0 且没有补偿金额。 | “流动性金额必须大于零。“ |
| 6048 | MissingBaseFlag | base_flag is required when liquidity is zero | 按金额打开头寸路径计算 liquidity == 0,调用者未提供 base_flag 来消除哪一侧是基础的歧义。 | “提供非零流动性或指定哪个代币是基础。“ |
| 6049 | MissingMintAccount | Mint account is required but not provided | 调用了 Token-2022 感知路径,但未提供验证扩展和转账费所需的输入/输出铸币账户。 | “内部:缺少铸币账户——刷新池数据。“ |
| 6050 | MissingTokenProgram2022 | Token-2022 program is required but not provided | 与上述相同,用于 SPL-Token-2022 程序账户。 | “内部:缺少 Token-2022 程序——刷新并重试。” |