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 →
Le Stable AMM partage la structure des comptes au niveau de la pool du AMM v4 (AmmInfo, coffres-forts, autorité) et exige en outre un compte
ModelDataInfo qui stocke la table de consultation. Cette page couvre les deux.Inventaire
Une pool Stable AMM est liée à exactement un marché OpenBook. L’inventaire complet ressemble étroitement à celui du AMM v4 :| Catégorie | Compte | Propriétaire | Rôle |
|---|---|---|---|
| Pool | AmmInfo | Programme Stable | État de la pool, références aux coffres-forts, OpenBook et compte de données du modèle. |
| Pool | amm_authority | Programme Stable | PDA appartenant au programme qui signe les mouvements de coffre-fort. Partagé entre toutes les pools Stable AMM. |
| Pool | amm_open_orders | OpenBook | Le compte OpenOrders OpenBook de la pool. |
| Pool | amm_target_orders | Programme Stable | Grille au niveau de la pool pour les ordres limites. |
| Pool | pool_coin_token_account | SPL Token | Coffre-fort du côté coin de la pool. |
| Pool | pool_pc_token_account | SPL Token | Coffre-fort du côté pc de la pool. |
| Pool | lp_mint | SPL Token | Mint LP interchangeable. |
| Modèle | model_data_account | Programme Stable | La table de consultation : 50 000 × DataElement. |
| Marché | serum_market | OpenBook | Marché OpenBook. |
| Marché | serum_bids, serum_asks | OpenBook | Files d’attente des enchères/offres. |
| Marché | serum_event_queue | OpenBook | File d’attente des événements. |
| Marché | serum_coin_vault, serum_pc_vault | SPL Token | Coffres-forts au niveau du marché OpenBook. |
| Marché | serum_vault_signer | OpenBook | Signataire du coffre-fort au niveau du marché. |
AmmInfo
Compte d’état racine. La disposition est presque identique à celle du AMM v4 — paramètres de la pool, décimales, frais, références aux coffres-forts/mint — avec un ajout : un champ model_data_key pointant vers la table de consultation.
model_data_key— l’adresse de la table de consultation. Doit être transmise à chaque instruction.fees— structure identique au AMM v4. Par défaut : frais commerciaux de 0,25 %, répartition LP / protocole de 0,22 % / 0,03 %.coin_vault,pc_vault— les coffres-forts de la pool.status— masque de bits contrôlant l’activation de swap/depot/retrait/crank.out_put.need_take_pnl_*— balayés parWithdrawPnl.
ModelDataInfo
La table de consultation. Un grand tableau creux de points prix/quantité.
InitModelDatacrée le compte et définitstatus = Initialized,multiplier = <admin-provided>,valid_data_count = 0.UpdateModelData(invoquée jusqu’à 5 fois par transaction) remplit les éléments via :- Entrée : tableau de paires
(index: u64, DataElement). - Écrit chacune en
elements[index]. - Incrémente
valid_data_countsiindex >= valid_data_count.
- Entrée : tableau de paires
- Swap/depot/retrait appellent des fonctions de consultation qui effectuent une recherche binaire et une interpolation dans
elements[0..valid_data_count].
DataElement
L’entrée atomique de la table. Doit être triée (x croissant, y décroissant, prix croissant) pour que la recherche binaire fonctionne.
Autorité et coffres-forts
Identique au AMM v4 :amm_authorityest une seule PDA à l’échelle du programme dérivée avec la graine["amm authority"]. Elle possède tous les coffres-forts de la pool et signe leurs mouvements.- Les coffres-forts sont des comptes SPL Token dont le propriétaire est
amm_authority, pas des ATA.
Masque de bits de statut
Identique au AMM v4. Contrôle si swap/depot/retrait/crank sont activés.Suivi des frais et du PnL
Identique au AMM v4. La structout_put suit :
need_take_pnl_coin,need_take_pnl_pc— frais de protocole accumulés mais non encore balayés.WithdrawPnlles déplace.swap_coin_in_amount,swap_pc_in_amount, etc. — compteurs d’analytique.
Taille du compte
LeModelDataInfo est volumineux (~1,2 Mo, puisque 50 000 éléments × 24 octets par élément). C’est pourquoi la création d’une pool Stable exige une pré-allocation explicite de loyer et de compte. Le SDK Raydium et les outils gèrent cela de manière transparente ; les intégrateurs n’ont rarement besoin d’allouer manuellement.
Dérivation des comptes à partir de zéro
Comme le AMM v4, le Stable AMM utilise des clés amorcées (pas des PDA pures). L’identité canonique de la pool est dérivée via :Où lire quoi
- Listes de comptes d’instruction :
products/stable/instructions. - Comment l’interpolation utilise la table :
products/stable/math. - Structure des frais et WithdrawPnl :
products/stable/fees. - Dérivation des comptes OpenBook : Documentation du programme OpenBook.


