Data Farming DF8 Completed, DF9 Started, Reward Function Tuned

Stakers can claim DF8 rewards. DF9 runs Oct 27–Nov 3, 2022. DF Beta is 50K $OCEAN/week. Rewards payouts are tuned to DCV.

Ocean Protocol Team
Ocean Protocol

--

[Originally published by @trentmc0 on Oct 27, 2022. We’ve re-published to @TeamOcean to better organize archival posts. Please treat the article as if it was published on its original date.]

1. Overview

The Ocean Data Farming program incentivizes the growth of data consumption volume in the Ocean ecosystem. It rewards OCEAN for stakers who allocate liquidity to curate data asset with high data consume volume (DCV).

To participate, users must lock OCEAN to receive veOCEAN, then allocate veOCEAN to promising data assets (data NFTs) via our Data Farming portal.

DF Round 8 (DF8) is DF/VE Alpha week 4. DF8 counting started 12:01am Thu Oct 20, 2022, and ended 12:01am Oct 27, 2022. 10K OCEAN worth of rewards were available. Stakers can now claim rewards at the DF webapp.

DF9 is DF Beta week 1. Counting started 12:01am Oct 27, 2022.

The rest of this post describes how to claim rewards, and details on DF9 parameters (including important updates).

2. How To Claim Rewards

As a staker, here’s how to claim rewards:

  1. Go to DF webapp Claim Portal
  2. Connect your wallet
  3. Rewards are distributed on Ethereum mainnet. Click “Claim”, sign the tx, and collect your rewards

Rewards will accumulate over weeks so you can claim rewards at your leisure. If you claim weekly, you can re-stake your rewards for compound gains.

3. DF9 Parameters

DF9 is the first week of DF Beta. Whereas DF/VE Alpha’s aim was to test technology, learn, and onboard data publishers, DF Beta’s aim is to test the effect of larger incentives, learn, and refine the technology.

As stated in previous DF posts: with each weekly cycle, the DF core team may tune the Reward Function or make other changes based on learnings.

DF9 has three changes:

  1. Increase in total weekly budget
  2. For active rewards, a new budget constraint based on DCV
  3. For active rewards, reward function tuned to bias to DCV

The next three subsections explore each in turn.

3.1 Total Budget Increased to 50K $OCEAN / week

In DF8 — the previous DF round and the last week of DF/VE Alpha — the budget for the week was 10K $OCEAN. In fact, that was the budget for each week of DF1-DF8.

With DF9, we enter the first week of DF Beta. The DF launch and DF resume articles committed to budget between 10K $OCEAN to 100K $OCEAN for each week of DF Beta.

For DF9 — the first week of DF Beta — the budget will be 50K $OCEAN. This is a 5x increase in rewards compared to DF/VE Alpha. As before, 50% of the budget goes to passive rewards (25K $OCEAN), and 50% to active rewards (25K $OCEAN).

3.3 New Active Budget Constraint based on DCV

DF9 introduces a constraint that bounds active rewards budget each week, as a function of data consume volume (DCV).

DF8 active rewards budget was: active_budget = 50% * 10K = 5000 $OCEAN. This was subject to each staker having a 125% APY constraint. Due to the constraint, less than $5K OCEAN may have been rewarded. That is: usable_active_budget <= 5000 $OCEAN.

For DF9, active rewards budget is active_budget = 50% * 50K = 25000 $OCEAN. This remains subject to each staker having a 125% APY constraint. We introduce a second constraint:

usable_active_budget = min(active_budget, DCV_multiplier * DCV_total)

Where DCV_multiplier = 100% for DF9, then decreasing linearly each week, to a final value of 3% in 20 weeks (DF28). After that, it stays at 3%.

Example 1 for DF9. Given: active_budget = 25000. Since it’s DF9, DCV_multiplier = 1.0. Let’s say that total data consume volume was DCV_total = 17333 OCEAN. Then, usable_active_budget = min(active_budget, DCV_multiplier * DCV_total) = min(25000, 1.0 * 17333) = 17333 $OCEAN . So, 17,333 $OCEAN will get paid out in active rewards. This is less than the budget of 25,000 $OCEAN, because there wasn’t enough DCV.

Example 2. Let’s start with example 1, except DCV_total = 32000 OCEAN. Then, usable_active_budget = min(25000, 1.0 * 32000) = 25000 $OCEAN . That is, the full budget of 25,000 $OCEAN because DCV was high enough.

The 3% lower bound for DCV_multiplier addresses the wash consume issue. There’s a 3% Ocean Community order fee. Therefore when DCV_multiplier hits 3%, wash consume becomes unprofitable.

Ocean core team reserves the right to update the parameters of this new constraint, based on observing behavior.

3.3 Reward Function changed: first reward pro-rata to DCV of assets

Active rewards are governed by the reward function (RF).

In DF8 — the previous DF round — OCEAN was rewarded pro-rata on stake * DCV. This means: for assets A & B with equal DCV, and B had 10x more total stake, then stakers in B would get 10x more reward.

In DF9, assets are rewarded pro-rata on DCV to each asset first, then within each asset, pro-rata on relative stake in the asset to stakers. This means: for assets A & B with equal DCV, and B had 9x more total stake, then stakers in A & B get equal reward. The Appendix has details.

How the reward function changed from DF8 → DF9. Area is relative amount of reward to different stakers. Asset A (orange) & asset B (blue) have equal DCV. Asset B has 10x more stake than asset A. For each asset, one staker has 9x more stake than the other. Left is DF8, which rewards pro-rata on stake * DCV. Right is DF9, which rewards pro-rata on DCV to assets first, then pro-rata to stake within an asset.

3.4 Data assets that qualify for DF

This is unchanged. However, it’s worth repeating given the new OCEAN budget bound based on DCV, which in turn relates to wash consume and the 3% fee.

Data assets that have veOCEAN allocated towards them get DF rewards.

The data asset may be of any type — dataset (for static URIs) or algorithm for Compute-to-Data. The data asset may be fixed price or free price. If fixed price, any token of exchange is alright (OCEAN, H2O, USDC, ..).

To qualify for DF, a data asset must also :

  • Have been created by Ocean smart contracts, deployed by OPF to production networks
  • Priced data assets have a % consume fee of ≥ 3%. Free data assets are eligible too, where gas fee is treated as “price” for measuring DCV.
  • Visible on Ocean Market
  • Can’t be in purgatory

3.5 Other DF9 Parameters

These parameters are unchanged as well, but helpful to repeat.

In DF9, of the OCEAN available, 50% is for passive rewards, and 50% for active. Passive rewards go to users who hold veOCEAN (locked OCEAN) during DF9. Additional active rewards go to users who allocate their veOCEAN towards productive datasets (having DCV).

Ocean currently supports five production networks: Ethereum Mainnet, Polygon, BSC, EWC, and Moonriver. DF applies to data on all of them.

All other DF9 parameters are the same as given in the launch post “Ocean Data Farming is Launching”.

4. Conclusion

DF8 has completed. To claim rewards, go to DF webapp Claim Portal.

DF9 begins Oct 27. It ends Nov 3 at 12:01am.

DF9 is the first week of DF Beta. Reward budget have increased 5x, and the active rewards calculations have changed to bias more to DCV.

5. Appendix: Details of Changes to Reward Function

5.1 Summary

Section 3 described changes to the reward function:

  • In DF8, OCEAN was rewarded pro-rata on stake * DCV.
  • In DF9, assets are rewarded pro-rata on DCV to each asset first, then within each asset, pro-rata on relative stake in the asset to stakers.

5.2 Reward Function Math

Let’s compare the math. Here’s the DF8 reward function:

RF_ij = (stake_ij/(Σij stake_ij)) * (DCV_j/(Σj DCV_j)

Here’s the DF9 reward function:

RF_ij = (stake_ij/(Σi stake_ij)) * (DCV_j/(Σj DCV_j)

Where:

  • RF_ij= relative reward to staker i for allocating to asset j. Absolute reward = reward_ij = RF_ij / (Σij RF_ij) * OCEAN_budget
  • stake_ij= veOCEAN of staker i allocated to asset j
  • DCV_ij=data consume volume of asset j
  • Σij stake_ij = the sum of stake_ij across all i and j. Other Σ are similar

The only difference in the equations are the second term: DF8(Σij stake_ij) versus DF9(Σi stake_ij). DF8 sums across i and j, whereas DF9 just across j. This means that DF8 normalizes stake_ij across stakes in all assets, wheres DF9 normalizes across stakes of just the same asset.

This single change accomplishes the goal to “award pro-rata to DCV first”.

5.3 Worked example

Here’s a worked example, for two assets (A, B) and four stakers (1, 2, 3, 4). To help readability, we use small / non-realistic numbers, and ignore the APY ≤ 125% and DCV active budget constraints.

Problem setup:

  • DCV. Asset A and B each have DCV of 0.5 OCEAN. That is: DCV_A = 0.5, DCV_B = 0.5 $OCEAN
  • Stake. In asset A, staker 1 has 1 veOCEAN, and staker 2 has 9. In asset B, staker 3 has 10 veOCEAN, and staker 4 has 90. That is: stake_1A = 1, stake_2A = 9, stake_3B = 10, stake_4B = 90 veOCEAN
  • OCEAN_budget= 5000 $OCEAN (active portion)

With DF8 formula, relative rewards are:

  • Staker 1: RF_1A = (stake_1A /(Σij stake_ij)) * (DCV_A /(Σj DCV_j)= (1/110)*(0.5/1) = 0.0045454
  • Staker 2: (9/110)*(0.5/1) = 0.0409091
  • Staker 3: (10/110)*(0.5/1) = 0.0454545
  • Staker 4: (90/110)*(0.5/1) = 0.4090909

With DF8 formula, absolute rewards are:

  • Staker 1: reward_1A = RF_1A / (Σij RF_ij) * OCEAN_budget = 0.0045454 / (0.00454 + 0.04091 + 0.04545 + 0.40909) * 5000 = 45.45 $OCEAN
  • Staker 2: reward_2A= 0.0409091 / 0.5 * 5000 = 409.09 $OCEAN
  • Staker 3: reward_3B= 0.0454545 / 0.5 * 5000 = 454.54 $OCEAN
  • Staker 4: reward_4B= 0.4090909/ 0.5 * 5000 = 4090.91 $OCEAN
  • Double-check: total reward = 45.45 + 409.09 + 454.54 + 4090.91 = 5000 $OCEAN ✓

With DF9 formula, relative rewards are:

  • Staker 1: RF_1A = (stake_1A/(Σi stake_ij)) * (DCV_A/(Σj DCV_j)= (1/10)*(0.5/1) = 0.05
  • Staker 2: (9/10)*(0.5/1) = 0.45
  • Staker 3: (10/100)*(0.5/1) = 0.05
  • Staker 4: (90/100)*(0.5/1) = 0.45

With DF9 formula, absolute rewards are:

  • Staker 1: reward_1A = RF_1A / (Σij RF_ij) * OCEAN_budget = 0.05 / (0.05 + 0.45 + 0.05 + 0.45) * 5000 = 250 $OCEAN
  • Staker 2: reward_2A= 0.45 / 1.0 * 5000 = 2250 $OCEAN
  • Staker 3: reward_3B = 0.05 / 1.0 * 5000 = 250 $OCEAN
  • Staker 4: reward_4B= 0.45 / 1.0 * 5000 = 2250 $OCEAN
  • Double-check: total reward = 250 + 2250 + 250 + 2250 = 5000 $OCEAN ✓

The treemap above “How the reward function changed from DF8 → DF9” was constructed using the numbers of this worked example.

Further Reading

The post Ocean Data Farming Series collects together key articles, and related resources about DF.

Follow Ocean Protocol on Twitter, Telegram, or GitHub. And chat directly with the Ocean community on Discord.

--

--