The Livepeer protocol is built around workers who perform video transcoding. An
orchestrator is the name for the protocol participant who performs the
transcoding on the network - see our
visual introduction. If another user is looking
to participate in the Livepeer network, they can contribute by staking (bonding)
LPT with an orchestrator and earning passive rewards for improving the economic
security of the network.The explorer includes a calculation of return on investment for LPT stake to an
orchestrator. This document explains how that calculation is performed and how
it can be inaccurate/manipulated by orchestrators.
When an orchestrator registers their Ethereum address on the network, they are
required to choose their parameters for how they share revenue with stakers.These percentages are defined as fee share, sfees, and reward share,
srewards. These can be changed at any time.
An orchestrator also has performance metrics which are used. They must request
inflationary rewards each round on behalf of their delegators. The ratio of
successful reward calls, rrewards, is defined as:rrewards=rewardCalls/nWhere n is the number of rounds (up to 90 rounds depending on the time the
orchestrator has been active) and rewardCalls is the count of successful
reward calls.An orchestrator also has lorch which is the active stake they currently
have on the network.Lastly, orchestrators earn fees for work performed, and the average is taken
over the course of 90 days as vdaily, which is denominated in ETH.
There are also protocol-level parameters which factor into how inflationary
rewards are distributed and change over time.The inflation rate increases/decreases when the target participation rate is not
met. For simplicity, we assume in the yield calculation that the current
inflation rate, rinf, will stay constant.The current token supply is defined as ltotal and the current active stake
(LPT which has been delegated) is lactive.
The transcoding fees are simpler and calculated using:yieldETH=(vdaily∗365)∗(sfees)∗(p+lorchp)The first part calculates the estimated fee volume in ETH for the orchestrator
for the year.The second includes the fee share which the orchestrator has set.The last part takes the ratio of the delegator’s stake to the total orchestrator
stake.
The combined equation also includes input from the user, which is the amount of
LPT they want to stake. This principle is defined as p.yieldLPT=(lactiveltotal∗(1+rinf)417−ltotal)∗((p+lorch)∗rrewards)∗(srewards∗(p+lorch)p)The first part of the equation is the estimated total rewards which will be
given out to all orchestrators over the next year, based on current inflation,
active stake, and Ethereum block times (417 rounds in one year).The second part then calculates the amount of rewards which the orchestrator
would receive over the year.The last part calculates the ratio that the delegator will receive, based on
their principal, p, that they stake on the orchestrator, as well as the
orchestrators reward share, srewards.
The total yield can then be calculated as (with priceLPT/ETH pulled from
Uniswap):yieldtotal=yieldLPT+yieldETH∗(priceLPT/ETH)The implementation of this equation can be found in the
Explorer Github repository.
The parameters which an orchestrator sets for their fee cut and reward cut are
highly subject to change. A malicious orchestrator could set their fee cut to be
very low, and then manipulate that number once they have a large number of
delegators. A delegator should look for orchestrators who have not changed their
fee/reward cuts often, and continue to monitor their orchestrator and switch if
they change their rewards to less favorable percentages.
As mentioned previously, the inflation rate is subject to change depending on
the participation rate (the amount of LPT staked in the network). The yield
calculation assumes that the participation rate will stay constant, but this
could prove to be inaccurate.