Leveling Up YieldBlox — Protocol Owned Debt and Other Stuff
Last week, we came up with two novel innovations that significantly improve YieldBlox. We could not be more excited to introduce them in this article!
Protocol Owned Debt — Default Protection Perfected
First, let’s cover protocol owned debt, a unique system that drastically reduces YieldBlox’s risk and liquidity requirements! In short, it lets YieldBlox lending pools borrow from themselves to ensure delinquent user liabilities are liquidated. Protocol liabilities are then settled over time by redirecting protocol fees typically paid to stakers. This mechanism significantly improves YieldBlox’s stability and capital efficiency in YieldBlox; let’s provide some context on why.
Current State — Undesirable Liquidation Cascade Risk
Two important components of YieldBlox’s staking feature are the default protection system and borrowing against staked YBX. The default protection system ensures the protocol never becomes insolvent by guaranteeing liquidations are always profitable. Before executing a liquidation, the protocol calculates the liquidators expected profit. If expected profit margin is below the target profit margin, the protocol sells YBX from the staking rewards pool to repay a portion of the liquidation, so the amount the liquidator repays is reduced. As a result, in an economically rational environment delinquent positions will always be liquidated regardless of how under-collateralized they become. This is a common mechanism in DeFi lending protocols, both Aave and Maker employ something similar. Separately, borrowing against staked YBX allows stakers to use their staked YBX as collateral. This provides stakers with some amount of liquidity on their time locked staked YBX and increases protocol usage.
Now if you think about both of these mechanisms in combination, you’ll realize their combined effect creates liquidation cascade risk for YieldBlox. Imagine the following scenario:
- A supported asset experiences an extreme market sell-off
- This triggers a number of liquidations that require default protection
- The protocol begins selling YBX to ensure liquidations are profitable
- YBX’s price begins to tank causing users borrowing against their staked YBX to be liquidated
- This perpetuates into a chain-reaction causing a huge amount of liquidations and a huge YBX price decrease
We’ve been aware of this risk and have been searching for the best way to mitigate against it. The most obvious solution is to ensure that the YBX:XLM pair is extremely liquid, so it can absorb large amounts of selling pressure. This need for liquidity is one of the reasons we are introducing the YBX:XLM LP share staking feature. However, we still felt that incentivizing liquidity was a band-aid solution which didn’t address the root of the problem…
The Solution — Protocol Owned Debt
With protocol-owned debt we’ve found an almost perfect solution for liquidation cascades. Instead of the staking pool selling YBX to perform default protection, the lending pool will assume ownership of a portion of the delinquent debt and repay the debt over time by redirecting the fees which would normally be paid to stakers. If the pool has no debt, fees will be paid to stakers as normal. This eliminates the price-shock that default protection introduced, and drastically reduces systematic risk in the protocol. This protection system is so effective that it will allow YieldBlox to support higher Loan-to-Value ratios, improving the capital efficiency of the protocol.
As an added benefit, protocol-owned debt improves the risk-reward relationship for YBX stakers. Previously, YBX stakers risked losing out on fees in the event of a backstop because a portion of their accrued staking fees could be sold in the event of default protection triggering. Protocol owned debt smooths that relationship. Instead of instant fee slashing, fees just won’t be accrued until protocol owned debt is repaid. Additionally, borrowing against staked YBX becomes significantly safer since the risk of default-protection-induced price shocks is removed. Finally, once YieldBlox adds support for multiple lending pools, YBX stakers’ exposure to the risk of large default-protection events incurred by a high-risk asset in a single lending pool will be significantly reduced. Previously, a high-risk asset had the potential to wipe out a large amount of the fees stakers had accrued from all lending pools, since default-protection drew from all accrued fees. Now, stakers will simply stop accruing fees from the offending pool until that pool has repaid it’s accrued debt. They will still receive fees from all other pools.
While protocol owned debt is a wonderful improvement, it does come with one risk. While highly unlikely, it’s technically possible for a lending pool to incur too much debt to pay off. This could happen if a pool incurred so much debt that it’s interest rate was greater than the fees it generated. In this scenario, YieldBlox would have to create a governance proposal to bail out the delinquent pool by auctioning-off YBX.
Growing Liability Tokens — Utilization Tracking Perfected
Another significant development we made last week was moving from a utilization tracker system to an accrued interest tracker system. This gets relatively technical, but the gist of it is we made it much easier for the protocol to calculate a loan’s accrued interest by valuing liability tokens in a similar way as pool tokens. This will result in a ~30% performance improvement for high-volume users. If you’re interested in learning more, you can go check out the interest accrual section in our docs!
As we’ve said in the past, we’re deeply committed to releasing the best product possible. Given the scope of these updates, the amount of turret work that still needs to be done, and the timeline of our auditors, we’ll have to push back launch roughly a month. We appreciate your patience as we work to release YieldBlox as fast as possible. We’re simply not willing to rush things when building something as important as the first DeFi protocol on Stellar.
That doesn’t mean you all have nothing to look forward to in December! We will be having a few community governance calls to plan some key details surrounding the upcoming launch. This is a decentralized project, so we want to discuss and decide all of these details with our community. All calls will take place in our Discord.
Initially Supported Assets — Friday, December 10th, 4pm EST
Call to discuss what assets will be supported by the protocol on launch day and what loan-to-value ratios and liquidation incentives each of them will have
YBX Issuance — Friday, December 17th, 4pm EST
Call to discuss initial YBX issuance rate and issuance allocations
Check out our job postings here if you want to join the Script3 team.