Tokenomics
Understanding the economic model of Precognition, including fee structures, reward distribution, and incentive mechanisms that drive participation.
Creator Fee
0-20%
Configurable fee (max 2000 bps) deducted from each stake
Winner ROI
Variable
Based on ratio of winning to losing pool stakes
Refunds
100%
Full stake returned if prediction is cancelled
Fee Structure
When a user stakes tokens on a prediction, a creator fee is deducted and sent to the treasury. The remaining amount goes to the reward pool.
Fee Flow
User Stakes
100 tokens
Split
5% → Treasury
95% → Reward Pool
Note: The creator fee is configured at market initialization via
creator_fee_bps and cannot exceed 2000 basis points (20%).Fee Calculation (Rust)
Rust
1 2 let creator_fee = amount 3 .checked_mul(market.creator_fee_bps as u64) 4 .unwrap() 5 .checked_div(10000) 6 .unwrap(); 7 8 let stake_after_fee = amount.checked_sub(creator_fee).unwrap(); 9 10 11 transfer( 12 CpiContext::new(/* ... */), 13 creator_fee, 14 )?; 15 16 17 transfer( 18 CpiContext::new(/* ... */), 19 stake_after_fee, 20 )?;
Reward Distribution
When a prediction is resolved, winners receive their original stake plus a proportional share of the losing pool based on their contribution to the winning pool.
Reward Formula
Winner's reward:
reward = user_stake + (losing_pool × user_stake ÷ winning_pool)
Example:
Winning Pool (VALID):
1,000 tokens
Losing Pool (FUD):
800 tokens
Your Stake:
100 tokens
Your Share:
100 / 1000 = 10%
Losing Pool Share:
800 × 10% = 80 tokens
Total Reward:
100 + 80 = 180 tokens
Reward Calculation (Rust)
Rust
1 2 let winning_pool = if prediction.winning_side == Some(VoteSide::Valid) { 3 prediction.valid_stake_total 4 } else { 5 prediction.fud_stake_total 6 }; 7 8 let losing_pool = if prediction.winning_side == Some(VoteSide::Valid) { 9 prediction.fud_stake_total 10 } else { 11 prediction.valid_stake_total 12 }; 13 14 15 let user_reward = user_stake.amount 16 .checked_add( 17 losing_pool 18 .checked_mul(user_stake.amount) 19 .unwrap() 20 .checked_div(winning_pool) 21 .unwrap() 22 ) 23 .unwrap();
Interactive Calculator
Fee Calculator
100 tokens
500 bps (5.0%)
Fee Amount:5.00 tokens
Stake After Fee:95.00 tokens
Reward Calculator
1,000 tokens
800 tokens
100 tokens
Your Pool Share:10.00%
Losing Pool Share:+80.00 tokens
Total Reward:180.00 tokens
ROI:+80.00%
Economic Incentives
For Participants
- ✓Risk/Reward: Higher potential returns when betting against the crowd (minority position)
- ✓No Lock-up: Stakes are only locked until prediction resolution
- ✓Full Refunds: 100% refund if quorum not reached
For Protocol
- •Sustainable Revenue: Creator fees fund ongoing development and oracle operations
- •Aligned Incentives: Higher participation = more fees = better oracle
- •Quorum Mechanism: Ensures meaningful participation before resolution
Configurable Parameters
These parameters are set at market initialization and affect all predictions
| Parameter | Type | Constraints | Description |
|---|---|---|---|
creator_fee_bps | u16 | 0 - 2000 | Fee in basis points (100 bps = 1%) |
min_stake_amount | u64 | > 0 | Minimum stake in token base units |
voting_duration | i64 | 3600 - 604800 | Duration in seconds (1h to 7d) |
quorum_min_votes | u32 | > 0 | Minimum votes for resolution |