Elastic Pool Creation
Create A Concentrated Liquidity Pool With Custom Fees
KyberSwap Elastic Security Incident
On 22 Nov 2023, the Elastic protocol experienced a security incident. More details can be found via our official channels.
All other KyberSwap products (Aggregator, Limit Order, & Classic) continue to be fully operational.
Introduction
In order to participate in a KyberSwap Elastic pool and earn fees, you first need to add liquidity to the pool. Adding liquidity to a pool opens a new position. You can add liquidity either to an existing pool, or as part of creating a new pool. This guide describes the steps required to create a new pool by adding liquidity.
Note: “Adding Liquidity” should not be confused with “Increasing Liquidity.” Adding Liquidity means creating a new position, whereas Increasing Liquidity pertains to increasing the size of a position you currently hold. You can refer to Add Liquidity To An Existing Elastic Pool for a guide on increasing your liquidity position.
Adding liquidity to create a new pool
Here are the steps to create a new pool and by definition, to open a new position.
Step 1: Create a pool
Ensure you are on the correct network, and then click the “Create Pool” button at the top right of the screen.
This will bring up the Add Liquidity screen, but it will be fairly empty until the parameters of the pool are properly specified.
Step 2: Select tokens to add
Select the pair of tokens you would like to create the pool with. You can choose from already whitelisted tokens or import any token on your chosen network.
Note on pool initilization for low-decimal, high-value tokens
As an open and permissionless protocol, KyberSwap Elastic allows any ERC20 token pool to be created. Consequently, users are responsible for checking the decimals of exotic tokens as providing low-decimal but high unit value tokens might result in higher than expected pool initialization costs.
This is due to a small portion of the provided liquidity being allocated to meet the minimum liquidity requirements when creating a new reinvestment curve. While care has been taken when designing this anti-spam mechanism to suit the vast majority of tokens, token teams are still free to define their own tokens. Please refer to Pool Initialization for further details.
If the token pair selected already has an existing pool, the corresponding pool data will be displayed. The interface above will only be shown If you're creating a new pool with a unique fee tier (see below) for the token pair.
Notice that upon selecting the token pair, the current market price is also displayed for reference. Additionally, when creating a new pool, a small amount of liquidity will be needed to seed the pool's liquidity in order to prevent spam.
Non-standard tokens
As a permissionless protocol, KyberSwap enables users to provide liquidity and market make for any token implementing the ERC20 interface. While this standard interface enables interoperability between various DeFi protocols (including KyberSwap), token teams are still able to specify customized token mechanics (i.e. supply/demand, tokenomics, etc.) which could result in unexpected outcomes.
Note that the token mechanics are specified as part of the token's smart contract hence KyberSwap does not have any control over specific token implementations. Some examples of non-standard tokens are:
Fee-on-transfer (FOT): For every token transfer, a percentage of the tokens are burned or distributed to various wallets.
Rebase: Token supply is adjusted periodically to maintain price stability.
LP: Tokens representing a proportional claim of a liquidity pool's assets.
To ensure the safety of our user's funds, KyberSwap Elastic does not support non-standard tokens. Please do your own research before providing liquidity using such tokens as KyberSwap was optimized to handle the standard ERC20 implementation.
Step 3: Select fee tier
With the token pair selected, you will then be required to select your fee tier. For your convenience, the distribution of liquidity is also displayed in the dropdown to allow you to see which are the most popular fee tiers for your selected token pairs. Additionally, pools which are eligible for farming rewards are also highlighted via the 💰 icon.
KyberSwap Elastic currently offers the following tiers to cater for different token pair correlations:
Adding liquidity to an existing fee tier
Selecting a fee tier with existing liquidity will result in your position being added to the existing pool. A separate guide has been created just for Adding Liquidity To An Existing Elastic Pool.
Step 4: Set starting price
Upon selecting a new fee tier, you will then need to specify the starting price for the pool. For reference, the current market price of the token pair selected is also displayed. The starting price will determine the specific price curve that is implemented for the pool.
Price deviations
As a safety precaution, KyberSwap Elastic will prompt the LP if the specified pool price deviates significantly from the market price.This is because any liquidity additions that significantly deviates from the market price would immediately result in impermanent loss as arbitrageurs sweep up the significantly discounted token from the position.
Step 5: Set price range
This is the range at which your capital will be used in the pool. If the market price moves outside this range, your capital will not be used and will not earn any fees.
Choosing The Best Range To Maximize LP Returns
A LPs returns are heavily dependent on the position range selected for concentrated liquidity protocols such as KyberSwap Elastic. To help you maximize your potential returns, KyberSwap Insights has created a simple flow diagram which walks you through each of the key decision points when determining a position range which best suites your risk-adjusted return preferences.
View and interact with the full diagram in greater detail here.
You can set your price range either by typing in the prices manually or ussing the +/- buttons. For new pools, as there is no existing liquidity, no liquidity data will be shown.
For convenience, KyberSwap also provides you the option to choose from a list of preset ranges which correspond to different DeFi familiarity and risk profiles. The section below provides some guidance on the percentage-based options matched to the token pair correlation which is calculated by KyberSwap.
Step 5: Specify liquidity amount
Specify the deposit amounts, or how much liquidity you would like to add to open this position. You can either manually type in amounts or use the “Max” and “Half” buttons. Once you specify the deposit amount for one leg of the pair, the corresponding leg’s amount will be automatically calculated and populated for you.
Note: The proportion of liquidity deposited for each leg of the pair is determined by your price range, so it is helpful to set the price range before specifying your deposit amounts.
Step 6: Authorize contract
If you haven’t already done so, you will need to need to authorize the KyberSwap smart contract to transact using your tokens on this network. Click the “Approve [Token]” button to do so. This will open the approval dialog window on your wallet.
Once the approval is confirmed, the previously-greyed-out “Preview” button will be clickable.
Step 7: Review liquidity provision transaction
Click on the “Preview” button to bring up the preview screen. Once you have reviewed the information on this screen, click on the “Supply” button to proceed.
You will need to confirm this transaction in your wallet.
Once you’ve confirmed the transaction you will see a screen informing you that the transaction has been submitted. You can click on “View Transaction” to view your transaction on the appropriate blockchain explorer.
Your new position should now be visible on the My Pools page on KyberSwap.
Last updated