Credit Enforcer

Reservoir’s Credit Enforcer is a smart contract that has wide powers to enforce the protocol’s financial covenants in terms of liquidity and solvency. This means that sufficient liquidity for a 1:1 conversion of rUSD to other supported stable assets is automatically enforced, while also deploying the remainder of protocol controlled assets into automated strategies for yield to be passed on to srUSD and trUSD holders.

In order to ensure solvency of the protocol, any action that is taken to modify asset allocations can not break the invariants listed below. Otherwise, the transaction will revert.

Liquidity RatioAsset RatioEquity Ratio

Description

Ensure timely redemption of rUSD.

Ensure there is enough assets for creditors to be repaid.

Ensure there is enough capital.

Calculation

The ratio of liquid assets to rUSD that can be redeemed within a relative time span (approximately 30 days).

Total assets divided by total liabilities.

Equity divided by capital at risk.

Comparison

Liquidity Coverage Ratio with 100% net cash outflow.

Basel III Leverage Ratio with the asset ratio inverted.

Leverage Ratio of Basel III but inverted.

These constraints are set to be immutable features of the smart contracts in order to provide confidence to the user base. The capital at risk can be thought of as a percentage weight of an asset going to zero. Assets and liabilities are regarded as long or short term (illiquide vs liquid) based on if they would take longer then a set duration to liquidate. So for a duration of 30 days, a trUSD token maturing later than 30 days from the present would be regarded as long term (illiquid). Likewise, for assets where a fund of treasury bills would be regarded as short term (liquid). The balance of rUSD in the Credit Enforcer is always considered short term (liquid), because it can always be redeemed for USDC in the PSM.

The following is an illustrative example of the change in the constraining ratios of the protocol as different tokens are minted and redeemed (equity is calculates as assets minus liabilities). Governance will establish the amount of days that is considered to be short term vs long term (30 days is used in the example below).

Short TermLong Term

Assets

Assets that can be redeemed to USDC in less than 30 days: Real World Asset Stocks, Real World Asset Bonds, DeFi lending.

Assets that can be redeemed to USDC in more than 30 days: RWA private credit, RWA revenue based financing.

Liabilities

Redeemable for USDC within the defined duration (~30 days): rUSD, srUSD, trUSD maturing near term.

Redeemable for USDC within the defined duration (greater than ~30 days): trUSD not maturing near term.

Equity = Total Assets - Total Liabilities

Assume the PSM is holding 4 M USDC and 2 M rUSD outstanding with no issued trUSD or srUSD. With capital at risk value for USDC of 0.001 :

  • Liquidity Ratio: 200%

  • Asset Ratio: 200%

  • Equity Ratio: 2 M / (0.001 * 4 M) = 50,000%

Now lets assume 1 M rUSD is converted into trUSD that will mature in a year, with the discount of an 8% yield. The net liabilities would rise by that amount, but the liquid liability (maturing in ~30 days) would decrease by 1 M rUSD, which means the new ratios would look like:

  • Liquidity Ratio: ~400%

  • Asset Ratio: ~192%

  • Equity Ratio: ~48,000%

Each of these ratios must remain above a set minimum by governance. Usually the minimum would be ~105%. In the example above a swap of 1 M USDC for 1 M rUSD would lower the liquidity ratio to 250%.

Note that on the asset side, in the example above only USDC was taken into account, but under normal operations USDC will be held in RWAs as well as onchain investments. That capital moved through the Asset Adapters will contribute part of the amount in the total asset value in the calculations above.

Last updated