Adjusting Reserve Factors
01Summary
Proposal to adjust reserve factors across 9 Compound cToken markets to mitigate current market risks. Increases reserve factors for USDC (5%→7.5%), DAI (5%→15%), ETH (10%→20%), WBTC (10%→20%), UNI (20%→25%), and COMP (20%→25%); decreases for USDT (20%→7.5%), BAT (50%→25%), and ZRX (50%→25%). Reserve factors represent a percentage of borrower interest used for governance or insurance against defaults.
- Type
- parameter change
Key changes
- USDC reserve factor increased from 5% to 7.5%(medium)
- DAI reserve factor increased from 5% to 15% due to identified market risk(high)
- ETH reserve factor increased from 10% to 20%(medium)
- WBTC reserve factor increased from 10% to 20%(medium)
- UNI reserve factor increased from 20% to 25%(low)
- COMP reserve factor increased from 20% to 25%(low)
- USDT reserve factor decreased from 20% to 7.5%(medium)
- BAT reserve factor decreased from 50% to 25%(medium)
Notable concerns
- DAI market risk concerns prompted significant reserve factor increase from 5% to 15%
Generated by Kvorum
02Description
Adjusting Reserve Factors
Reserve Factor was changed several times to mitigate market risks; it is time to adjust them to the current market.
What is Reserve Factor?
The Reserve Factor is a percentage of the borrowers paid interest which can be used by the governance or act as an insurance against borrower default which protects all the suppliers.
Increased Reserve Factor
- USDC 5% to 7.5%
- DAI 5% to 15%
- ETH 10% to 20%
- WBTC 10% to 20%
- UNI 20% to 25%
- COMP 20% to 25%
Decreased Reserve Factor
- USDT 20% to 7.5%
- BAT 50% to 25%
- ZRX 50% to 25%
This proposal includes a community member Autonomous Proposal that explains the DAI market risk.
Reference Links
03Mismatch analysis
I mapped each cToken contract address in the calldata to its underlying market (cUSDC, cUSDT, cDAI, cETH, cWBTC, cUNI, cCOMP, cBAT, cZRX) using known Compound v2 deployment addresses, then converted each decoded uint256 argument from 18-decimal fixed point to a percentage (e.g., 75000000000000000 = 7.5%). Comparing against the description's stated before/after reserve factor percentages for each of the nine markets, every value matches exactly: USDC 7.5%, USDT 7.5%, DAI 15%, ETH 20%, WBTC 20%, UNI 25%, COMP 25%, BAT 25%, ZRX 25%. There are exactly nine calldata actions and nine claimed changes in the description, with a one-to-one correspondence and no extra or missing markets. No targets are mismatched, no values are off, and nothing significant appears to be omitted or added. This is a clean, well-formed proposal where prose and calldata are fully aligned.
Generated by Kvorum
04Actions
- Target
- 0x39aa…7563
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "75000000000000000" }- Calldata
- Target
- 0xf650…dcc9
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "75000000000000000" }- Calldata
- Target
- 0x5d3a…3643
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "150000000000000000" }- Calldata
- Target
- 0x4ddc…0ed5
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "200000000000000000" }- Calldata
- Target
- 0xc11b…a7f4
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "200000000000000000" }- Calldata
- Target
- 0x6c8c…0e4e
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "250000000000000000" }- Calldata
- Target
- 0xb331…d407
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "250000000000000000" }- Calldata
- Target
- 0x35a1…d550
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "250000000000000000" }- Calldata
- Target
- 0x70e3…e8e4
- Value
- 0 wei
- Function
- _setReserveFactor(uint256)
- Arguments
{ "0": "250000000000000000" }- Calldata
05Tally
Summed from votes
06Voters
| Voter | Choice | % of total | Rationale | ||
|---|---|---|---|---|---|
| ED0xed40…08ff | For | 325.8K | 38.04% | — | 6y ago |
| 660x6626…c35c | For | 125.1K | 14.61% | — | 6y ago |
| 540x54a3…e189 | For | 100.1K | 11.69% | — | 6y ago |
| 7E0x7e4a…19fa | For | 100K | 11.68% | — | 6y ago |
| 1D0x1d29…5d1f | For | 50K | 5.84% | — | 6y ago |
| E50xe5a5…beb9 | For | 50K | 5.84% | — | 6y ago |
| 870x879d…0f11 | For | 24.2K | 2.82% | — | 6y ago |
| 140x1494…3c2b | For | 21.1K | 2.46% | — | 6y ago |
| DAdakeshi.eth0xe3c9…6b21 | For | 20K | 2.34% | — | 6y ago |
| B00xb032…449b | For | 10.5K | 1.22% | — | 6y ago |
| 8D0x8d07…a265 | For | 7.5K | 0.88% | — | 6y ago |
| 2B0x2b38…bf33 | For | 7.5K | 0.88% | — | 6y ago |
| 260x2660…699c | For | 7.1K | 0.83% | — | 6y ago |
| B80xb8a6…6406 | For | 5K | 0.58% | — | 6y ago |
| FC0xfc04…5ac2 | For | 2.3K | 0.27% | — | 6y ago |
| 7F0x7f84…4d0b | For | 134.4 | 0.02% | — | 6y ago |
| 480x4807…baa1 | For | 22.4 | 0.00% | — | 6y ago |
| A50xa5c3…6a69 | Against | 14.6 | 0.00% | — | 6y ago |
| 840x84e3…5a95 | For | 10.8 | 0.00% | — | 6y ago |
| E00xe0b3…2514 | For | 8 | 0.00% | — | 6y ago |
| D00xd0c3…391e | For | 3.5 | 0.00% | — | 6y ago |
| 6B0x6b7a…7382 | For | 3.2 | 0.00% | — | 6y ago |
| E80xe8d8…3f31 | For | 1.8 | 0.00% | — | 6y ago |
| D30xd34a…9fc3 | For | 1.5 | 0.00% | — | 6y ago |
| FB0xfb30…ea3f | For | 1.3 | 0.00% | — | 6y ago |
| E20xe264…6c17 | For | 0.7 | 0.00% | — | 6y ago |
| E80xe830…56b9 | For | 0.4 | 0.00% | — | 6y ago |
| 850x8590…1637 | For | 0.3 | 0.00% | — | 6y ago |
| D20xd2c2…ade9 | For | 0.3 | 0.00% | — | 6y ago |
| 020x02af…6516 | For | 0.3 | 0.00% | — | 6y ago |
| JTjthrack.eth0x44c6…aabd | For | 0.3 | 0.00% | — | 6y ago |
| 850x8579…213a | For | 0.2 | 0.00% | — | 6y ago |
| B00xb0eb…11dc | For | 0.2 | 0.00% | — | 6y ago |
| BB0xbbb0…13a0 | For | 0.2 | 0.00% | — | 6y ago |
| 430x4359…0d9d | For | 0.1 | 0.00% | — | 6y ago |
| 400x4007…7f4e | For | 0.1 | 0.00% | — | 6y ago |
| 5A0x5a50…0ad7 | For | 0 | 0.00% | — | 6y ago |
| 260x260d…601f | For | 0 | 0.00% | — | 6y ago |
| 3B0x3b51…9e45 | For | 0 | 0.00% | — | 6y ago |
| 550x5567…1251 | For | 0 | 0.00% | — | 6y ago |
| D40xd4ed…4fef | For | 0 | 0.00% | — | 6y ago |
| 600x60a7…5f4d | For | 0 | 0.00% | — | 6y ago |
| E40xe49e…f5ca | For | 0 | 0.00% | — | 6y ago |
| 2D0x2d42…8ce0 | For | 0 | 0.00% | — | 6y ago |
| BB0xbbcf…e727 | For | 0 | 0.00% | — | 6y ago |
| C40xc402…6493 | For | 0 | 0.00% | — | 6y ago |
| 1F0x1f76…f6dd | For | 0 | 0.00% | — | 6y ago |
| A20xa21f…b61e | For | 0 | 0.00% | — | 6y ago |
| A40xa4b5…bdc2 | For | 0 | 0.00% | — | 6y ago |
| DC0xdc96…7d0d | For | 0 | 0.00% | — | 6y ago |
07Forum
- Increase DAI Reserve Factor from 5% to 15% ↗discourse · high confidence
Arguments for
- Raising the reserve factor to 15% would de-risk the DAI market by reducing the economics of recursive borrowing and decreasing concentration and leverage.— kybx86
- A higher reserve factor would build additional reserves as a safety measure for Compound and its user-base.— kybx86
- A 15% reserve factor for DAI would standardize reserve factors across stablecoin markets, as USDC has the same 5% factor despite lower price volatility.— kybx86
- Adjusting the DAI reserve factor requires no changes to contracts, making it a quick governance action to improve protocol security.— kybx86
Arguments against
None surfaced.
Notable participants
- kybx86Proposer of the DAI reserve factor increase who was affected by the liquidation event and is also working on a compensation plan.
- DmitryCommunity participant who inquired about engagement with major COMP holders.