Staked ETH price feeds

Liqee’s price feeds for staked ETH (and other staked coins) currently treat them as 1:1 with ETH.

This works pretty well, but the staked tokens are actually worth slightly more ETH than that. If you query the “getExchangeRate” method of the rETH contract (https://etherscan.io/address/0x9559aaa82d9649c7a7b220e7c461d2e74c9a3593#readContract), it currently returns 1015834691975186911. Divide this by 1e18 to get the exchange rate of 1 rETH to 1.015834691975186911 ETH. stETH (and I think all other staked coins) have a similar function.

It should be pretty simple to write a new oracle contract that includes this multiplication.

This change will bring two improvements to the protocol. First, people will be able to borrow against the full value of their tokens. Second, if a slashing even does occur, this exchange rate will automatically include the change and so we will be better able to rapidly liquidate any under-collateralized positions.

What do you think?

Thanks for your proposal, but unfortunately we can not change the situation immediately.

Currently rETH does not have an authoritative source of price feeds, in the meanwhile the floating price will cause the risk of liquidation, we can not take the risk even if it is small. Anchor staked coins : coins = 1:1 was the best solution toward the current situation.

We will try to solve this problem in the future, like cooperating with oracles to get real-time prices. You can recommend good cooperation opportunities to us if you have, thanks!

I don’t think you understand my proposal.

I know rETH does not have an authoritative price feed. My change would not bring in a “floating” price. The number my improved price feed would give would be more accurate than what you have right now. You don’t need to cooperate with any other oracle networks. You simply take the oracle you have now and include a multiplier from the rETH and stETH contracts. I’ll try to find some time to write some example code that will make this more clear.

The only way a liquidation would happen under my system is if the staked coins suffer a slashing event and are no longer actually pegged 1:1. This would be an increase in price accuracy, not a decrease. If redemptions were enabled right now, 1 rETH would be redeemable for 1.015834691975186911 ETH. This is not the same as a floating exchange rate.

We currently choose a 1:1 mortgage ratio because the exchange ratio of rETH & ETH can only be regarded as a value reference. We are just a lending protocol, can not prove a token’s value. The actual value of rToken needs to be evidenced by StaFi, and so far we have not seen any relevant proof actions.

We can not rashly make changes to just one set of assets without any guarantees, in other words, we cannot change our overall system design for one special token until its related staking party (like StaFi) endorses its value.

We have not only rETH but also other staked coins like stETH, tATOM, tXTZ…etc. and there will be more staked coins in the future as well. We have to take responsibility for keeping other user’s assets safe, and try to avoid all potential risks.

We know what you want us to do or want to do for us, but sorry we have to consider the situations more broadly.