Delta Hedge Uniswap V3 LP Positions - LP with Less Price Risk

Uniswap V3 is a highly capital-efficient way to provide liquidity in crypto, and on-chain data shows Uniswap V3 volume surpassed 50% of all DEX volume from mid-2022 and not let go—it remains the top DEX in crypto by volume and Total Value Locked (TVL).

Clearly we seek to build upon that capital efficiency via the creation of collateralized borrowing against V3 LP positions—boosting capital efficiency even further. This in itself solves a key problem and allows DeFi investors greater returns at the cost of greater sensitivity to price moves in the underlying LP token.

The Problem - LP'ing on Uniswap V3 is Capital-Efficient but Complex

Uniswap V3’s enhanced capital efficiency nonetheless comes at the cost of added complexity as compared to Uniswap V2 and its constant product model in three key ways:

  1. Added complexity to understand pricing, exposure, and calculating the value of the LP position for the end user - particularly as it involves in selecting the appropriate price ranges and greater need for regular intervention to maximize fees collected.

  2. With added complexity and tight ranges comes greater volatility in the value of LP tokens. In Options terms we would call this Δ\Delta (’Delta’)— the value by which the token price changes with 1 tick price move in the underlying. In certain instances the volatility of the LP token can be greater than the volatility of the underlying asset—worsening risk-adjusted returns.

  3. Uniswap V3’s ERC-721 Liquidity Provider tokens are gas-intensive to mint, burn, and modify. This isn’t necessarily a major issue as a percentage of assets invested if the LP position is large. But high gas costs cut into any LP returns and make it expensive to deploy and change smaller positions.

Notably there are some protocols which run strategies to rebalance the Uniswap V3 LP position and ranges as a solution to problem number 1. But the risk of ILIL remains and indeed this is the problem we seek to solve.

Limiting the Risk of 'Impermanent' Loss in Uniswap V3 LP

As the end user I want to maximize my risk-adjusted returns, and in the context of providing liquidity on Uniswap V3 or elsewhere this means maximizing fees collected while minimizing losses.

Our aim is to create a product with the ability to make Uniswap V3 LP yields accessible. We likewise want to empower existing power users to access more advance LP strategies and streamline the User Experience therein.

We can maximize transaction fees by keeping the V3 LP positions concentrated within tight price ranges. We can likewise borrow against the value of our Uniswap V3 LP positions in order to enact a 'Delta-hedge' against Impermanent LossImpermanent \ Loss for maximum capital efficency.

We know from our research on Uniswap V3 tokens the payoff chart for variance in the price of the risky asset versus the stable asset as shown below:

The blue line above represents the price of the V3 LP token given percentage changes in the price of risky token X versus the stablecoin Y.

Measuring Price Exposure and the 'Delta' To Hedge against IL

How do we determine exactly how much to borrow to hedge against ILIL? Uniswap V3 by its nature is fairly math-intensive, and the below is the derivation of exactly how to calculate the Δ\Delta of our LP position. Note that Parallel will calculate these values on your behalf and greatly simplify this for the end user.

We'll use the methods to calculate Delta (Δ\Delta) as summarized by the following paper: Hedging Uniswap LP tokens.

We will calculate the value of our LP position as a function of SS, where S=YXS=\frac{Y}{X}, or the ratio of the stablecoin YY per XX token. For example at the current ETH/USDC exchange rate of 1800:1, S is 1800 if we are making markets on USDC/ETH.

We need to calculate K=PA×PBK = \sqrt{P_A \times P_B} where PAP_A is the bottom of the UniV3 LP position range and PBP_B is the top. And r=PBPAr = \sqrt{\frac{P_B}{P_A}}, or the square root of the ratio of the top of the range divided by the bottom.

With these to hand we will calculate V(S)V(S), or the value of our LP as a function of SS:

V(S)=2Kr(SS0)(SS0)r1V(S) = \frac{2\sqrt{Kr}(\sqrt{S}-\sqrt{S_0}) - (S - S_0)}{r-1}

And again leaning on the cited research we find our Δ(S)\Delta(S), or the amount by which the value of our LP position will move with a single-point movement in SS, or the ratio of YX\frac{Y}{X}.

Δ(S)=KrS1r1\Delta(S) = \frac{\sqrt{\frac{Kr}{S}}-1}{r-1}

Given that we’re expressly taking this value at S=S0S=S_0, or when we create the LP position, we can simplify our Δ(S)\Delta(S) as purely a function of rr:​

Δ(P)=KrP1r1\Delta(P) = \frac{\sqrt{\frac{Kr}{P}-1}}{r-1}

We can further simplify this if P0P_0is equal to PP --the moment at which we open our LP position. Thus Δ\Delta is purely a function of rr

Hedge=dVdS=Δ0(S)=r1r1Hedge = \frac{dV}{dS} = \Delta_0(S) = \frac{\sqrt{r}-1}{r-1}

Or in other words, the size of the necessary hedging position to make our LP completely delta-neutral as a proportion of the value of our LP token. We will use a real example in the next section, but do note that the Δ(S)\Delta(S) grows substantially larger as rr approaches 1, or where PA=PBP_A=P_B.

Let's Create a Delta Hedged LP Position with ETH and USDC

We start with the single-most popular Uniswap V3 pool by TVL and Volume and look to provide liquidity and earn transaction fees against our WETH and USDC.

We’re ultimately interested in generating the greatest fee revenue while limiting the risk of so-called “Impermanent Loss”, or IL. IL is of course a misnomer which describes the loss (or gain) when the price of the underlying tokens move away from the price at which the LP position was created.

If we in fact create a WETH/USDC position we will, all else equal, see our LP position gain in value if the price of WETH gains against USDC. The value by which our LP position gains in value by a single tick movement in the WETH/USD exchange rate is called Δ\Delta ('Delta'), and we can calculate this value with the above formulas.

Let’s assume our liquidity range will be current market price +/- 5%—if WETH/USD is at $1,800 this is between $1,710 and $1,890. Or in short we will earn transaction fees as long as the price of ETH remains above $1,710 and below $1,890.

According to the above formulas we can calculate the Δ\Delta of our position SS as Δ0(S)=r1r1\Delta_0(S) = \frac{\sqrt{r}-1}{r-1} where r=PBPAr=\sqrt\frac{P_B}{P_A}.

r=PBPA=18901710=1.0513r = \sqrt\frac{P_B}{P_A} = \sqrt\frac{1890}{1710} = 1.0513
Δ0(S)=r1r1=1.051311.05131=0.4953 \Delta_0(S) = \frac{\sqrt{r}-1}{r-1} = \frac{\sqrt{1.0513}-1}{1.0513-1} = 0.4953

What does this look like in practice?

Unhedged ETH/USDC LP Position Shows User Exposure to ETH Volatility

Thus our Δ\Delta tells us that the value of our LP position SS will gain or decline by 0.4953 for every point ETH gains or declines against USDC. This is of course less than if we held a position in ETH directly (in which case it would be 1:1). But remember we want to minimize price exposure and simply collect transaction fees.

If we wanted to create a completely Delta-neutral ETH/USDC position we need simply borrow 0.4953 USDC against the total value of the position. Uniswap makes it easy to see the total value of Liquidity provided (i.e. the size of the position) and is easy to see on the Parallel platform. What does the payoff of a hedged position look like? Let's assume we generate fees equivalent to the total of 0.5% of the LP position and observe:

Delta-Hedged Uniswap V3 LP Position Shows More Neutral Exposure

Note that the position no longer shows a clearly long bias to LP’ing, though it introduces another risk—the payoff of our LP position shows potential for losses if ETH gains or loses excessively against USDC. In options trading terms we've built a position akin to a "short straddle", which benefits in times of low volatility but does poorly if price becomes volatile.

Let’s take a step back and remember the key user outcomes in providing liquidity via Uniswap V3:

  1. Maximize transaction fees collected as a proportion of the amount of capital placed into the LP position. To maximize transaction fees collected this means establishing LP positions within narrow price ranges. As above we write this as a function of rr, or PriceupperLimitPricelowerLimit\frac{Price_{upperLimit}}{Price_{lowerLimit}}.

  2. Minimize the risk of loss given price volatility in the risky token. You will often see this referred to as Impermanent Loss or ILIL, and we’ve discussed the HedgeHedge against ILIL as r1r1\frac{\sqrt{r}-1}{r-1} assuming the LP position is initiated at the approximate center of the range. As rr approaches 1 this grows quickly larger and this is put at tension with profit maximization.

To maximize fees while minimizing ILIL we will need to actively monitor and edit our LP position if the underlying market moves sharply against us.

Rebalancing the Uniswap V3 LP Position and Delta Hedges

With two outcomes in direct conflict we are left with a tradeoff—in order to maximize return on capital (Fees collected as proportion of the LP position) we will need to keep our LP in a tight range and rebalance on regular intervals. But this likewise indicates we will need to take out greater Hedge positions—all of which will become costly both in terms of capital used and gas spent on a great number of transactions.

The ability to borrow against your LP position offered by our protocol will help us maximize capital efficiency in each of these operations, but we cannot avoid Gas costs—particularly on Ethereum mainnet.

Gas Cost Makes Regular Rebalancing Cost-Prohibitive on Mainnet

A conservative estimate puts the gas cost of a minting a new LP position or burning an existing one on Uniswap V3 as 350,000 gas. Or in other words, we would spend 700,000 for each rebalance. We will likewise spend gas to initiate our leveraged position and HedgeHedge position, likely adding 600,000 gas for creation of the borrow and 180,000 gas to repay the loan.

In sum for each position rebalance and hedge we would spend on the order of 1,480,000 gas. To calculate actual money spent on each transaction we would multiply this value by the cost of gas as measured by the Base Fee for transactions on Ethereum mainnet.

At time of writing the 90-day average Base Fee on Mainnet is 37 Gwei. In concrete terms the average rebalancing position would cost 0.055 ETH, or at an exchange rate of $1800 approximately $100.

Such fees could easily add up and reduce earnings, of course, making constant active LP management and delta-hedging unattractive.

Rollups Make Active LP Strategies Far More Achievable

Of course the average gas cost on Arbitrum, the single-most popular Ethereum L2 rollup, is 0.1 Gwei base fee--370x less than the 90-day average on Mainnet.

With the same exercise as above we see the cost per rebalance and hedge of a Uniswap V3 LP position on Arbitrum to be on the order of 0.00015 ETH ($0.27 at current exchange rates). Suddenly this strategy looks considerably more attractive.

Does it Make Sense to Hedge Risk of Impermanent Loss Given Gas?

There are of course no hard and fast rules for when it makes sense to pay the gas and capital premium to accept lower risk on a given position. Though it is likewise clear an un-hedged Uniswap V3 LP position is positively correlated to the performance of the risky token xx​ and will suffer Impermanent LossImpermanent \ Loss if the price of xx declines beyond the value of fees collected. A hedged position will give further margin of protection at the cost of higher gas costs and likewise limited upside if the price of xx​appreciates versus the stablecoin yy​.

The decision on whether or not to hedge on each Uniswap V3 rebalance is thus purely a function on whether the liquidity provider is comfortable with the risk that token xx​ will not appreciate or hold value versus stablecoin yy​ .

And Parallel will make it straightforward for a user to tailor their Uniswap V3 LP positions to their risk and profit goals.

Last updated