Looping

Creating leveraged positions.

Looping

"Looping" in the context of DeFi protocols refers to a strategy where a user deposits a certain cryptocurrency as collateral, borrows another asset against it, and then uses that borrowed asset to further increase their position, creating a leveraged position. This process can be repeated multiple times, creating a loop.

This strategy allows users to amplify their potential gains (or losses) by increasing their exposure to a certain asset without needing to provide additional capital. However, it also increases the risk significantly. If the value of the deposited crypto falls, the user could face liquidation. Please see our page on Liquidation here: Liquidation.

It’s important for users to be aware of the risks involved in such strategies, including the potential for liquidation and the volatility of the involved cryptocurrencies.

Looper

The Lodestar team has a built in looping interface in the dAPP which allows users to loop assets such as USDC, ARB, WBTC, USDC.e, USDT, DAI, FRAX, and plvGLP. Users can 1 click loop using the underlying (or USDC.e in the case of plvGLP) up to 1 < desired leverage amount < 3.

Examples

  • User has 0 ARB in their wallet, but wants to add to an existing ARB position on Lodestar and loop it 2x

    • Lodestar starting supply balance: 1 ARB, no other assets

    • Lodestar starting borrow balance: 0 ARB, no other assets

    • Loop:

      • token => ARB

      • amount => 1

      • leverage => 2x

      • useWalletBalance => no

    • Lodestar ending supply balance: 2 ARB

    • Lodestar ending borrow balance: 1 ARB

  • The user has successfully brought their existing 1 ARB position up 2x to 2 ARB, and as a result is now carrying a borrow balance of 1 ARB in addition to the 1 ARB added to their supply balance. They did not have to supply any further assets from their wallet to do so (although they had the option to).

  • User has 1 USDC in their wallet and wants to add to an existing USDC position on Lodestar and loop it 2x

    • Lodestar starting supply balance: 1 USDC, no other assets

    • Lodestar starting borrow balance: 0 USDC, no other assets

    • Loop:

      • token => USDC

      • amount => 1

      • leverage => 2x

      • useWalletBalance => yes

    • Lodestar ending supply balance: 3 USDC

    • Lodestar ending borrow balance: 1 USDC

  • The user has successfully created and brought their USDC position up 2x to 2 USDC, and as a result is now carrying a borrow balance of 1 USDC in addition to the 2 USDC added to their supply balance. 2 USDC was added to the supply balance because the protocol took one from the users wallet, and leveraged it accordingly. Since they opted to select useWalletBalance, the protocol took the 1 USDC they dictated, leveraged it 2x up to 2 USDC, and as a result is leaving the user with 3 USDC supplied on the protocol and 1 USDC borrowed.

  • User has 1 USDT in their wallet and wants to create a new position on Lodestar and loop it 3x

    • Lodestar starting supply balance: 0 USDT, no other assets

    • Lodestar starting borrow balance: 0 USDT, no other assets

    • Loop:

      • token => USDT

      • amount => 1

      • leverage => 3x

      • useWalletBalance => yes

    • Lodestar ending supply balance: 3 USDT

    • Lodestar ending borrow balance: 2 USDT

  • The user has successfully created and brought their USDT position up 3x to 3 USDT, and as a result is now carrying a borrow balance of 2 USDT in addition to the 2 USDT added to their supply balance. 3 USDT was added to the supply balance because the protocol took one from the users wallet, and leveraged it accordingly. Since they opted to select useWalletBalance, the protocol took the 1 USDT they dictated, leveraged it 3x up to 3 USDT, and as a result is leaving the user with 3 USDT supplied on the protocol and 2 USDT borrowed.

  • User has 1 plvGLP in their wallet and wants to create a new position on Lodestar and loop it 3x

    • Lodestar starting supply balance: 0 plvGLP, no other assets

    • Lodestar starting borrow balance: 0 USDC, no other assets

    • Loop:

      • token => plvGLP

      • amount => 1

      • leverage => 3x

      • useWalletBalance => yes

    • Lodestar ending supply balance: ~3 plvGLP

    • Lodestar ending borrow balance: ~2 USDC

  • The user has successfully created and brought their plvGLP position up 3x to ~3 plvGLP, and as a result is now carrying a borrow balance of ~2 USDC. 3 plvGLP was added to the supply balance because the protocol took one from the users wallet, and leveraged it accordingly. Since they opted to select useWalletBalance, the protocol took the ~1 plvGLP they dictated, leveraged it 3x up to ~3 plvGLP, and as a result is leaving the user with 3 plvGLP supplied on the protocol and ~2 USDC borrowed.

  • User has 0 plvGLP in their wallet and wants to add to a position on Lodestar and loop it 2x

    • Lodestar starting supply balance: 1 plvGLP, no other assets

    • Lodestar starting borrow balance: 0 USDC, no other assets

    • Loop:

      • token => plvGLP

      • amount => 1

      • leverage => 2x

      • useWalletBalance => no

    • Lodestar ending supply balance: ~2 plvGLP

    • Lodestar ending borrow balance: ~1 USDC

  • The user has successfully brought their existing plvGLP position up 2x to ~2 plvGLP, and as a result is now carrying a borrow balance of ~1 USDC. Their ending plvGLP position on Lodestar is 2x what it was before, and the user has effectively leverage looped their position. They did not have to supply any further assets from their wallet to do so (although they had the option to).

Fees

The Loopy contract has a value protocolFeePercantage that dictates the fees the contract takes. Currently this is set to 25, which is equivalent to .25%. In a loop that totals $1000 in USDC, the Loopy contract would take $2.50 as a fee which is then transferred directly into the protocol reserves of the respective underlying asset that was looped, USDC in this case.

This contract value is controlled via the Lodestar multi-sig and is able to be updated if need be, although the team has no plans to do so right now and will always inform the community if we plan to change anything.

Last updated