Overview

Lixir’s goal is to allow efficient allocation of capital to Uniswap v3 liquidity pools, as well as similar pools that may appear on other AMMs. Allocation is directly tied to ROI: the less capital you can lock up to earn a certain return, the better ROI you have.

Basic Mechanics

Initially, Lixir will feel like Compound, where the Lixir DAO votes on Uniswap v3 pairs to add, and then manages those pairs going forward. However, the actual pool mechanics differ significantly from lending platforms and require explanation. The pools work as follows:

  1. Users add liquidity to a pair of their choice, and receive minted tokens representing their share of the pool. (This mechanic is familiar to people who have used Uni V2).
  2. The pool maintains a Uni V3 NFT representing a certain price range.
  3. Over time, that NFT earns fees, most of which is profit that pool members can claim, and part of which will be used to rebuy LIX and increase its value.
  4. A fixed amount of $LIX rewards will be available to mine at intervals, and will be released to each pool. The more liquidity/users in a pool, the lower its rewards will be. This mechanic will have to be balanced basec on real-world usage patterns and as such is subject to tweaking.
  5. As the price of a pool gets closer to the edges of its range, users can reset the price range by adding capital to one side of the pool, or can get rewards for calling a re-pricing function when the re-pricing limit has been reached. This is explained below in the “Re-Pricing & Adding Capital” section.

Re-Pricing & Adding Capital

Inevitably, Uni V3 pools move away from the center of the price range chosen. For example, if an USDC/ETH pool has a $2350–2750 range, and the price is $2550 initially, eventually the price could easily be $2420 — near the edge of the range.

Re-Pricing

When a pool is created, the DAO sets a re-pricing limit for it. This is a percentage that represents how close to the edge of the range the pool can be before rewards are given for re-pricing it. In our example above, let’s assume that limit is 10%. The range is $400 wide, so that is $40, meaning that when the price goes below $2390 or above $2710, the pool is outside the limit.

Adding Capital

he second way to reset price is by adding capital. In our example, if USDC/ETH has moved to $2700, the pool now has more USDC than ETH. To make $2700 the new “center” of the range, the pool needs ETH to be added.

Rewards

Lixir rewards aim to incentivize getting pools back to a balanced price range. Rewards are earned for:

  • Calling the re-pricing function.
  • Keeping capital in a pool while it is in range — no rewards are earned when the price has moved out of the pool’s range, incentivizing rebalances.

Risks

  • No fees: If the price moves out of a pool’s range, no fees can be earned until capital is added or removed in order to re-balance. Lower ROI pools will stay in range for longer. This can be thought of as an opportunity cost risk.
  • Impermanent loss(IL): When a pool moves out of range, users own 100% of the lower-priced pair. For narrow ranges, this is not a huge problem, since the price of each token will be closer to each other, but it is still worth noting.

Governance

Governance features may be added over time, but the primary initial ones are:

  • Setting pair price range size targets.
  • Setting pair re-pricing limits.
  • Approving new volatility pools for existing pairs

Future Features

As users get comfortable with the platform, we will add more features over time. Some initial improvements we are targeting are:

  • Multiple volatility pools for each pair, in order to let users get more or less consistent fee-taking.
  • Reward amounts for each pool will need to be balanced and optimized as we gain experience with how Lixir is used in practice.

Next Steps

We are currently implementing the above features and polishing code, and will release the contracts publicly on Github when they are ready for feedback.