Behodler Series #3

How Behodler intends to list new tokens : What is Limbo Dapp ?

Crypto Cheat Sheet
6 min readJan 23, 2022

If you didn’t read the previous parts about Behodler, please read them before this one ! Here is the link of the first part : https://pao10.medium.com/behodler-series-a8f6e2b8cf1

Why is a listing Dapp necessary to Behodler ?

Equilibrium of each liquidity reserve

Behodler swap has one important property : The earlier you provide liquidity in a reserve, the more SCX you will get. In other words, if you provide 1k $ of liquidity in a reserve with 10k $ worth of liquidity, you will get more SCX than if you provided those 1k $ in a reserve with 15k $ worth of liquidity. And in the reverse way, if you redeem liquidity with your SCX, you will get more if you redeem from the more funded curve than from the less funded one.

Consequently, if there is an imbalance between two reserves, it will be arbitraged : someone will mint SCX from the least funded reserve and redeem liquidity from the most funded one until the equilibrium between reserves is reached. That’s why each token listed on behodler has the same amount of liquidity in $ value.

Listing a new token with no liquidity

If now we list a new token with no liquidity when already listed token are funded with a certain amount, the same kind of arbitrage will happen. However it will damage the protocol in some ways. Indeed, due to the shape of the bonding curve, a LOT of SCX is minted for the first units of token provided as liquidity. To be precise, 366 SCX is minted for the first UNIT (so 1 of whatever token) of token of liquidity provided to a reserve (no matter the price of the token), 18 SCX for the second unit and 10 SCX for the third.

Imagine you have the opportunity to be the first to provide liquidity to a reserve of token FTM which price is 2$ and imagine the price of SCX at this time is 200$. For providing 2$ you would get 366x200 = 73 200$. Pretty nice return in a trade. So what would you do ? Probably sell your SCX to take your profits. In the more profitable way, you would empty each token reserve on Behodler in equal amount, so a nice share of the liquidity of Behodler would go in your pocket impacting the overall liquidity of the protocol with no benefit. That’s one of the main reason why Behodler created a dapp to list tokens : Limbo.

Limbo Dapp

The goal of limbo is to fund future listed token reserve. A new token can be listed when its level of liquidity reaches the same level as already listed tokens. So that no arbitrage opportunity are created when new tokens are listed and it doesn’t hurt the protocol liquidity.

Assume we want to list a new token CRV and X $ is the current level of liquidity per token in the swap app, this would be the process :

  1. CRV pool is added to Limbo and available for staking
  2. Users stake their CRV in the dedicated pool in Limbo and are rewarded for doing so
  3. As soon as CRV level of liquidity reaches X, CRV can be listed on the swap app

Nice ! Only one question : what rewards will Limbo offer to attract stakers ?

FLAN Token

FLAN is the third token of the protocol. It is a stablecoin soft peg to DAI (which is a stablecoin peg to the dollar). In other words, FLAN dollar value could fluctuate but it should return around 1 $.

The token will be minted as follow : when someone will stake their token in Limbo, they will accumulate newly minted FLAN per second as reward. The accumulation will end when they will unstake their token or when the new token will be listed. The amount they will get as reward will be proportional to two factors : the time and the amount of liquidity they stake. For example if 0.0000001 FLAN is rewarded per second per dollar staked, someone who stakes 10k $ for 2 days = 172800 seconds will accumulate 172 800 x 10 000 x 0.000001 = 1728 FLAN.

FLAN will be listed on Behodler and FLAN/SCX pools will be initiated on Uniswap and Sushiswap as soon as possible to give FLAN liquidity and price and make it as easy as possible for people to swap it if they want to take their rewards in another token.

Crossover bonus

To give you freedom, when staking in Limbo, you can unstake at anytime so you have two choices :

1/ you unstake before the liquidity target is hit : you just get back the token you provided + the reward you accumulated

2/ you stake until the end of the process : in this case you don’t get back your staked token because they will serve as initial liquidity in the swap dapp. To compensate, a crossover bonus will be implemented in FLAN such that it will at least compensate the amount you staked. So you will get only FLAN and the amount will be equal to the amount you staked (+ eventual bonus reward from crossover) + amount accumulated during staking.

Minimum guaranteed APR

To attract stakers in Limbo is pretty simple : offer the greatest APR.

For each pool in Limbo, a flan per second is allocated. So if you are the only one staking in the pool, you’ll get all the flan reward. If you are providing 1/10 of the current staked amount in the pool you will get 1/10 of the current amount of flan allocated to the pool per second.

The APR will vary on the number of people and amount they are currently staking but, knowing that and the flan per second allocated to the pool, the protocol will be able to provide a minimum guaranteed APR.

Indeed, let’s imagine the threshold to be reach for migration in swap dapp is 10k$ of liquidity for a token CRV which price is 4$. We need 10k/4 = 2,5k$ to cross the threshold. If we know that there is 0,01 flan per second allocated to this pool, and that we stake 10 CRV, the minimum APR will be reached when all the CRV needed (2,5k unit) are staked, therefore ( (0,01x60x60x24x365) x (10/2,5k) )/10= 12 614%. As a conclusion, the protocol can be sure to offer a greater APR than that.

Support the value of SCX and the peg of FLAN

On one hand, when the staker will get his rewards, he eventually will sell it. Sells (and buys) are what make the price fluctuate so Behodler has to put a mechanism in place to bring always back FLAN to 1 DAI. On another hand, the goal of Limbo is to distribute SCX fairly in a way that it benefits both the user and the protocol.

To understand how this will happen, let’s take a fictional example : let’s take a liquidity per token in Behodler of 10k$. We want to list STOKE which price is 30$, SCX price is 250$ and we evaluate that providing STOKE liquidity from 0$ to 10k$ in the swap dapp without Limbo would produce 450SCX.

Releasing 450 SCX would not be fair since it would give users 450x250$ =112 500$ worth of SCX against 10k$ of STOKE token. The fair amount would be 10k$/250 = 40 SCX. Thus, the excess SCX is 450 – 40 = 410.

Limbo will insure that the fair amount of SCX is released so the excess SCX will be burn. This first mechanism will benefit twice to the protocol since it will increase the trapped liquidity and will support the price of SCX.

Now, how will Limbo release the 40 SCX ? Each migration is used to bring back FLAN to its DAI peg. The SCX will be added to FLAN/SCX pool in sushiswap and uniswap so that the ratio will translate to 1 FLAN = 1 DAI. If SCX is in excess, new FLAN will be minted to deepen the liquidity. And this will make FLAN even more resilient to dumping.

Offer a sustainable APR

The amount of FLAN per second is editable by the DAO. The goal is to offer the highest APR so the highest FLAN per second but keeping FLAN pegged to DAI.

Indeed FLAN will be brought back to a dai after each migration by SCX. However, if too many FLAN is issued, there won’t be enough SCX to bring it back to its peg. As we will know the amount of SCX released by a migration, it will be possible to calculate the maximum of FLAN that can be rewarded for one migration pool.

From these metrics, the DAO will have to calibrate Limbo to give an attractive APR but still sustainable so that the system can run continuously and persistently !

Deepen the liquidity per token

The article explained how Limbo will help list new tokens and back FLAN. But if you followed closely, you must now ask yourself one question : how will Behodler be able to increase the liquidity per token ? We’ll find out in the next article.

Thanks for reading !

--

--

Crypto Cheat Sheet

Prendre du temps pour lire et comprendre fait gagner du temps