Introducing Evolving Proteus

A look at the capabilities and potential of Evolving Proteus.


Join us for an exploration of our new Evolving Proteus engine. In short, it creates liquidity concentration that changes shape over time.

This lets anyone create pools which shift their liquidity to follow the current exchange rate, in turn capturing more trade volume and providing more utility. It can also be used to sell off tokens or NFTs with a Dutch auction style mechanism. This second method can be used for liquidity bootstrapping, and to help whales move large quantities of tokens without sudden price disruption.

All this and more is explored in detail below.


When we launched Shell v2, we also launched the Proteus AMM engine, a tool for creating pools with very specific and customizable liquidity concentration. Similar to an advanced graphics engine, Proteus uses special math to efficiently plot curves of any shape with more specificity than any other trading pool system, including Uniswap, and also allows the creation of fungible tokens representing the LP position, which can be traded freely.

This AMM engine allowed us to build AMMs which very accurately mapped to the price history of certain pairs, such as Ether and USDC. However, as we all know, the past is not the future. As the trading price of Ether changed, the existing Proteus pools captured less and less trade volume. The utility of the pools went down despite their specificity because their highly concentrated peaks no longer matched the typical trading range for the token pair that they represented.

The options were either to allow the price to drift away from where liquidity was concentrated and in the process sacrifice trading competitiveness, or to create trading pools with broader, less concentrated liquidity, more similar to constant product AMMs (xy=k). However, spreading liquidity more evenly negates one of the biggest competitive advantages of Proteus, which is the specificity of the liquidity concentration.

The solution to this (and many other challenges) is Evolving Proteus, a new advanced version of Proteus which can be directed to continuously change the shape of its curve over a period of time, even once it's already deployed. The implications of this are massive. Now, we can have a pool with a highly concentrated liquidity curve that also shifts its concentration on a regular basis to follow the evolving price of two tokens. This maximizes trading volume and subsequently creates the most utility for traders. Symbiotically, it also generates the most fees for liquidity providers.

This article will not dive into the technical side of Evolving Proteus, but it will go over the practical side of its advantages and the exciting possibilities that are opened through this advancement.

Market-Tracking Curves

One use case for Evolving Proteus is the creation of market tracking pools. These pools are designed to be updated regularly to align with the trading range of the paired assets.

One method for adjusting the curve is manual control by a delegate, similar to Arrakis. Take, for instance, if Ether's price increases by 50% in USDC terms. The delegate could then adjust the liquidity concentration to the new price point. With this, the curve only needs to be broad enough to encapsulate the majority of the trading range until the next adjustment, not months of price changes.

This market-tracking can also be programmed to occur automatically, with or without a human in the loop. For example, the pool could be designed to follow the time-weighted average price of a token, similar to Maverick, or draw from a source such as an oracle.

Liquidity Bootstrapping with Concentrated Liquidity

Evolving Proteus can also be utilized to raise liquidity and distribute tokens or NFTs to a community. This is achieved through liquidity bootstrapping pools (LBPs). LBPs begin with a pool containing 100% of one token type and 0% of the other. Over time, the pool rebalances by altering the liquidity curve to gradually sell off the initial token in exchange for the second token. The price is determined by the market, based on the demand for the first token, at each stage of the rebalancing process. An LBP is a type of Dutch auction.

However, whereas existing LBPs are limited to simple curve shapes like constant product, Evolving Proteus can be used to create evolving pools with highly customized concentrated liquidity.

For instance, imagine creating a new fungible token named SURF. You could set up an Evolving Proteus pool filled with SURF token liquidity. If this pool pairs SURF with Ether, the price of SURF would decrease over time until the pool reaches a predetermined balance point, such as a 50-50 ratio or becoming 100% Ether.

This model is also applicable to NFTs. By integrating Evolving Proteus with the Shell Fractionalizer, one can orchestrate the sale of new NFT collections. For example, if you have 10,000 Hermit Crab NFTs, you could fractionalize them into fungible tokens and set up an LBP for those tokens just like you would for the SURF token. This allows users to buy the fungible tokens, which they can then redeem for the NFT of their choice. Furthermore, you could streamline the user experience by creating a user interface that masks the underlying fungible tokens, allowing direct purchase of NFTs at dynamically changing prices as the LBP evolves.

Our goal is to develop a browser-based interface for creating these types of pools, making it easier than ever to take advantage of these powerful features with little to no coding.

Price Impact Minimization

If you're a user looking to execute a large trade with a token pair that doesn't offer extensive liquidity, or perhaps you're a whale aiming to make a very, very large trade in a pool that has reasonable but not limitless liquidity, your trade will probably incur a high degree of price impact. This is because a single large transaction can severely unbalance the pool. Subsequently, arbitrage bots are quick to capitalize on such trades, effectively making a profit from your loss using the imbalance you create.

Evolving Proteus offers a solution to this problem. It enables the creation of customized pools that gradually sell the tokens you wish to dispose of in exchange for those you want to acquire, spread over a period of time. For example, if you aim to sell 10 million USDC, Evolving Proteus could initiate a pool filled with your USDC, which would then slowly rebalance until it is entirely made up of the token you are looking to purchase. Once the rebalancing is complete, you can then exchange your liquidity provider (LP) tokens for the desired token.

The entire process could be designed to be seamless for a front-end user, mimicking a standard swap operation in appearance. It's important to note that there would be gas fees involved in setting up the pool. Therefore, this strategy would be most beneficial for trades above a certain size. Luckily, Shell works to greatly reduce gas fees, making this a potentially practical solution for managing larger trades.

Moving Forward

Blockchain-based AMMs have never been able to compete with trading rates offered in TradFi, simply because blockchains are slower, always a step behind real-world prices. It has always been an industry-wide existential challenge to make AMMs competitive in this domain. Evolving Proteus takes us a step closer to this goal, enabling broad innovation in the creation of new market-tracking curves. These curves can change dynamically according to innovative signals of price movement, while retaining customized liquidity concentration with high precision.

Beyond this, Evolving Proteus will enable fairer and more efficient token launches, including NFT launches. With the popularity of blockchain-based games, which use large NFT collections, customizable NFT launches will be more important than ever.

Further, as the industry grows more robust, more institutions will be brought on-chain, requiring better resources for secure operations dealing with large trades. Evolving Proteus is one more tool that raises the bar for handling such operations.

Our team has worked hard to bring Evolving Proteus to life. But despite our ambitions for it, it is ultimately just a tool. The real innovation depends on how it is used! We’re excited to discover what new types of AMMs our community will dream up and build, and hope Evolving Proteus will help stimulate a broad and multifaceted improvement in DeFi.

Join the Shell community!


Join the future of DeFi.

Use the app

no account needed