Update cDAI Interest Rate Model with Updatable Parameters


For the past 6 weeks, Dharma has been working to rationalize interest rate models across the cryptodollars supported by Compound. We have written an update to the cDAI interest rate model, and want to open the discussion about a formal proposal of this model.

Pull Request: https://github.com/compound-finance/compound-protocol/pull/35

Etherscan deployment link to come


Our most recent proposal, Prop 12, failed as we did not ensure that our code submission adhered to the emerging standard of “pristine deploys”. While we believe our submission was safe, we agree with the community’s decision to insist upon extremely rigorous review of code updates.

We used the time since Prop 12 to create a more future-proof version of the cDAI interest rate model, which we believe is now ready for discussion and formal submission.

The new model differs from the old model in two ways:

  1. Model Parameters are updatable via governance vote
  2. Parameters have been changed vs. current status as per Prop 12

Updatable Parameters

Having Updatable Parameters will make changing the interest rate model substantially easier in the future. Instead of having to deploy a new smart contract and move the system to the new contract, the parameters of the contract can simply be adjusted via governance proposal. We believe this is a substantial step forward in terms of governance process.

Changed Parameter Values

Per Prop 12, we have changed the values of the cDAI interest rate model to set higher interest rates and a different target utilization point. Specifically, these changes are:

  1. 1.Change APY at 100% util:
    a. Current: 15%
    b. New: 25%

  2. Change the Utilization Rate that defines the “kink”:
    a. Current: 90%
    b. New: 80%

  3. Change APY at “kink”:
    a. Current: 2%
    b. New: 4%, double the gapPerBlock . [edit on 1 July: the new APR at kink is actually 4.34%, due to an increase in DSR that was recently approved by MKR governance.]

  4. No change to Base Rate per Block (APR at 0% utilization):
    a. Current: 0%
    b. New: 0%

You can read our rationale for the changes to the parameter values here.