
Slippage et price impact, expliqués
Vous voyez une cotation : 1 ETH pour 3 200 USDC. Vous confirmez le swap. Quelques secondes plus tard, la transaction se règle et vous recevez 3 187 USDC à la place. Personne ne vous a piraté, personne n’a déplacé les poteaux : vous venez simplement de rencontrer deux des mécaniques les plus mal comprises du trading on-chain — le price impact (impact sur le prix) et le slippage (écart entre prix attendu et prix d’exécution).
Cet article décortique les deux pour les utilisateurs en autocustody. À la fin, vous saurez pourquoi le chiffre que vous avez vu n’est pas toujours celui que vous obtenez, ce que fait réellement le réglage "slippage tolerance", et comment y penser lorsque vous swappez depuis SSP Wallet ou depuis un dApp.
Pourquoi une cotation n’est qu’une cotation
La plupart des swaps on-chain ne passent pas par un carnet d’ordres traditionnel. Ils passent par un Automated Market Maker (AMM) : un smart contract qui détient deux actifs dans une liquidity pool et les valorise via une formule. La plus courante est la règle du produit constant, généralement écrite x * y = k :
xest la quantité du token A dans le pool.yest la quantité du token B.kest une constante que le pool s’efforce de préserver.
Lorsque vous échangez le token A contre le token B, vous déséquilibrez le rapport entre x et y. Le pool repondère automatiquement pour que k reste approximativement constant. Ce repondérage est la source du price impact.
Une cotation est un instantané de l’état du pool à un moment donné. Quand votre transaction est minée, le pool a souvent déjà changé : d’autres swaps l’ont touché, des blocs sont passés, et votre propre opération s’apprête à le pousser encore un peu. Le chiffre que vous avez vu était honnête. Il n’était simplement pas une promesse.
Price impact : le coût de votre propre trade
Le price impact est la variation de prix causée par votre seul trade, en supposant que rien d’autre ne change entre la cotation et l’exécution. Il est mécanique, prévisible, et entièrement fonction de la profondeur du pool.
Une expérience de pensée. Imaginez un pool ETH/USDC avec 100 ETH et 320 000 USDC. Le prix marginal tourne autour de 3 200 USDC par ETH. Maintenant :
- Échangez 1 ETH. Vous prélevez une part minuscule des réserves du pool. Le nouveau prix bouge à peine. Vous recevez près de 3 200 USDC, moins les frais du pool. Price impact faible — peut-être quelques points de base.
- Échangez 10 ETH. Vous avez bougé le rapport de façon notable. Le prix moyen réellement obtenu s’établit bien en dessous de 3 200 USDC par ETH. Le price impact est déjà de plusieurs points de pourcentage.
- Échangez 50 ETH. Vous consommez un tiers de la liquidité du pool. Le prix d’exécution s’effondre. Le price impact peut atteindre des dizaines de pourcents.
La leçon : un trade plus gros par rapport à la profondeur du pool, c’est plus de price impact. Doubler la taille du trade fait plus que doubler son coût, parce que chaque unité supplémentaire se heurte à une courbe pire. Les wallets et agrégateurs affichent généralement ce paramètre en pourcentage sur l’écran de swap. Au-delà de quelques pourcents, considérez-le comme un avertissement et non comme une note de bas de page.
Le price impact n’est pas une commission versée à quelqu’un en particulier : c’est le coût d’être votre propre contrepartie face à une courbe.
Slippage : l’écart entre cotation et exécution
Le slippage est la différence entre le prix que vous attendiez et le prix auquel votre swap s’est effectivement exécuté. Il inclut le price impact, mais aussi tout ce qui se passe entre l’instant où vous voyez la cotation et celui où la transaction atterrit on-chain :
- D’autres trades touchant le même pool. Toute personne qui swappe dans le même bloc, ou dans les blocs entre votre cotation et votre confirmation, modifie l’état du pool.
- Le temps entre la cotation et l’exécution. Quelques secondes suffisent à faire dériver le pool, surtout sur des actifs volatils.
- Votre propre price impact. Comme évoqué plus haut : le trade lui-même déplace le prix contre lequel il sera exécuté.
- MEV. Des searchers peuvent encadrer (sandwich) un swap en attente en tradant juste avant et juste après. Nous creusons cela dans MEV, frontrunning et attaques sandwich.
Le price impact, vous pouvez le modéliser. Le slippage, c’est ce qui s’est réellement passé.
Le réglage de slippage tolerance
Comme le réseau ne peut pas garantir le prix exact entre cotation et exécution, les interfaces de swap vous laissent fixer une slippage tolerance : la déviation maximale acceptable par rapport au prix coté. Si l’exécution réelle est pire que cotation - tolérance, le smart contract reverte le swap.
Cela paraît propre, mais c’est un vrai compromis :
- Trop basse. La transaction reverte parce que le pool a dépassé votre limite. Le revert coûte quand même du gas : vous payez la tentative ratée et repartez les mains vides. Les jours mouvementés sur des actifs volatils, vous pouvez enchaîner plusieurs swaps ratés avant qu’un seul aboutisse.
- Trop haute. La transaction passe presque dans tous les cas, y compris ceux où des bots MEV ont volontairement déplacé le prix contre vous. 5% de tolérance sur un token populaire, c’est feu vert pour les sandwich attacks. Vous recevez le pire prix que votre tolérance autorise.
Il n’existe pas de chiffre universellement correct. 0,1% sur une paire de stablecoins profonde est raisonnable. Le même chiffre sur un token mince en pleine actualité, c’est un revert garanti. La démarche pragmatique : commencer petit et ajuster — si le swap reverte, montez la tolérance d’un cran ; si vous vous faites sandwich, baissez-la et envisagez un autre venue ou des morceaux plus petits.
Comment cela se présente depuis SSP
SSP propose deux chemins pour swapper, et chacun vous expose au slippage différemment :
- L’agrégateur intégré au wallet (la surface buy/sell/swap dans SSP). L’agrégateur choisit une route entre plusieurs venues et vous présente une cotation de sortie unique. L’essentiel du slippage au niveau de la route est géré à l’intérieur de ce flux ; vous confirmez ou annulez sur la base du chiffre final affiché. Nous avons couvert l’UX global de ces parcours dans swapper de la crypto depuis SSP.
- Un swap en dApp via WalletConnect. Lorsque vous connectez SSP directement à un DEX, l’interface de swap appartient au dApp, y compris le réglage de slippage tolerance. Vous fixez le chiffre, vous en assumez les conséquences. SSP se contente de co-signer la transaction que le dApp demande, une fois que vous l’approuvez dans l’extension et la confirmez sur SSP Key. Lisez attentivement l’écran de swap du dApp.
La nature multisig 2-de-2 de SSP ne change pas les maths d’un AMM, mais elle implique que chaque swap doit être confirmé sur deux appareils. Cela ajoute quelques secondes entre « j’ai cliqué sur confirmer » et « la tx est arrivée dans le mempool » — une raison de plus pour que la cotation et l’exécution finale ne coïncident pas toujours.
Conseils pratiques
Une checklist courte qui tient sur la plupart des chaînes et DEX :
- Testez petit d’abord. Avant de swapper une grosse position, envoyez une petite somme via la même route. Si le price impact est déjà inquiétant sur un petit trade, le gros sera bien pire.
- Surveillez le pourcentage de price impact. Si votre wallet l’affiche, considérez tout dépassement de 1–2% comme un signal rouge pour des trades de taille normale. Les agrégateurs et les pools plus profonds règlent généralement ça.
- Regardez le coût final, pas seulement le taux. Les frais de gas sur Ethereum s’ajoutent au price impact et au slippage. Nous avons traité la mécanique des frais dans les frais de gas sur Ethereum, expliqués pour les utilisateurs en autocustody. EIP-1559 implique que les frais que vous payez peuvent bouger entre la signature et l’atterrissage du bloc — encore une raison pour « le prix a bougé pendant que je confirmais ».
- Privilégiez les pools profonds. La liquidité est l’amie du price impact. Une paire avec 50 M$ de liquidité absorbe votre trade bien mieux qu’une avec 500 k$.
- Fixez la tolérance avec intention. N’acceptez pas la valeur par défaut à l’aveugle. Ne la poussez pas à 5% juste pour faire passer un swap raté — cet échec vous dit souvent quelque chose.
- Si vous vous faites sandwich à répétition, changez de route. Des morceaux plus petits, un autre agrégateur ou un RPC sensible au MEV peuvent changer la donne.
L’essentiel
Le price impact est la mathématique inéluctable de l’échange contre un pool : il croît avec la taille du trade et décroît avec la liquidité. Le slippage est la réalité brouillonne de l’exécution dans un mempool public où d’autres transactions, le temps et votre propre trade déplacent le prix. Votre slippage tolerance est le levier qui décide si votre tx est plus probablement reverte ou plus probablement sandwich. Utilisez-le délibérément.
Quand vous swappez dans SSP, la même physique s’applique que vous passiez par l’agrégateur intégré ou par un dApp via WalletConnect. La différence, c’est qui fixe la tolérance — et une fois que vous comprenez ce que vous fixez, vous pouvez tenir les deux options sans surprise.


