Anchor Guardians of the Galaxy and Protector of Collateral
In my opinion one of the best ways to increase the borrowing side of Anchor would be the introduction of Guardians for your Collateral. Failing to manage your LTV is expensive. You pay (thanks to the liquidation queue) now 5-7% in the last weeks but you still sell valuable collateral. When the market is down that sometimes adds up to another 5-10% on top depending on the flash crash size. Understandably not many want to join this game without the possibility to manage this risk automatically.
Introducing the Guardians. Whitelisted positions that can be used to automatically repay the loan or increase the collateral to bring back your LTV when you would have been liquidated.
This is a prototype of a possible UI just to illustrate this idea better. A guardian is a LP or Vault Position(s) which you can deploy in an anchor Guardian contract. If your LTV reaches the liquidation threshold, a “unwind strategy” is used. This strategy either increases the collateral or repays your loan. It calculates the size so that you are back to a safe LTV.
What are useful Guardians?
Useful is everything that you might use to earn with your borrowed money and provides a receipt token. In general it should include everything that is UST, bLuna or bETH related.
Here are some ideas with corresponding “unwind strategy” that came to my mind.
Strategy : “the obvious” - removed from earn and used to repay the loan
Guardian: Any xxx/UST LP
Strategy : withdrawn from dex, UST part used to repay loan, xxx part send to depositor
Guardian: bluna/LUNA LP
Strategy : withdrawn from dex, bLUNA part used to increase the collateral, Luna part send to depositor
Guardian: xxx/UST from Spectrum or Apollo vaults
Strategy : withdrawn from vault, UST part used to repay loan, Luna part send to depositor
I’m sure there can be more Guardians and many protocols will request integration to attract more UST capital.
Difference between Guardians and Collateral
Due to the unique way Anchor is working, it accepts only interest bearing collateral where this interest can be redirected to UST Earn side (bAssets). This is in general for the borrower only attractive if he can use the UST loan somewhere else where the sum of paid UST interest and lost interest on collateral is lower than the interest earned.
Guardians are positions that can’t be used as collateral for Anchor, because the interest can’t be redirected. While the Guardian position is staked in the Guardian contract it will still earn all the interest and fees it normally would.
There can be multiple Guardians deployed in the contract and a priority can be assigned. The one with the highest (or lowest ?) priority gets unwinded first and used to repay the loan or raise collateral. Positions are partly unwinded until the LTV is back to a defined level (e.g. -10% below Max)
Guardian Positions can be withdrawn at any time. But having a list of possible attractive Guardians also allows to market Anchor Loans to interested investors. In general it will make taking a loan more attractive for a bigger group of investors that today don’t have an option/knowledge to manage their LTV via bots or scripts and are scared to get liquidated.
Lower risk, more borrowers. Would you use it ?
But Guardians don’t come for free. To not rely on external bots that trigger the unwind process at the right time they need to be integrated into the liquidation process from anchor protocol.
Difference between Guardians and Liquidation
Before any position is due for liquidation, the process will check with the guardian contract if any Guardians are deployed. If so, it will use the Guardian positions to avoid liquidation. To make sure all are handled the same this needs to have the identical costs otherwise no one will trigger the liquidation for a collateral that is protected by Guardians. The unwinding process will also create fees that need to be paid. But the 1% of the required capital represents a far lower risk than in normal cases and it does not require a sale of any token in a negative market environment.
What could a contract architecture look like?
I was also thinking about the architecture and technical feasibility of this idea and came up with the following, possible setup. I’m not yet a smart contract expert so if there are mistakes, feel free to improve my proposal.
Currently the liquidate_collateral function is called on the overseer contract, when someone’s LTV gets too low.This function then calls the liquidation_queue contract to sell the collateral.
In the new setup the liquidation_collateral is still called but then either within the overseer or the liquidation_queue contract the new Guardian contract will be asked if any Guardians are deployed. If Guardians are deployed the contract will “unwind” the position.
To make this flexible there are special “unwind” contracts for different kinds of Guardians. After unwinding the Guardian contract returns either additional collateral (bLuna, bEth) or UST to repay some loan. If successful the liquidation is avoided and the loan is back to a safe LTV.
What are limitations and challenges?
In the beginning, I see the challenge that probably only auto compounding positions will work as Guardians e.g. aUST or LP positions without external incentives. Everything that requires manual compounding will be difficult to integrate or the interfaces for the “unwind” contracts could support the “claim” function of corresponding positions. Also the Guardian contract will only work with receipt tokens that he can use to “unwind” the position. If the receipt token cant be transferred to the guardian contract it can’t be used. But as liquid staking and vaults are becoming the new norm I think these issues can be solved. Auto Compounding is also something that could be integrated at later stages if the demand for such Guardians is there.
So now I’ll ask you ! Would you borrow or would you borrow more when you know your save from liquidations and there are Guardian positions available that allow you to make net positive profits ?