Smart Yield v1 Withdrawal Guide
This guide provides step-by-step instructions for withdrawing junior and senior positions from Smart Yield v1 using Etherscan
Before you start
Make sure you have access to the wallet you used to stake in the DAO.
Here's the list of contract addresses you may need for this guide:
Pool | Pool Address | Senior Bond Address |
---|---|---|
Compound DAI |
|
|
Compound USDC |
|
|
Compound USDT |
|
|
Aave DAI |
|
|
Aave GUSD |
|
|
Aave USDC |
|
|
Aave USDT |
|
|
AAVE RAI |
|
|
AAVE sUSD |
|
|
How to withdraw a junior position
Step 1 - Withdraw junior tokens from (optional)
In case you have been staking your tokens in the Yield Farming contract, you need to withdraw them to be able to continue the redeeming process.
Go to the smart contract from Rewards section.
Call
YieldFarm.withdrawAndClaim(amount)
Use parameter
amount
: the user balance in the yield farm (fetch withYieldFarm.balances(address)
)
Step 2 - Sell junior tokens
Call
SmartYield.sellTokens(tokenAmount, minUnderlying, deadline)
Use parameters
tokenAmount
: the user balance of the bb_cUSDC tokenminUnderlying
:tokenAmount * price / 1e18
withprice = SmartYield.price()
(price()
is not view so need to staticCall in order to fetch the price first)deadline
: current block.timestamp + 600 seconds or so
How to redeem a senior bond
Step 1 - Get Token ID
Go to your Portfolio on Etherscan or any other portfolio tracker and get tokenID
value of your senior bond NFT.
Step 2 - Redeem Bond
Find the pool address you need from the list at the top of the page and open it on Etherscan
Go to
Write Contract
tab and connect your walletSelect
redeemBond
method and usetokenID
as an input parameter from Step 1 (after pasting thetokenID
make sure to click on the+
sign next to(uint256)
and select 10^18 so your parameter is properly formatted) and click "Write"
Last updated