Introduction

Reward Pool Distribution

Reward Pool Distribution

The Reward Pool Distribution mechanism ensures that 100% of the pool is distributed to users based on how close their predictions are to the actual calculated score. This creates a fair, transparent, and mathematically sound reward system.

Key Factors

Before diving into the distribution mechanism, here are the key factors that govern the reward pool:

  1. Equal Bet Amount: All users must bet an equal amount (defined for each pool)
  2. Minimum Users: A minimum number of users is required to start a betting pool
  3. Betting Period: The time period during which users can place bets is clearly defined
  4. Pool Period: The pool period is always longer than the betting period to allow for score calculation
  5. Dynamic Reward Distribution: Rewards are distributed dynamically based on prediction accuracy

Distribution Mechanism

To ensure that 100% of the pool is distributed and that the distribution is entirely relative to how close users are to the actual score, we use the following structured approach:

Step 1: Calculate Individual Accuracy Scores

We calculate the accuracy score for each user based on the absolute distance from the actual score.

Distance Calculation:

Distance(i) = |Predicted Score - Actual Score|

Where:

  • Actual Score = Score calculated at the end of the pool time period using the Score Mechanism
  • Predicted Score = Value entered by the user when placing their bet
  • Distance(i) = The absolute distance/deviation from the exact score of individual user i

Accuracy Score Formula:

Accuracy(i) = 1 / (Distance(i) + 1)

Where:

  • Accuracy(i) = Accuracy score of individual user i
  • Distance(i) = The absolute distance/deviation from the exact score of individual user i

Key Properties:

  • If a user predicts the exact actual score (Distance = 0), they get an accuracy score of 1.0
  • As the prediction diverges from the actual score, the accuracy score decreases
  • The +1 in the denominator ensures the formula never divides by zero and provides a smooth decay curve

Example:

If the actual score is 75:

  • User A predicts 75 → Distance = 0 → Accuracy = 1/(0+1) = 1.0
  • User B predicts 70 → Distance = 5 → Accuracy = 1/(5+1) = 0.167
  • User C predicts 80 → Distance = 5 → Accuracy = 1/(5+1) = 0.167
  • User D predicts 60 → Distance = 15 → Accuracy = 1/(15+1) = 0.063

Step 2: Calculate Total Accuracy

Sum the accuracy scores of all users to find the Total Accuracy:

Total Accuracy = Σ Accuracy(i)

This is the addition of all users' accuracy scores.

Example (continuing from above):

Total Accuracy = 1.0 + 0.167 + 0.167 + 0.063 = 1.397

Step 3: Calculate Individual Reward Shares

We distribute the entire pool based on the relative accuracy scores.

Total Pool:

Let P be the total pool amount (in tokens).

For each individual user (i), their share of the pool is determined as follows:

Reward Share(i) = (Accuracy(i) / Total Accuracy) × P

Where:

  • Reward Share(i) = The amount of tokens individual user i gets as reward
  • Accuracy(i) = Individual accuracy of user i
  • Total Accuracy = Sum of all users' accuracy scores
  • P = Total token amount in Pool

Example Calculation:

Using the previous example with 4 users and assuming a pool of 1000 tokens:

  • User A (Accuracy = 1.0): Reward = (1.0 / 1.397) × 1000 = 715.8 tokens
  • User B (Accuracy = 0.167): Reward = (0.167 / 1.397) × 1000 = 119.6 tokens
  • User C (Accuracy = 0.167): Reward = (0.167 / 1.397) × 1000 = 119.6 tokens
  • User D (Accuracy = 0.063): Reward = (0.063 / 1.397) × 1000 = 45.1 tokens

Total Distributed: 715.8 + 119.6 + 119.6 + 45.1 = 1000.1 tokens (rounding differences)


Reward Pool Example

Let's walk through a complete example with 5 users to see how the reward distribution works in practice.

Scenario Setup

  • Result Score (Actual Score): 50
  • Total Pool Amount: 100 units
  • Platform Fee: 10% (deducted from each user's bet)
  • Number of Users: 5

User Predictions

UserPredicted Score (Target Score)
Neeraj30
Sneha60
Aman50
Maroti70
Muddu40

Step 1: Calculate Divergence

Each user's Divergence is calculated as the absolute difference between their predicted score (target score) and the actual score (result score):

Divergence = |Result Score - Target Score|

Calculations:

  • Neeraj: |50 - 30| = 20
  • Sneha: |50 - 60| = 10
  • Aman: |50 - 50| = 0 (Aman predicted the score perfectly!)
  • Maroti: |50 - 70| = 20
  • Muddu: |50 - 40| = 10

Step 2: Calculate Accuracy

Accuracy is inversely related to divergence: the lower the divergence, the higher the accuracy. The formula for accuracy is:

Accuracy = 1 / (1 + Divergence)

This ensures that perfect predictions (divergence of 0) get an accuracy of 1, while larger divergences get smaller accuracy scores.

Calculations:

  • Neeraj: 1 / (1 + 20) = 1/21 ≈ 0.047
  • Sneha: 1 / (1 + 10) = 1/11 ≈ 0.090
  • Aman: 1 / (1 + 0) = 1.000 (Perfect accuracy!)
  • Maroti: 1 / (1 + 20) = 1/21 ≈ 0.047
  • Muddu: 1 / (1 + 10) = 1/11 ≈ 0.090

Step 3: Calculate Total Accuracy

The total accuracy is the sum of all individual accuracies:

Total Accuracy = Neeraj's Accuracy + Sneha's Accuracy + Aman's Accuracy + Maroti's Accuracy + Muddu's Accuracy
Total Accuracy = 0.047 + 0.090 + 1.000 + 0.047 + 0.090 = 1.274

Step 4: Calculate Reward Distribution

The rewards are distributed based on each user's accuracy relative to the total accuracy. The formula for reward distribution is:

Reward = (User Accuracy / Total Accuracy) × Total Pool Amount

Note: In this example, we're distributing from the total pool. If fees are deducted per user bet (10%), the formula would be:

Reward = (User Accuracy / Total Accuracy) × (Total Pool Amount - (User Bet × 0.1))

For simplicity, assuming the total pool of 100 units is already net of fees, the rewards are:

  • Neeraj: (0.047 / 1.274) × 100 = 3.68 units
  • Sneha: (0.090 / 1.274) × 100 = 7.06 units
  • Aman: (1.000 / 1.274) × 100 = 78.47 units (Largest share due to perfect prediction!)
  • Maroti: (0.047 / 1.274) × 100 = 3.68 units
  • Muddu: (0.090 / 1.274) × 100 = 7.06 units

Verification:

  • Total Distributed: 3.68 + 7.06 + 78.47 + 3.68 + 7.06 = 99.95 units (rounding differences)

Summary Table

UserPredictedDivergenceAccuracyReward SharePercentage
Neeraj30200.0473.683.68%
Sneha60100.0907.067.06%
Aman5001.00078.4778.47%
Maroti70200.0473.683.68%
Muddu40100.0907.067.06%

Key Takeaways

  1. Divergence measures how far a user's guess is from the actual result
  2. Accuracy is inversely proportional to divergence, meaning the closer the guess, the higher the accuracy
  3. Perfect Prediction Bonus: Aman, who predicted exactly 50, receives 78.47% of the pool (the largest share)
  4. Fair Distribution: Even users with larger divergences (Neeraj and Maroti with 20) receive a share, encouraging participation
  5. Relative Rewards: Users with the same divergence (Neeraj and Maroti, Sneha and Muddu) receive equal rewards
  6. 100% Distribution: The entire pool is distributed based on relative accuracy

This example demonstrates how the reward distribution mechanism ensures fairness while rewarding accuracy, with perfect predictions receiving the largest share of the pool.

Platform Fees

For earning fees, the platform can either:

  1. Charge fees at bet placement: Additional fees charged when users place bets
  2. Deduct from pool: Take a portion from the pool before distribution

If fees are deducted from the pool:

Total Pool after fees (FP) = Total Pool (P) - Fees

Then the reward distribution uses the pool after fees:

Reward Share(i) = (Accuracy(i) / Total Accuracy) × FP

Example with 5% fee:

If the pool is 1000 tokens and fees are 50 tokens (5%):

  • FP = 1000 - 50 = 950 tokens
  • Rewards are distributed from the 950 token pool
  • Platform receives 50 tokens as fees

Guarantees

This distribution mechanism guarantees:

  1. 100% Distribution: The entire pool (minus fees, if applicable) is distributed to users
  2. Fairness: Users with closer predictions receive proportionally larger rewards
  3. Transparency: The calculation is deterministic and verifiable on-chain
  4. No Winner-Takes-All: Even users with less accurate predictions receive some reward, encouraging participation
  5. Perfect Prediction Bonus: Users who predict the exact score receive the largest share

Edge Cases

Multiple Perfect Predictions

If multiple users predict the exact actual score:

  • All perfect predictors get equal shares of the highest reward tier
  • The accuracy formula naturally handles this (all get Accuracy = 1.0)

Very Large Distances

Users with very large prediction distances still receive a small reward:

  • This encourages participation even from less confident users
  • The reward decreases exponentially with distance

Minimum Reward Threshold

Consider implementing a minimum reward threshold to avoid dust amounts:

  • Users below a certain accuracy threshold might receive their original bet back
  • Or rewards below a certain amount could be rolled into the next pool

Implementation Notes

  • MVP Logic: This is the fundamental MVP logic for the platform
  • Future Improvements: Further changes are expected based on feedback and guidelines
  • On-Chain Verification: All calculations can be verified on-chain for transparency
  • Gas Optimization: Consider batching calculations for efficiency

Previous
Score Mechanism