@sovryn-zero/lib-base
Version:
Sovryn Zero SDK shared interfaces
69 lines (60 loc) • 1.71 kB
text/typescript
import { Decimal } from "./Decimal";
/**
* Total collateral ratio below which recovery mode is triggered.
*
* @public
*/
export const CRITICAL_COLLATERAL_RATIO = Decimal.from(1.5);
/**
* Collateral ratio below which a Trove can be liquidated in normal mode.
*
* @public
*/
export const MINIMUM_COLLATERAL_RATIO = Decimal.from(1.1);
/**
* Amount of ZUSD that's reserved for compensating the liquidator of a Trove.
*
* @public
*/
export const ZUSD_LIQUIDATION_RESERVE = Decimal.from(20);
/**
* A Trove must always have at least this much debt on top of the
* {@link ZUSD_LIQUIDATION_RESERVE | liquidation reserve}.
*
* @remarks
* Any transaction that would result in a Trove with less net debt than this will be reverted.
*
* @public
*/
export const ZUSD_MINIMUM_NET_DEBT = Decimal.from(180);
/**
* A Trove must always have at least this much debt.
*
* @remarks
* Any transaction that would result in a Trove with less debt than this will be reverted.
*
* @public
*/
export const ZUSD_MINIMUM_DEBT = ZUSD_LIQUIDATION_RESERVE.add(ZUSD_MINIMUM_NET_DEBT);
/**
* Value that the {@link Fees.borrowingRate | borrowing rate} will never decay below.
*
* @remarks
* Note that the borrowing rate can still be lower than this during recovery mode, when it's
* overridden by zero.
*
* @public
*/
export const MINIMUM_BORROWING_RATE = Decimal.from(0.05);
/**
* Value that the {@link Fees.borrowingRate | borrowing rate} will never exceed.
*
* @public
*/
export const MAXIMUM_BORROWING_RATE = Decimal.from(0.075);
/**
* Value that the {@link Fees.redemptionRate | redemption rate} will never decay below.
*
* @public
*/
export const MINIMUM_REDEMPTION_RATE = Decimal.from(0.01);