Projects can use a Bootstrap Program to launch their tokens:
- A project can configure a Bootstrap Program to open for deposits for a period of time before trading begins
- A project can deposit project tokens into the program
- Traders can deposit project token, trading token e.g. aUSD or both to participate
- The Liquidity Pool will begin trading once liquidity targets are met, and Bootstrap period ends
This allows price to consolidate and stabilize throughout the bootstrap period, and discourages adversarial operations, for example whales and bots are disincentivize to buy it all at once and front-run everyone else.
The project token price at the end of the Bootstrap Program then becomes the opening trading price.
A Bootstrap Program can be as long as the initiator decide they should.
No, you don't need to. Prices are expected to stabilize overtime.
This depends on your intention
- Join with just the project token (or token A): you will be market selling token A when the pool opens
- Join with the trading token e.g. aUSD (or token B): you will be market buying project token (or token A) when the pool opens
- Join with both tokens: you can put in what you think is the fair price e.g. if you think token A worth $2, then you can put in 10 token A and 20 aUSD
- If opening price is higher: a portion of your token A will be sold to make up the equal value of LP. Token A is sold for more than what you think.
- If opening price is lower: a portion of token A will be bought to make up the equal value of LP. You bought more token A at a lower price than you expect.
- If opening price is the same: no change to your holdings
During the Bootstrap period:
- NO trading is allowed, therefore the exchange rate can be consolidated
- You can contribute liquidity for Token A, or Token B, or Token A and B at the same time. The actual exchange rate of Token A and B can only be known once the Bootstrap is completed.
- At the time of your contribution, you are allocated a number of LP tokens, and indicative LP shares of the pool, which are subject to change as more liquidity is added.
LP tokens are receipts of liquidity contributed to a pool. LP Shares (= LP Tokens / Total LP Tokens) are pro-rata representations of the liquidity contribution of a particular pool e.g. Token A-Token B pool.
The following formula is used to calculate LP Tokens after a contribution for Token A-Token B pool:
Below is a simulation of how a user’s LP Shares of the pool might change as more liquidity is added to the pool during the Bootstrap period:
- User 1 only contributes 1000 Token B. LP Tokens can only be calculated once both sides of the pool have some liquidity.
- After User 2 added his/her liquidity (User 2 only contributes 50 Token A),
- User 2's LP Token is 50 (=50*1 + 0 * 0.05)
- User 1's LP Token is also 50 (=1*0 + 1000 * 0.05)
- User 2 LP Share is 50% (=50/(50+50))
- User 1's LP Shares is also 50%
- After User 4 added his/her liquidity (User 4 contributes both Token A & B)
- The exchange rate of Token A-Token B is 2 (=2200/1100)
- User 4's LP Share is 52.27%
- User 2's LP Shares drop to 1.14%.
- User 1's LP Shares drop to 45.45%.
- If Bootstrap completes at this point
- User 1 can redeem 1000 Token A (= 2200*45.45%) and 500 Token B (= 1100*45.45%).
- User 2 can redeem 25 Token A and 12.5 Token B
- User 4 can redeem 1,150 Token A and 575 Token B
So if you are contributing only one side of the pool (say Token A), you are effectively converting 50% Token A into Token B based on the exchange rate when Bootstrap ends (and the pool opens for trading).
LP Share change during Bootstrap
LP Token calculations
Let's assume the pool Bootstrap completes after the 4th user's contribution (as illustrated above), then the LP tokens are allocated to each liquidity provider. LP Shares (= LP Tokens / Total LP Tokens) is a pro-rata representation of LP's contribution to the overall liquidity of a given pool. LP Tokens can then be redeemed for underlying assets (Token A and B) at any time. As an example, User 1 can redeem 45.45% of Token A (1000 Token A = 2200*45.45%) and 45.45% of Token B (500 Token B = 1100*45.45%).
- You need to claim your LP tokens after Bootstrap completes
- The Token A-Token B pool will be enabled for trading
Here is an example to illustrate this:
LP tokens are allocated once Bootstrap ends, and are claimable via
- Call extrinsic
dex.claimDexSharedirectly on Polkadot Web App - on the proper network