All pages
Powered by GitBook
1 of 5

Loading...

Loading...

Loading...

Loading...

Loading...

Boosting BAL Incentives

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 calculate your boost.

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.

Reference link the in more detail.

Minimum veBAL for Max Boost

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

boosting graphic
  • 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.

    Calculating my Boost

    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:

    The minimum of the working supply limit and liquidity provided & staked equation defines a 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.

    The total working supply will need to be pulled from the gauge contracts for these calculations

    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.

    Maximum Boost

    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 here)

    The minimum of the working supply limit and liquidity provided & staked equation defines a 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.

    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.

    Boost Delegation for Contract Wallet

    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

    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.

    // code
    _delegator = your address which has veBAL,
    _receiver = your address you want to boost
    _percentage = 5000 // 50% (10000 is 100% of your boost)
    _cancel_time = 0 // allow yourself to cancel anytime
    _expire_time = 1651363200 // unix timestamp for 1st 
    of may (Check this! Also your lock needs to last past this time)
    _id = 0,
    https://etherscan.io/address/0x2E96068b3D5B5BAE3D7515da4A1D2E52d08A2647#writeContract
    Vyper_contract | Address 0x2E96068b3D5B5BAE3D7515da4A1D2E52d08A2647...
    This is also equivalent to the liquidity provided and staked (l)
    The total working supply will need to be pulled from the gauge contracts for these calculations