Live Rollup : DeFi France 14/01/2023
Source : https://www.youtube.com/watch?v=YgQrekNOYY4
Objectifs du Live
2 heures pour comprendre les mécanismes fondamentaux qui structurent la liquidité en DeFi car cette dernière en est l’alpha et l’oméga :
- Echange de tokens ⇒ Liquidité
- Prêts et emprunts ⇒ Liquidité
- Tokenisation ⇒ Liquidité
L’idée générale est de comprendre ce qu’est une pool de liquidité, leurs modèles et leurs services construits par-dessus
Avec ce live, on devrait avoir tous les éléments pour évaluer de façon exhaustive un protocole DeFi
Qu'est-ce qu'un marché ?
La réponse à cette question a changée depuis qu’on a fait le passage de la finance classique à la DeFi
Order Book (Bid/Ask)
Concrètement, un marché dans la finance classique est structuré par ce qu’on appelle un carnet d’ordre ou “Order Book”
Avantages
- C’est le modèle considéré comme le plus efficace pour structurer la liquidité
- Découverte de prix efficace du moment qu’il y a assez de demande
Inconvénients
- Qui dit carnet d’ordres dit forcément “centralisation” de la liquidité pour recevoir et exécuter les ordres de tout le monde
- Dans un carnet d’ordre, la quantité d’actifs qu’on souhaite acheter est limitée par les ordres disponibles à un prix donné
Exemple : le carnet d’ordre affiche 5 000 BTC à 20 000$ ⇒ je peux acheter 5 000 BTC maximum pour ce prix. Si j’en souhaite plus, je dois accepter de payer plus cher
A l’heure actuelle, il n’existe pas de solution satisfaisante pour créer un order book de façon décentralisée et trustless (le sujet est déjà exploré par différents projets)
⇒ Tous les order book traitant des volumes en milliards sont centralisés
Automated Market Maker (AMM)
L’arrivée de Uniswap en 2018 a fait naître un nouvelle structure de marché qui n’existait pas dans l’histoire de la finance classique : les pools de liquidité ou “Liquidity Pools”
Avantages
- La Disponibilité. Comme l’équilibre de tokens est toujours maintenu, il y aura toujours de la liquidité disponible pour pouvoir échanger peu importe le prix.
- Bénéfices inhérents à la blockchain, à savoir la transparence, l’historicité des transactions et la résistance à la censure
Inconvénients
- Cette disponibilité est possible seulement dans la limite des liquidités disponibles dans la pool concernée. Sur l’image en haut, le Price Impact fait perdre 76% du capital par manque de liquidité
L’Impermanent Loss (IL)
L’Impermanent Loss est la différence de valeur entre la détention d'un ensemble d'actifs et la fourniture de liquidités pour ces mêmes actifs
Exemple : deux utilisateurs ont chacun 1 ETH (à 1 000$) et 1 000$ d’USDC
- Monsieur A les garde tels quels
- Monsieur B les dépose sur une pool de liquidité
Au bout d’un moment, l’ETH passe à 2 000$ :
- Monsieur A possède 3 000$
- Monsieur B possède 2 828.4$
⇒ Monsieur B subirait 171.6$ de IL s’il retirait ses liquidités à ce moment
Lorsque le prix de l’ETH change, la pool de liquidité doit conserver le ratio d’équilibre. Ce faisant, plus l’écart de prix est grand, plus il y a d’ETH vendus par la pool et plus Monsieur B perd de l’argent
Cette perte n’est réalisée qu’au moment où les liquidités sont retirées
Le meilleur outil pour analyser ses positions en tant que fournisseur de liquidité est revert.finance
It’s a feature, not a bug
Il ne peut pas y avoir d’échange de pair à pair sans Impermanent Loss. L’IL peut être contrôlée, mais il semble vain de l’éradiquer complètement
Il existe des DEXs comme Bancor qui se sont fixés comme objectif d’éradiquer le risque d’IL, mais le système de Bancor s’est retourné contre lui
⇒ Le système protégeait des variations de marché dans la limite de ce que le BNT pouvait contenir. Passée cette limite, le système devenait insolvable
On peut subir l’IL avec le sourire
Dans le cas où on aurait un token peu liquide que l’on veut vendre, on peut mettre en place une pool sur Uniswap V3
⇒ Les profits réalisés en vendant le token surpassent largement les IL subies
Uniswap VS Curve
Modèles de collecte et de redistribution des frais
Uniswap
Le protocole ne tire aucun revenu des échanges réalisés sur le protocole (le fee switch n’est pas activé), tout est distribué aux fournisseurs de liquidités dits “LP”
Curve
Token terminal n’est pas fiable pour déterminer la répartition réelle des frais sur Curve, mais il y a des revenus à la fois pour le protocole et pour les LP :
- 50% des fees vont aux LP
- Les 50% des fees restants sont distribués aux veCRV en circulation
Uniswap v2 VS Stableswap
Ces deux modèles sont les deux extrêmes des structures de liquidités existantes
Uniswap
Uniswap opte pour la disponibilité maximale de la liquidité, mais l’inconvénient est l’efficacité minimale par rapport au capital mobilisé
Il y aura toujours un prix d’échange pour une paire donnée, à condition que le Price Impact ne soit pas trop dissuasif
Curve
Curve représente l’inverse : une efficacité maximale du capital déployé, mais une disponibilité minimale
Ce sera la structure la plus efficace si le ratio de la paire d’échange se trouve entre 0.99 et 1.01, mais dès le moment où un token est à 1.03, la liquidité disponible pour tous les tokens devient pourrie
Le modèle Uniswap v2 est donc particulièrement adapté aux tokens volatils, et le modèle Stableswap est adapté aux assets corrélés entre eux (stablecoins, ETH stakés, liquid wrappers…)
Actifs corrélés ⇒ Stableswap…Dans la limite du raisonnable
cvxCRV
Le cvxCRV est un système à sens unique : c’est impossible pour Convex de débloquer ses CRV bloqués pendant 4 ans
Un cvxCRV fait partie de Convex et ne peut plus en sortir, alors que le CRV nous donne le choix de faire ce qu’on veut avec
On sait que 1 cvxCRV = 1 CRV au maximum, mais ce sera forcément moins car un cvxCRV a plus de restrictions
Pour 100 000 cvxCRV, on n’obtient que 89 000 CRV. Le Stableswap n’est donc pas aussi efficace qu’il devrait être
⇒ Pour une pool cvxCRV/CRV, la meilleure solution aurait été une pool Uniswap V3 entre 0.15 et 0.99 CRV
Liquity
Le LUSD oscille entre 1.02 et 1.06, cet intervalle est trop important pour que le Stableswap soit le modèle le plus adapté
Mais la pool sur Curve a d’autres intérêts :
- Liquidité contre 3 stables différents
- Maintien de la pool avec la puissance de Liquity
⇒ Le Stableswap n’est pas la meilleure solution pour le LUSD, mais Curve apporte tellement d’utilité à Liquity que son utilisation reste intéressante
Balancer
Balancer représente un compromis entre les deux extrêmes que sont Uniswap et Curve (explications plus en détails ici) via un certain nombres de features :
Pool à actifs multiples
Une pool Balancer peut être composé de n’importe quel nombre d’actifs allant de deux à huit, ce qui permet des nouveaux types de pools :
- wBTC/USDC/wETH comme la pool 3Crypto de Curve
- Des pools à 6-8 actifs faisant office d’indices de token
Pondération des pools
Sur Balancer, plus besoin d’avoir une répartition à 50/50 pour fournir des liquidités, ce qui permet de faire des distributions très utiles pour certaines situations :
- Une pool CNC/DAI/ETH à 50/25/25 pour maximiser la liquidité du CNC contre DAI et ETH en même temps
- Une pool à 98/2, les 98% étant consacrés à un actif sûr (stablecoin, ETH…) pour lancer un nouveau token avec un risque minimum d’Impermanent Loss
- Les pools 80/20 sont souvent utilisées (notamment par Aave) car elle permet aux détenteurs de tokens de participer à des activités de fourniture de liquidité avec des risques d’IL minimisés si le token devait s’apprécier.
Liquidity Bootstrapping Pools (LBPs)
Ces pools sont particulièrement adaptées au lancement de tokens et au développement de leur liquidité en même temps :
- Ils permettent de rationaliser le flux de tokens de la mise sur le marché
- la LBP agit comme un mécanisme de découverte de prix
Boosted Pools
Selon Brice, c’est “une pool de pools”
Dans le cas du BBAUSD (Balancer Boosted Aave USD), c’est une pool composée en 2 parties :
- Une partie de ses liquidités sous forme native nécessaire pour assurer les besoins de la pool
- L’autre partie non nécessaire est envoyée sur Aave pour avoir du rendement
⇒ On obtient un rendement boosté
Plateformes d’emprunts
ETHLend
En 2018, il y avait une plateforme de prêts et d’emprunts nommée ETHLend qui deviendra Aave par la suite :
C’était un système de lending pair-à-pair sans pool, donc un “order book” pour les prêts
L’expérience utilisateur n’était pas folle :
- Il fallait trouver soi-même la meilleure offre
- Nécessité de créer une offre pour notre besoin quand il n’y a pas la demande adéquate (au risque de ne jamais trouver de demande)
⇒ On a des problèmes similaires aux NFTs
Mise en place des pools
C’est avec Compound qu’a été initié le modèle de pool de liquidité pour les emprunts décentralisés, puis Aave s’est approprié le marché en améliorant considérablement la formule de Compound
Le système de pool implique la “mutualisation” des liquidités : donner un DAI dans une pool signifie prêter des fractions de ce DAI à tous les enprunteurs de DAI sur Aave
Avec les pools de liquidité, le système de prêts et d’emprunts est devenu beaucoup plus scalable, car beaucoup plus disponible : il n’y a plus besoin d’attendre une contrepartie
Taux d’intérêts
Dans les DEXs, les fournisseurs de liquidités sont incités financièrement par les frais de swap
Dans les plateformes de Lending, l’incitation financière se fait par les taux d’intérêts
Les taux d’intérêts (et donc le rendement pour les déposants) dépendent du taux d’utilisation du marché
Taux d’utilisation = tokens empruntés / tokens en réserve
On peut voir sur le graphique que le taux d’intérêt monte lentement jusqu’à 80% d’utilisation, puis explose à la hausse une fois dépassé
Lorsque Avraham Eisenberg a fait son attaque spéculative sur Aave, le taux d’intérêt annuel du CRV était supérieur à 6 000%
Coincidence des besoins
Une fois qu’on a compris le principe d’Order Book et de pool de liquidités, on arrive à l’étape supérieure qu’on appelle “Coincidence of Wants” ou CoW
Exemple : Un propriétaire d’un logement et un locataire ont tous les deux recours à un intermédiaire comme Airbnb pour faire correspondre l’offre et la demande.
Le problème est que les frais imposés par la plateforme pénalisent à la fois le propriétaire et le locataire. Ces derniers peuvent donc s’accorder sur un échange en cash sans passer par Airbnb :
- Le locataire paie moins cher pour le même service
- Le propriétaire gagne plus en contournant les commissions et les impôts
⇒ La Coincidence of Wants rend l’échange plus efficace pour les parties prenantes
Tant qu’il y aura des pools de liquidité, il y aura du CoW. Et plus il y aura de pools, plus le CoW sera pertinent
Coincidence of Wants sur un DEX ⇒ CoWSwap
Dans le pire scénario, la valeur qu’on obtient est équivalente à ce qu’on aurait dans un agrégateur classique ⇒ Rien n’est perdu
Au mieux, une CoW est trouvée entre l’acheteur et le vendeur, qui gagnent plus pour 2 raisons :
- Ils contournent les frais de swap (0.3% dans le cas d’Uniswap)
- Ils dépensent moins de gas (~150 000 Gwei pour un swap ⇒ ~65 000 Gwei pour un transfert d’ERC-20)
CoW Swap n’est disponible que sur Ethereum et Gnosis Chain car un coût d’infrastructure est nécessaire pour faire tourner le protocole sur un réseau. C’est pas forcément intéressant de le faire sur toutes les blockchains
Coincidence of Wants sur le lending ⇒ Morpho
On peut considérer Morpho comme un "Layer 2" des plateformes de Lending
Sur l'image de gauche, on constate que la différence d’APY sur Morpho est égale à la moitié de l’écart entre l’offre et la demande
L'image de droite montre que la CoW est effective tant qu’il y a un emprunteur pour la réaliser. En cas d’absence, on revient sur Aave
En cas d’absence de CoW (ce qui est rare), les parties prenantes utilisent Aave
En cas de CoW :
- L’emprunteur a un taux d’intérêt inférieur par rapport à Aave
- Le prêteur a un rendement supérieur par rapport à Aave
⇒ Soit c’est gagnant-gagnant, soit rien n’est perdu
Pair à pair =/= Désintermédié
Au sens strict, un échange sur Uniswap représente un échange de pair à pair. Sauf que les utilisateurs doivent interagir avec une pool de liquidité, qui est un intermédiaire technique
Un modèle de CoW est un échange pair à pair direct, dans le sens où le protocole n’a pas d’intermédiaire technique. Il sert juste à coordonner les utilisateurs