Liquidity provision: a false promise
AMMs purport to offer a golden opportunity for token holders: become a liquidity provider by staking tokens one already owns, which can be unstaked at any time, while earning trading fees in the process. Surely, any investor would prefer to earn a small percentage of interest on their tokens instead of letting them sit idle. Right?
Not so fast. For the most part, this promise is a false one — and, for inexperienced investors, a perilous one at that. Lurking under the surface of liquidity provision is a hidden cost: impermanent loss.
A primer on impermanent loss
To understand what impermanent loss is and why it occurs, it’s necessary to understand an important limitation of existing AMMs. In their current form, most AMMs rely on a “constant function” to determine internal token prices. This model works well enough for trading. The problem is that AMMs have no way of automatically updating to reflect external market price changes. This “naivete” has dire consequences for liquidity providers.
When the external market price of a token changes — say, on a centralized exchange like Coinbase or Binance — savvy traders have a small window of opportunity to buy whichever token in the AMM is now relatively discounted. For instance, if the price of ETH shoots up 50% on centralized exchanges, arbitrageurs are able to buy ETH from AMMs at the original price and sell the token elsewhere for a profit. The opposite happens when ETH drops 50%: quick traders can unload their ETH to AMMs at an inflated price.
In both scenarios, the clear winners are the arbitrageurs. The losers? Liquidity providers. As the graphic below illustrates, constant price volatility prevents liquidity providers from fully realizing price appreciation of their staked tokens, and it exacerbates price depreciation.
In practice, when liquidity providers go to withdraw their tokens, they are often greeted with an unpleasant surprise: fewer tokens than they initially staked. This loss has come to be known as impermanent loss.
How “impermanent” is impermanent loss?
The term itself is misleading. A liquidity provider’s loss is indeed “impermanent” if the relative prices of the tokens within an AMM return to what they were when that liquidity provider began staking. However, complete recuperation of “impermanent” loss is a rare occurrence for liquidity providers—especially for those providing liquidity for volatile assets. For most, “impermanent loss” is often painfully permanent. Just ask investors who were providing liquidity to Uniswap’s LINK/ETH pool during LINK’s epic bull run.
Source: Bancor Network
There are some strategic workarounds for liquidity providers seeking to limit impermanent loss.
First, because impermanent loss is caused by price volatility, liquidity providers can sidestep the problem altogether by staking in stablecoin pools, such as Curve’s. But this solution obviously doesn’t help liquidity providers who want exposure to free-floating assets.
Second, as Haseeb Qureshi notes in an excellent article, AMMs with highly-correlated, free-floating assets tend to be somewhat more impervious to impermanent loss. However, liquidity providers in these AMMs will still suffer impermanent loss, assuming the token prices don’t move in perfect tandem. Moreover, AMMs with highly-correlated, free-floating assets make up only a small fraction of AMMs; liquidity providers may still want to stake tokens in pools with uncorrelated or negatively-correlated assets.
Third, some rapidly-growing token protocols have taken to offering artificially-high staking rewards in order to attract liquidity. These “liquidity mining” incentives dampen, and sometimes fully offset, impermanent loss suffered by liquidity providers. But as Andrew Kang points out in an insightful Twitter thread, liquidity mining is at best a provisional solution to impermanent loss—one that is costly to maintain even for individual, fast-growing tokens, to say nothing of AMM protocols as a whole.
If AMMs could eliminate, or at least significantly mitigate, impermanent loss, their value proposition for liquidity providers would change dramatically.
Bancor V2: a paradigm shift?
Bancor is slated to launch its V2 AMMs by the end of July. One of the updated protocol’s central aims is to mitigate impermanent loss for liquidity providers.
Unlike existing AMMs—which, as mentioned above, are “naïve” about market price changes—Bancor’s V2 AMMs are “intelligent,” thanks to a key integration with Chainlink oracles. When a token’s price changes, an oracle sends an update to Bancor AMMs. The AMMs adjust accordingly, locking in the new price before arbitragers can profit from the difference. This price adjustment occurs through a dynamic re-weighting of the token ratios within the AMM’s constant function.
Source: Chain Link
The amount by which the reserve weights adjust is dictated by two additional parameters: (1) the “current balance” of tokens available for withdrawal by liquidity providers, and (2) the “staked balance” of tokens that liquidity providers initially supplied to the AMM. The AMM adjusts the reserve weights using mathematical formulas designed to constantly return the AMM’s “current balance” back to its “staked balance.”
Source: Bancor Community Call
How do AMMs “push” current balance back to staked balance? Because Bancor V2 AMMs allow for single-token liquidity provision—another unique feature of the protocol—AMMs have to track and equilibrate the current and staked balances of TKN and BNT reserves separately. Using dynamic weight adjustments, AMMs set the price of TKN (the non-native token) at a level that induces arbitrageurs to refill TKN deficits and buy up TKN surpluses. These incentives “push” TKN’s current balance back to the staked balance.
Whereas TKN liquidity providers are shielded from impermanent loss by the arbitrage incentives created by dynamic weight readjustments, BNT liquidity providers are protected by the protocol’s largely static fee structure. Although V2 AMMs have dynamic reserve weights, trading fees are always split evenly between TKN and BNT liquidity providers. As such, when an AMM’s dynamic weights adjust away from the 50/50 ratio, there will be an incentive to return back to 50/50 parity because one side of the pool will be earning half of the entire pool’s trading fees on a lower amount of capital.
As with any protocol, Bancor V2 carries some potential risks for liquidity providers. The first possibility is that a price oracle could fail. When this happens, the AMM that relies on the oracle would temporarily revert back to its V1 status, operating without dynamically adjusting weights and exposing liquidity providers to impermanent loss. Another potential problem is temporary states of illiquidity. Because the weight-adjustment process is dynamic, there will be moments when a liquidity provider’s current balance is below staked balance, meaning that the liquidity provider will not be able to withdraw their entire initial stake. The team claims that these states of illiquidity will be short-lived—but this is one thing to keep an eye out for once the protocol launches.
Bancor V2 hopes to entice investors who are attracted to the prospect of earning passive income on their token holdings, but have feared succumbing to impermanent loss. A surge in liquidity to Bancor’s AMMs—combined with reduced slippage, increased trading volume, and an eventual SNX-esque staking rewards program for BNT holders—could spawn what Andrew Kang has called a “liquidity black hole.”
Of course, there is no guarantee that the Bancor V2 protocol will work as planned. But as things stand, impermanent loss is the dam holding up a massive wall of liquidity from flowing into AMMs, and into DeFi more broadly. If successful, Bancor V2 might just pry open the floodgates.
Disclosure: The author is long BNT.