Swaps sur DEX : impact sur le prix, slippage et MEV
Découvrez comment la profondeur d’un pool détermine l’impact attendu, comment un minimum reçu encadre un swap en attente et pourquoi une tolérance large peut accepter une exécution moins favorable.
Dans ce guideImpact sur le prix, slippage et tolérance répondent à des questions différentes
Bref résumé
Une cotation DEX peut changer pour deux raisons : le swap lui-même déplace le prix du pool, ou d’autres opérations le font avant l’exécution de votre transaction. L’impact sur le prix décrit le premier effet ; le slippage est l’écart entre la cotation et l’exécution finale. La tolérance de slippage fixe une limite, mais ne promet pas un meilleur prix.
Impact sur le prix, slippage et tolérance répondent à des questions différentes
L’impact sur le prix vient du fait que votre ordre représente une part importante de la liquidité disponible et déplace directement le prix du pool. Une cotation réaliste tient déjà compte de cet effet : un gros ordre obtient un prix moyen moins favorable qu’un petit ordre dans un pool peu profond. Le slippage désigne l’écart entre la quantité attendue lors de la création de la cotation et le résultat au moment où la transaction s’exécute. D’autres swaps, un mouvement du marché, un délai ou un changement de route peuvent modifier le résultat pendant l’attente.
La tolérance de slippage est une condition que le swap doit respecter. Pour un swap à entrée exacte, elle s’exprime souvent comme un minimum reçu ; si l’exécution passe sous ce seuil, le contrat peut revenir en arrière. Elle n’efface pas l’impact déjà intégré à la cotation et ne prédit pas l’ampleur du slippage. Le guide d’Uniswap sur l’impact sur le prix et le slippage distingue également ces notions. Les interfaces peuvent employer des calculs ou des libellés différents.
Pourquoi une cotation AMM se dégrade quand la taille de l’ordre augmente
Une plateforme à carnet d’ordres apparie des ordres en attente à différents prix. Un teneur de marché automatisé à produit constant calcule plutôt le swap à partir des réserves du pool. Dans un modèle simplifié à deux jetons, x × y = k. Acheter davantage d’un jeton en retire davantage du pool et y fait entrer l’autre ; le taux d’échange évolue donc au cours de l’opération. Plus l’ordre est grand par rapport à la profondeur utilisable, moins son prix moyen est favorable.
Cette formule est un modèle, pas une règle universelle pour tous les DEX. La documentation développeur d’Uniswap décrit la structure à produit constant de v2 et la distingue de la liquidité concentrée dans des plages de prix de v3 et v4, qui peuvent aussi prévoir des hooks et des règles de frais différentes. Une cotation peut agréger plusieurs pools ou plateformes. Comparez le résultat attendu pour cette taille et cette route précises plutôt que le dernier prix du graphique ou la valeur totale déposée dans le pool. La documentation des swaps Uniswap v2 détaille ce mécanisme.

Exemple chiffré : 10 000 USDC contre un pool peu profond
Supposons qu’un pool théorique contienne 100 ETH et 200 000 USDC, sans frais de swap ni variation externe du prix, et suive une courbe à produit constant. Le ratio initial est de 200 000 ÷ 100 = 2 000 USDC par ETH. Une entrée de 10 000 USDC porte la réserve d’USDC à 210 000. Pour conserver le produit, la réserve d’ETH tombe à 20 000 000 ÷ 210 000, soit environ 95,238095 ETH. L’utilisateur reçoit environ 4,761905 ETH.
Au ratio initial, 10 000 USDC auraient acheté 5 ETH. L’écart de 0,238095 ETH représente environ 4,76 % de cette quantité sans impact. Le prix moyen d’exécution est de 10 000 ÷ 4,761905 = 2 100 USDC par ETH, soit 5 % de plus que le ratio avant le swap. Le prix marginal du pool après l’opération est de 210 000 ÷ 95,238095 = 2 205 USDC par ETH. L’écart de quantité, le prix moyen et le nouveau prix marginal sont des comparaisons différentes. Une cotation réelle inclut aussi les frais et la forme de la liquidité sur la route. Cet exemple hypothétique n’est pas une prévision de marché.
Pour comparer séparément les effets, supposons des frais de pool de 0,30 % sur l’entrée, propres à ce modèle ; ce n’est pas un taux universel sur les DEX. La courbe utilise une entrée après frais de 10 000 × (1 − 0,003) = 9 970 USDC. La même formule à entrée exacte donne 100 × 9 970 ÷ (200 000 + 9 970) ≈ 4,748297 ETH. Par rapport au résultat de la courbe sans frais, 4,761905 ETH, les frais réduisent la sortie d’environ 0,013607 ETH. Par rapport aux 5 ETH au ratio initial, le manque total est d’environ 0,251703 ETH, soit 5,0341 %. L’effet de la courbe et les frais ne s’additionnent pas simplement en 4,7619 % + 0,30 %, car les frais réduisent l’entrée avant le calcul de la courbe. La bibliothèque periphery d’Uniswap v2 applique un facteur de 997/1000 dans son calcul à entrée exacte ; d’autres pools peuvent avoir d’autres règles de frais.
Isoler les frais du pool de l’effet de la courbe
Conservons les mêmes réserves hypothétiques, mais supposons des frais de 0,30 % prélevés sur l’entrée selon une convention précise. Le montant utilisé dans le calcul à produit constant est 10 000 × (1 − 0,003) = 9 970 USDC. La sortie vaut donc 100 × 9 970 ÷ (200 000 + 9 970), soit environ 4,748297 ETH. C’est environ 0,013607 ETH de moins que les 4,761905 ETH obtenus sans frais sur la même courbe. Par rapport aux 5 ETH au taux initial, l’écart total est d’environ 0,251703 ETH. En prenant le résultat sans frais comme étape intermédiaire, on attribue environ 0,238095 ETH à la courbe et 0,013607 ETH supplémentaires à l’ajustement des frais. Cette répartition dépend du point de comparaison.
Les 0,30 % sont une hypothèse, pas un taux universel pour les DEX. Cet ajustement de l’entrée suit le calcul des frais de la bibliothèque getAmountOut d’Uniswap v2. Le contrat inscrit toutefois l’entrée complète dans ses réserves : utiliser 9 970 USDC comme entrée effective du calcul ne signifie pas que cette seule somme atteint le pool. D’autres pools peuvent appliquer un autre taux, prélever les frais sur une autre base ou combiner plusieurs frais. Un itinéraire à plusieurs étapes peut facturer chaque pool, en plus des frais d’interface et du réseau. Vérifiez l’itinéraire réel et son détail des frais au lieu de généraliser ce pourcentage.
Le minimum reçu est une limite, pas le résultat coté
Supposons qu’une route cote 4,7619 ETH pour la même entrée et que l’interface applique une tolérance de 1 %. Le minimum reçu est alors d’environ 4,7143 ETH : 4,7619 × (1 − 0,01). Une exécution à 4,72 ETH respecte la limite ; à 4,70 ETH, elle passe sous le seuil et le swap peut revenir en arrière selon la protection de cette route. La cotation reste de 4,7619 ETH. Le minimum est seulement le résultat le moins favorable que la transaction envoyée accepte.
Une limite plus serrée peut faire échouer un échange valide si le marché bouge pendant une congestion ou si la cotation devient obsolète. Une limite plus large peut accepter un résultat moins bon avant de rejeter la transaction. La documentation développeur d’Uniswap décrit le minimum de sortie comme une condition de protection, mais les paramètres et l’échec dépendent du routeur ou du produit. Une transaction incluse puis annulée peut tout de même entraîner des frais réseau selon la chaîne et le parcours. N’augmentez pas la tolérance uniquement pour faire disparaître une erreur : vérifiez d’abord si la cotation, le jeton, la route, les frais ou les conditions réseau ont changé.
L’attente ajoute des mouvements absents de la cotation
Entre la signature et l’inclusion dans un bloc, d’autres swaps peuvent modifier les réserves. L’arbitrage peut rapprocher le prix d’un pool de ceux d’autres marchés ; un mouvement rapide peut aussi rendre l’ancienne cotation irréaliste. Votre ordre ne change pas, mais sa quantité finale peut varier. Une offre de gas plus élevée peut influencer la priorité sur certaines chaînes sans garantir le moment d’exécution ni le prix. Une échéance peut rejeter une transaction en attente depuis trop longtemps ; elle ne préserve pas l’ancienne cotation.
Séparez l’estimation faite lors de la cotation du reçu final. L’impact sur le prix est l’effet attendu de votre ordre sur la liquidité de la route. La variation supplémentaire après la cotation est le slippage d’exécution selon la référence utilisée par l’interface. Certaines interfaces regroupent les deux dans un avertissement ou utilisent un autre point de comparaison. Pour rapprocher les résultats ensuite, notez avant de signer la cotation, l’heure, la route et le minimum reçu.
Une tolérance large peut servir à un sandwich MEV
Un sandwich est une forme de valeur maximale extractible (MEV). Un chercheur surveille un swap en attente, passe un ordre avant lui pour déplacer le prix du pool contre l’utilisateur, laisse le swap de celui-ci s’exécuter, puis passe un ordre inverse pour déboucler sa position. L’utilisateur peut recevoir plus que le minimum indiqué tout en obtenant un prix moins favorable que la cotation initiale. Une limite de sortie serrée peut faire échouer certaines exécutions défavorables, mais elle n’empêche pas toutes les stratégies d’ordonnancement ni les mouvements ordinaires du marché.
Le guide MEV d’Ethereum.org décrit l’ordonnancement en sandwich et les exécutions moins favorables pour les personnes concernées. Tout MEV n’est pas une attaque : l’arbitrage peut aligner les prix d’un pool sur ceux d’autres marchés, tandis qu’un sandwich dégrade l’exécution de l’utilisateur. Des routes privées comme Flashbots Protect décrivent leurs propres protections et conditions. Elles dépendent de la chaîne et du fournisseur, ne garantissent pas un prix précis et ajoutent une dépendance à un autre chemin de transaction. Vérifiez les réseaux et conditions actuellement pris en charge.
Frais, comportement du jeton et route modifient le résultat total
La quantité de jetons reçue n’est pas le coût total d’un swap. Distinguez les frais du pool, les éventuels frais de l’interface, le coût réseau, l’impact sur le prix déjà intégré à la cotation, le slippage d’exécution et les frais de transfert ou d’achat/vente propres au jeton. Certains jetons ont un comportement de transfert non standard : un swap peut échouer ou transférer une quantité différente de celle prévue par l’hypothèse ERC-20 ordinaire. L’approbation du jeton peut être une transaction séparée avec son propre coût réseau.
Un agrégateur peut répartir un swap entre plusieurs pools ou utiliser des jetons intermédiaires pour améliorer la quantité cotée. Cela peut réduire l’impact d’une route tout en ajoutant des appels de contrats, des frais ou des risques propres aux jetons. Une cotation ne garantit pas la meilleure exécution sur toutes les plateformes. Comparez l’entrée exacte, la sortie attendue, le minimum reçu, le chemin des pools, les frais, le réseau et l’échéance. Pour poursuivre, consultez les guides sur les autorisations de jetons, les frais de gas Ethereum et les bridges et jetons encapsulés.
Vérifiez la cotation avant de signer, puis rapprochez le reçu
Avant de signer, vérifiez le réseau et les adresses des contrats de jetons, la quantité d’entrée, la route et la profondeur du pool, l’impact affiché, la sortie attendue et le minimum reçu, le réglage de slippage, l’échéance, les frais du pool, de l’interface et du réseau, ainsi que les avertissements sur le jeton. Si la sortie semble anormalement faible, comparez une entrée hypothétique plus petite ou une autre route. Si la transaction échoue, examinez la raison avant de la soumettre à nouveau. Un essai infructueux peut quand même entraîner des frais réseau selon la chaîne et le parcours.
Après l’exécution, comparez les quantités de jetons réellement indiquées dans le reçu à la cotation et au minimum reçu. Notez la route, les frais, le coût réseau et l’heure. Ne confondez pas le minimum avec la sortie attendue et ne supposez pas qu’une transaction réussie a écarté toutes les exécutions défavorables. Le calcul de cet article utilise un pool à produit constant sans frais. La liquidité concentrée, les routes à plusieurs étapes, les taxes sur les jetons, les prix d’oracle et l’ordre des transactions propres à chaque chaîne peuvent produire d’autres résultats.
Distinguez les protections à entrée fixe et à sortie fixe
Dans l’exemple précédent, l’entrée est fixée à 10 000 USDC et un minimum d’ETH reçu est défini. L’entrée ne change pas ; si le résultat passe sous la limite, l’exécution peut être rejetée. Pour un swap à sortie fixe, vous indiquez d’abord la quantité d’ETH souhaitée. Les USDC nécessaires peuvent alors dépasser l’estimation, et une entrée maximale est souvent définie. La documentation d’Uniswap distingue le minimum de sortie pour une entrée fixe du maximum d’entrée pour une sortie fixe.
Une indication de 1 % ne protège donc pas la même quantité dans tous les swaps. Vérifiez si l’entrée ou la sortie est fixée, quel jeton sert de référence à la limite inférieure ou supérieure, et si l’agrégateur a intégré la route et les frais à la cotation. Le minimum reçu est une condition exprimée en unités de jeton, pas une garantie de valeur en dollars. Si le prix du jeton reçu baisse en même temps, sa valeur en dollars peut changer même si le minimum est respecté. La réussite du swap ne signifie pas que le prix coté a été garanti.
Questions fréquentes
Q1L’impact sur le prix et le slippage sont-ils identiques ?
Non. L’impact vient de votre ordre par rapport à la liquidité du pool. Le slippage est l’écart entre la cotation et l’exécution finale selon la référence de l’interface.
Q2Une tolérance de slippage de 1 % signifie-t-elle que je perdrai 1 % ?
Non. Elle définit généralement une limite d’exécution par rapport à une cotation. Le résultat peut être meilleur, le swap peut revenir en arrière ou l’exécution peut être proche de la limite autorisée.
Q3Une tolérance plus serrée arrête-t-elle les attaques sandwich ?
Elle peut réduire les résultats acceptés par la transaction, mais elle n’élimine ni le MEV ni les mouvements normaux du marché. Les routes privées ont également leurs propres conditions et limites.
Sources et lectures complémentaires
Signaler un problème
Nous préparons un e-mail avec le lien de cet article. Mark ne reçoit le signalement qu’après son envoi
Vérification rapide
Guide terminé ? Vérifiez vos acquis avec 3 questions
Question 01
Que mesure l’impact sur le prix d’un swap AMM ?
Choisissez une réponse pour voir l'explication