Earn double rewards on your DEUS Native tokens
Borrow DEUS AMMs IDLE CASH to increase your capital efficiency.
Update on 13.03.2021
Some little overview on what was updated or added after I wrote the Blog:
- No liquidation of your collateral or similar ever.
- Cyclic period (for example 24 hours) where all balances on yearn will be adjusted based on the rise/fall of the underlying collateral prices (DEUS rises or drops)
- Cyclic “clearing event” of all pending deposits
Credit goes to https://twitter.com/r0bster97/ for helping us improving the concept.
Since the beginning of DEUS, I wanted to explore different ways of leveraging the underlying Ethereum in our treasury to farm yield in other protocols as an additional reward for those supporting our ecosystem.
The DEUS ecosystem is ever-expanding and evolving to make this come true. Other projects have now proven that the concept of leveraging underutilized capital in their systems is a trend. For example, The Alchemix project allows users to deposit DAI to mint alUSD — a synthetic stablecoin used as collateral to earn yield on platforms like Curve, Yearn, or SushiSwap.
I am fundamentally for “efficiency”
A protocol or a treasury merely hoarding Ethereum as “idle cash” is something that is unsustainable long term, energy needs to flow, you shouldn’t hold it for too long in one place.
Which is why I am putting together a new team within DEUS to explore and implement functions that allow users to farm yield with their DEUS/DEA on many of the major protocols in the future.
Currently, there are two potential paths we could take:
- Giving users the option to borrow ETH from the DEUS treasury against our tokens
- Using the ETH without explicit consent from the DEUS holders, but instead, deciding through governance(voting).
As individuals, each user decides to take on the risk of using yield farms, and I believe every user should decide for themselves. There are always risks involved, even when we are using “risk-free” options and working with tranches of risk.
Leveraging Idle Capital
The new team is made up of an experienced and highly dedicated group of individuals who have worked on some of the top 100 projects in the DeFi space.
We are now introducing a feature that will allow users to borrow the underlying Ethereum in the DEUS treasury to farm in other yield protocols. We will start first by exploring Yearn and then expand the ecosystem to include many major protocols.
Users will be able to use their DEUS, DEA, or BPT (Balancer pool tokens) as collateral in the system. We are expecting a collateralization rate of 150%.
If we, as a community, decide that the Ethereum in the treasury should have further use, we could also explore a governance decision to lower the collateralization rates.
However, I think the best way of exploring new developments in the ecosystem is by actually enabling you to interact with them as an end-user. So, we have already begun developing a feature to give DEUS users the option of borrowing ETH from the DEUS treasury against our tokens.
Modifying our current staking contracts
I have thought long and hard about modifying our staking contracts while taking into consideration user fairness.
Those who have staked their tokens are the ones who put the most trust into the system, and so if we change our contracts, we need to incentivize those users first.
Here is an idea for a modification to our staking contracts:
And here are the contracts that currently hold the ETH I am talking about:
These are the addresses for the tokens:
Eventually, we will also make it possible for users to ‘opt-in’ to yield farms directly via our staking contracts.
I will provide an updated version of these in the next few days, but essentially we need to add a function so users can:
This function deposits the Token and generates revenue based on BlockRewards and staking.
A function that allows users to utilize their underlying ETH to farm yield at projects like Yearn.
We can create a button in our frontend that says:
- Only Stake (which is deposited to our ordinary staking.sol)
- Stake & Yield (which is the deposit() + the yield() function)
- Only Yield (for users that staked before and want to add yield() later)
It should also be possible to use the Yield() function later and switch between these options without having to withdraw and deposit to the new contract.
This new function will allow us to move the funds from our old staking contracts to the new staking contracts and give users the option to ‘opt-in’ to yield farming.
General Overview of how yield() should work
We need to create a smart contract that permits users to withdraw Ethereum from that contract. Alternatively, we will create another contract as an Escrow that does not have direct control over all Ethereum.
Ultimately, when a user deposits DEUS, the contract must allow them to withdraw Ethereum based on the price of the underlying token. They can then deposit that ETH into Yearn or other yield generators.
Here’s an example:
Calculating the Price of DEUS
We have 10,000 DEUS and you can fetch the current price of DEUS/ETH in this contract:
Via this function:
1 DEUS returns currently 0.005657333878 ETH
Calculating the price of DEA
We should also create a contract with the same function but with DEA as our second token. DEUS backs DEA inside of Uniswap & DEUS Swap.
We can read the current token price of DEA here. We can then multiply it with the current DEUS price.
The current DEA price is:
36.78912945 DEUS, and with 0.003757333878, we get ~ 0.1508 ETH per DEA.
We’ll then get the current price of DEA in Ethereum.
Calculating the price of BPT Token
Here is a function to check the price of the BPT tokens:
we can define the amount of ETH we withdraw from the DEUS treasury for every BPT token added to the yield() function.
The money earned on Yearn’s contracts will flow back to the staking contracts, minus a small fee paid to the DEUS DAO. The respective user can then claim it from their contracts.
We should also make this available for our sealed tokens:
sDEUS & sDEA are 1:1 backed by their real equivalent.
Now, every major Token in our ecosystem should be covered by the newly added yield().
Timeline and Technical Requirements
1. Approximately 72–96 hours — Implementing yield through the Yearn protocol and creating the option for users to choose between stake/yield/stake & yield. The exact time depends on how the new staking contract will work.
2. Approximately 80 hours — Testing the workability of contracts (we will have to emulate the internal logic of Yearn protocol in tests to make sure that we connect everything correctly and that the yield() function works appropriately).
3. Approximately 8 hours — Deploy to testnet.
Please note that we have not included the time required for deploying to mainnet.
We also have questions for you, the front-end users:
A. What should happen to the user’s funds if they choose Stake & Yield?
B. Do users require a front-end part for Yield? If so, we can work on this in parallel with smart contracts development.
- Stake and earn from DEUS ecosystem
- Where to farm:
- Only DEUS Protocol Fees.
- Only Yearn Finance Yielding.
- Or both Deus & Yearn with the same capital!
Here is the “core” of the whole operation.
You earn a yield on two protocols.
You deposit DEUS (or DEA or BPT) and earn fees on DEUS while borrowing ETH from the DEUS treasury and yield farm on AAVE/YEARN/ every other major protocol with it.
Leverage your locked capital
get trading fees from DEUS, and yield from Yearn finance, follow us now on twitter.com/DeusDao to be notified when we deploy to mainnet.