Brief Strategy Description: This strategy is based on maker-dai-delegate from monoloco (https://github.com/therealmonoloco/maker-dai-delegate) with
- Updated keeper automation & harvestTrigger override specifics.
- UniswapV3 integration.
- ySwaps integration.
- Automated testing for all maker collateral for want token universality.
Stages of the strategy to go from v2.1 to v3:
- First stage (maker v2.2 -- current): Deposit YFI into Maker, mint DAI, deposit DAI in yvDAI. With above mentioned keeper automation & harvestTrigger updates + UniswapV3 integration + ySwaps integration.
- Second stage (maker v2.3): Automated tests to deposit any collateral into Maker, mint DAI, deposit DAI in yvDAI.
- Third stage (maker v3): Deposit any collateral on Maker, mint DAI, deposit in yvDAI or swap DAI through Maker's PSM and deposit into yvUSDC (etc.) or universal deposit interface.
-
Install Brownie & Ganache-CLI, if you haven't already.
-
Sign up for Infura and generate an API key. Store it in the
WEB3_INFURA_PROJECT_ID
environment variable.
export WEB3_INFURA_PROJECT_ID=YourProjectID
- Sign up for Etherscan and generate an API key. This is required for fetching source codes of the mainnet contracts we will be interacting with. Store the API key in the
ETHERSCAN_TOKEN
environment variable.
export ETHERSCAN_TOKEN=YourApiToken
- Optional Use .env file
- Make a copy of
.env.example
- Add the values for
ETHERSCAN_TOKEN
andWEB3_INFURA_PROJECT_ID
NOTE: If you set up a global environment variable, that will take precedence
- Make a copy of
- Download the mix.
brownie bake yearn-strategy
To run the tests over all Maker collateral:
brownie test