How are rewards calculated

The on-chain smart contract (oracle) calculates a weighted distribution over prices of A/B at a given time, deletes the top and bottom 25% of these votes and computes the oracle estimate as the median of this truncated distribution; the result is the FTSO price for A/B this given time epoch.

If the provider's estimate is close enough to the oracle output, a reward is earned from the built-in FLR inflation. Price estimates are private until all on-chain calculation is finished. This allows participants to actively gain FLR, and incentivises them to not only provide data estimates, but to provide accurate estimates.

All participants that submitted an estimate that remained in the distribution after truncation, are compensated, according to the number of WFLR they own or have delegated to them.

The reward accounting is done on-chain. Rewards are only assigned and the provider (or delegatee) and he has to claim them on a regular basis, to actually receive FLRs to its wallet.

The precise amount of FLR tokens minted for the reward is a network governance parameter, which will be initially set at 10 % of FLR tokens in circulation per annum. This is the reward rate, and is spread out over the voting rounds in a year. The amount earned by a participant essentially depends on the normalised fraction of WFLR tokens held by (or delegated to) the participant's address which contributed to the price. The number of WFLR tokens in existence and hence, normalised fractions, vary over time.

A new FTSO contract will be deployed for any new data signal supported by the Flare network, as determined by a governance vote. The Flare Foundation currently plans to deploy contracts that will provide USD prices for FLR, XRP, LTC, XLM, DOGE, ADA, Algo, BCH, DigiByte; in the future, other assets will be added.

Please note that price providers must have WFLR voting power and/or F-Asset (FXRP, FLTC, etc.) voting power; however, only WFLR holders will receive FLR rewards for good price submissions.

Previous:

Next: