Passer au contenu principal

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.

Cette page est traduite automatiquement par IA. La version anglaise fait foi.Voir la version anglaise →

Résumé en un paragraphe

CPMM — Constant Product Market Maker, officiellement l’« AMM Standard » dans l’interface de Raydium — est une implémentation native Solana du classique AMM x · y = k. Aucun carnet de commandes OpenBook, aucun héritage Serum, aucune dépendance externe au-delà de SPL Token et Token-2022. Chaque pool est un triplet composé de deux coffres de jetons et d’un mint LP, gouverné par une PDA d’autorité contrôlée par le programme, tarifée selon le produit des soldes des coffres. C’est l’AMM que Raydium recommande pour tous les nouveaux pools à produit constant, et c’est ce que ciblaient par défaut le point de terminaison /pools/create et le flux « Create pool » de l’interface web.

Ce que CPMM vous offre

  • Token-2022 avec une liste d’extensions vérifiée. CPMM n’accepte pas les mints Token-2022 arbitraires. Le programme applique une liste blanche d’extensions sûres lors de la création du pool : TransferFeeConfig, MetadataPointer, TokenMetadata, InterestBearingConfig, et ScaledUiAmount. Toute autre extension sur le mint entraîne un rejet d’Initialize avec NotSupportMint — sauf si le mint lui-même figure sur une petite liste blanche en dur maintenue dans le programme (utilisée pour intégrer des mints spécifiques au cas par cas). Les frais de transfert en particulier affectent les mathématiques du swap et sont appliqués du côté correct du trade — voir algorithms/token-2022-transfer-fees.
  • Frais prévisibles. Chaque pool référence un AmmConfig choisi lors de la création. La configuration porte un taux de frais commerciaux (partagé entre les LP, le protocole et le fonds) et un taux de frais créateur indépendant et séparé. Le frais créateur est son propre bucket — jamais une tranche du frais commercial. Les pools optent pour la facturation lors de la création. Les valeurs par défaut et les mathématiques complètes de la répartition se trouvent dans products/cpmm/fees.
  • TWAP on-chain via un anneau tampon d’observation. Chaque swap met à jour un compte observation. Les contrats externes peuvent lire une observation de prix cumulatif pour calculer un TWAP sans oracle personnalisé.
  • Mise en page plate des comptes. Un pool est entièrement décrit par six PDA (autorité, état du pool, mint LP, deux coffres, observation). Aucun compte OpenBook par marché, aucune file d’attente d’événements, aucune file d’attente de requêtes. Les transactions sont moins chères en termes de calcul et de nombre de comptes qu’AMM v4.
  • Compatible avec burn-and-earn. Les jetons LP peuvent être verrouillés dans le programme LP Lock afin que le créateur du pool puisse continuer à percevoir des frais sans conserver le droit de retirer la liquidité. Utilisé pour les lancements de liquidité « permanents ».

Ce que CPMM n’est pas

  • Pas concentré. La liquidité est répartie uniformément sur toute la plage de prix, comme Uniswap v2. Si vous avez besoin d’une tenue de marché efficace en capital — c’est-à-dire concentrer la liquidité près du prix actuel — utilisez CLMM.
  • Pas hybride. Contrairement à AMM v4, les pools CPMM ne placent pas d’ordres en attente sur un marché OpenBook. Le routage entre les pools CPMM se fait via le programme AMM Routing, pas via un CLOB.
  • Pas déployable pour des courbes arbitraires. La courbe est codée en dur en produit constant. Si vous voulez une courbe de liaison pour un lancement de token, utilisez LaunchLab, qui passe à un pool CPMM quand il se remplit.

Comment CPMM diffère d’AMM v4

DimensionAMM v4CPMM
CourbeProduit constantProduit constant
Dépendance OpenBookInerte (plaçait autrefois des ordres sur un marché OpenBook ; intégration désactivée)Non
Support Token-2022Non (SPL Token uniquement)Oui (y compris les frais de transfert)
Nombre de comptes par swap V2~9~11
Unités de calcul par swap~80k–120k (chemin V2)~60k–100k
Oracle TWAPAucun compte oracle natifAnneau tampon observation
Création d’un nouveau pool aujourd’huiPas la valeur par défaut (le programme l’accepte toujours)Par défaut
StatutEntièrement opérationnelActif, recommandé
Un traitement plus approfondi de l’histoire de la migration se trouve dans protocol-overview/versions-and-migration.

Modèle mental

Un pool CPMM est un objet contrôlé par le programme contenant trois soldes : vault0 (token0), vault1 (token1), et l’offre du mint LP. L’offre du mint LP suit la créance des déposants sur le pool ; les coffres de jetons détiennent les actifs réels. Tout le reste — la PDA d’autorité, le compte d’observation, le pointeur de configuration des frais — est de la tenue de compte pour rendre cette relation à trois variables tradable, capable de percevoir des frais et observable. Chaque opération visible pour l’utilisateur se résume à une transition d’état bien définie :
  • Dépôt : transférer token0 et token1, créer du LP pour l’utilisateur, aucun changement de prix.
  • Retrait : brûler le LP de l’utilisateur, transférer token0 et token1 dans le ratio actuel du pool, aucun changement de prix.
  • Swap : transférer un token, transférer l’autre ; le ratio se déplace le long de la courbe x · y = k (moins les frais) ; le compte d’observation échantillonne le nouveau prix.
La collecte de frais (CollectProtocolFee, CollectFundFee) est une transaction séparée signée par l’autorité respective ; elle ne se produit pas à chaque swap. Les mathématiques sont exposées dans products/cpmm/math et l’ensemble d’instructions dans products/cpmm/instructions.

Quand choisir CPMM

Choisissez CPMM quand :
  • Vous lancez un nouveau token ou une nouvelle paire et n’avez pas d’opinions tranchées sur la plage qui verra du trading.
  • L’un ou les deux tokens utilisent des extensions Token-2022.
  • Vous voulez un modèle simple de frais par trade plutôt qu’un modèle dynamique basé sur les ticks.
  • Vous intégrez et voulez router via Raydium sans prendre la complexité des positions CLMM.
Préférez CLMM quand :
  • La paire est stable ou hautement corrélée (stablecoin-stablecoin, LST-SOL) et vous voulez concentrer la liquidité autour de la parité.
  • Vous êtes une équipe de tenue de marché prête à gérer activement les plages pour un APR de frais plus élevé par dollar de TVL.
Préférez AMM v4 quand :
  • Vous migrez l’outillage existant d’AMM v4 et ne créez pas un nouveau pool.
(Remarque : le mode hybride OpenBook d’AMM v4 n’est plus actif — ce n’est plus une raison de choisir AMM v4.)

Où aller ensuite

  • Accounts — les six PDA d’un pool CPMM et comment les dériver.
  • MathSwapBaseInput vs SwapBaseOutput, gestion des frais de transfert Token-2022, mises à jour des observations.
  • Instructions — la surface d’instruction complète avec listes de comptes.
  • Fees — la répartition des frais en quatre volets et comment collecter.
  • Code demos — extraits TypeScript exécutables pour create / swap / deposit / withdraw.
Sources :