Cette page est traduite automatiquement par IA. La version anglaise fait foi.Voir la version anglaise →
Qu’est-ce qu’une courbe de liaison
Une courbe de liaison est une fonction de prix déterministep(s) qui relie le prix d’un jeton à la quantité actuellement en circulation (s pour « supply sold »). Les acheteurs font leurs achats en envoyant de la garantie au contrat ; le contrat émet de nouvelles unités de jetons au prix marginal dicté par la courbe. Les vendeurs retournent les unités de jetons et reçoivent le remboursement intégré.
Deux propriétés clés par rapport à un pool CPMM :
- Pas de contrepartie nécessaire. Le contrat émetteur est le teneur de marché ; la liquidité existe de jure.
- Prix monotone. Le prix augmente à chaque achat net et diminue à chaque vente nette.
Formules de tarification génériques
Pour toute fonction de prix continuep(s) :
Prix au comptant à l’offre s :
s_0 à s_1 (avec s_1 > s_0) :
P(s) = ∫ p(s) ds est la primitive de la courbe. Géométriquement, cost est l’aire sous p entre s_0 et s_1.
Produit de la vente de l’offre de s_1 à s_0 :
Familles de courbes courantes
Linéaire
Quadratique
p(s) = k · s², supprimez le S_max² : P(s) = (k/3) · s³. Choisissez une convention et tenez-vous-y — l’exemple détaillé ci-dessous utilise la forme normalisée partout.)
Le prix augmente quadratiquement. Les premiers acheteurs obtiennent un prix proche de zéro (région de démarrage plate) ; les derniers acheteurs paient une prime plus raide.
LaunchLab n’implémente pas de courbe de prix quadratique. Ses trois types de courbe sont
0 = ConstantProduct (le type par défaut), 1 = FixedPrice et 2 = LinearPrice. La forme la plus
proche de cette section est LinearPrice, dont le prix est p(s) = a·s et dont le coût est donc
quadratique. Cette section est conservée comme traitement général d’une courbe polynomiale.CPMM à réserves virtuelles (style Pump)
La courbe est un CPMM standard avec une réserve de devis imaginaire initialeV_q :
s_0 à s_1 :
s = S_graduate), le prix marginal égale le prix d’ouverture du pool CPMM en aval amorcé avec les réserves (S_max − S_graduate, V_q + cost(0, S_graduate)). La transition est transparente. LaunchLab l’expose en tant que curve_type = 0 (ConstantProduct) — le type par défaut, et le seul type disposant de configurations actives à ce jour.
Implémentation discrète
Sur la chaîne,s et cost sont tous deux des entiers (unités de plus petite dénomination). L’intégrale continue cost(s_0, s_1) est calculée directement à partir de la forme fermée chaque fois qu’elle existe (linéaire, quadratique). Pour les courbes sans inverse en forme fermée (quadratique, étant donné cost, trouvez s_1), l’itération de Newton est utilisée :
Il s’agit de la recette numérique générale, pas de l’implémentation de LaunchLab. LaunchLab n’a
aucun solveur de Newton et aucune erreur
NotConverged — aucune de ses trois courbes n’en a
besoin. La courbe à produit constant s’inverse sous forme fermée, la courbe à prix fixe est une
division, et le coût quadratique de la courbe à prix linéaire s’inverse avec une racine carrée.
Même le cas du prix quadratique ci-dessus admet la forme fermée exacte
s₁ = ∛(s₀³ + 3·cost/k), qui est ce que l’extrait utilise comme initialiseur.Intégration des frais
Les frais sont appliqués en plus du coût de la courbe, pas à l’intérieur. À l’achat :quote_vault et rend effectivement la courbe plus raide pour les acheteurs ultérieurs — la réserve augmente sans émettre plus d’offre. Les portions de protocole et de créateur sont suivies dans des compteurs séparés pour un balayage ultérieur.
Seuil de graduation
Une courbe « se diplôme » quand elle a reçu suffisamment de garantie pour amorcer un pool AMM externe à un prix correspondant au prix de courbe actuel. Pour une courbe quadratique avec les paramètres(k, S_max, S_graduate) :
quote_vault ≥ quote_to_graduate, l’instruction Graduate crée un pool CPMM avec :
p(S_graduate) d’un facteur fixe (voir l’exemple détaillé). Seule la courbe à produit constant / réserves virtuelles — celle que LaunchLab exécute réellement — est continue en prix lors de la transition.
Impermanence vs un pool CPMM
Un lancement de courbe de liaison pure n’a aucune impermanence au sens Uniswap : il n’y a pas d’« autre côté » du marché à rééquilibrer. La courbe émet l’offre à la demande, et le seul « LP » est le contrat lui-même. Après la graduation, le pool CPMM résultant se comporte comme n’importe quel autre pool CPMM — si le LP n’a pas été brûlé, il est sujet aux dynamiques habituelles de perte impermanente. C’est pourquoi la politique de brûlage post-graduation est dominante dans les lancements publics : elle maintient le pool permanent et élimine les chocs de prix entraînés par les retraits de LP.Exemple concret
Courbe : quadratique,k = 40, S_max = 1e9, S_graduate = 0.8 · S_max = 8e8. Frais d’achat 1 %.
Prix à s = 5e8
Coût du premier achat de 1e6 base
Seuil de graduation
Prix à la graduation
Réserves CPMM post-graduation
Pointeurs
/fr/products/launchlab/bonding-curve— l’implémentation sur la chaîne de LaunchLab de ces formules./fr/products/launchlab/instructions— spécifications au niveau des comptes pourBuy,Sell,Graduate./fr/algorithms/constant-product— ce que le CPMM post-graduation fait avec les réserves.
- Code source du programme Raydium LaunchLab (implémentations de courbes quadratiques + réserves virtuelles).
- Document technique Bancor (courbes de liaison linéaires, historique).
- Post-mortems publics Pump.fun (variante à réserves virtuelles).

