Esta página fue traducida automáticamente por IA. La versión en inglés es la fuente autorizada.Ver versión en inglés →
Stable AMM es un programa independiente con su propio ID de programa. No es un modo del programa AMM v4, ni se negocia «a través» de AMM v4 — se implementa, actualiza e invoca por separado. Solo se parece a AMM v4 en las convenciones de comisiones y disposición de cuentas.
Inventario de instrucciones
Invocables
Eliminadas (ya no invocables)
Estas fueron eliminadas en la actualización del 2026-06-22 y ya no pueden ser invocadas. Consulta Instrucciones eliminadas.Deposit
Añadir liquidez, recibir tokens LP.
Argumentos
W, firmante S)
Compatibilidad:
amm_open_orders (antiguo #3) y serum_market (antiguo #9) se eliminan. Cuando se pasan 14 cuentas, la instrucción se analiza con la disposición antigua de 14 cuentas; las cuentas de Serum se ignoran.
Matemáticas — pro-rata estándar usando la tabla de búsqueda para calcular la proporción. El SDK calcula el par coin/pc para la cantidad de LP deseada y verifica contra los límites máximos.
Withdraw
Quemar LP, recibir ambos lados pro-rata.
Argumentos
W, firmante S)
Compatibilidad: nueve cuentas de Serum (
amm_open_orders, serum_program, serum_market, serum_coin_vault, serum_pc_vault, serum_vault_signer, serum_event_q, serum_bids, serum_asks) se eliminan. Las disposiciones antiguas de 21 o 22 cuentas aún se aceptan. Sin embargo, tenga en cuenta que la lógica de comisión de referencia para la cuenta opcional 22ª referrer_pc_wallet ha sido eliminada — aún puede pasarse pero ya no tiene efecto.
Precondiciones
user_source_lpcontiene al menosamount.
- Se queman
amounttokens LP. - El usuario recibe cantidades de coin y pc según la pro-rata actual, ajustadas por comisiones acumuladas.
SwapBaseIn
Swap de entrada exacta usando la tabla de búsqueda para precios.
Argumentos
W, firmante S)
Compatibilidad: las nueve cuentas de OpenBook (
amm_open_orders, serum_program, serum_market, serum_bids, serum_asks, serum_event_queue, serum_coin_vault, serum_pc_vault, serum_vault_signer) se eliminan. Si el número de cuentas pasadas no es 9, la instrucción se analiza con la disposición antigua de 18 cuentas; las cuentas de Serum aún deben ocupar sus posiciones, pero su contenido ya no se valida ni se utiliza.
Precondiciones
amm.statuspermite swap.user_source_tokencontiene ≥amount_in.
- El usuario pierde
amount_in, ganaamount_out ≥ minimum_amount_out. - Las comisiones del pool incrementan los contadores
need_take_pnl_*.
products/stable/math.
SwapBaseOut
Swap de salida exacta (inverso de SwapBaseIn). Misma disposición de 9 cuentas, dirección matemática diferente.
Argumentos
WithdrawPnl
Solo administrador. Recopilar comisiones de protocolo acumuladas de need_take_pnl_* en cuentas de PnL designadas.
Argumentos — ninguno (impulsado por estado).
Cuentas — disposición nueva, 10 cuentas fijas, solo administrador (escribible W, firmante S)
Cambio de lógica: cuando los fondos disponibles del pool son insuficientes para retirar el PnL acumulado, el pool ya no se pone en
CancelAllOrdersState / Disabled; la instrucción devuelve TakePnlError directamente. El referrer_pc_wallet opcional también ha sido eliminado.
Precondiciones
amm_admindebe estar autorizado.
need_take_pnl_coinyneed_take_pnl_pcse transfieren a las cuentas del administrador.- Los contadores se ponen a cero.
Instrucciones eliminadas
Las siguientes instrucciones fueron eliminadas en la actualización del 2026-06-22 y ya no pueden ser llamadas. Se documentan aquí solo para que los integradores las reconozcan en transacciones históricas y SDKs.Initialize— anteriormente inicializaba un nuevo pool de Stable AMM. Eliminada.PreInitialize— asistente de preasignación heredado. Eliminada.InitModelData— anteriormente creaba e inicializaba la tabla de búsquedaModelDataInfo. Eliminada.UpdateModelData— anteriormente rellenaba hasta 5 elementos de tabla de búsqueda por llamada. Eliminada.MonitorStep— el crank de OpenBook que liquidaba rellenos y republicaba la cuadrícula de órdenes. Ya estaba inactivo hace mucho tiempo después de que el pool dejara de publicar en OpenBook; ahora eliminada.SetParams— cambios de parámetros de administrador (estado, comisiones, propietario, clave de datos del modelo, etc.). Eliminada.WithdrawSrm— recopilaba reembolsos de descuento de comisión SRM de pools de la era temprana de Serum. Eliminada.SimulateInfo— asistente de cotización de solo lectura. Eliminada; usa los asistentes de curva estable fuera de cadena del SDK para cotizaciones (consulta Demostraciones de código).
Próximos pasos
- Cuentas — para disposiciones y tamaños de campos de cuenta.
- Matemáticas — para la lógica de interpolación de tabla de búsqueda.
- Demostraciones de código — para ver cómo llamar a estas desde el SDK.
raydium-stable/program/src/instruction.rs(enum y pack/unpack)raydium-stable/program/src/processor.rs(lógica de ejecución)

