Add markets: stETH

Yeah the price oracle question is going to be a fun one to explore. In the meantime a 0cf makes sense. Hopefully now ETH will be borrowed and put into steth, hopefully creating more borrowing power on the ETH market. @rleshner @monet-supply what do you think about the proposed IRM changes?

@massnomis, I am almost always wishing protocols/exchanges add additional assets. However, I think that adding an asset so closely tied in value to another (ETH, stETH) will open more doors for whales to game the system to obtain more COMP.

Also, once ETH 2.0 launches I see a slew of issues that may surface, not only with the redemption of stETH. Just look at Compound’s previously depreciated assets (still holding ~$130 million worth of assets). Thinking that Compound users will borrow ETH to deposit into Lido for stETH can and more than likely has been done. Just as users have also borrowed ETH to run ETH 2.0 nodes themselves.

If stETH does appear on Compound, I’d recommend the following:

  • Collateral Factor: 0% -until ETH 2.0 launch
  • Reserve Factor: 25%
  • COMP Speed: 0 / day (unless COMP distribution increases)
  • Borrow Cap: NONE
  • Supply Cap: 10-20% of currently minted stETH
  • Price Reporter: Use all price reporters (for analytics) until the collateral factor is modified.

Using a 1:1 ratio to ETH price is a mistake, but as long as the CF remains at 0%, we really don’t have to worry about the price. If stETH price crashes significantly while using 1:1 ratio, then we could see stETH suppliers suddenly borrow up to their max to purposely get liquidated by liquidation bots. That would effectively enable those suppliers to exchange their lower valued stETH into any other asset on Compound. I could also see suppliers being able to leverage this by purchasing more stETH to supply for more collateral than they should have.

BTW, how often does Compound’s price feed get updated? Compound may want to update stETH’s price feed more frequently.

@paraficapital stETH here

So 0cf, 0 comp speeds. Supply cap is can be implemented by forking CREAM’s ERC20Capable and a comptroller patch, but for now, without incentives and CF, people are less likely to move over to farm, while CRV and LIDO are emitted over at curve.

I talked to @Johann_Eid about chainlink bringing in stETH prices, and its on the way.

I think for now, 1:1 ETH price, 0cf, 0 COMP, until chainlink can support it fully, and at that point we can migrate. This asset will need migration as ETH 2.0 Nears, so getting the ball running should be a good idea.

the curve pool is massive, Possibly the deepest liquidity on chain out of all assets (not pegged to 1USD). I think that curve pricing alone ~can be enough, because to swing that price will be billions of capital, but possible with a “hack” of sETH over at Synthetix. Since there’s no CEX trading for stETH, curve’s prices are the most accurate. If stETH falls off par, keeping that peg could be an issue, but if its 0cf, then its minimal. with the current proposed conditions, I am all for pushing this forward.

@massnomis and I have discussed the highly likely scenario of users borrowing ETH, converting to stETH, and depositing again to farm COMP.

Is this good or bad?

A positive argument for this scenario is that Compound will encourage people to start contributing more and more ETH to validate the network, paving the way for a better ETH 2.0 launch.

I’d love to hear more discussion of the pros and cons of this scenario; borrowing ETH, minting stETH, and depositing it back.

1 Like

Let’s talk about it at the community call tonight?

1 Like

The biggest risk here is the discount could potentially get blown out if too many people do this trade. We’ve seen a similar dynamic play out with Grayscale products:

  • Grayscale trusts like GBTC traded at a premium due to strong investor demand
  • Prop funds borrowed BTC, sold, and used proceeds to purchase GBTC, this allowed them to earn an implied yield from selling into the premium once the 6-12 month lockup ends
  • Too many funds put on this same trade, causing the GBTC premium to collapse and even go negative
  • Funds took a big loss, and apparently some of them defaulted on their BTC loans because the value of GBTC was no longer enough to pay back their debt

This is definitely a valuable opportunity for Compound to make cETH more productive with stable borrowing demand. But certainly not without risk.

Once stETH redemptions are enabled with the ETH2 merge upgrade, this price discount risk will go down considerably. But until then we should be a careful to set an appropriate collateral factor.


I certainly learned from that GBTC issue, very cool. Hopefully we will avoid that, we have no lockup and zero CF, I think good amounts of research should go into the CF, redemptions too.

Found this today:

LDO tokens are the controllers for stETH, we should get some as part of the incentivization of LDO like they do on curve, and hold them in the governance wallet, or even a multisig.

Their existing incentives on Curve (and maybe other DEX in the future) benefits lenders indirectly by supporting liquidity. No harm in asking if they’re interested in incentivizing users of the stETH market, but I’m sorta doubtful.

we will get to that bridge later, but lets keep it in mind.


npx saddle -n mainnet script token:deploy '{
  "underlying": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
  "comptroller": "$Comptroller",
  "interestRateModel": "0xd956188795ca6F4A74092ddca33E0Ea4cA3a1395",
  "initialExchangeRateMantissa": "2.0e26",
  "name": "Compound stETH",
  "symbol": "cStETH",
  "decimals": "8",
  "admin": "$Timelock",
  "implementation": "0xa035b9e130F2B1AedC733eEFb1C67Ba4c503491F",
  "becomeImplementationData": "0x"

Interest rate model: same as cLINK, cMKR, cSUSHI, cAAVE, and cYFI
Implementation: same as cLINK, cMKR, cSUSHI, cAAVE, and cYFI

The interest rate model and implementation were chosen to be the same as standard ERC20 (non-stablecoin) because the utility of stETH is rather limited until the merge occurs and users are able to withdraw their ETH.

The interest rate model and possibly the implementation will have to be revisited around the time of the merge.


ok this is epic.
@getty the IRM look good for the other implementations?

Looks good. Do you want to use the ETH interest rate curve instead of the altcoin interest rate curve?

1 Like

Since users can’t use stETH or the underlying ETH to pay for transaction fees, I think it will have a different market compared to ETH, so that’s why I think using the altcoin interest rate curve is best for now.

Around the time of the merge, we can change the interest rate to one similar to ETH’s.


1 Like

Change ETH IRM to the stablecoin IRM, yes

cStETH deployed to 0x6924c66ed77F5E45186b2E9a2b826ee061884624.

npx saddle match 0x6924c66ed77F5E45186b2E9a2b826ee061884624 CErc20Delegator 0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84 0x3d9819210a31b4961b30ef54be2aed79b9c9cd3b 0xd956188795ca6f4a74092ddca33e0ea4ca3a1395 200000000000000000000000000 "Compound stETH" cStETH 8 0x6d903f6003cca6255d85cca4d3b5e5146dc33925 0xa035b9e130f2b1aedc733eefb1c67ba4c503491f "0x" -n mainnet

Tyler you never cease to amaze me, thank you so much for your dedication and focus