Transfer tokens
Transfer tokens

Ethereum Virtual Machine · Acts onchain

Sends a token from the socket to another address, native or ERC-20. The native token address sends ETH by value; any other address calls the token's transfer. Set the amount to max to send the full balance. Reach for it to pay out proceeds after a swap or withdrawal, to fund another account from a scheduled plug, or to move a balance read earlier in the transaction by coiling that exact amount.

Card: Buy $50 WBTC With USDC Once a Week

time
values
math
20actions
  1. 1·Repeat

    This plug is rate limited to run at most once every two weeks, so it can fire only a single time per fortnight.

  2. 2·Get constant

    A named constant WAD equal to 1e18 is loaded for later math involving 18 decimal scaling.

  3. 3·Calculate

    Fifty is multiplied by the WAD constant, scaling the number fifty up to 18 decimals.

  4. 4·Get constant

    The basis-point denominator of 10,000 is loaded as a named constant.

  5. 5·Calculate

    From the scaled fifty in slot 3.0, fifty is subtracted, producing that scaled value minus a plain fifty.

  6. 6·Calculate proportional value

    A proportion is taken: 10,000 basis points of the WAD value, which is the whole of it since 10,000 basis points equals one hundred percent.

  7. 7·Get price

    The latest Chainlink price of BTC in USD is read, normalized to 18 decimals.

  8. 8·Calculate

    Ten is raised to the power of eight, giving the factor for eight decimals.

  9. 9·Multiply then divide

    Multiplying the value from slot 5.0 by the BTC price and dividing by the value in slot 6.7, rounding down, computes a scaled expected amount.

  10. 10·Get token balance

    The socket's own WBTC balance is read before any swap happens.

  11. 11·Get address

    The solver address is held as a named value for use as the transfer destination.

  12. 12·Calculate

    Ten is raised to the power of six, giving the factor for six decimals matching USDC.

  13. 13·Calculate

    Fifty is multiplied by the six-decimal factor, producing fifty USDC in base units.

  14. 14·Transfer tokens

    That fifty USDC is transferred to the balance-holder address referenced from slot 10.0.

  15. 15·Get solution

    The solver takes the transferred tokens, routes them, and the outcome is verified.

  16. 16·Get token balance

    After routing, the socket's WBTC balance is read again.

  17. 17·Calculate

    Subtracting the pre-swap WBTC balance from the post-swap balance yields the WBTC actually received.

  18. 18·Predicate

    A requirement enforces that the WBTC received is greater than or equal to the expected amount from slot 8.0, reverting otherwise.

  19. 19·End block

    The open block is closed here.

  20. 20·Bubble

    The WBTC received amount is surfaced as the output of this plug.

Repeat up to x every
Get constant
Calculate
Get constant
Calculate
Calculate of
Get price of in
Calculate
Calculate times divided by rounded
Get balance of held by
Get
Calculate
Calculate
Transfer to
Get solution
Get balance of held by
Calculate
End block
Bubble
  • Card: Buy $50 WBTC With USDC Once a Week

    time
    values
    math
  • Card: Buy an 18 Dec Token With X% of USDC

    plug
    evm
    math
  • Card: Sell X% of an 18 Dec Token for USDC

    plug
    evm
    math
  • Card: Sell 18 Dec Token for USDC

    plug
    chainlink
    math
  • Card: Sell 8 Dec Token for USDC

    plug
    chainlink
    math
  • Card: Buy 8 Dec Token With USDC

    plug
    chainlink
    values
  • Card: Buy 18 Dec Token With USDC

    plug
    chainlink
    values
  • Card: Sell 10% of ETH for USDC

    evm
    math
    chainlink
  • Card: Buy ETH With 10% of USDC

    evm
    math
    chainlink
  • Card: Sell $25 ETH for USDC

    values
    math
    chainlink
  • Card: Buy $25 ETH With USDC

    values
    math
    chainlink
  • Transfer Token X Times an Hour

    plug
    time
    evm
  • Transfer Token X Times a Fortnight

    plug
    time
    evm
  • Transfer Token Once a Quarter

    plug
    time
    evm
  • Transfer Token Once a Month

    plug
    time
    evm
  • Transfer Token Once a Fortnight

    plug
    time
    evm
  • Transfer Token Once a Day

    plug
    time
    evm
  • Transfer Token Once an Hour

    plug
    time
    evm
  • Transfer Token Once a Year

    plug
    time
    evm
  • Transfer Token X Times a Month

    plug
    time
    evm
  • Transfer Token X Times a Year

    plug
    time
    evm
  • Transfer USDC Once a Year

    plug
    time
    evm
  • Transfer USDC Once a Day

    plug
    time
    evm
  • Transfer USDC Once a Quarter

    plug
    time
    evm
  • Transfer USDC Once a Month

    plug
    time
    evm
  • Transfer USDC Once a Fortnight

    plug
    time
    evm
  • Transfer USDC Once an Hour

    plug
    time
    evm
  • Transfer Token X Times a Quarter

    plug
    time
    evm
  • Transfer Token X Times a Day

    plug
    time
    evm
  • Transfer Token X Times a Week

    plug
    time
    evm
  • Transfer Token Weekly

    plug
    time
    evm
  • Rebalance Holdings to Target

    plug
    values
    evm
  • Swap at Floor

    plug
    evm
    values
  • Swap

    plug
    values
    evm
  • Exit Morpho at Epoch End

    pendle
    time
    boolean
  • Aave: Wind or Unwind Position

    plug
    boolean
    aave
  • Wind

    plug
    aave
    evm
  • Unwind

    plug
    aave
    evm