IDO Pool using Future Yield (YIDO)
IDO Pools using both native token (USDB/ETH) and future yield token (fyUSD/fyETH) to fund IDO projects.
IDO process is work as follow:
- New IDO pool is deployed with set IDO size in USD value.
- Users deposit tokens (both native and future yield can be accepted) into IDO pool
- At the moment IDO ends, IDO contracts took a snapshot of ETH price to calculate total USD value deposited into the pools
- If total USD value is under IDO size, user can claim the amount of IDO token according to their value deposited into the pool.
- If total USD value exceeds IDO size, amount of IDO token claimable by user is calculated as following:
if this happens, user will be refunded amount of ETH/USDB exceeded USD value of the IDO token they received.
Contracts
IDOPoolAbsctract
Abstract contract for IDO pools without the pricing snapshot logic at the end of the IDO.
Function _getTokenUSDPrice() need to be implemented to return value of staking token in USD value.
See on Github
ETHPriceOracle
abstract contract to get ETH/USD price using Redstone Oracle.
See on Github
USDIDOPool
IDO pool for USDB and fyUSD tokens.
See on Github
ETHIDOPool
IDO pool for ETH and fyETH tokens. Token price at IDO end is snapshotted using ETHPriceOracle.
See on Github