Liquidity Management Projects: Part 2
Novel liquidity management systems using new platforms
Before we begin, in case you missed Part 1, I suggest reading it to get a background into why liquidity management is crucial for the future of DeFi.
Now, just as there are services popping up left and right that aim to efficiently manage liquidity on some of DeFi’s top DEXs, there are entirely new DEX models being implemented to put liquidity management front and center. Which method is “better?” To me, it doesn’t really matter – what’s most important is that efficiency will win either way, and that’s one of the most important qualities we need if we want to attract major capital into the DeFi space.
In part 2, we’ll go over two projects at the forefront of DEX-integrated liquidity management: Carbon DeFi and Maverick Protocol.
Carbon DeFi:
We’ll start with Carbon, which is a new trading protocol from Bancor. The contributors behind both projects have a long history of massive innovation, with Bancor being the first AMM in DeFi, and pioneering major efficiencies like single-sided LPing. With Carbon, they’re bringing an equally disruptive protocol to DeFi by introducing an entirely new liquidity structure called Asymmetric Liquidity. If I’m being honest, the upside potential here is the biggest I’ve seen from a new DEX.
Let’s not forget that one of the entire reasons the Bancor team created a DEX is to bring permissionlessness to crypto trading. In other words, CEXs can be inefficient in onboarding new tokens, and being permissionless means that anyone can add any new token to an exchange. The obvious downside to that is the potential for scam tokens, but the upside is far greater – a much cheaper, faster, and easier way to have access to any asset possible.
Next, I’ll reiterate one of the problems that I highlighted in the Arrakis Finance section of Part 1: providing liquidity to a DEX currently puts LPers at the mercy of the market. Whereas in TradFi, the “liquidity providers,” also known as market makers, control the price and flow of assets, in DeFi, the market “takers,” meaning the buyers and sellers, essentially control the price and flow of assets. This is a big problem, as market makers need to be incentivized in DeFi like they are in TradFi.
Asymmetric Liquidity: Built Different
Carbon is unique in that it isn’t an AMM or an orderbook, and technically there are no pools at all, which means there’s no such thing as IL. Instead, when a user deposits a token pair, each token has one custom “curve” based on the settings decided by the depositor.
For example, say you deposit ETH and USDC. You can create a strategy to buy ETH between 1300-1400 and sell between 1900-2000. The tokens are acquired in the first curve (buy low) then become available in the second curve (sell high). Once Carbon identifies a taker willing to take your trades against your strategy within your predefined price ranges, the trade goes through. Takers can be direct traders on Carbon’s interface, traders on DEX aggregators, or arbitrageurs.
After the first curve is used, it basically shuts off, and orders on that curve no longer fill. So, if your entire order to sell USDC/buy ETH happens at a price of 1399, you’re now all-in ETH. In other AMMs, if you wanted to provide liquidity from 1300-1400, you’d be at the mercy of the market. For example, on UniV3, you can set a range to DCA into a token, but then you sell back out if the price breaks above the range and goes back down.
With Carbon, once you buy your desired token in the desired range, that’s it – no selling, trading, or rebalancing until it hits your sell target (if you have one). All in all, it ends up working like a set of limit orders.
Clearly, all of this vastly improves on the current LP experience. Instead of providing liquidity and simply hoping that the fees you earn outweigh your IL, you actually have control over where exactly you buy and sell. In other words, you’re actually making a market, rather than letting the market decide where you take action. However, this is only part of the bigger picture. Let’s take a look at how Carbon plans to expand from here:
While the P2P model has its benefits, it’s usually very hard to bootstrap liquidity because you need participants constantly placing orders around the current price. So, while this will be a feature of Carbon going forward, it’s only part of the equation. To understand the bigger picture, we need to take a look at what happens when there’s a live strategy but no matching orders directly on carbon.
This is where external liquidity sources come into play. Say you have a live strategy to sell ARB for USDC at $1, and there are no direct buyers offering 1 USDC for your ARB. Carbon can still find willing buyers elsewhere in the DEX ecosystem. If the current market price begins to overlap with your preset price range, it usually means there is a profitable arbitrage trade, or there is a user of a DEX aggregator, willing to trade against your strategy.
In both cases, Carbon is providing the means through which external liquidity sources can be used to execute your order. In essence, Carbon is using the entire crypto ecosystem's liquidity to ensure your orders get efficiently executed in your desired ranges.
Carbon has an open-source arb framework (https://github.com/bancorprotocol/bancor-arbitrage) for anyone to perform these kinds of arb trades, and Carbon strategies are already being arb'd against Uni V2 and V3 and Sushi, along with more and more DEX aggregators plugging in.
Addition by Subtraction
Just as Carbon implements new features into the DEX universe, they also remove some of the pain points that have plagued DeFi’s short history.
First, it minimizes the amount of LP transactions, and therefore fees. Unlike typical AMMs, Carbon LPers can easily adjust their strategy’s price ranges without withdrawing and re-depositing their tokens, which takes up time and gas fees.
MEV is also a thing of the past as Carbon’s Asymmetric Liquidity model basically makes it irrelevant. Most MEV attacks go something like this:
Bot sees pending big buy order
Bot places similar buy order milliseconds before the big buy order is filled
Original big buy order fills, pushing the price up
Bot sells milliseconds later for a profit
So, why can’t MEV work on Carbon? Simply put, the fact that buy and sell orders are placed on different bonding curves means that orders can still be front run, but the sell order would be placed (and executed) on a different curve with different parameters than the buy order.
It also gets rid of IL – since LPers are basically just placing limit orders where they want to provide liquidity, there’s no rebalancing of the token pair as they make transactions. Reusing the last example, if you want to provide USDC liquidity at an ETH price of 1300-1400 (buy low), you’re simply swapping USDC for ETH, and there’s no need for your USDC and ETH balances to remain an even 50:50.
Because there’s no risk of IL, there’s also less urgency for LPers to earn trading fees. For typical AMMs, trading fees can be seen as a way of compensating liquidity providers for the loss they take via IL. However, for Carbon, trade execution is front and center. LPers design custom strategies, which can be very simple or very complex, with the same goal: make a profit. In order to function, those strategies need reliable execution at precise prices with no slippage and no bad side effects like IL. Overall, this is more comparable to the TradFi model, where market makers rely on trading the bid/ask spread to make money, whereas DEX LPers have always relied on fees and extra token emissions to generate income.
To me, that means all of the fees can then be passed through to the protocol, and presumably the users at some point. In fact, contributors have already hinted at this by saying fee allocation will be decided by DAO governance. The DAO’s current plan by vote is to use all fees to buyback/burn BNT to offset the deficit in BancorV2.1 and V3. However, that plan is open to change down the road.
But that still leaves the question: wen token? Right now, the governance is still held by BNT holders, but personally I think that will change as the BNT deficit is resolved and Carbon continues to grow.
The shift of focus from fees to execution also means that liquidity mining won’t be as relevant, which gets rid of unnecessary token dilution. We might actually see incentives being paid out in other tokens, as the community recently held an event where users are paid USDC to create strategies on the platform.
Speaking of strategies, let’s take a look at the real magic that Carbon offers!
Carbon’s Customizable Strategies
Asymmetric liquidity creates a way for users to implement many types of strategies that have previously only been available to CEX market makers.
The above example highlights how you can DCA into a token within a certain price range (ETH between 1300-1400) and DCA out within a range as well (ETH 1900-2000). Both of those orders can exist simultaneously, or you can simply have one or the other. Carbon also allows limit orders, where you buy or sell at a specific price with no slippage. This is a standard option for CEXs, but a rare feature for a DEX!
You can also customize a ton of other things. For example, if you want to DCA in just a little bit, you can set the specific amount of USDC that you want to buy ETH with, and once that limit is reached, the strategy will automatically stop. But if you want to go big, you can set up a “recurring strategy,” which will DCA into ETH until you run out of USDC entirely or manually stop the strategy.
To take this a step further, say you want to buy a certain amount of ETH between 1300-1350 and 1350-1400. To ensure your average cost is lower, you can tell Carbon to put 80% of your designated USDC into ETH between 1300-1350, and the other 20% between 1350-1400.
You may be wondering: what does one do with all these features? Good question! There are plenty of scenarios where Carbon’s features can shine – let’s take a closer look at two of them.
One such use case is protection against stablecoin depegging. Anyone using DeFi has some amount of PTSD from the USDC depeg back in March, which highlighted the risk inherent in even the most perceived-safe crypto assets (and we don’t even have to get into UST). Carbon fixes this!
LPers can create a strategy where they automatically sell a stablecoin if it breaches a certain price and buy back in if/when the price recaptures that level. Traditional AMMs sort of have a solution to this, as you can stop providing liquidity below a certain price, but then you’d still hold 50% of the LP in the depegged token. Otherwise, you’d keep providing liquidity, rebalancing (buying the cheap asset, selling the expensive, or in this case, the correctly priced one) all the way down. Both of those options could end up blowing up an account, whereas Carbon offers a much more concrete and useful solution.
The other use case is that of new projects who want to distribute their token while avoiding the dreaded post-launch dump pattern we’ve all gotten to know.
Using Carbon, they can enter a strategy that distributes their token within a certain price range, and even specify where in that range they want to distribute most of the sell order. The reverse is also possible – if a project has a price level in mind where they’d consider their token to be insanely cheap, they can set a strategy to DCA at that level. This would not only provide support for the price, but also for morale surrounding the project as it shows that contributors are putting their own money on the line.
Finally, here’s a sample list of potential strategies that Carbon users can make:
Backtesting
Not only does Carbon allow LPers to create a wide variety of buy/sell strategies, but it also lets them backtest any strategy they create using the Simulator.
In all honesty, this is where things get a bit out of my wheelhouse as there’s a lot of programming involved, but what I do understand is that there’s a ton of value in Carbon’s tech if you want to passively range-trade in a rangebound (crab) market. (Warning: what you’re about to see may make you question everything you’ve ever been told about HODLing).
Let’s take a look at how this is possible. The following chart uses a simple strategy:
· Buy ETH with USDC when ETH price is between 1000-1250 USDC (buy low)
· Sell ETH for USDC when ETH price is between 1500-2000 USDC (sell high)
· Start with 750 USDC and 1 ETH worth of liquidity
Here’s how it turned out. You don’t need to be a gigabrain dev to see the value here:
In that chart, the blue line is the total portfolio value (in USDC) and the gray line is the price of ETH (also in USDC). As you can see, the ETH price went down from ~1500 to ~1100 during this time frame, but the portfolio went up from ~1300 to ~3000! Imagine making a 130% return with such a simple strategy while the market actually goes down.
If you’re not convinced, there are many more examples out there of how these strategies can be mega winners. You can see another example here by @Here2DeFi, who compares performance of providing liquidity in certain ranges between Carbon and Uniswap (v2 and v3). Spoiler alert: Carbon blows both out of the water!
https://twitter.com/Here2DeFi/status/1659598134765588480
Personally, I bet we see a ton more examples like this as Carbon gains mindshare in the DeFi community. With a current TVL approaching $500k, it’s still insanely early, but I think this project is simply too impressive to remain a sleeper.
Carbon’s Future
As I mentioned, the immediate goal for Carbon seems to be boosting the efficiency of their DEX in two ways.
The first way is the continued development of their arbitrage bot, which is how Carbon currently keeps their markets efficient. Right now, the bot uses UniV2, UniV3, Sushi, and BancorV3 to find the most updated prices for each listed asset, and executes trades on Carbon to profit from any discrepancies.
Second is by integrating a routing system, which would unlock a ton of liquidity and opportunities. For now, that seems to be the best of both worlds, and the team is currently in talks with 1inch, which aggregates orders from all the major DEXs around DeFi. If/when Carbon integrates with 1inch, it would essentially make the platform a frontend for creating various strategies using the liquidity on other DEXs.
An integration with 1inch would definitely grow awareness for Carbon, which would lead to the next phase of growth: new products. I don’t mean products launched by Carbon, necessarily, as the contributors are dedicated to focus on perfecting their current products at this time. But since Carbon is a new animal in a world full of forks and copycats, I think other projects would be lining up to build on top of their unique liquidity model. For example, social trading is a part of the market that somehow (to my own surprise) has yet to achieve product-market fit. Carbon is pretty much perfect for this, as it allows anyone to backtest and run passive and active strategies alike with fully transparent and simple instructions.
Overall, I see major potential in Carbon for all the reasons I’ve listed, and I’m very excited to see where they go from here!
Maverick Protocol:
Last but definitely not least in the Concentrated Liquidity Management series is Maverick Protocol, a new DEX being built on zkSync.
Maverick is putting a new spin on the best part of the UniV3 concentrated liquidity model. So, not only do users get to provide liquidity in a given range, but they can also program that range to move along with the price of the LP token pair.
This is basically what CEXs do behind the scenes, but Maverick is doing it with one goal in mind: improve incentivization.
As it turns out, it’s pretty hard to incentivize concentrated liquidity LPs. For example, how do you split incentives across different ranges? Especially if there aren’t fixed ranges.
One solution that’s being attempted by liquidity managers like Steakhut is to have a set of fixed ranges available. When users deposit their positions, actively manage their funds and give an ERC-20 receipt token that accrues rewards.
However, Maverick is coming at this problem from different angles. First, they’re a DEX rather than a third-party liquidity management service, so they’re creating an all-in-one solution where users can trade as well as provide liquidity directly and be rewarded. Second, the ranges in Maverick aren’t fixed. Instead of having a third-party service manage the ranges, users still have to do it, but Maverick makes it a lot easier.
So, how does this help with incentivization?
We’ll get to that, but first let’s go over how Maverick is changing the game with their auto-adjusting ranges.
Providing Liquidity
When users deposit liquidity into Maverick, they’re faced with a set of choices for how to do so: the categories include token pair, fee tier, bin width, liquidity mode, liquidity distribution
Token pair and fee tier are pretty straight forward. This just depends on the tokens you want to deposit, and how much you want to get paid for doing so (in terms of trading fees). Another thing to mention about the fee tier: the higher it is, the harder it is to earn fees. For example, say the ETH/USDC trading pair has 3 fee tiers: 0.1%, 0.3%, 1%. When someone buys/sells ETH with/for USDC, the default trading fee would be 0.1%. However, if volume spikes and there’s no available liquidity at the 0.1% fee tier, their fee will jump to 0.3% and ETH/USDC LPers for the 0.3% fee tier will get paid. The same process is used to bring volume to the 1% fee tier. Under these parameters, ETH/USDC LPers at the 1% fee tier don’t get much action. However, less liquid altcoins might only have a 1% fee tier, so if volume spikes, LPers can make a ton in fees.
Moving to bin width, this measures the range of prices you want to provide liquidity for. I’ve talked a lot about this in part 1, so I’m not going to go into much detail, but the wider the range, the less fees you earn. You can earn more fees by using a shorter width, but along with those fees comes an assumed increase in volatility and therefore higher IL. So, there are pros and cons for each.
Now, getting into what makes Maverick unique: liquidity mode and liquidity distribution.
· Liquidity Mode
There are for “liquidity modes” that users can choose from (for now): static, right, left, and both. Basically, these describe how the LPs are adjusted. Let’s take a look at what they mean:
Static – will not move with price (what you get with Univ3/Joev2)
Left – will adjust downwards when price goes down (bullish on left/quote asset)
Right – will adjust upwards when price goes up (bullish on right/base asset)
Both – range will shift in either direction. This strategy captures as much fees as possible while keeping liquidity close to the active price. Of course, the risk of higher IL is present here as well, so this should be used when the belief is that the asset pair will maintain a relatively stable price relationship.
Let’s run through an example using the Mode Right option: say you add ETH in the USDC/ETH pair. That means you think ETH will go up in terms of USDC, which means that people are buying/will buy ETH at higher prices. If that’s the case, market takers (traders) are selling USDC for ETH, which means the pool ends up with more USDC and fewer ETH.
When traders swap their USDC for ETH, there’s more USDC in the pool for each ETH, therefore the USDC/ETH active price moves to the right. Using Mode Right, the LP is kept concentrated in the bin to the left of the current active bin, so it’s basically a dip-buying strategy. In this example, you’d be buying the dip in ETH.
· Liquidity Distribution
The final option is liquidity distribution, where users can control the “shape” of their liquidity. In other words, users can deposit liquidity into multiple ranges at once.
For example, instead of providing a set amount of liquidity at ETH price $1500-$2500, you can put 20% in the $1500-1700 range, 20% in the $2300-2500 range, and the remaining 60% in the $1700-2300 range. The percentages are fully customizable, but you’re limited to 3 bins.
One advantage of this setting is that is allows users to create a stacked limit order by providing liquidity in a non-active price range – e.g. provide ETH liquidity at 2300-2400 USDC when the price is currently 1800 USDC. However, in order for it to be a true limit order, you’d have to stop the strategy after ETH moved above 2400.
Another use case for this feature is DCAing. For example, you could provide 10% of your total ETH liquidity every 500 USDC.
Lastly, one benefit that I find really underrated is that you basically can trade or average into or out of a position and get paid to do it, rather than pay a fee. There’s no token (yet), so all fees go right to LPers!
Max Efficiency
Ultimately, this is already resulting in massive improvements in capital efficiency. In other words, you can get way more volume out of the same TVL.
Let’s look at capital efficiency of Maverick vs Uniswap, which is the biggest DEX by far in terms of volume.
Since April 1st, Maverick has generated $1.2 billion in volume, with its TVL rising from $14.4 million to $28.6 million. If you divide that volume by the average TVL of $21.5 million, the result is that volume is about 56x TVL for about a two-month period.
Uniswap, during the same time period, had an average TVL of $4.06 billion and total volume of ~$68 billion, which comes out to 16.7x average TVL.
All in all, Maverick is just getting off the ground and its capital efficiency is already 234% higher than Uniswap! You can decide for yourself how useful that comparison is, but I think it’s definitely worth mentioning.
Another efficiency comes in the form of gas savings: since trading fees are auto-compounded into users’ LP tokens, there’s no need to continuously redeem rewards, saving LPers time and money. And as zkSync grows, due to the scaling mechanism of zk proofs, fees will drop the more people use it. So, we could be looking at insanely cheap gas fees if/when Maverick continues to gain adoption along with zkSync.
Permissionless Incentives
Maverick is also packed with permissionless features, which is consistent with the entire point of DeFi.
For example, anyone will be able to deploy a permissionless pool for any unlisted pair, as long as they can provide liquidity for said pair. The only other requirement is that each new pool needs to be in Mode Static to begin with.
And now for my absolute favorite feature of Maverick, permissionless Boosted Positions (BPs).
First, what’s a Boosted Position?
Basically, it’s like a regular LP except for 2 important distinctions:
· Other users can add liquidity to a BP (like buying a share of it)
· BPs can pay out additional rewards to LPs
Anyone who deposits tokens into a BP not only earns the regular trading fees, but also extra LP incentives. So, if a project wants liquidity, they can add a BP and pay their token as an additional reward out to people who buy part of that BP – just like a bribe.
But wait, it gets better!
Any user can add ERC-20 incentives (permissionless incentives!) – you’d just need to specify the amount paid out and for how long. This is one of the most interesting features I’ve seen in DeFi yet, and it brings a new social element to bribing.
Another interesting feature of Boosted Positions is that bribes are paid out in specific price bins, which incentivizes LPers to add liquidity at prices that are the most relevant for any given asset. For things like stablecoins and LSDs, this makes a ton of sense, as a project could pay tokens out to users to provide liquidity in a narrow range around the peg price.
One such example of this is Ankr with ankrETH. Right now, they have a BP on Maverick where they’re paying ANKR tokens for LPers to provide liquidity at an ankrETH price of 1.1041-1.1052 ETH:
Overall, this is a really exciting feature when you consider all of the up-and-coming protocols with tokens on zkSync. It’s clear that Maverick has its sights set on becoming the go-to DEX on this exciting L2, and capturing market share early-on can do wonders, especially if they can also serve as a *permissionless* incentivization hub. It’s not hard to see how this can become a huge trend setter in the wider DeFi space.
Conclusion:
Between the 6 protocols I covered in this two-part series, there’s a ton to digest. Personally, looking into these projects has only made me more bullish on the space than ever, as DeFi is certainly looking more mature by the day.
Here’s something to consider as DEXs continue to evolve: will the future of liquidity management be dominated by third-party services like the four protocols in Part 1? Or will DEXs ultimately adapt and create ways to manage liquidity more efficiently (like Carbon and Maverick), making third-party services less necessary?
Maybe the two models will coexist, as innovation will continue to run rampant in both. Maybe DEXs will continue to innovate and market makers will use them, while liquidity management services become more of a B2B model, mostly servicing DAOs and institutions who need their assets managed directly.
I think both models will continue to thrive for the foreseeable future, as there’s still a ton of money out there for DeFi to first absorb and then properly manage. That’s a process that will take years and years, and considering UniV3 created the concentrated liquidity trend just over 2 years ago, it’s safe to say that we’re very much still in the first inning when it comes to innovation in this space.