Liquidity Providers

A single liquidity pool provides liquidity for the entire protocol

Depositing Liquidity

The native liquidity tokens of Imperial are both Solana or USDC, so when a user deposits liquidity into the pool, they deposit these into the pool in exchange for LP tokens. These tokens represent ownership in the underlying assets of the pool. The formula for which they receive those tokens is:

lp_tokens = (deposit_amount × lp_supply) / pool_value

Where pool_value

vault_balance = amount_in_pool + total_hedged_tokens

The total_hedged_tokens is notably on a cost basis (what the protocol purchased the tokens for), not their current value. This is because any change in the hedged token's price represents a liability the protocol owes position owners, so it is irrelevant what the current price of the tokens used for hedging are.

The formula was used such that as long as the assets don't change, users get the same value in as they got out, no matter in which order they deposited tokens.

When a user deposits liquidity, tokens are minted; and when they redeem those tokens, tokens are burned.

Generating Value

There are two core ways the protocol generates value for LP depositors:

  1. Position Update Fees

  2. Lending Fees

Position Update Fees

Position update fees are charged any time a user opens, closes or updates a position. These fees serve three purposes:

  1. To generate value for LP depositors

  2. To incentivize creators of positions to create positions that keep a market in a slightly net-long and "healthy" state by charging some positions less and some more depending on what they will do to the market

  3. To generate a backstop fund large enough to ensure a market never takes value from the underlying pool in the extreme case it goes net short and/or the underlying asset goes to zero

Lending Fees

Lending fees are charged based on a function of the pool utilization. This is known as a jump-rate model.

Notably interest rates are not calculated when a position is opened. This means that if the pool becomes over-utilized, positions are incentivized to close.

While users cannot know exact interest rates, they can:

  • Monitor current rates and utilization trends

  • Close positions if rates become unfavorable

  • Time entries during low utilization periods

Withdraw Protections

LPs are prohibited from withdrawing assets if that asset is currently being utilized by the protocol plus a buffer.

Last updated