Overview
The Factor Scale emissions multiplier ensures that users that contribute the most network security (i.e. economic security through staked FCTR ) also receive the most rewards for staking their liquidity into various strategies. By assigning a weight to the user's staked liquidity, the emission multiplier rewards users holding more veFCTR with a greater share of the strategy's allocated rewards.
TLDR
The higher the proportion of veFCTR supply held, the larger the share of strategy emission rewards.
The maximum emissions multiplier is achieved when the proportion of veFCTR supply held by the user approaches the proportion of strategy staked liquidity (i.e. v e F C T R % veFCTR\% v e FCTR % approaches S t a k e d L i q % StakedLiq\% St ak e d L i q % ).
When v e F C T R % veFCTR\% v e FCTR % is greater than S t a k e d L i q % StakedLiq\% St ak e d L i q % , the rate of multiplier decay is slower than if v e F C T R % veFCTR\% v e FCTR % is lower than S t a k e d L i q % StakedLiq\% St ak e d L i q % .
Emission Multiplier FlowUser stakes FCTR to receive an amount of veFCTR depending on staked duration (up to 1FCTR:1veFCTR for max stake duration).
User provides liquidity to the target strategy which is eligible for Factor Scale emissions.
User stakes the liquidity position in order to be eligible for rewards.
When the voting period for the epoch ends, the total emissions allocated for the epoch is distributed in proportion to the number of votes that the strategy receives. (i.e. if strategy receives 10% of total votes for that epoch, it receives 10% of emissions).
For each strategy, the allocated emissions amount is then distributed over the course of the epoch according to the gauge weighted liquidity provided by LPs who have staked their liquidity in the strategy.
Emissions Multiplier Model
You can view the expected multiplier based on your veFCTR and strategy deposit proportions in the Emissions Multiplier Model .
Weighted Liquidity Formulas
At it's core, the emissions multiplier ensures fairer distribution of emission rewards by constantly comparing:
Proportion of staked liquidity the user contributes to a specific strategy:
s t a k e d L i q % = s t a k e d L i q u s e r s t a k e d L i q p o o l stakedLiq\% = \frac{stakedLiq_{user}}{stakedLiq_{pool}} s t ak e d L i q % = s t ak e d L i q p oo l s t ak e d L i q u ser
Staked Liquidity Amount & Leverage
As Factor enables users to increase their capital exposure via Leverage strategies, the s t a k e d L i q u i d i t y stakedLiquidity s t ak e d L i q u i d i t y amount also takes into account the leveraged portion by utilizing the debt portion of the user's position. That is, s t a k e d L i q u i d i t y stakedLiquidity s t ak e d L i q u i d i t y for leveraged positions tracks the debt value.
Proportion of veFCTR supply held by the user:
v e F C T R % = v e F C T R u s e r v e F C T R s u p p l y veFCTR\% = \frac{veFCTR_{user}}{veFCTR_{supply}} v e FCTR % = v e FCT R s u ppl y v e FCT R u ser In general, the larger the proportion of veFCTR supply held, the larger the emissions multiplier.
Weighted Liquidity
By applying a veFCTR holding weight to the staked liquidity provided by the user, it enables veFCTR holders to access up to 2.5x the emissions for their staked liquidity. The weighted liquidity for a user is calculated based on the following formula:
m i n ( ( 0.4 × s t a k e d L i q u s e r ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R u s e r v e F C T R s u p p l y ) , s t a k e d L i q u s e r ) min \biggl( (0.4 \times stakedLiq_{user}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{user}}{veFCTR_{supply}}) , stakedLiq_{user} \biggl) min ( ( 0.4 × s t ak e d L i q u ser ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R u ser ) , s t ak e d L i q u ser ) The above formula is used to calculate the w e i g h t e d L i q weightedLiq w e i g h t e d L i q for every depositor in the strategy, including those who do not have veFCTR staked. The esFCTR emissions allocated to the pool for that epoch is then linearly streamed throughout the epoch based on the proportion of the strategy's w e i g h t e d L i q u i d i t y weightedLiquidity w e i g h t e d L i q u i d i t y that the user holds at that point in time.
Based on the above formula, there are a few critical points to take note of:
The maximum emissions multiplier of 2.5x occurs when the S t a k e d L i q % StakedLiq\% St ak e d L i q % approaches the v e F C T R % veFCTR\% v e FCTR %
When v e F C T R % veFCTR\% v e FCTR % is greater than S t a k e d L i q % StakedLiq\% St ak e d L i q % , the rate of multiplier decay is significantly slower than if v e F C T R % veFCTR\% v e FCTR % is lower than S t a k e d L i q % StakedLiq\% St ak e d L i q %
Put simply, the weighted liquidity formulas prioritizes distributing emissions towards users with larger v e F C T R % veFCTR\% v e FCTR % (i.e. users who have staked more FCTR for longer periods). For the same absolute % difference, your emissions multiplier will be much higher if your v e F C T R % veFCTR\% v e FCTR % is greater than S t a k e d L i q % StakedLiq\% St ak e d L i q % . To achieve the max multiplier, your v e F C T R % veFCTR\% v e FCTR % should be closer to S t a k e d L i q % StakedLiq\% St ak e d L i q % .
Example
Baseline Max Multiplier Larger veFCTR % Larger StakedLiquidity % Increased veFCTR Supply Increased Staked Liquidity
Users
Alice provides 100 staked liquidity but does not hold any veFCTR
Bloxy provides 100 staked liquidity and holds 50veFCTR
Conditions
Assume no other users in the strategy hence s t a k e d L i q p o o l = s t a k e d L i q A l i c e + s t a k e d L i q B l o x y = 200 stakedLiq_{pool} = stakedLiq_{Alice} + stakedLiq_{Bloxy} = 200 s t ak e d L i q p oo l = s t ak e d L i q A l i ce + s t ak e d L i q Bl o x y = 200
Total veFCTR supply (including Bloxy): 500veFCTR
Emission rewards allocated to strategy: 1,000 esFCTR
Alice's Weighted Supply
w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × s t a k e d L i q A l i c e ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R A l i c e v e F C T R s u p p l y ) , s t a k e d L i q A l i c e ) weightedSupply_{Alice} = min \biggl( (0.4 \times stakedLiq_{Alice}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Alice}}{veFCTR_{supply}}) , stakedLiq_{Alice} \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × s t ak e d L i q A l i ce ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R A l i ce ) , s t ak e d L i q A l i ce ) w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × 100 ) + ( 0.6 × 200 × 0 500 ) , 100 ) weightedSupply_{Alice} = min \biggl( (0.4 \times 100) + (0.6 \times 200 \times \frac{0}{500}) , 100 \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × 100 ) + ( 0.6 × 200 × 500 0 ) , 100 ) w e i g h t e d S u p p l y A l i c e = m i n ( 40 , 100 ) = 40 weightedSupply_{Alice} = min \biggl( 40 , 100 \biggl) = 40 w e i g h t e d S u ppl y A l i ce = min ( 40 , 100 ) = 40 Bloxy's Weighted Supply
w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × s t a k e d L i q B l o x y ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R B l o x y v e F C T R s u p p l y ) , s t a k e d L i q B l o x y ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times stakedLiq_{Bloxy}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Bloxy}}{veFCTR_{supply}}) , stakedLiq_{Bloxy} \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × s t ak e d L i q Bl o x y ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R Bl o x y ) , s t ak e d L i q Bl o x y ) w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × 100 ) + ( 0.6 × 200 × 50 500 ) , 100 ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times 100) + (0.6 \times 200 \times \frac{50}{500}) , 100 \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × 100 ) + ( 0.6 × 200 × 500 50 ) , 100 ) w e i g h t e d S u p p l y B l o x y = m i n ( 40 + 12 , 100 ) = m i n ( 52 , 100 ) = 52 weightedSupply_{Bloxy} = min \biggl( 40 + 12 , 100 \biggl) = min \biggl( 52 , 100 \biggl) = 52 w e i g h t e d S u ppl y Bl o x y = min ( 40 + 12 , 100 ) = min ( 52 , 100 ) = 52 Emissions Distribution
e s F C T R A l i c e = e s F C T R p o o l × w e i g h t e d S u p p l y A l i c e w e i g h t e d S u p p l y P o o l esFCTR_{Alice} = esFCTR_{pool} \times \frac{weightedSupply_{Alice}}{weightedSupply_{Pool}} es FCT R A l i ce = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y A l i ce e s F C T R A l i c e = 1 , 000 × 40 40 + 52 = 1 , 000 × 0.435 = 435 e s F C T R esFCTR_{Alice} = 1,000 \times \frac{40}{40+52} = 1,000 \times 0.435 = 435 esFCTR es FCT R A l i ce = 1 , 000 × 40 + 52 40 = 1 , 000 × 0.435 = 435 es FCTR e s F C T R B l o x y = e s F C T R p o o l × w e i g h t e d S u p p l y B l o x y w e i g h t e d S u p p l y P o o l esFCTR_{Bloxy} = esFCTR_{pool} \times \frac{weightedSupply_{Bloxy}}{weightedSupply_{Pool}} es FCT R Bl o x y = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y Bl o x y e s F C T R B l o x y = 1 , 000 × 52 40 + 52 = 1 , 000 × 0.565 = 565 e s F C T R esFCTR_{Bloxy} = 1,000 \times \frac{52}{40+52} = 1,000 \times 0.565 = 565 esFCTR es FCT R Bl o x y = 1 , 000 × 40 + 52 52 = 1 , 000 × 0.565 = 565 es FCTR
This example builds upon the Baseline example. Changes to calculations are highlighted in bold .
Users
Alice provides 100 staked liquidity but does not hold any veFCTR
Bloxy provides 10 staked liquidity and holds 50veFCTR (50% -> 10% of stakedLiquidity)
Conditions
Assume no other users in the strategy hence s t a k e d L i q p o o l = s t a k e d L i q A l i c e + s t a k e d L i q B l o x y = 110 stakedLiq_{pool} = stakedLiq_{Alice} + stakedLiq_{Bloxy} = \textbf{110} s t ak e d L i q p oo l = s t ak e d L i q A l i ce + s t ak e d L i q Bl o x y = 110
Total veFCTR supply (including Bloxy): 500veFCTR
Emission rewards allocated to strategy: 1,000 esFCTR
Alice's Weighted Supply
w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × s t a k e d L i q A l i c e ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R A l i c e v e F C T R s u p p l y ) , s t a k e d L i q A l i c e ) weightedSupply_{Alice} = min \biggl( (0.4 \times stakedLiq_{Alice}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Alice}}{veFCTR_{supply}}) , stakedLiq_{Alice} \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × s t ak e d L i q A l i ce ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R A l i ce ) , s t ak e d L i q A l i ce ) w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × 100 ) + ( 0.6 × 110 × 0 500 ) , 100 ) weightedSupply_{Alice} = min \biggl( (0.4 \times 100) + (0.6 \times \textbf{110} \times \frac{0}{500}) , 100 \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × 100 ) + ( 0.6 × 110 × 500 0 ) , 100 ) w e i g h t e d S u p p l y A l i c e = m i n ( 40 , 100 ) = 40 weightedSupply_{Alice} = min \biggl( 40 , 100 \biggl) = 40 w e i g h t e d S u ppl y A l i ce = min ( 40 , 100 ) = 40 Bloxy's Weighted Supply
w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × s t a k e d L i q B l o x y ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R B l o x y v e F C T R s u p p l y ) , s t a k e d L i q B l o x y ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times stakedLiq_{Bloxy}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Bloxy}}{veFCTR_{supply}}) , stakedLiq_{Bloxy} \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × s t ak e d L i q Bl o x y ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R Bl o x y ) , s t ak e d L i q Bl o x y ) w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × 10 ) + ( 0.6 × 110 × 50 500 ) , 10 ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times \textbf{10}) + (0.6 \times \textbf{110} \times \frac{50}{500}) , 10 \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × 10 ) + ( 0.6 × 110 × 500 50 ) , 10 ) w e i g h t e d S u p p l y B l o x y = m i n ( 4 + 6.6 , 10 ) = m i n ( 10.6 , 10 ) = 10 weightedSupply_{Bloxy} = min \biggl( 4 + \textbf{6.6} , \textbf{10} \biggl) = min \biggl(\textbf{10.6} , \textbf{10} \biggl) = \textbf{10} w e i g h t e d S u ppl y Bl o x y = min ( 4 + 6.6 , 10 ) = min ( 10.6 , 10 ) = 10 Emissions Distribution
e s F C T R A l i c e = e s F C T R p o o l × w e i g h t e d S u p p l y A l i c e w e i g h t e d S u p p l y P o o l esFCTR_{Alice} = esFCTR_{pool} \times \frac{weightedSupply_{Alice}}{weightedSupply_{Pool}} es FCT R A l i ce = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y A l i ce e s F C T R A l i c e = 1 , 000 × 40 40 + 10 = 1 , 000 × 0.8 = 800 e s F C T R esFCTR_{Alice} = 1,000 \times \frac{40}{40+\textbf{10}} = 1,000 \times \textbf{0.8} = \textbf{800} esFCTR es FCT R A l i ce = 1 , 000 × 40 + 10 40 = 1 , 000 × 0.8 = 800 es FCTR e s F C T R B l o x y = e s F C T R p o o l × w e i g h t e d S u p p l y B l o x y w e i g h t e d S u p p l y P o o l esFCTR_{Bloxy} = esFCTR_{pool} \times \frac{weightedSupply_{Bloxy}}{weightedSupply_{Pool}} es FCT R Bl o x y = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y Bl o x y e s F C T R A l i c e = 1 , 000 × 10 40 + 10 = 1 , 000 × 0.2 = 200 e s F C T R esFCTR_{Alice} = 1,000 \times \frac{\textbf{10}}{40+\textbf{10}} = 1,000 \times \textbf{0.2} = \textbf{200} esFCTR es FCT R A l i ce = 1 , 000 × 40 + 10 10 = 1 , 000 × 0.2 = 200 es FCTR Observations
Change: Bloxy reduces staked liquidity proportion to match veFCTR supply proportion.
Result: Based on the new staked liquidity, Bloxy receives ~2.2x the esFCTR. Note that the capital efficiency as Bloxy's staked liquidity is reduced. Bloxy could have also chosen to acquire more veFCTR to get a higher multiplier. The maximum multiplier is also dependent on the strategy's liquidity as well as ttotal veFCTR supply.
This example builds upon the Baseline example. Changes to calculations are highlighted in bold .
Users
Alice provides 100 staked liquidity but does not hold any veFCTR
Bloxy provides 100 staked liquidity and holds 150veFCTR (100 more than baseline -> 25% vs 10% of veFCTR supply)
Conditions
Assume no other users in the strategy hence s t a k e d L i q p o o l = s t a k e d L i q A l i c e + s t a k e d L i q B l o x y = 200 stakedLiq_{pool} = stakedLiq_{Alice} + stakedLiq_{Bloxy} = 200 s t ak e d L i q p oo l = s t ak e d L i q A l i ce + s t ak e d L i q Bl o x y = 200
Total veFCTR supply (including Bloxy): 600veFCTR
Emission rewards allocated to strategy: 1,000 esFCTR
Alice's Weighted Supply
w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × s t a k e d L i q A l i c e ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R A l i c e v e F C T R s u p p l y ) , s t a k e d L i q A l i c e ) weightedSupply_{Alice} = min \biggl( (0.4 \times stakedLiq_{Alice}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Alice}}{veFCTR_{supply}}) , stakedLiq_{Alice} \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × s t ak e d L i q A l i ce ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R A l i ce ) , s t ak e d L i q A l i ce ) w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × 100 ) + ( 0.6 × 200 × 0 600 ) , 100 ) weightedSupply_{Alice} = min \biggl( (0.4 \times 100) + (0.6 \times 200 \times \frac{0}{\textbf{600}}) , 100 \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × 100 ) + ( 0.6 × 200 × 600 0 ) , 100 ) w e i g h t e d S u p p l y A l i c e = m i n ( 40 , 100 ) = 40 weightedSupply_{Alice} = min \biggl( 40 , 100 \biggl) = 40 w e i g h t e d S u ppl y A l i ce = min ( 40 , 100 ) = 40 Bloxy's Weighted Supply
w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × s t a k e d L i q B l o x y ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R B l o x y v e F C T R s u p p l y ) , s t a k e d L i q B l o x y ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times stakedLiq_{Bloxy}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Bloxy}}{veFCTR_{supply}}) , stakedLiq_{Bloxy} \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × s t ak e d L i q Bl o x y ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R Bl o x y ) , s t ak e d L i q Bl o x y ) w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × 100 ) + ( 0.6 × 200 × 150 600 ) , 100 ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times 100) + (0.6 \times \textbf{200} \times \frac{\textbf{150}}{\textbf{600}}) , 100 \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × 100 ) + ( 0.6 × 200 × 600 150 ) , 100 ) w e i g h t e d S u p p l y B l o x y = m i n ( 40 + 30 , 100 ) = m i n ( 70 , 100 ) = 70 weightedSupply_{Bloxy} = min \biggl( 40 + \textbf{30} , 100 \biggl) = min \biggl( \textbf{70} , 100 \biggl) = \textbf{70} w e i g h t e d S u ppl y Bl o x y = min ( 40 + 30 , 100 ) = min ( 70 , 100 ) = 70 Emissions Distribution
e s F C T R A l i c e = e s F C T R p o o l × w e i g h t e d S u p p l y A l i c e w e i g h t e d S u p p l y P o o l esFCTR_{Alice} = esFCTR_{pool} \times \frac{weightedSupply_{Alice}}{weightedSupply_{Pool}} es FCT R A l i ce = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y A l i ce e s F C T R A l i c e = 1 , 000 × 40 40 + 70 = 1 , 000 × 0.364 = 364 e s F C T R esFCTR_{Alice} = 1,000 \times \frac{40}{40+\textbf{70}} = 1,000 \times \textbf{0.364} = \textbf{364} esFCTR es FCT R A l i ce = 1 , 000 × 40 + 70 40 = 1 , 000 × 0.364 = 364 es FCTR e s F C T R B l o x y = e s F C T R p o o l × w e i g h t e d S u p p l y B l o x y w e i g h t e d S u p p l y P o o l esFCTR_{Bloxy} = esFCTR_{pool} \times \frac{weightedSupply_{Bloxy}}{weightedSupply_{Pool}} es FCT R Bl o x y = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y Bl o x y e s F C T R B l o x y = 1 , 000 × 70 40 + 70 = 1 , 000 × 0.636 = 636 e s F C T R esFCTR_{Bloxy} = 1,000 \times \frac{\textbf{70}}{40+\textbf{70}} = 1,000 \times \textbf{0.636}= \textbf{636} esFCTR es FCT R Bl o x y = 1 , 000 × 40 + 70 70 = 1 , 000 × 0.636 = 636 es FCTR Observations
Change: Bloxy holds an additional 15% of veFCTR supply.
Result: Bloxy gets an additional 136esFCTR which is a 1.27x multiplier.
This example builds upon the Baseline example. Changes to calculations are highlighted in bold .
Users
Alice provides 100 staked liquidity but does not hold any veFCTR
Bloxy provides 200 staked liquidity and holds 50veFCTR
Conditions
Assume no other users in the strategy hence s t a k e d L i q p o o l = s t a k e d L i q A l i c e + s t a k e d L i q B l o x y = 300 stakedLiq_{pool} = stakedLiq_{Alice} + stakedLiq_{Bloxy} = \textbf{300} s t ak e d L i q p oo l = s t ak e d L i q A l i ce + s t ak e d L i q Bl o x y = 300
Total veFCTR supply (including Bloxy): 500veFCTR
Emission rewards allocated to strategy: 1,000 esFCTR
Alice's Weighted Supply
w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × s t a k e d L i q A l i c e ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R A l i c e v e F C T R s u p p l y ) , s t a k e d L i q A l i c e ) weightedSupply_{Alice} = min \biggl( (0.4 \times stakedLiq_{Alice}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Alice}}{veFCTR_{supply}}) , stakedLiq_{Alice} \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × s t ak e d L i q A l i ce ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R A l i ce ) , s t ak e d L i q A l i ce ) w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × 100 ) + ( 0.6 × 300 × 0 500 ) , 100 ) weightedSupply_{Alice} = min \biggl( (0.4 \times 100) + (0.6 \times \textbf{300} \times \frac{0}{500}) , 100 \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × 100 ) + ( 0.6 × 300 × 500 0 ) , 100 ) w e i g h t e d S u p p l y A l i c e = m i n ( 40 , 100 ) = 40 weightedSupply_{Alice} = min \biggl( 40 , 100 \biggl) = 40 w e i g h t e d S u ppl y A l i ce = min ( 40 , 100 ) = 40 Bloxy's Weighted Supply
w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × s t a k e d L i q B l o x y ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R B l o x y v e F C T R s u p p l y ) , s t a k e d L i q B l o x y ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times stakedLiq_{Bloxy}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Bloxy}}{veFCTR_{supply}}) , stakedLiq_{Bloxy} \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × s t ak e d L i q Bl o x y ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R Bl o x y ) , s t ak e d L i q Bl o x y ) w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × 200 ) + ( 0.6 × 300 × 50 500 ) , 200 ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times \textbf{200}) + (0.6 \times \textbf{300} \times \frac{50}{500}) , \textbf{200} \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × 200 ) + ( 0.6 × 300 × 500 50 ) , 200 ) w e i g h t e d S u p p l y B l o x y = m i n ( 80 + 18 , 200 ) = m i n ( 98 , 200 ) = 98 weightedSupply_{Bloxy} = min \biggl( \textbf{80} + \textbf{18} , \textbf{200} \biggl) = min \biggl( \textbf{98} , \textbf{200} \biggl) = \textbf{98} w e i g h t e d S u ppl y Bl o x y = min ( 80 + 18 , 200 ) = min ( 98 , 200 ) = 98 Emissions Distribution
e s F C T R A l i c e = e s F C T R p o o l × w e i g h t e d S u p p l y A l i c e w e i g h t e d S u p p l y P o o l esFCTR_{Alice} = esFCTR_{pool} \times \frac{weightedSupply_{Alice}}{weightedSupply_{Pool}} es FCT R A l i ce = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y A l i ce e s F C T R A l i c e = 1 , 000 × 40 40 + 98 = 1 , 000 × 0.290 = 290 e s F C T R esFCTR_{Alice} = 1,000 \times \frac{40}{40+\textbf{98}} = 1,000 \times \textbf{0.290} = \textbf{290} esFCTR es FCT R A l i ce = 1 , 000 × 40 + 98 40 = 1 , 000 × 0.290 = 290 es FCTR e s F C T R B l o x y = e s F C T R p o o l × w e i g h t e d S u p p l y B l o x y w e i g h t e d S u p p l y P o o l esFCTR_{Bloxy} = esFCTR_{pool} \times \frac{weightedSupply_{Bloxy}}{weightedSupply_{Pool}} es FCT R Bl o x y = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y Bl o x y e s F C T R B l o x y = 1 , 000 × 98 40 + 98 = 1 , 000 × 0.710 = 710 e s F C T R esFCTR_{Bloxy} = 1,000 \times \frac{\textbf{98}}{40+\textbf{98}} = 1,000 \times \textbf{0.710} = \textbf{710} esFCTR es FCT R Bl o x y = 1 , 000 × 40 + 98 98 = 1 , 000 × 0.710 = 710 es FCTR Observations
Change: Bloxy stakes an additional 100 liquidity and now owns 66% of strategy staked liquidity.
Result: Bloxy gets an additional 210esFCTR which is a 1.42x multiplier.
This example builds upon the Baseline example. Changes to calculations are highlighted in bold .
Users
Alice provides 100 staked liquidity but does not hold any veFCTR
Bloxy provides 100 staked liquidity and holds 50veFCTR
Charles stakes FCTR to increase the veFCTR supply by 250veFCTR but does not provide liquidity nor vote on Scale (i.e. pure increase in veFCTR supply)
Conditions
Assume no other users in the strategy hence s t a k e d L i q p o o l = s t a k e d L i q A l i c e + s t a k e d L i q B l o x y = 200 stakedLiq_{pool} = stakedLiq_{Alice} + stakedLiq_{Bloxy} = 200 s t ak e d L i q p oo l = s t ak e d L i q A l i ce + s t ak e d L i q Bl o x y = 200
Total veFCTR supply: 750 veFCTR
Emission rewards allocated to strategy: 1,000 esFCTR
Alice's Weighted Supply
w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × s t a k e d L i q A l i c e ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R A l i c e v e F C T R s u p p l y ) , s t a k e d L i q A l i c e ) weightedSupply_{Alice} = min \biggl( (0.4 \times stakedLiq_{Alice}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Alice}}{veFCTR_{supply}}) , stakedLiq_{Alice} \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × s t ak e d L i q A l i ce ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R A l i ce ) , s t ak e d L i q A l i ce ) w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × 100 ) + ( 0.6 × 200 × 0 750 ) , 100 ) weightedSupply_{Alice} = min \biggl( (0.4 \times 100) + (0.6 \times 200 \times \frac{0}{\textbf{750}}) , 100 \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × 100 ) + ( 0.6 × 200 × 750 0 ) , 100 ) w e i g h t e d S u p p l y A l i c e = m i n ( 40 , 100 ) = 40 weightedSupply_{Alice} = min \biggl( 40 , 100 \biggl) = 40 w e i g h t e d S u ppl y A l i ce = min ( 40 , 100 ) = 40 Bloxy's Weighted Supply
w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × s t a k e d L i q B l o x y ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R B l o x y v e F C T R s u p p l y ) , s t a k e d L i q B l o x y ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times stakedLiq_{Bloxy}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Bloxy}}{veFCTR_{supply}}) , stakedLiq_{Bloxy} \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × s t ak e d L i q Bl o x y ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R Bl o x y ) , s t ak e d L i q Bl o x y ) w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × 100 ) + ( 0.6 × 200 × 50 750 ) , 100 ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times 100) + (0.6 \times 200 \times \frac{50}{\textbf{750}}) , 100 \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × 100 ) + ( 0.6 × 200 × 750 50 ) , 100 ) w e i g h t e d S u p p l y B l o x y = m i n ( 40 + 8 , 100 ) = m i n ( 48 , 100 ) = 48 weightedSupply_{Bloxy} = min \biggl( 40 + \textbf{8} , 100 \biggl) = min \biggl( \textbf{48} , 100 \biggl) = \textbf{48} w e i g h t e d S u ppl y Bl o x y = min ( 40 + 8 , 100 ) = min ( 48 , 100 ) = 48 Emissions Distribution
e s F C T R A l i c e = e s F C T R p o o l × w e i g h t e d S u p p l y A l i c e w e i g h t e d S u p p l y P o o l esFCTR_{Alice} = esFCTR_{pool} \times \frac{weightedSupply_{Alice}}{weightedSupply_{Pool}} es FCT R A l i ce = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y A l i ce e s F C T R A l i c e = 1 , 000 × 40 40 + 48 = 1 , 000 × 0.455 = 455 e s F C T R esFCTR_{Alice} = 1,000 \times \frac{40}{40+\textbf{48}} = 1,000 \times \textbf{0.455} = \textbf{455} esFCTR es FCT R A l i ce = 1 , 000 × 40 + 48 40 = 1 , 000 × 0.455 = 455 es FCTR e s F C T R B l o x y = e s F C T R p o o l × w e i g h t e d S u p p l y B l o x y w e i g h t e d S u p p l y P o o l esFCTR_{Bloxy} = esFCTR_{pool} \times \frac{weightedSupply_{Bloxy}}{weightedSupply_{Pool}} es FCT R Bl o x y = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y Bl o x y e s F C T R B l o x y = 1 , 000 × 48 40 + 48 = 1 , 000 × 0.545 = 545 e s F C T R esFCTR_{Bloxy} = 1,000 \times \frac{\textbf{48}}{40+\textbf{48}} = 1,000 \times \textbf{0.545} = \textbf{545} esFCTR es FCT R Bl o x y = 1 , 000 × 40 + 48 48 = 1 , 000 × 0.545 = 545 es FCTR Observations
Change: veFCTR supply increases by 50% resulting in Bloxy only holding 6.67% of veFCTR supply (down from 10%).
Result : Bloxy gets an additional 45esFCTR which is a 1.09x multiplier.
This example builds upon the Baseline example. Changes to calculations are highlighted in bold .
Users
Alice provides 100 staked liquidity but does not hold any veFCTR
Bloxy provides 100 staked liquidity and holds 50veFCTR
Charles provides 100 staked liquidity but does not hold any veFCTR
Conditions
Assume no other users in the strategy hence s t a k e d L i q p o o l = s t a k e d L i q A l i c e + s t a k e d L i q B l o x y + s t a k e d L i q C h a r l e s = 300 stakedLiq_{pool} = stakedLiq_{Alice} + stakedLiq_{Bloxy} + stakedLiq_{Charles}= \textbf{300} s t ak e d L i q p oo l = s t ak e d L i q A l i ce + s t ak e d L i q Bl o x y + s t ak e d L i q C ha r l es = 300
Total veFCTR supply (including Bloxy): 500veFCTR
Emission rewards allocated to strategy: 1,000 esFCTR
Alice's Weighted Supply
w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × s t a k e d L i q A l i c e ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R A l i c e v e F C T R s u p p l y ) , s t a k e d L i q A l i c e ) weightedSupply_{Alice} = min \biggl( (0.4 \times stakedLiq_{Alice}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Alice}}{veFCTR_{supply}}) , stakedLiq_{Alice} \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × s t ak e d L i q A l i ce ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R A l i ce ) , s t ak e d L i q A l i ce ) w e i g h t e d S u p p l y A l i c e = m i n ( ( 0.4 × 100 ) + ( 0.6 × 300 × 0 500 ) , 100 ) weightedSupply_{Alice} = min \biggl( (0.4 \times 100) + (0.6 \times \textbf{300} \times \frac{0}{500}) , 100 \biggl) w e i g h t e d S u ppl y A l i ce = min ( ( 0.4 × 100 ) + ( 0.6 × 300 × 500 0 ) , 100 ) w e i g h t e d S u p p l y A l i c e = m i n ( 40 , 100 ) = 40 weightedSupply_{Alice} = min \biggl( 40 , 100 \biggl) = 40 w e i g h t e d S u ppl y A l i ce = min ( 40 , 100 ) = 40 Bloxy's Weighted Supply
w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × s t a k e d L i q B l o x y ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R B l o x y v e F C T R s u p p l y ) , s t a k e d L i q B l o x y ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times stakedLiq_{Bloxy}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Bloxy}}{veFCTR_{supply}}) , stakedLiq_{Bloxy} \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × s t ak e d L i q Bl o x y ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R Bl o x y ) , s t ak e d L i q Bl o x y ) w e i g h t e d S u p p l y B l o x y = m i n ( ( 0.4 × 100 ) + ( 0.6 × 300 × 50 500 ) , 100 ) weightedSupply_{Bloxy} = min \biggl( (0.4 \times 100) + (0.6 \times \textbf{300} \times \frac{50}{500}) , 100 \biggl) w e i g h t e d S u ppl y Bl o x y = min ( ( 0.4 × 100 ) + ( 0.6 × 300 × 500 50 ) , 100 ) w e i g h t e d S u p p l y B l o x y = m i n ( 40 + 18 , 100 ) = m i n ( 58 , 100 ) = 58 weightedSupply_{Bloxy} = min \biggl( 40 + \textbf{18} , 100 \biggl) = min \biggl( \textbf{58} , 100 \biggl) = \textbf{58} w e i g h t e d S u ppl y Bl o x y = min ( 40 + 18 , 100 ) = min ( 58 , 100 ) = 58 Charle's Weighted Supply
w e i g h t e d S u p p l y C h a r l e s = m i n ( ( 0.4 × s t a k e d L i q C h a r l e s ) + ( 0.6 × s t a k e d L i q p o o l × v e F C T R C h a r l e s v e F C T R s u p p l y ) , s t a k e d L i q C h a r l e s ) weightedSupply_{Charles} = min \biggl( (0.4 \times stakedLiq_{Charles}) + (0.6 \times stakedLiq_{pool} \times \frac{veFCTR_{Charles}}{veFCTR_{supply}}) , stakedLiq_{Charles} \biggl) w e i g h t e d S u ppl y C ha r l es = min ( ( 0.4 × s t ak e d L i q C ha r l es ) + ( 0.6 × s t ak e d L i q p oo l × v e FCT R s u ppl y v e FCT R C ha r l es ) , s t ak e d L i q C ha r l es ) w e i g h t e d S u p p l y C h a r l e s = m i n ( ( 0.4 × 100 ) + ( 0.6 × 300 × 0 500 ) , 100 ) weightedSupply_{Charles} = min \biggl( (0.4 \times 100) + (0.6 \times \textbf{300} \times \frac{0}{500}) , 100 \biggl) w e i g h t e d S u ppl y C ha r l es = min ( ( 0.4 × 100 ) + ( 0.6 × 300 × 500 0 ) , 100 ) w e i g h t e d S u p p l y C h a r l e s = m i n ( 40 , 100 ) = 40 weightedSupply_{Charles} = min \biggl( 40 , 100 \biggl) = 40 w e i g h t e d S u ppl y C ha r l es = min ( 40 , 100 ) = 40 Emissions Distribution
e s F C T R A l i c e = e s F C T R p o o l × w e i g h t e d S u p p l y A l i c e w e i g h t e d S u p p l y P o o l esFCTR_{Alice} = esFCTR_{pool} \times \frac{weightedSupply_{Alice}}{weightedSupply_{Pool}} es FCT R A l i ce = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y A l i ce e s F C T R A l i c e = 1 , 000 × 40 40 + 58 + 40 = 1 , 000 × 0.290 = 290 e s F C T R esFCTR_{Alice} = 1,000 \times \frac{40}{40+\textbf{58}+\textbf{40}} = 1,000 \times \textbf{0.290} = \textbf{290} esFCTR es FCT R A l i ce = 1 , 000 × 40 + 58 + 40 40 = 1 , 000 × 0.290 = 290 es FCTR e s F C T R B l o x y = e s F C T R p o o l × w e i g h t e d S u p p l y B l o x y w e i g h t e d S u p p l y P o o l esFCTR_{Bloxy} = esFCTR_{pool} \times \frac{weightedSupply_{Bloxy}}{weightedSupply_{Pool}} es FCT R Bl o x y = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y Bl o x y e s F C T R B l o x y = 1 , 000 × 58 40 + 58 + 40 = 1 , 000 × 0.420 = 420 e s F C T R esFCTR_{Bloxy} = 1,000 \times \frac{\textbf{58}}{40+\textbf{58}+\textbf{40}} = 1,000 \times \textbf{0.420} = \textbf{420} esFCTR es FCT R Bl o x y = 1 , 000 × 40 + 58 + 40 58 = 1 , 000 × 0.420 = 420 es FCTR e s F C T R C h a r l e s = e s F C T R p o o l × w e i g h t e d S u p p l y B l o x y w e i g h t e d S u p p l y P o o l esFCTR_{Charles} = esFCTR_{pool} \times \frac{weightedSupply_{Bloxy}}{weightedSupply_{Pool}} es FCT R C ha r l es = es FCT R p oo l × w e i g h t e d S u ppl y P oo l w e i g h t e d S u ppl y Bl o x y e s F C T R C h a r l e s = 1 , 000 × 40 40 + 58 + 40 = 1 , 000 × 0.290 = 290 e s F C T R esFCTR_{Charles} = 1,000 \times \frac{40}{40+\textbf{58}+\textbf{40}} = 1,000 \times \textbf{0.290} = \textbf{290} esFCTR es FCT R C ha r l es = 1 , 000 × 40 + 58 + 40 40 = 1 , 000 × 0.290 = 290 es FCTR Observations
Change: The strategy's staked liquidity increase by 50% resulting in Bloxy owning 66% of the staked liquidity (compared to 50%).
Result: Bloxy rewards drops by 80esFCTR due to liquidity dilution.
Last updated 4 months ago