PrimaryLendingPlatformLiquidationZksync
Overview
License: MIT
The PrimaryLendingPlatformLiquidationZksync contract is the contract that allows users to liquidate positions for zksync network.
Contract that allows users to liquidate positions. Inherit from PrimaryLendingPlatformLiquidationCore.
Functions info
liquidate (0xb44055fc)
Liquidates a user's position based on the specified lending token amount and update related token's prices.
The function to be called when a user wants to liquidate their position. Support liquidation with hot borrowing or not.
Requirements:
The project token is listed on the platform.
The lending token is listed on the platform.
The lending token amount must be greater than 0.
The user must have a position for the given project token and lending token.
The health factor must be less than 1.
_lendingTokenAmount
must be within the permissible range of liquidation amount.
Effects:
Update price of related tokens.
Calculates the health factor of the position using
getCurrentHealthFactor
function.Validates the health factor and ensures it's less than 1.
Calculates the permissible liquidation range using
getLiquidationAmount
function.Validates
lendingTokenAmount
against the permissible range.Determines the amount of project token to send to the liquidator.
Distributes rewards to the liquidator.
Parameters:
liquidateFromModerator (0xc8359268)
Liquidates a portion of the borrower's debt using the lending token, called by a related contract and update related token's prices.
The function to be called when a user wants to liquidate their position. Support liquidation with hot borrowing or not.
Requirements:
The project token is listed on the platform.
The lending token is listed on the platform.
Called by a related contract.
The lending token amount must be greater than 0.
The user must have a position for the given project token and lending token.
The health factor must be less than 1.
_lendingTokenAmount
must be within the permissible range of liquidation amount.
Effects:
Update price of related tokens.
Calculates the health factor of the position using
getCurrentHealthFactor
function.Validates the health factor and ensures it's less than 1.
Calculates the permissible liquidation range using
getLiquidationAmount
function.Validates
lendingTokenAmount
against the permissible range.Determines the amount of project token to send to the liquidator.
Distributes rewards to the liquidator.
Parameters:
liquidatorRewardFactorWithUpdatePrices (0xe7f63838)
Calculates the liquidator reward factor (LRF) for a given position after after updating related token's prices. ####Formula:
LRF = (1 + (1 - HF) * k)
Parameters:
Return values:
getMaxLiquidationAmountWithUpdatePrices (0x25a695e5)
Calculates the maximum liquidation amount (MaxLA) for a given position after updating related token's prices. ####Formula:
MaxLA = (LVR * CVc - THF * LVc) / (LRF * LVR - THF)
Parameters:
Return values:
getLiquidationAmountWithUpdatePrices (0x02dfa5d4)
Returns the minimum and maximum liquidation amount for a given account, project token, and lending token after updating related token's prices.
Formula:
MinLA = min(MaxLA, MPA)
MaxLA = (LVR * CVc - THF * LVc) / (LRF * LVR - THF)
Parameters:
Return values:
Last updated