Requirements

Understand the requirements for reporting data.

What Are the Requirements for Reporting?

To report data, you'll need to have a stake in the Fetch Oracle network. This ensures that you're incentivised to provide accurate information and are ready to begin earning rewards.

Before we dive into setting up automatic reporting with Telliot, let's break down Fetch's reporting requirements.

How Much FETCH Must You Stake?

To ensure that the Fetch Oracle data is always secured by a minimum amount, the stakeAmount is a function of the price of FETCH, the stake amount dollar target, and the minimum stake amount.

This can be understood as:

stakeAmount = maxUSD(stakeAmountDollarTarget, minStakeAmount)

For PulseChain's mainnet, the stakeAmount is determined as follows:

stakeAmount = maxUSD($500, 500,000 FETCH)

When the price of FETCH is greater than $0.001 (launch price), the minimum staking requirement is always 500,000 FETCH.

When the price of FETCH is less than $0.001 (launch price), the minimum staking requirement is $500 USD worth of FETCH.

The stake amount only changes when someone calls the function updateStakeAmount in the FetchFlex contract. This can be called by anyone, and is dependent on the latest 12+ hour old reported price of FETCH.

In the Fetch Dashboard, the updateStakeAmount can easily be called as required.

Understanding the Reporter Lock Period

Once data is submitted to the network by a reporter, the reporter is then locked from submitting again for a time period known as the reporterLock — which is usually 12 hours divided by the number of full stakes.

Therefore, the amount of times a reporter can submit data to Fetch Oracle is determined by the following equation:

reporter_lock = 12 hours / number_of_stakes

As an example: if the minimum stake amount is 10 FETCH and you have 120 FETCH staked, you can report every hour. But if that minimum amount were updated to 20 FETCH, you would only be able to report every two hours.

Last updated