Legacy market migration: WBTC

Legacy market migration plan to begin with WBTC and continue with BAT, ZRX, USDC, and finally ETH.

  • Old version of cToken contracts as mentioned above, are all immutable the governance cannot implement new features into them.

Some of the features that are available and are under developement like:

  • sweepToken ( recover accidentally sent tokens )
  • supplyCap ( risk management )
  • protocol liquidation fee into reserves ( portion of the liquidation incentive could go into reserves )

The proposal will add a duplicated cWBTC market using the latest upgradeable cToken contract and implementation, which inherits the same propertys as the current cWBTC market.

  • 65% Collateral Factor
  • 20% Reserve Factor
  • modern interest rate model ( see below )
  • COMP distribution will be moved to the new cWBTC market, this incentivize the users to migrate into the new market.

Open Oracle

  • No changes needed, the current oracle already knows the underlying address of cWBTC

Deployed and verified contracts for the proposal:

The new interestratemodel have the following parameters:

  • kink at 80% utilization
  • 2% base rate
  • 20% rate at 80% utilization
  • 40% rate at 100% utilization

Previous Discussion

CErc20Delegator was re-deployed with correct initialexchangerate parameter


Its about time we move away from the old contracts. I would love to see a little more research/explanation for the IRM, but other than that lets go for it!


I’m also interested if there might be better IRM parameters.

However, the proposed on is much better than the linear to 40% used by currently used by WBTC.

@blck will this resolve the recursive liquidate issue for wBTC too? I’m assuming so.

yes it fixes that issue too

1 Like

I just reviewed the newly deployed contracts. All were deployed correctly with the expected parameters. Below are screenshot from matching.

cWBTC: 0xccF4429DB6322D5C611ee964527D42E5d685DD6a

cWBTC implementation: 0x24aA720906378bb8364228Bddb8CAbbc1f6Fe1ba

JumpRateModelV2: 0xF2e5dB36B0682f2CD6bC805c3a4236194e01f4D5


I might be missing this - but to be clear - we’ll need to pay the gas fee to withdraw from the old contract and the gas fee to deposit into the new contract?

Would this also mean that in order to migrate, if someone has borrowed against WBTC, they’d need to repay the loan, to withdraw the collateral to resupply to the new contract?

For the time being, users do not need to take any action. Both WBTC markets will function normally for a while.

Before any further actions are taken, I hope we see a migrator contract which enables migration without having to payback existing loans.


I would hope so as well - considering gas prices - I’m afraid if there isn’t a migrator we might see a large egress of funds. Otherwise, we may want to consider a gas repayment program similar to Balancer’s.

With regards to the parallel contracts, what is the timeline for the comp distribution switch? I’m assuming immediately upon deployment?

I only ask since I have quite a lot tied up in WBTC, USDC and ETH which would all need to be migrated if I want to keep earning Comp for voting/supplying.


The COMP distribution switch is immediate to softly encourage migration to the new market. I will advocate for the introduction of a migrator with gas fees subsidized by the community before anyone is forced to move markets (decrease of collateral factor). Again, I don’t see this happening for a while, so no rush to do anything immediately.


thoughts on delaying the comp distribution switch till after a migrator contract is made? otherwise this is advantageous to those users who are comfortable interacting with smart contracts directly

1 Like

also, i’m slightly concerned that we’re doing our first legacy market migration for a large market like WBTC. why not start with BAT or ZRX?


Completely agree that starting with a smaller market would have been ideal.

I think that switching over COMP distribution now is ok. The new WBTC market will be shown on Compound frontends, so users will be able to switch their positions over using the normal interfaces as their leisure. Hopefully we will have a migrator soon, and its a must prior to any CF changes.


Hi, I am wondering is it possible to develop a migration zapper so it won’t affect current loan collateralized by legacy cWBTC token.

Otherwise, we need repay the loan first and then switch the WBTC markets. The gas fee could be too much. Thx a lot.


Does this require an unstake and restake? (2 gas fees)

1 Like
  1. Redeem cWBTC for WBTC

  2. Approve new cWBTC for spending

  3. Mint new cWBTC

yea this is 3 gas fees! But for what purpose?

1 Like

Since this change is completely on Compound’s side, I think it is necessary to at least take measures such as having Compound pay for Gasfee.

Frankly speaking, I think many of the recent changes, such as the last wbtc collateral rate change, are burdensome to users.


Right, there does not seem to be an explanation of anything anywhere.


this couldn’t wait for L2? Given the gas fee …

1 Like