Summary:
- Update monetary policy for WBTC, WETH, tBTC, LBTC, cbBTC crvUSD mint markets to contract deployed here with +1% rate shift (extra_const).
- Switch weETH monetary policy from non-yielding markets contract to yielding markets contract here.
- Reduce rate shift on yielding crvUSD mint markets (sfrxETH, sfrxETH2, wstETH, weETH) from 2% to 1.5%.
Abstract:
This proposal will replace the monetary policy on non-yielding crvUSD mint markets with the contract currently in use for yielding markets. The main difference is the addition of the extra_const() method, which adds a configurable rate shift to the monetary policy algorithm. This will allow the DAO to adjust the min rate of each market without changing any other behavior in the monetary policy.
This proposal also adjusts the extra_const() params for yielding and non-yielding mint markets and switches the weETH market to the contract used by yielding markets.
Motivation:
Previously, yielding markets had included a rate shift to account for ETH staking rewards earned by the underlying. The addition of this method to non-yielding markets introduces additional DAO control over the baseline borrow rate for non-yielding mint markets. There has been recognition that mint markets may have excessively low rates for prolonged periods of time. This has occurred recently as heightened crvUSD demand has not coincided with an equivalent increase in crvUSD minted from borrower demand. It may be prudent for the DAO to introduce a non-zero baseline so there is still some revenue while waiting for an uptick in borrow demand. At the very least, the introduction of the newly deployed monetary policy contract for non-yielding markets will give additional control for the DAO to adjust the baseline as it sees fit.
The yielding markets have had the rate shift set to 2% as a way to offset ETH staking rewards. As ETH staking yield has continued to decline, and considering that the WETH market attracts substantially more loans and overall borrow demand, it is preferable to reduce the shift slightly from 2% to 1.5%. This brings the spread between yielding/non-yielding markets from 2% to 0.5%.
Specification:
WBTC_CONT = "0x4e59541306910aD6dC1daC0AC9dFB29bD9F15c67"
WETH_CONT = "0xA920De414eA4Ab66b97dA1bFE9e6EcA7d4219635"
TBTC_CONT = "0x1C91da0223c763d2e0173243eAdaA0A2ea47E704"
LBTC_CONT = "0x8aca5A776a878Ea1F8967e70a23b8563008f58Ef"
CBBTC_CONT = "0xf8C786b1064889fFd3c8A08B48D5e0c159F4cBe3"
WEETH_CONT = "0x652aEa6B22310C89DCc506710CaD24d2Dba56B11"
YIELDING_MONPOL = "0x8D76F31E7C3b8f637131dF15D9b4a3F8ba93bd75"
NEW_MONPOL = "0x254B07d5Ad01028e0533001118b16eD1fBc94E18"
ACTIONS = [
# WBTC to new AggMonPol
(WBTC_CONT, "set_monetary_policy", NEW_MONPOL),
# WETH to new AggMonPol
(WETH_CONT, "set_monetary_policy", NEW_MONPOL),
# TBTC to new AggMonPol
(TBTC_CONT, "set_monetary_policy", NEW_MONPOL),
# LBTC to new AggMonPol
(LBTC_CONT, "set_monetary_policy", NEW_MONPOL),
# CBBTC to new AggMonPol
(CBBTC_CONT, "set_monetary_policy", NEW_MONPOL),
# WEETH to yielding AggMonPol
(WEETH_CONT, "set_monetary_policy", YIELDING_MONPOL),
# Reduce extra_const on yielding AggMonPol from 2% to 1.5%
(YIELDING_MONPOL, "set_extra_const", 475646879)
]