Transfer the remaining RAD/USDC balances of the Radicle LBP to the Radicle Treasury and add liquidity to Uniswap
โ Snapshot Poll โ
Functional Description
This is a proposal to complete the LBP event by closing the pool and transferring the remaining RAD/USDC balances to the Radicle Treasury. To maintain a liquid market, it is also being proposed that 4M USDC and 400K RAD are added to a Uniswap trading pair.
Purpose
To officially end the Radicle LBP event, return the remaining balances to the community-owned Treasury, and support the growth of the network by adding liquidity to the popular decentralized exchange, Uniswap.
Background
The Radicle LBP was a 48h event that allowed anyone to acquire RAD for USDC by swapping on a Balancer Liquidity Bootstrapping Pool.
The event successfully concluded on February 27th, with over 24M USDC raised for the community treasury. After pausing the trading on the LBP, there was still a lot of interest in trading RAD. This interest was discussed on community.radworks.org (see here and here). In response to this sentiment, the core team created a Snapshot poll to unpause swapping on the Balancer LBP.
Since the Balancer pool weights converged to 50/50, the pool effectively functioned as a regular DEX, providing an immediate, short term solution, as the liquidity in the pool cannot be transfered anywhere else without a formal governance proposal. The Snapshot poll passed with a strong majority.
Since then, the volume of the community-started RAD/USDC pool has surpassed the volume of the Radicle LBP pool, seeing over $750k in liquidity.
Reasoning & Analysis
Transferring the remaining balances of the Radicle LBP to the Radicle Treasury is the cleanest way to end the LBP event. Radicleโs Liquidity Bootstrapping pool was always meant to be closed. The original event was only meant to last 48hrs (See LBP FAQ). The pool was unpaused to support liquidity for RAD.
Additionally, transferring the balances is a necessary step that needs to be taken before evaluating the community proposals for what to do with the remaining balances of the LBP event. There are open discussions for redistributing the unsold tokens to participants in the LBP and/or using the remaining balances to provide liquidity in numerous decentralized exchanges.
This proposal will successfully close the Balancer pool and move itโs volume to the RAD/USDC pair on Uniswap.
Impact
Closing the Balancer pool and moving itโs liquidity to Uniswap will ensure an accessible and liquid market for RAD token holders. This will support the health of the network by reducing price volatility and cultivating deep liquidity for RAD.
Open Questions
Weโd like to reduce the time required for formal review from 5 days โ 2 days to move this proposal forward. The reasoning behind this decision is that this proposal has always been planned but was delayed due to the communityโs desire for immediate liquidity. Since this proposal is also blocking the formal evaluation of other community proposals regarding the use of these balances (i.e. this discussion), we believe moving this proposal through a quicker formal review is appropriate.
Technical Implementation
A proposal has already been created by @cloudhead. Please refer to the details below.
If executed, this proposal will:
- Remove liquidity from the LBP, by swapping the RADP pool tokens for the underlying assets (RAD and USDC)
- Return the 3.5M USDC loan to the Radicle Foundation
- Approve Uniswap router for 4M USDC
- Approve Uniswap router for 400K RAD
- Add liquidity to Uniswap RAD/USDC pair via the Uniswap router
After execution, the Timelock holds all Uniswap LP tokens for the RAD/USDC pair.
Notes
- For this proposal to go through, the LBP must have at least 2M RAD and 22M USDC.
0x750dD34Fb165bE682fAe445793AB9ab9729CDAa3
is the CRP Pool.0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
is the USDC contract.0x31c8EAcBFFdD875c74b94b077895Bd78CF1E64A3
is the RAD contract.0x055E29502153aEDcFDaE8Fc15a710FF6fb5e10C9
is the Radicle Foundation address.0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
is the UniswapV2Router02 contract.0x8dA8f82d2BbDd896822de723F55D6EdF416130ba
is the Timelock contract.
Actions
0x750dD34Fb165bE682fAe445793AB9ab9729CDAa3 0 "exitPool(uint256,uint256[])" 99999900000000000000 [2000000000000000000000000,22000000000000]
0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 0 "transfer(address,uint256)" 0x055E29502153aEDcFDaE8Fc15a710FF6fb5e10C9 3500000000000
0x31c8EAcBFFdD875c74b94b077895Bd78CF1E64A3 0 "approve(address,uint256)" 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D 400000000000000000000000
0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 0 "approve(address,uint256)" 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D 4000000000000
0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D 0 "addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256)" 0x31c8EAcBFFdD875c74b94b077895Bd78CF1E64A3 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 400000000000000000000000 4000000000000 0 0 0x8dA8f82d2BbDd896822de723F55D6EdF416130ba 1815284486