Il boom del settore DeFi ha spinto gli utenti più pratici, e meno avversi al rischio, a fiutare ogni forma di rendimento ricavabile da questo settore.
Tra i concetti – nonché rischi – con i quali è utile prendere confidenza, c’è quello di “Impermanent Loss”.
In una serie di articoli precedenti, abbiamo parlato ampiamente di DeFi e delle opportunità che ci girano intorno.
Abbiamo visto strumenti – come Uniswap – e spiegato una serie di concetti, come le liquidity pool e lo yield farming. In generale, si è visto come vengono sfruttate le applicazioni DeFi per ottenere rendimenti in un mondo con tassi di interesse prossimi allo zero.
Tra le svariate opportunità, vi è quella di diventare un fornitore di liquidità (liquidity provider o LP) e guadagnare delle fee pagate dagli utenti che utilizzano una determinata applicazione DeFi. Sul funzionamento delle liquidity pool ne abbiamo parlato in questo articolo.
Emblematico è il caso di Uniswap.
Uniswap opera attraverso delle riserve di liquidità che consentono al protocollo di fungere da market maker automatizzato (AMM), senza la necessità di un order book.
Per ogni coppia di scambio (e.g. ETH/DAI, ETH/BAT) esiste una riserva di liquidità.
I cosiddetti liquidity provider mettono a disposizione la coppia di token per finanziare la pool, vincolandola in un apposito smart contract. Come ricompensa ricevono una fee trattenuta da ogni trade eseguito dagli utenti.
Parcheggiare i propri token in una pool e guadagnare delle fee sembra essere un’attività certamente redditizia. Ma bisogna fare i conti con il fenomeno dell’impermanent loss, che affligge i market maker automatizzati basati su una curva.
Impermanent Loss
Il rischio chiamato impermanent loss consiste nella possibilità che i token vincolati in una pool perdano valore rispetto a un’attività di holding pura e semplice degli stessi token.
La perdita di valore è da intendere sia in termini assoluti che relativi. Come vedremo, potrebbe infatti accadere che il valore espresso in termini di valuta fiat aumenti, ma in misura inferiore rispetto a una strategia di buy and hold.
In altri termini, l’impermanent loss è la differenza tra tenere i token in un market maker automatizzato e tenerli nel proprio wallet.
Si verifica quando il prezzo dei token all’interno di un market maker automatizzato diverge in qualsivoglia direzione. Maggiore è la divergenza, maggiore è l’impermanent loss.
Si chiama perdita temporanea (appunto impermanent loss) poiché, finché i prezzi relativi dei token nella pool ritornano allo stato in cui si trovavano quando si è entrati nell’AMM, la perdita scompare e si guadagna il 100% delle fee di trading.
Ma questo riallineamento non sempre si verifica.
Per capire meglio l’impermanent loss, è utile ricapitolare come funziona il meccanismo del market maker automatizzato su Uniswap.
L’AMM di Uniswap
Il sistema di Uniswap non accoppia l’ordine di un utente con quello di un altro utente, ma lo esegue direttamente nei confronti della pool di liquidità.
Per ogni coppia di scambio ETH/ERC20 esiste un apposito smart contract (“exchange contract”), che mantiene una riserva di liquidità di entrambi gli asset (cioè ETH e il rispettivo token ERC20 del pair).
Uniswap imposta automaticamente i prezzi utilizzando il meccanismo di market maker del prodotto costante (x * y = k), che mantiene le riserve in equilibrio relativo.
In parole più semplici, il tasso di cambio tra ETH e un ERC20 si basa sulle dimensioni relative delle loro riserve di liquidità all’interno dello smart contract.
Se ad esempio nella pool ETH/USDC vendo degli ETH per comprare USDC, vuol dire che invio degli ETH alla pool, contribuendo ad aumentare la riserva di liquidità di ETH.
La riserva di liquidità di USDC si riduce di un importo proporzionale. L’importo di cui la riserva si riduce, equivale all’ammontare dei token comprati.
Questa variazione nel rapporto di riserva modifica il tasso di cambio per gli scambi da ETH a USDC, incentivando gli scambi nella direzione opposta.
Il motivo è dovuto al fatto che, a seguito di uno scambio ETH -> USDC, la riserva di ETH si è incrementata, mentre quella del token USDC si è ridotta.
Come logica conseguenza, chi successivamente richiederà uno scambio nella stessa direzione (cioè da ETH a USDC) riceverà una quantità proporzionalmente inferiore del token USDC.
Poiché il rapporto nella pool si modifica a seguito di uno scambio, il prezzo di un pair tende a discostarsi da quello presente sugli altri exchange (in particolare quelli centralizzati).
È qui che entra in gioco il ruolo degli arbitraggisti.
Gli arbitraggisti possono sfruttare opportunità di guadagno quando il tasso di cambio di un pair è disallineato rispetto a quello di un altro mercato.
Se ad esempio su Uniswap con 1 ETH, in base al corrente rapporto di cambio, si ottiene una quantità di USDC superiore rispetto a un altro mercato, l’arbitraggista sarà incentivato a vendere ETH e a comprare USDC, i quali verranno rivenduti a loro volta su un altro exchange.
Questa azione farà aumentare il prezzo di USDC contro ETH su Uniswap, riconducendolo verso la media di prezzo degli altri exchange.
Ricapitolando, gli scambi su Uniswap non dipendono da un order book che accoppia gli ordini degli utenti. Uniswap si basa su riserve di liquidità, nei confronti delle quali gli utenti eseguono gli ordini.
Qualsiasi persona può fornire fondi per sostenere le riserve di liquidità, diventando un liquidity provider.
Un utente è incentivato a vincolare liquidità in una pool, poiché percepisce le fee pagate dagli utenti che scambiano attraverso l’exchange.
Per diventare fornitore di liquidità bisogna inviare all’exchange contract di un determinato pair una quantità di ETH e di token ERC20, in base al rapporto di cambio esistente al momento del deposito.
Come si verifica l’impermanent loss?
Ipotizziamo l’esistenza di una pool di liquidità relativa al pair ETH/USDC.
Supponiamo anche che l’attuale rapporto di scambio tra ETH e USDC sia 1:300. In altri termini 1 ETH costa 300 $, essendo USDC una stablecoin peggata al dollaro.
Assumiamo che nella pool di liquidità ETH/USDC ci siano 15 ETH e 4.500,00 USDC, per un valore complessivo di 9.000,00 $.
In questa situazione:
- i liquidity provider controllano una quantità di token del valore di 9.000,00 $: 15 ETH (4.500,00 $) + 4.500 USDC (4.500,00 $) = 9.000,00 $;
- un utente esterno alla liquidity pool, che si limita a holdare le stesse quantità dei rispettivi token, dispone ugualmente di token per un valore di 9.000,00 $.
Ma ipotizziamo che sugli exchange esterni il prezzo di ETH aumenti del 15%. Di conseguenza si aprono delle opportunità di arbitraggio.
Gli arbitraggisti sono incentivati a comprare ETH (perché ha un prezzo più basso rispetto a quello degli altri exchange) nella pool ETH/USDC di Uniswap, e a rivenderlo su altro exchange per guadagnare dallo spread che si è aperto tra i diversi mercati.
Ipotizziamo che l’arbitraggista voglia acquistare 40,00 USDC di ETH. Allora invierà 40 USDC alla pool ricevendo in cambio 0,13 ETH:
15 * 4500 = 67.500 (invariante prima dello scambio)
67.500 / 4.540 = 14,87 (nuova ETH_pool a seguito dell’invio degli USDC)
15 – 14,87 = 0,13 (ETH ricevuti dall’arbitraggista)
* Per semplificare non ho preso in considerazione le fee pagate dall’utente.
L’arbitraggista ha pagato in media i suoi ETH 307,69 USDC (con slippage del 2,56%).
Di seguito vende su altro exchange 0,13 ETH per 345,00 USDC (abbiamo detto che il prezzo di ETH/USDC è salito del 15% a partire da 300,00 USDC), ottenendo 44,85 $.
L’arbitraggista realizza un profitto di 4,85 $: ha inizialmente investito 40 USDC, per comprare 0,13 ETH a 307,69 USDC, che ha rivenduto a 345,00 USDC.
Analizziamo lo stato a seguito di questa operazione:
- i liquidity provider nella pool controllano token per un valore di: 4540 USDC (4.540,00 $) + 14,87 ETH (4.540,00 $) = 9.080,00 $;
- chi si è limitato a holdare i token nel proprio wallet, si ritrova con un valore di: 4.500 USDC (4500,00 $) + 15 ETH (5175,00) = 9.675,00 $.
Anche se in questo esempio i liquidity provider non hanno subito una perdita in termini assoluti, l’hanno però registrata in relazione a una semplice strategia di buy and hold, che avrebbe fruttato loro maggiori guadagni.
Conclusioni
Questo rischio di impermanent loss, disincentiva molti utenti istituzionali e tradizionali a diventare dei fornitori di liquidità. A differenza della maggior parte dei prodotti di staking, i market maker automatizzati corrono il rischio di sottoperformare una strategia base di buy and hold.
L’impermanent loss si verifica quando i fornitori di liquidità perdono rendimenti sulle loro partecipazioni alla pool a causa della volatilità della coppia di scambio.
Con Uniswap, chiunque nel mondo può fornire capitale e guadagnare dalle fee di scambio. La creazione di un protocollo di liquidità accessibile a livello globale è probabilmente uno degli sviluppi più importanti per la proliferazione della DeFi.
Ma in tempi di elevata volatilità, le conseguenti perdite possono costituire un enorme deterrente per i fornitori di liquidità.
È estremamente importante per l’industria applicare i migliori meccanismi per mitigare queste perdite. In qualche altro articolo vedremo quali sono alcune delle soluzioni utilizzate per far fronte al limite dell’impermanent loss.
Commenti
3 Responses
“Analizziamo lo stato a seguito di questa operazione:
i liquidity provider nella pool controllano token per un valore di: 4540 USDC (4.540,00 $) + 14,87 ETH (4.540,00 $) = 9.080,00 $;
chi si è limitato a holdare i token nel proprio wallet, si ritrova con un valore di: 4.500 USDC (4500,00 $) + 15 ETH (5175,00) = 9.675,00 $.”
Credo che il calcolo sia errato, gli eth nella pool valgono comunque 345$, quindi 345$*14.87=5130,15. Vengono persi 4,85$, cioè quelli guadagnati dall’arbitraggista (i fondi non “perdono”, semplicemente finiscono nelle mani di qualcun altro)
Cosa capita nel caso in cui in una coppia ci sia un incremento che svuota la parte controbilanciata?
su UNISWAP mi sembra che il rischio Impermanet loss non esista, in quando devo fornire SEMPRE entrambi i token della POOL, in egual valore.
Per cui se scende uno, sale laltro nella pool, e si riequilibria il valore tra i due token. (se andassi a venderli su un altro exhange)