Omni
Omni by Beta is a novel composable, dynamic, and capital efficient money market primitive. In comparison to existing money market designs that make trade-offs between asset capital efficiency and liquidity to support more assets, the Omni protocol is able to support a wide array of collateral and borrow assets with zero fragmentation and maximal capital efficiency.
Collateral Deposit
Collateral deposits must not be allowed when the protocol is in a paused state.
O
It checks through the whenNotPaused
modifier.
The block state of the market where collateral is deposited must be updated to the latest status.
O
-
Collateral Withdraw
Users can withdraw collateral only within the limits that do not exceed the set Loan-to-Value (LTV) ratio.
O
-
The block state of the market where collateral is withdrawn must be updated to the latest status.
O
-
Borrow
Loans must not be allowed when the protocol is in a paused state.
O
It checks through the whenNotPaused
modifier.
The borrower must be registered in the relevant market.
O
-
After executing the loan, the market's total borrow amount must not exceed the set borrow cap.
O
-
Borrowers cannot exceed the Loan-to-Value (LTV) ratio relative to their collateral.
O
-
Before executing a loan, the target market's block state must be updated to the latest status.
O
-
Repay
The block state of the repayment market must be updated to the latest status.
O
-
Repaying more than the borrowed amount is not allowed.
O
There is no error handling, but an underflow occurs.
Liquidation
The liquidator can only liquidate borrowers whose Loan-to-Value (LTV) ratio exceeds the limit, resulting in a liquidity shortfall.
O
-
The liquidator's repayment amount must not exceed the close factor relative to the borrower's total borrow amount.
O
-
Both the market for the borrowed asset and the collateral asset must be updated with the latest block information.
O
-
The liquidator and the borrower cannot be the same account.
X
-
The amount of collateral the liquidator receives cannot exceed the total collateral balance of the borrower.
O
In the seize calculation logic, it cannot exceed the limit.
The collateral and borrowed assets involved in the liquidation must be under the same administrative entity.
O
-
Interest and Reward
The borrow interest rate must not exceed the set maximum value.
O
-
During interest calculation, related state variables like total reserves, total borrows, and market indices must be updated to their latest statuses.
O
-
For fixed-point arithmetic, steps should be taken to prevent rounding issues in low decimal places, such as using correct operation order or a fixed-point library.
O
-
Oracle
The price of the underlying asset retrieved from the oracle must not be zero; if the price is zero, the transaction should be halted.
O
-
It verifies that the oracle value is up-to-date.
O
-
Last updated