Hello Aave community!
Recently, there’s been a slight demand for a way to automatically re-stake earned AAVE without having to go through individual transactions. On that front, I’ve constructed a stkAAVE staking pool!
I’d like to get the community’s feedback and opinion about it in the poll below, but first, here’s a short summary of how it works:
The Staking Pool's ArchitectureSay a user deposits AAVE into the pool...
- The pool stakes the user’s AAVE and mints them ERC-20 compliant pool shares, representing the user’s ownership of the pool’s stkAAVE.
- There is a re-staking function which in turn withdraws the entire pool’s pending AAVE rewards and deposits them back into the safety module, increasing each pool share’s underlying stkAAVE. A fee is levied here (more on this later).
- Upon redemption, the pool returns the caller’s stkAAVE and burns their shares.
There is a special address called “manager” (better name pending…), this is the address the aforementioned fee is sent to, and it can…
- Alter the fee amount
- Call the restaking function
- Transfer the “manager” address
Here’s what the “manager” CANNOT do:
- Freeze/transfer/withdraw locked funds that it did not individually deposit (i.e. deposit like any other user)
- “Add” fee types (i.e. the contract is designed with only restaking fees and cannot currently have withdrawal or any other sort of fee levied.)
Why Charge a Fee?
Eventually, I’ve got hopes that it’ll give me a little bit of income! But, first thing’s first, calling the re-staking function requires gas. The fee’s main purpose is to, well, help me cover that expense.
Although I haven’t built the script yet, I’m designing a bot that checks the fee amount it would earn against the gas it would have to spend to call the re-staking function every set interval. The bot would then only execute it if the earned fees would be greater than the gas spent.
Some Relevant Calculations
I’ve done a calculation, assuming a conservative 5.00% APR on staking AAVE without compounding (0.01369863013% daily without compounding).
With a 1.0% fee levied, your daily rate would become 0.01356164382%, and your annual rate would rise to 5.07% (assuming daily compounding, even if only compounded twice a year, the APY is 5.01%, which is higher than 5%!! A 2% fee remains profitable unless compounding is done less than once a month, too.)
Keep in mind, however, that these calculations are not necessarily exact. They assume perfect conditions and constant yield. Your return will vary according to the total stkAAVE in the safety module.
Now it’s finally time for that poll!
Should The Staking Pool Be Completed & Deployed to Mainnet?
Let me know your reasoning in the discussion below.
Furthermore, if you’ve got time to write your thoughts about the fee structure, nothing is set in stone as of yet, I’d love as much input as possible.
P.S. I also built a way to migrate aLEND to aAAVE with active debt, but just like the staking pool, I’m not comfortable deploying it to mainnet without the appropriate security checks. Let me know if there’s demand for that too. Cheers!