Cette page est traduite automatiquement par IA. La version anglaise fait foi.Voir la version anglaise →
Le seul palier publié
Contrairement à CPMM et CLMM, AMM v4 n’a pas de compteAmmConfig. Les frais sont stockés directement dans la structure AmmInfo.fees de chaque pool et sont fixes à la création du pool. Les valeurs par défaut qui couvrent essentiellement tous les pools AMM v4 actifs :
Notez que
pnl_numerator / pnl_denominator est une fraction des frais de swap, et non du volume de trading — une confusion courante. La part LP est le complément (88 % des frais = 0,22 % du volume) et est implicite ; il n’y a pas de numérateur séparé pour la « part LP ».
Un petit nombre de pools anciens ont été créés avec des numérateurs différents ; lisez toujours AmmInfo.fees avant de citer.
Il n’y a pas de frais de fonds et pas de frais de créateur : ce sont des inventions de CPMM/CLMM qui n’existaient pas dans le modèle de frais original d’AMM v4.
Comment la répartition est calculée
À chaque swap, le pool prélève les frais de trading bruts sur le montant d’entrée, puis répartit :lp_portionreste dans le coffre et contribue au prochaink. Les LP le capturent en rachetant les tokens LP plus tard.pnl_portionincrémenteAmmInfo.state_data.need_take_pnl_coinouneed_take_pnl_pcselon le côté d’entrée du swap.
TakePnl déplace les tokens sans décaler le prix.
PnL d’OpenBook (historique)
Supprimé. L’intégration OpenBook a été supprimée du programme, donc le deuxième flux de PnL décrit dans cette section n’est plus généré. Les compteurs
total_pnl_{coin,pc} sont maintenant des champs dépréciés — ils conservent des valeurs historiques figées et ne sont jamais mis à jour. Le chemin des frais de protocole de 0,03 % (ci-dessus) n’est pas affecté et reste actif.MonitorStep et le programme les créditait à state_data.total_pnl_{coin,pc} comme compteurs informationnels.
- Quand la grille affichée du pool était correctement calibrée autour du prix de la courbe, les remplissages OpenBook tendaient à être positifs en frais pour le pool — l’AMM faisait effectivement du market-making sur OpenBook et gagnait des remises maker.
- Quand OpenBook s’arrêtait ou que la file d’attente d’événements se remplissait, le pool pouvait rester sur des ordres obsolètes qui se remplissaient à des prix désavantageux, produisant un PnL négatif. Ce couplage opérationnel était l’une des motivations pour s’éloigner de la conception hybride.
Collecte
L’admin (multisig Raydium) appelleWithdrawPnl pour récupérer need_take_pnl_* dans les comptes « propriétaire PnL » au niveau du pool configurés sur l’AmmConfig du programme (une config différente, scoped au programme — pas l’AmmConfig par pool de style CPMM). La récupération :
- Transfère
need_take_pnl_coin/need_take_pnl_pcdes coffres du pool vers la destination PnL. - Remet les compteurs à zéro.
TakePnlError directement. L’opération ne déplace pas la courbe — les LP ne devraient voir aucun changement de prix lors d’un appel WithdrawPnl. Notez que la disposition du compte WithdrawPnl a changé dans la mise à jour 2026-07 (voir instructions).
Rachat des frais LP
Il n’y a pas d’instruction dédiée « collecter les frais LP ». Les frais LP s’accumulent dans les coffres et gonflentk au fil du temps ; les LP les réalisent en brûlant les tokens LP via Withdraw. La valeur d’un token LP augmente de manière monotone à mesure que (coin_reserve_effective, pc_reserve_effective) augmentent.
Visualisation : où vont 1 000 USDC de volume
Sur un swap lourd en USDC de $1 000 contre un pool avec paramètres par défaut :AmmConfig[0] (palier 0,25 %, pas de frais de créateur) : LP obtient $2,10, protocole $0,30, fonds $0,10. CPMM introduit la ligne des fonds en la prélevant sur ce qui aurait été la part LP dans le palier équivalent d’AMM v4.
Tableau de comparaison
Matrice complète dans
reference/fee-comparison.
Notes pour les intégrateurs
- Cotation. Récupérez
AmmInfovia le SDK ouapi-v3.raydium.io/pools/info/ids. Les réserves sont maintenant limitées au coffre, vous pouvez donc coter directement par rapport aux soldes du coffre — n’oubliez pas de soustraireneed_take_pnl_*(le PnL accumulé est détenu dans le coffre mais exclu de la courbe). - Paramètres de frais obsolètes. En principe
SetParamspourrait changerswap_fee_numerator, mais en pratique le multisig Raydium n’a pas changé les valeurs par défaut pour aucun pool actif. Néanmoins, lisez toujours l’état on-chain plutôt que de coder en dur. - Pas de récompenses. AMM v4 ne supporte pas les émissions de récompenses au niveau du pool. Les fermes écosystème héritées (Farm v3 / v5 / v6) sont l’équivalent de la couche de staking — voir
products/farm-staking.
Où aller ensuite
products/amm-v4/math— la dérivation des frais de trading dans la courbe.products/amm-v4/instructions— listes de comptes pourWithdrawPnl/SetParams.reference/fee-comparison— matrice côte à côte.
- Programme Raydium AMM —
raydium-io/raydium-amm - Champs numérateur/dénominateur des frais AMM v4 on-chain (vérifiés par rapport aux comptes
AmmInfodu mainnet).

