mil0xeth / Maker-v3

Let's draw some Dai together.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Maker v3

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.

Installation and Setup

  1. Install Brownie & Ganache-CLI, if you haven't already.

  2. 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
  1. 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
    1. Make a copy of .env.example
    2. Add the values for ETHERSCAN_TOKEN and WEB3_INFURA_PROJECT_ID NOTE: If you set up a global environment variable, that will take precedence
  1. Download the mix.
brownie bake yearn-strategy

Testing

To run the tests over all Maker collateral:

brownie test

About

Let's draw some Dai together.

License:GNU Affero General Public License v3.0


Languages

Language:Python 56.7%Language:Solidity 43.2%Language:Shell 0.0%Language:JavaScript 0.0%