Anchor Yield
Past few months have been exhilarating of Terra natives and Ethereum natives. Abracadabra's DegenBox bought one-click 100% APY on stables for Ethereum natives, powered by Terra UST and aUST. The demand for this 100% APY meant, UST adoption had an explosive growth. Later as the MIM FUD kicked out alot of liquidity out of Anchor as well as DegenBox, we saw things cool down. TFL proceeded to replenish the Reserve with 450 Million and added 1Billion worth BTC reserve collateral to prevent death spirals. This Reserve top-up was to sustain the protocol until November, after which TFL analysts predicted the protocol to reach a critical mass of sustainability.
However, this increased safety net meant, more liquidity started to flow into Anchor, almost doubling in a couple of months space. This meant more strain on the Reserve and all of a sudden, only 3 months of Runway, i.e until June 2022. This has brought up the Sustainability question yet again.
Talk has been initiated on the Anchor Forums to create a Dynamic Rate to allow the protocol to stop depending on TFL re-fuels and become a sustainable protocol. This would generally cause a lowering of the Earn rate.
In this dashboard, we will look at components that are into creating this 20% Earn APR. We will analyse how the protocol rates would be if the Reserve doesn't exist, but the Earn APR is purely from the Collateral liquid staking yields and Borrow APRs alone. This will help us roughly estimate the dynamic rates of the Anchor protocol, if such a measure is indeed implemented.
Further, we will look at AAVE and Compound Lending rates and try to learn from the effects of lowering of returns as liquidity increased. This will be vital in handling the FUD on possible mass exodus causing depegging and Death Spiral.
The 20% APR is composed of two components.
- There is a certain APR charged on Borrows taken out
- The collateral deposited, bonded Assets, have their own liquid staking return, which is routed to the protocol
It is a combination of these two, that are paid out to the Lenders. Its is when this amount doesn't reach the 20% threshold, the Reserve is called to action.
We will need to know the balances of Anchor, the stables deposited and the stables borrowed. This is required to guess the payouts and try figure out the non-Reserve APR. Borrowing can be easily tracked by tracking borrow_stable
messages sent to the Anchor Market contract. Repays must be also calculated, track repay_stable
message to the same. Anchor Market controls the UST movement in Anchor protocol.
Querying the balance of the Anchor Market contract, will give us the idle UST, summing it with the borrowed UST, will give us the Total deposits, easy peasy.
And that looks pretty much like the one on Anchor WebApp.
Once we find these values, we can calculate the Borrow APR as mentioned by the Anchor DOCs.
Anchor Interest Rate contract calculates these, and hence those two parameters interestMultiplier
and baseRate
should be availble in the contract, and they are ...
If we do the necessary calculation we will get ...
Again not far from Anchor WebApp values.
Then we will need the bAsset collateral APRs. As of the date this dashboard is built, bLUNA and bETH are the only options. bLUNA being LUNA, we could simply use LUNA staking returns as the proxy to calculate the APR. bETH returns can be calculated by tracking the daily stETH burn and swap performed by the Rewards Liquidator
Finding the collaterals deposited is the next puzzle. Tracking the deposits and withdrawals of collaterals by tracking messages (lock_collateral
and unlock_collateral
) sent to the Overseer contract terra1tmnqgvg567ypvsvk6rwsga3srp7e3lg6u0elp8. Then we can use anchor.liquidations, Flipside's curated table for tracking Anchor Liquidations. Aggregating these will give us the daily balances of collaterals locked in the Anchor Protocol. bLUNA balances were off by quite a bit, but for scientific purposes, I added an extra factor that seemed to fix it (sorry, happens to the best of us).
Around 3.5 Billion USD in collaterals locked, that sounds just like the Anchor WebApp.
We will probably stick to the Moving average values, volatility is a bad person, just like karma. And we have all the necessary ingredients. Now we need to mash them up in a single query. Lord bless the query.
All we have to do is, calculate how much APR would be generated by Borrow side alone. This means, we multiply bAsset balances with their respective staking returns, and Borrow rate with the Borrowed balances. The result of the above calculation will be the amount to be paid to Lenders, which will allow us to calculate Lending APR.
Its interesting to see that between August to November, Anchor Protocol was self sustaining, and Reserve was actually being replenished. Then it went downhill from early December, coinciding with the DegenBox aggressive adoption. Currently, Anchor can payout 6 to 8% on its Deposits, which is alot considering that Market is in a bearish phase, with the two liquidity staking collaterals currently 50% off their respective All time Highs. But it gets better when compared to the Lending giants on Ethereum.
Now we can learn from AAVE and Compound, two lending behemoths on how reducing rate can have impact. AAVE and Compound being first in the business have a special network effect due to that. For this analysis, we will ignore this and hope the market evaluates without bias for Terra.
First let us look at AAVE.
We will use the aave.market_stats
tables to retrieve data. Since the APR data is extremely noisy, we will using 30 day Moving average to reduce the noise and give a good idea about the general rates over a period.
In AAVE, the APR is strongly correlated to the liquidity and the utilization ratio. Hence, when liquidity flows into the protocol, the APR dips. As we can see, post May crash, alot of liquidity moved into the protocol. Doubling the available liquidity in a couple of months. This lead to the Lending APR fall by almost 75%. This however didn't cause the exodus of liquidity. The expected exodus came around early October as the market was slowly turning bullish. Hence liquidity was moving into more volatile assets to capture price appreciation.
Analysing Compound protocols stats
Compound hasn't suffered any similar volatility interms of liquidity movements. Hence nothing much to takeaway here. One must however note that
- Anchor was capable of paying out 20+% of raw APR at times for the EARN side
- Even during a Bull market, after well rooted situation, Compound and AAVE could pay out at max 12 %
- Even at the current status, Anchor can pay out 6 to 8% APR on almost same amount of Liquidity locked on Compound or AAVE, while AAVE and Compound have been paying sub 4% APR
Comparing the Borrow APR and utilization ratio might also give us a better idea on the Fund transfer from Borrow side to Lend side. First for AAVE.
One of the main advantages faced by AAVE can be the high Utilization ratio. Consistently maintaining a 70%+ liquidity utilization means, capital efficiency, which means, the protocol is close to its operating efficiency. This combined with the Borrow rates almost double of Lend rates during the bullish phase was the reason for the two digit APRs from AAVE. What about Compound.
Compound has also seen, significantly high utilization ratios. Borrow APRs have been respectable, around 3% over the Lend APR, a good sign of protocol stability and sustainability.
If one compares this with Anchor
Initially, Anchor cranked up the Borrow APR, mainly due to the ANC subsidies. However as the time passed, the Borrow rates have dropped significantly. During November, when the Protocol was running on net positive yield, the Borrow rate was only 30% higher than the Earn rate, with ANC subsidies pushing it much further. Hence, though not as low as AAVE or Compound, when compared to the payouts for the Lend side, the Borrow rate is healthy.
What is not healthy is the Utilization ratio. Crashing below 30 percent since the start of the year, the Borrow side yield generation hasn't really kept up with Earn side. Two reasons for this are:
-
Lack of Collateral types, only bLUNA and bETH have been used as collaterals for a while. This is because, more collaterals need much more extensive auditing
-
Lack of quality Alts.
Speculation is the main reason for Borrowing in the most cases. The lack of variety of collaterals and the lack of quality ALTcoins (so far) has made it less savoury for the speculating investor.
This poor utilization ratio means, quite alot of assets on Earn side lie idle. These idle assets, if put to good use, can be a massive game changer. Having almost 8 Billion worth assets idle is extreme capital inefficiency and the Protocol is not working at its peak efficiency.
So somethings are clear from the analysis above:
- Anchor can currently pay around 6 to 8% APR without any external refuel
- Anchor has better rates that AAVE and Compound, while utilization is significantly worser
- Anchor Borrow rates are reasonable for the Earn APR it pays
- Utilization ratio is a very key metric as Idle assets pull down any protocol down.
- Finding a way to utilize the idle assets is key
- Anchor should try and target Ethereum mainnet launch to capture more Liquidity from other lending protocols.
Another means to prop up Anchor is to improve the versatility on Borrow side. While v2 Anchor will bring more variety, I think a better way is to initiate Anchor on Ethereum, similar to the deployment on Avalanche.
To make sense, there is around 10 Billion worth ETH locked in these protocols. Similarly, we have already seen that around 15 Billion worth stables locked too. Anchor on mainnet, with ability to deposit ETH directly rather than bridging will open up avenues for Ethereum maxis and Ethereum based hedgefunds to shift liquidity from AAVE and Compound. Most of Ethereum is locked as collateral , hence its utilization ratio is extremely low. Anchor on the other hand can liquid stake these asset to unlock its value into the Lend side, creating a truely global stable rate.