PlusPool

This contract manages the leveraged assets of KLAYswap's plus pool liquidity providers. Liquidity providers can maximize their returns with positive assets (deposited assets + utilized assets) by using positive deposits according to their deposited assets. However, a high asset utilization ratio can result in automatic returns, which can result in losses.

Code

Github Link: (Will be updated after official launch)

Address

  • Cypress : 0x

Events, Read-Only Functions, and State-Changing Functions

Events

ChangeBorrowFactor

event ChangeBorrowFactor(uint newBorrowFactor);
  • Event log of borrow factor change

ChangeLiquidationFactor

event ChangeLiquidationFactor(uint newLiquidationFactor);
  • Event log of liquidation factor change

ChangeBorrowable

event ChangeBorrowable(address token, bool b);
  • Event that occurs when availability is changed

GiveReward

event GiveReward(address user, uint amount, uint lastIndex, uint rewardSum);
  • Event log of when mined KSP is claimed and distributed

  • Parameters

    • user : address of the user who claimed

    • amount : the amount of KSP claimed

    • lastIndex : index result of the pair of the wallet after claiming

    • rewardSum : The amount of KSP that has been accrued so far

GiveAirdropReward

event GiveAirdropReward(address user, address dist, uint amount, uint currentIndex, uint userAirdropSum);
  • Event log of when airdrop token is claimed and distributed

  • Parameters

    • user : address of the user who claimed

    • dist : Airdrop contract address

    • amount : the amount of token claimed

    • lastIndex : index result of the pair of the wallet after claiming

    • rewardSum : The amount of token that has been accrued so far

OpenPosition

event OpenPosition(address user, uint amountA, uint amountB, uint borrowA, uint borrowB, uint amountLP, uint userLP);
  • Events that occur when depositing to PlusPool

  • If the token to deposit is KLAY, msg.value is provided.

  • Parameters

    • user : address of the user

    • amountA : The deposit amount of tokenA

    • amountB : The deposit amount of tokenB

    • borrowA : The utilization amount of tokenA

    • borrowB: The utilization amount of tokenB

    • amountLP: The amount of LP tokens minted due to additional liquidity

    • userLP : the total amount of LP tokens minted due to additional liquidity

ClosePosition

event ClosePosition(address user, uint amountLP, uint amountA, uint amountB, uint userLP);
  • Events that occur when withdraw liquidity

  • Parameters

    • user : address of the user

    • amountLP: The amount of LP tokens burned due to liquidity removal

    • amountA : The withdraw amount of tokenA

    • amountB : The withdraw amount of tokenB

    • userLP : the total amount of LP tokens minted due to additional liquidity

Liquidate

event Liquidate(address user, uint idx, uint debtA, uint debtB, uint lp, uint debtRatio, uint time);
  • Event that occur when the automatic return system activates

  • Parameters

    • user : address of the user

    • idx : Number of auto-return count

    • deptA : Number of tokenA returned automatically

    • deptB : Number of tokenB returned automatically

    • lp : the total amount of LP tokens

    • debtRatio : Asset utilization ratio in case of automatic return

    • time : Automatic return time

Last updated