Passer au contenu principal
Cette page est traduite automatiquement par IA. La version anglaise fait foi.Voir la version anglaise →
Ce que cela fait. Crée un tout nouveau pool CPMM pour deux mints que vous spécifiez, sélectionne le palier de frais de 0,25 %, initialise la liquidité au prix impliqué par les montants initiaux, et affiche le nouvel ID de pool et la signature de la transaction.

Configuration

Assurez-vous d’avoir lu les prérequis du démarrage rapide et d’avoir RPC_URL, KEYPAIR et les dépendances installés. Vous devrez également financer le portefeuille avec les montants initiaux des deux mints, plus suffisamment de SOL pour couvrir les frais uniques de création du pool (~0,15 SOL sur mainnet, consultez reference/program-addresses pour la valeur actuelle).

Le script

Enregistrez sous create-cpmm.mjs :

Exécutez-le

Exemple : créer un pool SOL/USDC avec 1 SOL et 160 USDC d’initialisation :
Résultat attendu :

Ce qui vient de se passer

  1. getCpmmConfigs a récupéré la liste en direct des paliers de frais de api-v3.raydium.io et sélectionné l’index 0 (le palier de 0,25 % — consultez reference/fee-comparison pour la liste complète).
  2. getTokenInfo a résolu les métadonnées de chaque mint, notamment quel programme de jetons en est propriétaire. CPMM accepte les mints SPL Token et Token-2022 ; le SDK les achemine automatiquement.
  3. createPool a construit une transaction unique qui :
    • trie les mints dans l’ordre canonique,
    • dérive le PDA du pool, les vaults, le mint LP et l’autorité,
    • paie les frais uniques create_pool_fee à CREATE_CPMM_POOL_FEE_ACC,
    • crée les ATA de l’appelant s’ils manquent,
    • initialise les vaults avec AMOUNT_A et AMOUNT_B.
  4. Le prix initial est défini par le ratio d’initialisation : prix = AMOUNT_B / AMOUNT_A après ajustement des décimales. Choisissez-le avec soin — les bots arbitreront toute erreur de prix en quelques secondes après l’ouverture du pool.
  5. startTime: new BN(0) ouvre le trading immédiatement. Pour préparer la liquidité avant ouverture au public, définissez un timestamp Unix futur.

Erreurs courantes

  • pool already exists — Un pool existe déjà pour cette paire de mints à ce palier de frais. Vérifiez avant de créer.
  • insufficient funds — Votre portefeuille n’a pas assez de MINT_A, MINT_B ou de SOL (pour les frais de création du pool + loyer).
  • Token-2022 extension not supported — L’un de vos mints utilise une extension que CPMM n’accepte pas. Consultez reference/token-2022-support.

Après le déploiement

Vous pouvez immédiatement échanger contre le nouveau pool — le script Swap from CLI accepte directement votre nouveau POOL_ID. Les agrégateurs (Jupiter, etc.) indexeront le nouveau pool en quelques minutes.

Suivant