How do i calculate my boost for liquidity incentives in a pool?
To calculate a users boost the process from the Maximum Boost section will be used considering the veBAL holdings user has.
First we must calculate the user's working supply:
This would mean the minimum or “non-boosted” supply a user could have is the following, assume no veBAL is owned.
The boost a user receives is the the ratio of their working supply over the new total working supply, divided by the minimum case of their working supply entering a pool.
In the case of already being in the pool and depositing further liquidity, the following adjustment must to be made to consider the working supply a user already holds a given pool.
Key questions and answers to how boosting incentives works with veBAL system.
As opposed to the initial liquidity mining incentives where a liquidity provider receives incentives based only on their share of the total liquidity, we will now implement a multiplier based upon the time locking mechanism. Locking the same amount of BPT for a longer period will yield a higher incentive multiplier for a user.
Please note the maximum boost possible for liquidity mining incentives is 2.5x. See here how to .
The boosting mechanism theory is visualized by the graphic below. The fraction of a pool's working supply a user owns is based on upon their share of their respective pool, and their share of total veBAL. Continue reading through this boosting sections for further information on the working supply.
Based upon this new mechanism locking the same number of tokens for twice as long as someone else will result in twice the voting strength. The boosting proportion and more additional benefits are coupled with wielding that strength, however they are not as directly proportional.
Special thank you to Baller, zekraken, for deconstructing the contracts & code to make calculating boost easily accessible to the Balancer community.
How to calculate the maximum boost possible and what effects it.
Under certain conditions, specifically larger liquidity deposits, a maximum boost of less than 2.5x becomes apparent. The logic behind this is that there is only a finite number of incentives going to a pool, for example 10,000 BAL. Regardless of boosting, the pool's 10,000 BAL is distributed to the staked liquidity providers, boosting is a factor in which LP’s receive different portions of the incentives.
i.e. the pie is the same size but the slices are cut differently
The liquidity in terms of how much veBAL correlates to it what is called a working supply. The working supply can range from 40% to 100% of a user’s staked liquidity position. This is the main theory behind how rewards are distributed. The equation below defines a user’s working supply. (see variable list )
This would mean the minimum or “non-boosted” supply a user could have is the following, assume no veBAL is owned.
In turn, the maximum working supply possible is defined as the following:
To determine the maximum boost possible for a pool we must compare a user’s non-boosted and maximum working supply to the working supply the pool already has in place.
The pool’s working supply is the sum of all the liquidity providers working supplies prior to the deposit of a new user’s working supply.
The maximum boost possible for a user will be the ratio of their portion of max working supply plus the pools total working supply, divided by their portion of minimum working supply plus the pools total working supply. Please note the pools total working supply used here is prior to the user’s deposit.
Please note if a user has a working supply in a pool already, this must be subtracted total working supply in both the numerator and denominator of the equation a shown below.
Reference link the in more detail.
How to delegate boost from locking veBAL on a standard EOA to a Gnosis Safe or similar contract wallet / mechanism.
A common obstacle faced by users of vote escrowed systems is the inability to lock their token in the time based veBAL contract. For safe users this would mean no access to veBAL governance or boosted liquidity pool incentives.
If you would like to delegate your veBAL boost to another address, you can do so by calling the create_boost function on the veBAL veboost contract https://etherscan.io/address/0x2E96068b3D5B5BAE3D7515da4A1D2E52d08A2647#writeContract
This is useful for situations where you are LP'ing from a contract like a gnosis safe which, because it's a contract, is incapable of locking of veBAL. Instead, you lock up veBAL from an EOA and delegate your boost to your gnosis safe.
Note that the percentage is flexible over the complete range of boost which you would like to delegate.
Vyper_contract | Address 0x2E96068b3D5B5BAE3D7515da4A1D2E52d08A2647...
How to calculate the maximum boost possible for a given liquidity pool and investment, as well as the boost a user is entitled to.
The variables to consider when calculating veBAL incentives boosts are the following:
The Liquidity you will provide and stake: l
The staked liquidity in the pool before you deposit and stake: L
The liquidity in the pool after your deposit and stake: L' = L + l
The total veBAL in circulation
The amount of veBAL you hold
A common question is what is the minimum number of veBAL a user needs to hold in order to receive the maximum boost. To calculate this value:
While this does answer what the minimum amount of veBAL is need for maximum boost at one point in time, we must consider what happens over time. if a user has the minimum veBAL required to receive maximum rewards and then more veBAL is minted, this means I will no longer be receiving the maximum rewards due to dilution of the Total veBAL.
To the opposite point, as more liquidity enters the pool your boost may increase, but net rewards decrease, while this is less critical one may require less veBAL if the portion of the pool they own decreases. Therefore, it is up to the user’s discretion how much veBAL they would like to hold.
See here how to calculate the maximum boost one can receive from an investment.