Borrowers can design a Stabilizer package that fits the risk and liquidity requirements of a specific savings protocol, and request funding. Borrowers can use an existing package, or develop their own.
- A DeFi package will include a pre-programmed strategy that holds assets, invests, and divests. [Links to documentation and examples for iAsset].
- A collateralized off-chain loan package will include a loan agreement, collateral pledge, collateral agent, wallet workflow, and some thought around both repayment terms, and packaging a defaulted agreement for sale to a liquidator.
- A margin loan for securities will include a loan agreement, collateral agent, segregated accounts, wallet workflow, and a mandate describing the authorized securities purchases. Most of this is available off the shelf.
After the borrower has assembled the package, they can build a Stabilizer. Sweep provides a factory for deploying a Stabilizer with standard code.
The borrower proposes some terms by calling configure in the Stabilizer. Some of the terms include:
- Required capital ratio. Capital prevents defaults and needs to be higher for assets with higher volatility or longer liquidation times
- Spread. The Stabilizer can charge a spread over the base funding rate to compensate for risk and work in covering liquidity delays.
The borrower then submits the Stabilizer and package for funding.
The borrower moves control of the Stabilizer to the savings protocol with the propose() function.
The borrower posts a forum proposal that describes the deal and terms. [Write instructions for forum proposal]. Protocol governance is then responsible for negotiating and setting the final terms.
The borrower operates the Stabilizer.
- 1.Add junior tranche capital
- 2.Borrow. This mints SWEEP or the funding currency into the senior tranche
- 3.Currency conversions. Sweep stabilizers provide functions for converting between SWEEP and USDC. This gives the borrower control over AML qualification of the USDC funds, and over the trading terms and costs.
- 4.Invest. This will send funds to a wallet, protocol or token.
- 5.Divest. This will redeem from an on-chain investment.
- 6.Return assets. An asset that does not have redemption code requires the borrower to return the funding asset to the Stabilizer address. A SWEEP borrower returns SWEEP, or returns USDC and uses utility functions to trade it for SWEEP.
- 7.Repay the funding asset
- 8.Respond to signals. For example, the protocol may request repayment from a securities loan.
A borrower can close the Stabilizer after repaying all loans and extracting all remaining assets.