Liquidations in Venus Protocol’s Isolated Markets: A Comprehensive Guide

Introduction:

Venus Protocol provides an avenue for users to perform liquidations in the DeFi marketplace. This functionality is not only crucial to the protocol’s health but also provides opportunities for liquidators to earn profits. In this article, we will outline the step-by-step process of performing liquidations in the Isolated Markets of Venus Protocol. Please note that this guide is primarily aimed at developers or bots looking to automate the liquidation process.

Liquidations Explained:

In the Venus Protocol, liquidations involve seizing collateral from under-collateralized accounts to repay outstanding debts. The protocol employs two main calculations to determine account liquidity: the Collateral Factor (CF) and the Liquidation Threshold (LT).

While CF is the proportion of the supplied funds used to cover a loan, LT represents the point at which an account becomes under-collateralized, thus triggering a possible liquidation. Note that on the Isolated Pools, CF and LT can be retrieved with Comptroller.getBorrowingPower and Comptroller.getAccountLiquidity, respectively.

Identifying Under-Collateralized Accounts:

Identifying under-collateralized accounts is the first step towards performing a liquidation. Here are the recommended steps:

  1. Record account balances: Liquidators can maintain an off-chain mapping of accounts and balances by indexing market events to detect new positions and update existing ones. Consider using a subgraph to index these events.
  2. Get account balances: Use the vTokenBalancesAll function provided by PoolLens to retrieve supply and borrow balances for multiple vTokens associated with an account.
  3. Get underlying asset prices: Use the vTokenUnderlyingPriceAll function provided by PoolLens to retrieve the underlying asset prices for multiple vTokens.
  4. Calculate liquidity shortfall: With the supply, borrow balances, and underlying asset prices, calculate the liquidity shortfall for each account.

Performing the Liquidation:

After identifying an under-collateralized account, the liquidation process can be initiated using either the liquidateBorrow, liquidateAccount or healAccount function. The type of liquidation to be performed depends on the collateral, the minimum liquidatable collateral, and the solvency of the account:

  1. If the Collateral > minLiquidatableCollateral, use liquidateBorrow().
  2. If Collateral < minLiquidatableCollateral and the account is solvent, use liquidateAccount().
  3. If Collateral < minLiquidatableCollateral and the account is insolvent, use healAccount().

During the liquidation process, the amount of debt to be repaid and the collateral to be seized is determined by examining the borrower’s debt balance, the market’s collateral factor, and any discounts or liquidation incentives offered.

Liquidation Incentives are an extra reward, given as a percentage on top of the amount that a liquidator is trying to recover, which motivates them to initiate the liquidation process.

On the other hand, the Protocol Share Percentage determines the portion of the seized collateral that goes to the protocol itself, which helps support the ongoing development and maintenance of the Venus Protocol.

Post-liquidation, monitor the transaction’s success and handle any resulting events or errors. Successful liquidations will transfer the seized collateral to the liquidator’s address and repay the debt from the borrower’s account.

Liquidation Example:

To further illustrate the process, let’s consider an example of a liquidation in the Isolated Markets where: “Collateral > minLiquidatableCollateral”

Collateral Factor: 50%

Close Factor: 50%

Liquidation Threshold: 60%

Borrow Amount: $13,000

Collateral Amount: $20,000

Liquidation Incentive: 110%

Protocol Share Percentage: 5%

The borrowed amount is $1,000 above the liquidation threshold ($12,000), therefore the position is eligible for liquidation. Liquidation can be called with a repayment of up to $6,500 (borrow amount * close factor). Let’s assume the liquidator initiates the liquidation process with a repayment amount of $1,000 Let’s Calculate the Collateral Seized Amount (the amount that is seized from the borrower’s collateral):

Collateral Seized Amount = Repayment Amount * Liquidation Incentive

Collateral Seized Amount = $1,000 * 1.1

Collateral Seized Amount = $1,100

Therefore, if the borrowed asset value reaches $13,000 and the repayment amount is $1,000, the total collateral seized will be $1,100 considering the liquidation incentive of 10%. In order to calculate what amount the liquidator will get we need to consider treasuryPercentMantissa (in the Core pool) or protocolSeizeShareMantissa (in the Isolated pools). This variable (Protocol Share Percentage) sets the percentage of the collateral seized that will go to the protocol. Let’s assume that the protocol shares for liquidations is 5% and calculate the liquidator received amount:

Liquidator Receive Amount = Collateral Seized – Protocol Shares

Protocol Shares = (Collateral Seized / Liquidation Incentive) * Protocol Share Percentage

Protocol Shares = ($1,100 / 1.1) * 0.05 = $50

Liquidator Receive Amount = $1,100 – $50 = $1,050

In conclusion, the liquidator will provide $1,000 for the liquidation. After the liquidation, the liquidator will receive $1,050 and the rest $50 will go to the protocol.

Isolated Markets and Address Listings:

In the Isolated Pools, each new IL pool has a unique comptroller address. Below are the addresses of the Stablecoins, DeFi, GameFi, Liquid Staked BNB and Tron pools:

  1. Stablecoins: 0x94c1495cD4c557f1560Cbd68EAB0d197e6291571
  2. DeFi: 0x3344417c9360b963ca93A4e8305361AEde340Ab9
  3. GameFi: 0x1b43ea8622e76627B81665B1eCeBB4867566B963
  4. Liquid Staked BNB: 0xd933909A4a2b7A4638903028f44D1d38ce27c352
  5. Tron: 0x23b4404E4E5eC5FF5a6FFb70B7d14E3FabF237B0

Click HERE to access the complete list of Deployed Isolated Market Contracts. And Click HERE to access the Liquidation Guide on the Venus Protocol Documentation.

Conclusion:

The liquidation process in the Venus Protocol is complex and requires a comprehensive understanding of the protocol. It’s vital to thoroughly test and validate your liquidation bot before deploying it in a production environment. Stay abreast of any changes or updates to the Venus Protocol that may impact the liquidation process. With due diligence, liquidators can profit from the protocol while maintaining the market’s health.


Related Tags: