Ranged Pools

Ranged pools are customized pools which provide liquidity only within a predefined price range of a given token pair. It gives multiple use cases such as:

  • Pools with similar token pairs with maximized capital efficiency

  • Leveraged pools within specific price range

  • One-sided pools which only require one kind of token to be deposited for liquidity providing

  • More sophisticated liquidity providing methodology for professional market makers

Comparison with Basic Pool

A basic pool provides liquidity in all price range, which means that a user can buy or sell a coin in any price. However, the trading amount at a given price by the pool becomes not much large since the liquidity of the pool are spread over all the price.

Once the liquidity is concentrated in a specific range of the price, enough liquidity can be provided for trading market in the price range even with the small capital. The following example is a ranged liquidity pool with the price range from 0.8 to 1.2. In this regards, the ranged pool could be more useful to the pair with stable price, e.g., bCRE/CRE, ETH/ETH, and USDC/USDC pairs.

Liquidity Amplification Factor of Ranged Pool Depending on Price Range

A ranged pool with price range from 0.8 to 1.2 in the above example provides the liquidity only in the range. Since the ranged pool does not provide the liquidity outside of the range, its liquidity is concentrated in the range. Compared to the basic pool with the same capital, the ranged pool with [0.8, 1.2] range provides 10 times liquidity than the basic pool in the price range. This value of 10 is the liquidity amplification factor of the ranged pool. The liquidity amplification factor depends on the price range. As it can be seen below, the liquidity amplification factor increases as the size of the range is getting smaller.

Current Pool PriceMin PriceMax PriceLiquidity Amplification Factor





















For a ranged pool with PminP_{min}, PmaxP_{max}, and PP as the minimum price, maximum price and current pool price, the amplication factor (AMP) can be calculated as

AMP=1112(PminP+PPmax)AMP=\frac{1}{1 - \frac{1}{2}\left(\sqrt{\frac{P_{min}}{P}} + \sqrt{\frac{P}{P_{max}}} \right)}.

Note that PminPPmaxP_{min} \leq P \leq P_{max}.

Possibility of Change to a Single-Coin Pool

A ranged pool normally has two kinds of coins in the pool as the same as a basic pool. This is only applied to the case that the price is in the range of the pool. Once the price is out of the range, only a single kind of coin remains in the pool. For example, for the ranged pool with the range of 0.8 and 1.2, if the price is below 0.8, then the pool has only A coins. This means this pool sells out B coins and buys A coins at the price above 0.8. On contrary, if the price is above 1.2, then the pool has only B coins, which means the pool sells A coins and buy B coins at the price below 1.2. In that case of out-of-range, the users can deposit or withdraw to/from the pool with only a single kind of coin.

Multiple Pools per Coin Pair

A pair of coins can have multiple liquidity pools such as one basic pool and multiple ranged pool with different ranges. The following example illustrates one basic pool and one ranged pool together providing the liquidity to the market. Thanks to the higher capital efficiency of the ranged pool, the traders benefit very low slippage in the price range of the pool. In the out-of-range of the ranged pool, the liquidity can still be provided by the basic pool, which enables trading in the region.

For more details with mathematics, please see here.

Last updated