Mechanism Design.
Welcome, premium subscribers! Thank you for subscribing. I appreciate you very much.
Season 1 is for the foundations of economics design, token economics and token engineering. The fun stuff comes now in Season 2!
TLDR below. This is not financial advice.
Catch the episode on YouTube
General Conclusion
Bancor is the leader in AMM back in 2018. It continues to head in the innovation space of AMM. This time, Bancor V2.1 focuses on resolving the issue of impermanent loss. How? Instead of fancy AMM models, it provides insurance and pays for the losses incurred.
Bancor in 60s
Think of Bancor like a cookie jar and inside it, you have two types of pumpkin cookies one with leaves ($BNT) and one without leaves ($LISA) and what I can do is to trade cookies so I can add more of the $BNT and remove $LISA so that means I’m trading $BNT for the $LISA. That’s basically how the Bancor system works.
Difference between Bancor, Uniswap, Balancer and Curve
Uniswap is only between ERC20 tokens, Balancer is between a lot of different assets and Curve is only for assets with similar prices but Bancor is different because it allows for interchange or interoperability between other different tokens and in general all the formulas are similar but Bancor has a different formula which gives us a little bit more room to play around.
Tokens and their functions
What we want to do is to reduce the cost and chances of the insurance payout. One way to do that is to allow for a deeper liquidity pool and to encourage people to be adding trade into the system.
Goal: more trade = more revenue
BNT tokens
-
Native utility token
-
Facilitates transactions between tokens in different liquidity pools
There are two types of agents.
-
The first agents are users or liquidity providers. They add $LISA into the liquidity pool.
-
The second one is the protocol which adds liquidity into the pool, specifically $BNT. Think of it as a co-investment or like a grant by the government. If I am putting $X into my startup, then the government can also co-invest $X amount of money into the startup.
In Bancor V2.1, the protocol can co-invest in the liquidity pool.
Trade token
It basically allows me to trade my tokens (Eg: $LISA, $LINK, $COMP) for the $BNT or any other tokens in the system.
Pool token
-
Represent ownership of the liquidity pool
If I own any percentage then I’m getting that pool token which represents ownership in the pool. The ownership means that I can get specific amounts of transaction fees that the pool generates. If I own 10% of the pool then I receive 10% of the revenues generated.
This token is also tradable and is created automatically when you add liquidity into the pool.
3 main changes in Bancor V2.1
-
No Dynamic Weights. Only Static Weights.
In Bancor V2 which they released recently, they have dynamic weights. Bancor’s formula is quite different from Uniswap as with Uniswap the formulas are fixed it’s 50-50. With Bancor they allowed that formula or the static number (50-50) to change a little bit and they tried to use oracles as an external source of truth and data to come in to have dynamic weights and to allow for better trade, reduce impermanent loss and reduce price slippage. While that works in theory, the time lag and arbitrage traders make it difficult to implement fairly.
They went back to the static weight which is the 50-50.
-
Insurance
One way to reduce risks is to provide insurance for impermanent loss. That’s what V2.1 has done. It greatly reduces the downside as a liquidity provider.
-
Dynamic supply
They call it the elastic BNT supply. Basically, the supply of BNT will be minted and burnt based on the different kind of economic mechanisms that are in place in the system.
Single-Sided Liquidity Pool
Single-Sided means that there are 2 sides to this liquidity pool but you can choose to put in only one side.
Either you can choose to put liquidity in both sides or one of either side.
In this case, let’s say the single-sided liquidity pool is only filled by one side. Let’s use $LISA for instance. It is added to a single side by users or the liquidity providers whereas $BNT is added to the other side by the protocol Bancor itself.
This concept is called co-investment so a co-investment where one party puts something in and the VC, the investor, and the advisor put an amount in as well. They’re co-investing in this liquidity pool and they both have ownership towards this liquidity pool. This means the protocol earn revenue this way.
Pool Ownership
Let’s say we have a pool and half of it is $LISA and the other half is $BNT (Bancor Token).
Let’s keep this situation simple. All the $LISA tokens are added by me and all the $BNT tokens are added by the protocol itself.
I own 50% of the pool and Bancor protocol also gets to own 50% of the pool. For any fees generated, 50% of the fees will go to me and 50% will go to the protocol itself.
That’s the entire idea of co-investment you share your capital but you also share the gains and this concept is equity and dividends.
Impermanent Loss
1) When does it Exist? It exists only when the Liquidity providers withdraw their funds from the liquidity pool
2) Where does the loss come from?
If you have some capital then there are 2 ways to go about it so the first one is to keep it in your wallet and the second way is to keep it in these liquidity pools so loss comes from when you keep it in the wallet.
3) What can the Liquidity Providers withdraw?
If you own 50% of the pool then you can only take out 50% of whatever is in the pool but because the fees generated are in both $LISA and $BNT then I can only take out $LISA because I only added $LISA
2 Scenarios of Impermanent Loss
Scenario 1 :
$LISA in the pool is more than or equal to the amount of initial $LISA being put in.
Let’s say I put in 10 $LISA in the liquidity pool. Due to trading activities, there’s 11 $LISA or 10 $LISA. That’s good because I get more than whatever amount I invested. There is enough liquidity.
When I withdraw $LISA from the pool, I also withdraw the $LISA earned from transaction fees. Although I also earn $BNT at the same time, these $BNT will be burned when I withdraw my $LISA share. This is because I did not put any $BNT in the pool. So I am not entitled to any $BNT profits earned.
What do you mean by transaction fees earned?
When transactions happen the transaction fee,s are paid either in $BNT or in $LISA depending on what you are trading. When people are trading $BNT in the pool itself then my investment generates some $BNT. They’re burnt because I’m not entitled to any of these $BNT and these shouldn’t be existing in this liquidity pool.
Scenario 2 :
The other situation is where the $LISA in the pool is actually less than the $LISA added initially.
Now that’s interesting because if I put 10 tokens in there and there are only nine tokens then I’m suffering an impermanent loss and this entire idea is to reduce impermanent loss.
Solution
-
EITHER The system goes and checks the amount of $LISA required to give to the liquidity providers
-
OR The system goes and checks the pool ownership
This is a co-investment. $BNT will be burnt (scenario 1), no difference (scenario 2.1) or minted (scenario 2.2).
It works on these in the same way as well. Bancor as part owners of this liquidity pool is not entitled to the $LISA being generated as well but in this, you can’t burn them. So Bancor protocol can have excess $LISA. This excess is used as the insurance fund.
Insurance for Impermanent Loss
Insurance plays a role only in the second scenario where there isn’t enough liquidity to return the tokens to liquidity providers and the purpose of insurance in this specific case is to protect the liquidity providers from impermanent loss.
How is this insurance structured?
It’s a very simple straightforward way. The first 30 days of you adding liquidity into the pool will get you zero coverage. Because they don’t want people to be putting in for 30 days do some funny business get coverage and then leave.
On day 30, you will get 30% coverage.
After 30 days, you will get an additional one per cent of coverage every single day until you reach the 100th day where you’re covered 100%. For the rest of the days, you’ll always be covered for 100%.
If you only cover 30% then the liquidity pool will only return 30% of your impermanent loss.
In other words put your tokens in for more than 100 days to get 100% coverage.
Double Sided Liquidity Pool
Let’s start the same way so we have a liquidity pool and we start with adding $LISA. The protocol will mint $BNT. We start by filling the liquidity pools with assets or tokens.
To make this a double-sided liquidity pool, the $BNT liquidity providers come in and replace the liquidity or the $BNT that’s minted by the protocol.
Let’s say a guy comes in and adds $BNT into that liquidity pool. The existing ones that are done by the protocol get burnt. All the fees generated will also be burnt.
The concept that we’re talking about here is to replace the protocols $BNT with liquidity providers $BNT. The idea is that all liquidity in the pool is now provided by users and not by protocol.
This happens when this liquidity pool is earning a lot of revenues and generating a lot of transaction fees and is very attractive for other people to come in and replace the $BNT that’s minted by the protocol.
Token Supply
The supply will be affected in two ways.
Increases in supply
-
When there is an impermanent loss insurance payout and there aren’t sufficient tokens to be paying out so you need to mint $BNT to pay out the insurance
-
Decrease in supply
-
The liquidity provider withdraws their share of the liquidity pool and there are $BNT that’s being minted or there’s $BNT accrued as revenue then that $BNT will be burnt
-
When a liquidity provider replaces the protocols $BNT and during that period there are $BNT being generated as part of the transaction fees then those will also be burnt
-
$BNT Supply
Let’s look at the economic concepts and consequences for different new incentive mechanisms in place.
It increases the liquidity pool’s depth in the pool for trade so now people are more incentivized to trade because there’s impermanent loss insurance which means that in the worst-case scenario I will get the same amount of tokens as I put in my wallet so that means that I have no downside whether I put my tokens in the wallet or if I put my tokens in these liquidity pools but there is an upside in putting my tokens in the liquidity pool because I can earn transaction fees so this incentivizes liquidity providers to put their tokens in the pool and this increases the depth of the liquidity pools for trade.
How does this affect traders?
When there is more liquidity in the pool then there is a reduced price slippage. I was a trader would be more willing to trade in that pool because there’s less price slippage.
It’s good for traders because by having more people and more capital in the pool you have deeper pools and less price slippage so you want to trade more and when you’re trading more it also benefits all these liquidity providers because they’re earning transaction fees.
When all this comes together then you also reduce the need to mint $BNT for insurance coverage. In fact, the likelihood of $BNT being used is increased because they are generated in transaction fees and then these revenues will be burnt and it will be like the share buyback concept.
Listen on Podcast
TLDR:
Bancor V2.1 pays insurance for impermanent loss incurred. This is done by a co-investing single-sided liquidity provider model. The fees earned from the new model is used to pay for insurance. Otherwise, it mints $BNT to pay for insurance.
Get smart: Put your funds in Bancor V2.1 because the downside (impermanent loss) is removed via direct compensation.
Get smarter: The protocol becomes the first to test the market by the co-investment method. If you like the fees generated so far, invest alongside the protocol.