SIP-251: Differentiate Liquidation Penalties
Author | |
---|---|
Status | Implemented |
Type | Governance |
Network | Ethereum & Optimism |
Implementor | MEB (@barrasso) |
Release | Algol |
Proposal | Loading status... |
Created | 2022-06-16 |
Simple Summary
Adds a new system setting for SNX staker liquidations
Abstract
Currently, there exists only one liquidation penalty variable, liquidationPenalty
, which is used for both Collateral loans and SNX staking. This is less than ideal since each liquidation type has a unique impact on the debt pool. It also reduces flexibility when trying to set different penalties for each type of liquidation via SCCP.
This SIP proposes to add another liquidation penalty variable, snxLiquidationPenalty
, in order to distinguish between liquidations on Collateral loans and SNX stakers.
Motivation
To make sure the proper liquidation penalties are applied to both loans and stakers.
Technical Specification
This SIP requires the following:
- Create a new variable in System Settings,
snxLiquidationPenalty
, which is initially set to30%
for SNX liquidations - Update the
Liquidator
contract so that all references toliquidationPenalty
are replaced withsnxLiquidationPenalty
- Set
liquidationPenalty
to10%
for Collateral loan liquidations
Test Cases
- Check that a 10% penalty is levied when liquidating Collateral loans
- Check that a 30% penalty is levied when liquidating SNX stakers
- Consider extreme cases
- e.g. stakers having only escrowed SNX, not enough balanceOf to reach the issuance ratio, etc.
Configurable Values (Via SCCP)
LIQUIDATION_PENALTY: w3utils.toWei('0.1'), // 10% penalty (used for Collateral loans)
SNX_LIQUIDATION_PENALTY: w3utils.toWei('0.3'), // 30% penalty (used for SNX staking)
Copyright
Copyright and related rights waived via CC0.