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 add liquidity to an existing pool.
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. Please refer to this article if you have an existing position that you would like to add more liquidity to.
Adding liquidity to an existing pool
Here are the steps for opening a new position using an existing liquidity pool.
Step 1: View available pools
Ensure you are on the correct network, and then choose the tokens to provide as liquidity. You can do this through the token selectors at the top of the Elastic Pools interface. Once you’ve selected your pair of tokens, a filtered list of pools that use that pair will be displayed on the interface.
Note: If you know the contract address of the pool you want, you can also filter the list for the pool you want by inputting the address in the search bar.
Step 2: Select pool
Select the pool you’d like to participate in by clicking on the appropriate “Add Liquidity” button. This will open the Add Liquidity screen.
Adding liquidity to an out of range pool
Note: For the safety of our LPs, KyberSwap Elastic will notify LPs when adding liquidity to a pool that is out of range. 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 3: Select fee tier
For a list of fee tiers and their recommended applications, please refer to this article.
Step 4: Set your price range
This is the range at which your capital will be used in the pool. If the market price moves outside the range your capital will not be used and will not earn any fees.
You can set your price range either using the sliders or by typing in prices manually.
Note: You can also choose to click on the “Full Price Range” option, but that will set your range to be between 0 and infinity, and your liquidity will be very thinly spread out, greatly impairing its fee-earning potential.
Single-sided liquidity
Note: For the safety of our LPs, KyberSwap Elastic only allows single-sided liquidity to be added if the selected price range does not support the current market price. This is because the addition of double-sided liquidity outside the market price would immediately result in impermanent loss as arbitrageurs sweep up the significantly discounted token from the position.
Whenever a position outside the market price is created, the deposit amount for the corresponding token that is prone to immediate impermanent loss is disabled.
Step 5: Configure token amounts
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.
Slippage: Protecting your liquidity
As an AMM protocol, any additions of liquidity to the pool might result in slippage whereby the final amount deposited differs from the expected amount. To minimize the effects of slippage, KyberSwap Elastic enables you to configure a slippage tolerance that caps the amount of slippage above which your transaction will be reverted (i.e. failed and cancelled).
For further reading on why slippage occurs and how to protect your liquidity additions or removals, please refer to this document.
Step 7: Review liquidity provision
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.