Farmer Frank

Sustainability & Emission

We start by reminding you that:
Revenue dilutionShare dilution\boxed{\text{Revenue dilution} \neq \text{Share dilution}}
  • Revenue dilution: The revenue earned by bond holders diminishes as more bonds are issued.
  • Share dilution: The proportion of owned shares for bond holders diminishes as more bonds are issued.
When issuing bonds, one might believe that the Farmer Frank protocol will suffer from revenue dilution, leaving early bond holders worse off. Yet upon further inspection it is clear that this isn't the case. When issuing a new bond the total amount of shares increases, which leads to a decrease in the proportion of owned shares for all other bond holders --> share dilution. Yet, this bond is minted in exchange for JOE that is invested throughout the protocol. This invested JOE generates more revenue: therefore, even if total shares increase rewards per user stay the same, avoiding the problem of revenue dilution.
When our veJOE dominance isn't asserted yet, JOE raised through bonding actually increases revenue more than proportionally compared to share dilution. This is because by capturing ownership in veJOE we open Farmer Frank Protocol to new revenue streams which can't be exploited until Farmer Frank holds a significant stake in veJOE.
As long as raised JOE through bonding increase revenue more than proportionally compared to share dilution, we will keep on selling bonds. Once our treasury is big enough that:
  1. 1.
    Treasury growth can be sustained solely on reinvested revenue;
  2. 2.
    Raised JOE through bonding doesn't increase revenue more than proportionally compared to share dilution;
we will stop issuing bonds and tokenise all current positions in order to render it easier for investors to liquidate their investments. We will keep track of this through a Revenue Per Share (RPS) ratio:
RPS=Protocol RevenueWS\text{RPS} = \frac{\text{Protocol Revenue}}{\text{WS}}
We will be carefully analysing how this metrics changes with time. Once it starts diminishing bonds will no longer be sold.
We will now delve in another mathematical example which builds upon the examples shown in Unweighted Shares and Weighted Shares pages.
(1) 4 Level 1 (
) and 4 Level 2 (
) fNFT Bonds (fNFTB) get minted at launch (
t=0t = 0
4L1+4L2={US=410+4100=440WS=410+4105=460TVL=410+4100=4404L_1 + 4L_2 = \begin{cases} \text{US} = 4 \cdot 10 + 4 \cdot 100 = 440\\ \text{WS} = 4 \cdot 10 + 4 \cdot 105 = 460\\ \text{TVL} = 4 \cdot 10 + 4 \cdot 100 = 440 \end{cases}
Individual bonds:
L1={USL=1=10WSL=1=10L2={USL=2=100WSL=2=105L_1 = \begin{cases} \text{US}_{L=1} = 10 \\ \text{WS}_{L=1} = 10 \end{cases} \quad L_2 = \begin{cases} \text{US}_{L=2} = 100 \\ \text{WS}_{L=2} = 105 \end{cases}
(2) Let's suppose that after 1 time period the return rate is 100% of the
, thus Revenue:
Revenue=440 JOE\text{Revenue} = 440 \text{ JOE}
(3) Let's suppose that the Rewarded Proportion (rewardedProportion) is 0.5, thus the Reinvested Proportion (1 - rewardedProportion) = 0.5.
This means that the Shares Issuance (
) (shares issued to bond holders) is
0.5440=2200.5 \cdot 440 = 220
and the reward issuance (
) (rewards issued to bond holders) is 220 as well.
Shares issuance - Shares issued are divided between bonds according to their unweighted shares.
To calculate how many shares a bond is entitled to claim, we must calculate its percentage of ownership over all unweighted shares.
IS,L=1=USL=1USIS=10440220=5 SharesI_{S, L=1} = \frac{\text{US}_{L=1}}{\text{US}} \cdot I_S = \frac{10}{440} \cdot 220 = 5 \text{ Shares}
IS,L=2=50 SharesI_{S, L=2} = 50 \text{ Shares}
As you can see, weight has no effect on this distribution. If a level 1 bond holder were to invest his 10 JOE individually and managed to achieve a 100% rate of return, by reinvesting 50%, his position would be worth 15 JOE, exactly like his bond: 10 initial unweighted shares + 5 shares distributed = 15 unweighted shares.
Remember, unweighted shares are the representation of the backing of a fNFT Bond
Reward issuance - Rewards issued are divided between bonds according to their weighted shares.
To calculate how many JOE tokens a bond holder is entitled to claim per bond, we must calculate that bond's percentage of ownership over all weighted shares.
IR,L=1=WSL=1WSIR=10460220=4.78 JOEI_{R, L=1} = \frac{\text{WS}_{L=1}}{\text{WS}} \cdot I_R = \frac{10}{460} \cdot 220 = 4.78 \text{ JOE}
IR,L=2=50.22 JOEI_{R, L=2} = 50.22 \text{ JOE}
You can now see that weight has effect on this distribution. Instead of earning 5 JOE, a
bond holder earns 4.78 JOE. Yet, a
bond holder earns 50.22 JOE instead of 50 JOE.
One might think that this revenue distribution mechanism is unfair, yet upon closer inspection we can understand why this is done. The return rate in step 2 (100%) is simply the revenue generated by the protocol. The majority of this revenue will be PBR (check glossary) which exists only if the protocol claims dominance in veJOE ownership. High level bond holders will be the ones contributing more to the creation of this dominance, thus it is fair for them to earn a greater part of the revenue. Furthermore, this also acts as an incentive for investors to lock more tokens, in order to capture liquidity fast.
(4) Now we must increase each bond's shares according to the shares issued.
L1={USL=1=10+5=15WSL=1=10+51=15L2={USL=2=100+50=150WSL=2=105+501.05=157.5L_1 = \begin{cases} \text{US}_{L=1} = 10 + 5 = 15\\ \text{WS}_{L=1} = 10 + 5 \cdot 1 = 15 \end{cases} \quad L_2 = \begin{cases} \text{US}_{L=2} = 100 + 50 = 150 \\ \text{WS}_{L=2} = 105 + 50 \cdot 1.05 = 157.5 \end{cases}
The protocol will now look like this:
4L1+4L2={US=415+4150=660WS=415+4157.5=690TVL=415+4150=6604L_1 + 4L_2 = \begin{cases} \text{US} = 4 \cdot 15 + 4 \cdot 150 = 660\\ \text{WS} = 4 \cdot 15 + 4 \cdot 157.5 = 690\\ \text{TVL} = 4 \cdot 15 + 4 \cdot 150 = 660 \end{cases}
By introducing a new bond purchase in a second hypothetical period, we will show how thanks to our 2 share system revenue dilution does not occur.
(5) Let's suppose that after the first reward "round", 1
bond and 1
bond are minted. We shall now start distinguishing between bonds issued before the reward round (
L1,t=0,L2,t=0L_{1, t = 0}, L_{2, t = 0}
and bonds issued after the reward (
L1,t=1,L3,t=1L_{1, t = 1}, L_{3, t = 1}
L1,t=1={USL=1=10WSL=1=10L3,t=1={USL=2=1000WSL=2=1100L_{1, t = 1} = \begin{cases} \text{US}_{L=1} = 10 \\ \text{WS}_{L=1} = 10 \end{cases} \quad L_{3, t = 1} = \begin{cases} \text{US}_{L=2} = 1000 \\ \text{WS}_{L=2} = 1100 \end{cases}
(4L1,t=0+4L2,t=0)+(L1,t=1+L3,t=1)={US=660+10+1000=1670WS=690+10+1100=1800TVL=660+10+1000=1670\left (4L_{1, t = 0} + 4L_{2, t = 0} \right ) + \left (L_{1, t = 1} + L_{3, t = 1} \right ) = \begin{cases} \text{US} = 660 + 10 + 1000 = 1670\\ \text{WS} = 690 + 10 + 1100 = 1800\\ \text{TVL} = 660 + 10 + 1000 = 1670 \end{cases}
(6) Let's suppose that after another time period, the rate of return is still 100% (important to compare rewards for users between time period), thus Revenue = 1670 JOE. We keep the same rewardedProportion of 0.5.
This means that the Shares Issuance (
) is
0.51670=8350.5 \cdot 1670 = 835
and the reward issuance (
) is 835 as well.
Shares Issuance
Recall:IS,B=USBUSIS\boxed{\text{Recall}: I_{S, B} = \frac{\text{US}_{B}}{\text{US}} \cdot I_S}
stands to represent any fNFT bond.
  • IS,L=1,t=0=7.5 SharesI_{S, L=1,t=0} = 7.5 \text{ Shares}
  • IS,L=2,t=0=75 SharesI_{S, L=2,t=0} = 75 \text{ Shares}
  • IS,L=1,t=1=5 SharesI_{S, L=1,t=1} = 5 \text{ Shares}
  • IS,L=3,t=1=500 SharesI_{S, L=3,t=1} = 500 \text{ Shares}
As you can see, a level 1
bond holder has earned the same shares of a level 1
t=0t = 0
bond holder during their first period of life, under the same APY. As you can see, despite there being more bonds, a
bond holder earns EXACTLY the same amount of shares he would be earning if the later bond holders did not join. More importantly, we can see that
bonds are not being distributed the shares generated by assets compounded in
. This is because these bonds did not contribute in generating those compounded assets.
Reinvested assets --> Accounted for by an increase in unweighted shares --> Stops later bond holders to earn payments / shares generated by compounded assets yielded in previous time periods --> Maintains total ownership representation of treasury for earlier bond holders.
Reward issuance
Recall:IR,B=WSBWSIR\boxed{\text{Recall}: I_{R, B} = \frac{\text{WS}_{B}}{\text{WS}} \cdot I_R}
  • IR,L=1,t=0=6.95 SharesI_{R, L=1,t=0} = 6.95 \text{ Shares}
  • IR,L=2,t=0=73.06 SharesI_{R, L=2,t=0} = 73.06 \text{ Shares}
  • IR,L=1,t=1=4.63 SharesI_{R, L=1,t=1} = 4.63 \text{ Shares}
  • IR,L=3,t=1=510.28 SharesI_{R, L=3,t=1} = 510.28 \text{ Shares}
Here, weight plays a role in determining the payouts of each investor. One might argue that a Level 2
t=0t = 0
node owner could've just invested his JOE alone and under a 100% rate of return earning 75 JOE instead of 73.06 JOE. This is true only if he would've earned that 100% rate of return alone.
Farmer Frank's revenue streams are several:
  • sJOE USDC rewards.
  • Treasury assets farmed on boosted farms.
  • Possible veJOE governance / bribing.
  • Farmer Frank Farms boost fee.
These 4 revenue streams account for the hypothetical 100% rate of return explained above.
On the other hand, an individual investor could only choose between:
  • Earning rewards generated from sJOE.
  • (Possibility in the future) earning rewards generated from veJOE bribing.
Keep in mind: we do not include staking veJOE in order to earn through farming with boosted farms as a possibility for an individual investor for two reasons. First of all because it is unrealistic that a single entity can claim a significant percentage of ownership of veJOE. Secondly because this presupposes that the investor has other assets he is willing to invest (veJOE + LP tokens to farm). If this is the case, a smart investor would use these other assets to purchase higher level bonds in order to capitalize on the higher weight.
As you can see, an individual investor could choose between two investment strategies, which would both yield two different rates of return. On the other hand Farmer Frank's protocol employs both strategies + 2 other revenue streams.
This leads to the conclusion that an individual investor could have a rate of return significantly lower than Farmer Frank's Rate of Return.
Therefore, an investor would still be better off (by much) investing in Farmer Frank rather than investing alone.
You now have total freedom to build upon this model to satisfy your own questions about the maths behind the protocol. For example, you might want to go back to step (4) and see what would happen if you were to not increase shares after a protocol reinvestment. (You will see that this would enable future bond holders to earn yield generated by former bond holders' compounded revenue --> Dilution!)