Add markets: stETH

so @TylerEther and are working on adding a few more assets to the Compound Protocol, starting with stETH. We are looking to engage community feedback for our proposal. All comments and reactions are welcome.

Proposal

Background

stETH is pushing for listing on multiple lending markets

AAVE

CREAM

COMP

Liquidity

Curve

DUNE

stETH Contract

  • Collateral factor: 0% ?

  • Reserve factor: 25% ?

  • Comp speed: ???

  • Borrow cap: ???

  • Supply Cap

  • Price Reporter

    • Uniswap
    • Chainlink
    • Curve
    • Peg to 1 ETH
  • Security

    • Inherited stETH risks: FAQ - Lido Finance
      • Smart contract security
        • Open-sourced, audited, and covered by an extensive bug bounty program to minimize risk
      • ETH 2.0 - Technical risk
        • ETH 2.0 is still under development and there may be bugs in it which could affect this asset
      • ETH 2.0 - Adoption risk
        • If ETH 2.0 adoption is low, there may be significant fluctuations in the value of ETH and stETH
      • DAO key management risk
        • Risk of a DAO hack, rogue entities, or loss of access would result in funds becoming locked
      • Slashing risk
        • Up to 100% of staked ETH could be at risk. Multiple professional and reputable node operators with heterogeneous setups are used to mitigate this risk.
        • Insurance paid from Lido fees can partially cover these losses.
        • Insured by Unslashed Finance
      • stETH price risk
        • Exchange price of stETH may be lower than its inherent value due to withdrawal restrictions on Lido.
  • LIDO Incentives

  • Interest Rate Model

    • (people will borrow eth to put into stETH)
  • Will cETH IRM be able to handle this?

  • Will comp distribution incentivize a move?

IRM - ETH -switch to USDC

IRM - stETH - Switch to ETH

cETH Current IRM, New cstETH IRM

Current Stablecoin IRM, New cETH IRM

Borrowing/Lending activity between cETH and cstETH

People will borrow ETH to convert to cstETH.

Since the IRM for ETH is linear, the util will max out at around 50% as “arbitrage” disappears as ETH borrow rate meets cstETH supply rate.

To help this, we change IRM so that cETH can adapt to allow investing in cstETH

We will have cstETH IRM be close to what cETH is today, to anchorage long term holding in preparation for ETH 2.0 withdrawals.

Proposed stETH Risk Parameters

  • LTV: 10%
  • Reserve Factor: 15%

Relevant Links

5 Likes

Oracle considerations

We have three approaches to how we’ll determine the price of stETH.

  1. Peg stETH to ETH at 1:1. When ETH 2.0 is merged, users will be able to redeem their stETH for EH at a 1:1 ratio. For now, Curve has the most stETH liquidity and the swap ratio is near 1:1.
  2. Wait for ChainLink to create a stETH price feed.
  3. Take the price from Curve.

Solution #1 would be the simplest and most efficient approach, but there is the risk of sETH’s price crashing due to any of the inherint risks of Lido.

1 Like

Solution 1 might now work, as if the stETH discount increases beyond the liquidator discount it will not be possible to liquidate stETH backed loans. While stETH hasn’t had more than about 4% discount to date, it seems possible for the discount to grow larger than the 8% liquidator discount in stressed conditions.

1 Like

Generally, I think stETH would be a phenomenal asset to add.

The price feed questions could be reduced by using a 0% collateral factor to start, but would have to be answered. If users are only borrowing stETH (but not using it as collateral), a 1:1 peg is somewhat punitive to borrowers–but could be viable. Taking the price from Curve also works (by deploying a new View), but would need to be carefully researched/managed (there have been tons of issues using Curve from less secure protocols).

Let’s make this happen! Thank you @massnomis and @TylerEther for kicking this off :comp:

4 Likes

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.

2 Likes

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.

Deployment

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.

2 Likes

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