Loop at Target HF + Borrow Rate Exit Guard
0x484428507A212cA56D71baa27Ca6089a6dB63a88

What this does

This plug maintains a leveraged loop of wstETH collateral against USDC debt on the Aave market at 0x2f39d218133afab8f2b819b1066c7e434ad94e9e. It reads the exited_loop flag, wstETH and USDC reserve data, and the socket's account data, prices, and liquidation LTV. It runs only while the loop is open, repaying all debt and withdrawing all collateral once the USDC borrow rate reaches 0.055, and otherwise steering debt to the liquidation ceiling divided by 1.2. Rebalancing by hand or on a stale rate risks liquidation or holding debt at an unfavorable rate.

Actions · 47

  • Read stored value
    Read stored value of in
    Reads a stored value from the socket's persistent storage by key.
  • Compare two values
    Is
    Compares two values with a chosen operator and returns a boolean.
  • Predicate
    Steers control flow by comparing two values: branch, loop, or require the condition holds.
  • Get asset data
    Get asset data of in
    Reads an Aave reserve's live rates and token addresses, with supply and borrow APYs.
  • Get asset data
    Get asset data of in
    Reads an Aave reserve's live rates and token addresses, with supply and borrow APYs.
  • Compare two values
    Is
    Compares two values with a chosen operator and returns a boolean.
  • Predicate
    Steers control flow by comparing two values: branch, loop, or require the condition holds.
  • Get token balance
    Get balance of held by
    Reads a token balance held by an address, native or ERC-20.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Get token balance
    Get balance of held by
    Reads a token balance held by an address, native or ERC-20.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Compare two values
    Is
    Compares two values with a chosen operator and returns a boolean.
  • Predicate
    Steers control flow by comparing two values: branch, loop, or require the condition holds.
  • Set stored value
    Set stored value of in to
    Writes a value to the socket's persistent storage under a scope and key.
  • Repay
    Repay to
    Repays borrowed assets to an Aave market from the socket's balance.
  • Withdraw
    Withdraw from
    Withdraws a supplied asset from an Aave market back to the socket.
  • End block
    End block
    Closes the innermost open block, whether a conditional branch or a loop.
  • Else branch
    Else
    Opens the else branch of a conditional.
  • Get token balance
    Get balance of held by
    Reads a token balance held by an address, native or ERC-20.
  • Compare two values
    Is
    Compares two values with a chosen operator and returns a boolean.
  • Predicate
    Steers control flow by comparing two values: branch, loop, or require the condition holds.
  • Supply
    Supply to
    Supplies an asset to an Aave market, minting aTokens to the wallet.
  • End block
    End block
    Closes the innermost open block, whether a conditional branch or a loop.
  • Get account data
    Get data in
    Reads an address's overall position in an Aave market: collateral, debt, borrow capacity, and health factor.
  • Get price
    Get price of in
    Reads the price the market's own oracle assigns to an asset.
  • Get liquidation LTV
    Get liquidation LTV of in
    Reads the liquidation threshold of an asset in an Aave market.
  • Calculate proportional value
    Calculate of
    Calculates a proportion of a value using percent, basis points, WAD, or RAY units.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Calculate
    Calculate
    Applies a binary arithmetic operation to two values and returns the result.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Compare two values
    Is
    Compares two values with a chosen operator and returns a boolean.
  • Predicate
    Steers control flow by comparing two values: branch, loop, or require the condition holds.
  • Calculate
    Calculate
    Applies a binary arithmetic operation to two values and returns the result.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Calculate
    Calculate
    Applies a binary arithmetic operation to two values and returns the result.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Repay
    Repay to
    Repays borrowed assets to an Aave market from the socket's balance.
  • Withdraw
    Withdraw from
    Withdraws a supplied asset from an Aave market back to the socket.
  • Else branch
    Else
    Opens the else branch of a conditional.
  • Calculate
    Calculate
    Applies a binary arithmetic operation to two values and returns the result.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Calculate
    Calculate
    Applies a binary arithmetic operation to two values and returns the result.
  • Set
    Set to
    Assigns a value to a named variable that later steps reference.
  • Supply
    Supply to
    Supplies an asset to an Aave market, minting aTokens to the wallet.
  • Borrow
    Borrow from
    Borrows an asset from an Aave market against collateral you have supplied.
  • End block
    End block
    Closes the innermost open block, whether a conditional branch or a loop.
  • End block
    End block
    Closes the innermost open block, whether a conditional branch or a loop.

Related plugs · 8