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 →
Qué hace esto. Crea un nuevo pool CPMM para dos mints que especifiques, selecciona el nivel de comisión del 0,25%, inicializa la liquidez a el precio implícito en los montos iniciales e imprime el ID del nuevo pool y la firma de la transacción.
Configuración
Asegúrate de haber leído los requisitos previos de inicio rápido y de tenerRPC_URL, KEYPAIR y las dependencias instaladas.
También necesitarás financiar la billetera con los montos iniciales de ambos mints, más SOL suficiente para cubrir la comisión única de creación del pool y el alquiler de la cuenta (~0,19 SOL en total en mainnet — consulta reference/fee-comparison para el desglose de alquiler/comisión, o ray/protocol-fees solo para la comisión).
Ejecutar esto en devnet. Cambiar cluster a "devnet" no es suficiente por sí solo. Este script fija dos importaciones nombradas que no siguen cluster: programId: CREATE_CPMM_POOL_PROGRAM y poolFeeAccount: CREATE_CPMM_POOL_FEE_ACC, ambas constantes de mainnet. Importa DEVNET_PROGRAM_ID del SDK y usa DEVNET_PROGRAM_ID.CREATE_CPMM_POOL_PROGRAM y DEVNET_PROGRAM_ID.CREATE_CPMM_POOL_FEE_ACC en su lugar — el mismo patrón que usa el script CLMM.
El script
Guarda comocreate-cpmm.mjs:
create-cpmm.mjs
Ejecutarlo
Ejemplo: crear un pool SOL/USDC con 1 SOL y 160 USDC iniciales:Qué acaba de suceder
getCpmmConfigsobtuvo la lista en vivo de niveles de comisión deapi-v3.raydium.ioy seleccionó el índice 0 (el nivel del 0,25% — consultareference/fee-comparisonpara el conjunto completo).getTokenInforesolvió los metadatos de cada mint, incluyendo qué programa de token lo posee. CPMM acepta tanto mints de SPL Token como de Token-2022; el SDK enruta automáticamente.createPoolconstruyó una transacción que:- ordena los mints en orden canónico,
- deriva la PDA del pool, los vaults, el mint LP y la autoridad,
- paga la
create_pool_feeúnica aCREATE_CPMM_POOL_FEE_ACC, - crea los ATAs del llamador si faltan,
- inicializa los vaults con
AMOUNT_AyAMOUNT_B.
- El precio inicial se establece por la relación de semilla:
price = AMOUNT_B / AMOUNT_Adespués del ajuste decimal. Elige esto cuidadosamente — los bots arbitrarán cualquier error de precio dentro de segundos de que el pool se abra. startTime: new BN(0)abre el trading inmediatamente. Para preparar liquidez antes de abrir al público, establece una marca de tiempo Unix futura.
Errores comunes
pool already exists— Ya existe un pool para este par de mints en este nivel de comisión. Búscalo antes de crear.insufficient funds— Tu billetera no tiene suficiente deMINT_A,MINT_Bo SOL (para la comisión de creación del pool + alquiler).Token-2022 extension not supported— Uno de tus mints usa una extensión que CPMM no acepta. Consultareference/token-2022-support.
Después del despliegue
Puedes intercambiar inmediatamente contra el nuevo pool — el script Swap from CLI acepta tu nuevoPOOL_ID directamente. Los agregadores (Jupiter, etc.) indexarán el nuevo pool dentro de minutos.
Siguiente
products/cpmm/overview— qué es CPMM y cuándo elegirlo.user-flows/create-cpmm-pool— el mismo flujo con capturas de pantalla, a través de la interfaz de usuario de Raydium.user-flows/choosing-a-pool-type— ¿deberías haber usado CLMM en su lugar?

