Capitalizing Anchor's Reserves


Since the crashening, the UST Borrowed on Anchor fell nearly 80% peak-to-trough. While demand for borrow has since recovered, it has not outpaced the unabated growth in Deposits. As a result, utilization (the percentage of deposits lent to borrowers) remains stubbornly low in the mid-30s.

Negative unit economics

The resulting mix of assets (Borrow) and liabilities (Deposit) has pushed Anchor into a negative net interest margin. The yields on collateral, a function of LUNA price, and the interest from loans are not enough to cover the interest owed to depositors.

The deficit is being paid out of Anchor’s reserves, which have ~4 million UST at the time of writing and declining $13k per day. At current levels, there is no emergency with the reserve. However, the level of cash burn is sensitive to:

  1. the price of LUNA and;
  2. the utilization ratio

These two are positively correlated, given the reflexive nature of crypto asset prices and volumes. As the price of LUNA goes up, borrowers feel more comfortable taking risks and vice versa. As such, until some changes are implemented, the fate of Anchor’s reserve largely depends on the price of LUNA.

Sensitivity to the price of LUNA

Consider the impact of a 20% drop in the price of LUNA to 4.88. Assuming the same utilization ratio, Anchor’s reserves would run out in 4 months. Conversely, if LUNA went up by 20% to 7.32 with the same utilization ratio, Anchor would generate $8k per day of cash flow. In all of these cases, I assume a 9.5% yield on bLuna collateral.

Scenario Price of LUNA Utilization Ratio Depositor APR Daily Cashflow (burn) Months until reserves reach 0
At writing 6.10 35% 18% -$13k ~10
Lower 4.88 35% 18% -$35k ~4
Upper 7.32 35% 18% ~$8k :infinity:

This is an untenable position. The difference between 4 months to live and self-funding is a 20% swing in the price of a volatile asset. After discussing the issue, the Anchor community decided to wait until the Anchor reserves hit 3 million UST to take action. However, we’d like to put a plan in place in case we need it.

Contingency Plan

There are several long-term fixes for the root cause of these issues (more diverse collateral, more competitive borrower rates, and updated deposit interest rate model that adjusts for market shocks, etc.). A few are being rolled out now, like bETH. Others are still in the design phase, such as a new interest rate model. These improvements will take varying amounts of time to test, implement, measure, and optimize.

And the situation is dynamic. While we cannot predict the market’s vicissitudes, we can prepare. If reserves reach 3 million, Anchor will need more reserves to buy time for planned improvements to affect the system. This proposal is for the plan of execution if Anchor reserves reach 3 million UST.

Proposal for Discussion

@ColonelSanders put forth this idea in the Anchor forums in the Increasing the Yield Reserve thread. I am posting it here since @ryanology045 said was in favor of the idea in that thread.

If reserves reach 3 million UST, take some of the LUNA community pool that is earmarked for Ozone, burn it into UST, and use it to capitalize Anchor’s yield reserve.

Why not use the ANC community pool?

ANC equity holders should take the first loss. However, keep in mind that:

  • Anchor is a three-month-old protocol and thus inherently fragile. Confidence and liquidity in ANC are low relative to LUNA.
  • Authorizing ANC is a one-way door that could provide more uncertainty around supply schedules and thus per token value.
  • ANC tokens are the primary catalyst for bootstrapping borrow demand. Therefore, causing harm to its long-term value could have a deleterious impact on protocol bootstrapping.

You can read the thread on the Anchor forum where the community debated using ANC from the community pool here: Authorize use of emergency community funds if reserves run out. Note that in that thread, @ryanology045 says he is against the use of ANC or changing its emission schedule for the reasons above.

How much might Anchor need?

We can’t be certain how much Anchor might need. The price of LUNA will be the deciding factor. I think a reasonable estimate for the upper bound is about 7% of the 71.9 million LUNA in the community pool:

  • Let’s say that the price of LUNA fell to 3.86, such that the protocol was at 50% LTV (the Max) with current collateral.
  • In this scenario, I estimate the protocol would burn $53k per day.
  • Topping up reserves to give Anchor 12 months of runway would require ~7% of the community pool (~19 million UST at 3.86).

These are rough estimates meant to provide some context, not serve as a model for implementation. A reasonable course of action might be to add to Anchor’s reserves as the price of LUNA goes down. For example, if the price of LUNA were to go down 20% to 4.88, add 1.5% of the LUNA community pool (in UST) to Anchor’s reserves. More UST is added to give the Anchor community time to calibrate the system as the price goes down further.


The Anchor protocol is young, fragile, and under-capitalized for the current market environment. Authorizing the use of LUNA in the Terra community pool to top up Anchor’s reserves if necessary gives the team time to make planned improvements. Think of this as an insurance policy for what may be stormy waters ahead. Mr. Market is a capricious fellow and Anchor is at the mercy of his whims.

I recognize authorizing the use of the Terra community pool to backstop another protocol is a nontrivial request. However, the two communities’ interests are aligned in the matter. Furthermore, anchor is integral to driving UST adoption across the chasm.

I welcome everyone’s thoughts on the problem and proposed solution.

Why throwing money at a forever existing problem…
The key problem here is that 20% or 18% interest is way to high.

They assume that there’s always going to be enough borrowing demand to keep this interest rate.

My question to the team is, what happens when other upcoming projects start using the Anchor deposits as their selling point and fail to bring and borrowers?

What happens when we are in a deep bear market where people get liquidated all the time and stop borrowing as we seen in the past in a strong bull market?

We all seen DeFi rates coming down quite a bit, hardly finding any stable coin above 7% and thats not even guarantee.
Why not dropping the rate to 13-15%?

Correct, topping up Anchor’s reserves is not a long term solution to the negative unit economics. It merely buys time. The team needs time to implement the changes planned to address the issue, such as the new depositor interest model I mentioned. We could vote to decrease deposit rates now, but that would also not be a good long-term solution. We need an interest rate model that will adjust to market conditions, the balance in the yield reserve etc.

In the scenario where reserves drop to 3 million UST, topping up Anchor’s reserves buys time to implement more substantive and permanent solutions like a well thought out and tested interest rate model.

I don’t think we should further subsidize the interest rate. If we find that it is unsustainable we should lower the rate to something like 15%. It’s a new protocol that is still being battle tested. 20% is amazing, but I don’t think depositors would flee if it was 15%. Its better to lower the rate early than die on a hill of 20% if it doesn’t make sense for LUNA or ANC holders. And to be honest the 20% is making it harder, not easier to attract deposits. Many see 20% and think it is too good to be true.

Let’s see what bETH does and go from there.

1 Like

The use of luna as collateral is interesting but a LOT of folks bought luna at prices in the $6-22 range and or more importantly set their borrows based on those prices based on the timing of anchor’s release.

There is something inorganic about the way everyone jumped into anchor, probably borrowed against their luna, and got more luna. There was likely feedback loop of overvaluing luna.

Getting into synthetics and composability seems to escalate these cascade failure issues.

I think the PRECISE mechanism for anchor interest should be accessible via a direct link on the dapp and write it in a way that is understandable by most people. Perhaps have people actually sign that they have read about the risks and benefits (as much as that is helps).

My understanding from Do’s comments is that the interest is not directly/only generated only from borrower yields. All the sources of interest payments in a concise list with the future risks of those sources would be nice. If there is a document like this already in place, link it direct to the dapp as a (?) link.

I’m not too smart when it comes to these things so I am rambling a bit…

I agree with many of these proposed changes. But, it is not clear that we have time for bETH, a new interest rate model, and the other planned upgrades to this three-month-old protocol.

Recall the sensitivity to the price of LUNA. The situation is dynamic, and if LUNA’s price goes down more than 20%, we could find ourselves in a situation where Anchor is out of reserves quickly.

It seems sensible to put a backstop in place to buy Anchor some time to execute its plans. Please appreciate that it is not lost on anyone that Anchor needs some changes regarding liquidations, collateral, rate models, etc. But, the protocol needs time. It is young. Topping up reserves buys it time.

1 Like

We have to remember the value proposition of ANC is a stable return and not bull/bear variable rate as with most other savings protocols. We are in a bear market right now so of course the reserves dropped here. I agree that we need to analyze and create a plan for more sustainability and stable reserves in bear markets. However, just lowering the saving rate doesn’t solve the problem either and tarnishes the ANC value proposition of a stable rate.

I support drawing community funds this one time to try to get this right but only if we have it contingent upon having creative solutions in place to replenish the yield reserve in other ways as well:

  1. @e-gons over on the Anc forum suggested a bonding curve stable rate. I for one back this and think this favors the long-term saver taking more risk.
  2. I would like to have a withdraw tax on deposit withdrawls. According to @ryanology045 “Perhaps with Terraswap upgrading to include an admin (exchange pair owner) fee, a portion of ANC-UST exchange fees could be used to supplement the yield reserve. But again, this would require actions from Terraswap.” I would like to put that forward as a contingency upon passing use of community funds as well.

I would like to hear other thoughts as I think this is the middle way between those that want to lower the rate and those than want to wait and buy time. I am hoping we can all meet in this regard.

Any other thoughts and ideas like this are greatly encouraged.


By way of update, given LUNA’s decline since the original post, Anchor’s reserves are down to 3.8 million UST, and cash burn is up to $30k per day, leaving about 4 months of reserves left. So please vote on the poll below:

What is the best course of action to address Anchor’s diminishing yield reserve?

  • Use 5% of the LUNA in the Terra community pool to fund Anchor’s yield reserve.
  • Use 10% of the LUNA in the Terra community pool to fund Anchor’s yield reserve.
  • Cut the depositor interest rate from 20% to 12%
  • Do nothing and let the yield reserve to 0. Floating rate interest is acceptable for Anchor depositors.
  • Increase ANC emissions by 25% for 6 weeks and reassess then.
  • Do nothing. Wait and evaluate what happens to the yield reserve over the next week or two.

0 voters

Why should LUNA community fund be used when Anchor has a community fund? ANC holders can vote on the interest rate they pay out, if they want to have a rate that is subsidized they can subsidize it themselves by selling a portion of ANC fund and depositing proceeds into reserve. Having LUNA holders subsidize ANC holders is completely unnecessary and sets a terrible precedent for governance. Essentially a bank bailout for a bank that is flush with equity… DeFi is supposed to get away from this not replicate it on chain

1 Like