Qu’est-ce qu’un AMM (automated market maker) ?
Au sein de la famille des échanges décentralisés, plusieurs mécanismes peuvent être mis en oeuvre. Les plus répandus ces derniers temps sont les Automated Market Makers (AMM). Utilisés par Uniswap, Balancer ou encore Curve, voyons ensemble comment ces derniers fonctionnent.
Historique des automated market makers
L’essor récent de la finance décentralisée a été rendu possible par deux types de service: d’un côté les services de prêts, et de l’autre les services d’échange.
En effet, il est primordial pour un écosystème qui se veut décentralisé de pouvoir permettre des échanges qui le sont également. L’objectif est simple : donner la possibilité aux utilisateurs d’échanger des cryptomonnaies en pair à pair, sans intermédiaire de confiance.
Pendant plusieurs années, des projets ont tenté de répliquer sur la blockchain le fonctionnement des plateformes de change classiques, telles que Coinbase ou Binance. Ainsi, nous avons vu émerger plusieurs plateformes d’échanges décentralisées basées sur des order books, comme EtherDelta.
Malheureusement, le manque de performance des blockchains actuelles ainsi que l’absence de market makers n’ont pas permis à ces solutions d’émerger et d’être adoptées.
En effet, les market makers sont des acteurs du marché, assurant que chaque ordre soit complété en apportant des liquidités propres, espérant profiter du spread (différence entre prix de vente et d’achat) sur un marché donné. Ce sont ces market makers qui permettent d’assurer la liquidité et l’utilisabilité d’un échange.
Or, dans le cas des échanges décentralisés basés sur des order books, ces acteurs n’étaient peu, ou pas, présents. C’est là qu’entrent en jeu les automated market makers.
Qu’est-ce qu’un automated market maker ?
Comme vous l’avez probablement deviné et comme leur nom l’indique, les automated market makers sont des programmes informatiques qui permettent de remplacer le travail des market makers.
Dans la pratique, les AMM permettent aux utilisateurs d’échanger (swap) des cryptomonnaies en pair à pair. Cependant dans ce cas, l’order book habituel y est remplacé par des liquidity pools, déposées sur des smart contracts.
Ces réserves de liquidités permettent aux utilisateurs de passer d’un jeton à l’autre, de manière entièrement décentralisée, tout en gardant le contrôle sur leurs fonds. Dans le même temps, les fournisseurs de liquidités sont incités à déposer des liquidités en contrepartie d’une portion des frais générés par les échanges.
Ainsi, les AMM sont basés sur des formules mathématiques, permettant d’estimer le taux de change entre deux actifs, en prenant également en compte les liquidités présentes sur le protocole. Une fois de plus, plusieurs méthodes existent, et disposent chacune de leurs avantages et inconvénients.
Market makers à fonction constante
Les market makers à fonction constante sont les plus répandus dans la famille des AMM. Ceux-ci sont notamment utilisés par Uniswap, le mastodonte des DEX sur Ethereum et la V1 de Bancor.
Ces derniers sont basés sur une fonction x*y=k
qui établie le prix pour une paire de jetons en fonction des liquidités disponibles.
Ainsi, lorsque la quantité de jetons x
augmente, celle de y
doit diminuer dans le but de garder la valeur de k
constante. Comme le montre la courbe ci-dessous, l’avantage de ce modèle est qu’il permet d’assurer qu’il y aura toujours de la liquidité. Cependant, au fur et à mesure que celle-ci diminue, les prix augmentent exponentiellement, ce phénomène s’appelle le slippage.
Maker makers à constante moyenne
Un autre type de formule a été introduit par les market makers à constante moyenne. Ces derniers permettent l’ajout d’un ou plusieurs autres actifs, en plus des deux actifs que l’on retrouve classiquement sur les plateformes de trading.
Dans ce cas, la formule pour trois actifs sera : (x*y*z)^(1/3)=k
. Celle-ci permet une exposition à plusieurs actifs différents et des échanges entre ces actifs.
Market makers à fonction constante hybrides
Une troisième famille d’AMM, appelé hybride, consiste à combiner plusieurs fonctions pour répondre à des problèmes bien précis. C’est notamment le cas de la formule de Curve, qui combine deux types de fonctions : les market makers à fonction constante ainsi que les market makers à somme constante.
Ceci permet de réduire le slippage sur une plage de trade, tout en l’accentuant dans le cas de larges trades. Ainsi, une majorité de trades auront un taux de change linéaire et seules les plus grandes quantités seront sujettes au slippage.
Limites des AMM
Comme toute technologie, les automated market makers ont leurs inconvénients. Le plus marquant et répandu réside dans les pertes provisoires, ou impermanent losses.
Ceci arrive lorsque l’un des deux actifs de la paire voit son cours augmenter, sans que le protocole ne le mette à jour. De ce fait, il y a toujours la même valeur de chaque côté de la balance, alors qu’en réalité, l’un des deux actifs a vu sa valeur augmenter. En pratique, des acteurs profitent de ce mécanisme pour faire de l’arbitrage au détriment des fournisseurs de liquidité.
En d’autres termes, les impermanent losses peuvent se résumer à la différence de valeur dans le temps entre le dépôt de jetons sur un AMM et la simple détention de ces jetons dans un portefeuille.
Certains protocoles, comme la version 2 de Bancor, tentent de mitiger ces pertes en recalculant dynamiquement la part de chacun des actifs, pour que la valeur de chaque côté de la balance soit toujours égale.
Bien qu’ils aient révolutionné l’écosystème DeFi et la manière dont nous échangeons les jetons, les automated market makers ont encore des défis à relever. Les expérimentations, comme la version 2 d’Uniswap ou celle de Bancor, nous laissent à penser que certains problèmes inhérents à ces protocoles seront mitigés avec le temps.