Understand the Market Recommendation V2 Algorithm
mainThe Market Recommendation V2 algorithm evaluates Predict.fun markets to suggest optimal market-making opportunities. It focuses on 'Points Capital Efficiency' to ensure that the capital required to place orders (determined by min_shares) yields sufficient buffer space (cents) for points accumulation.
Core Scoring Components
Points Capital Efficiency (Core): Measures how much buffer space is gained per 1000 shares invested.
- Formula:
pointsEfficiency = (bufferPerSide / min_shares) * 1000 - Scoring:
score += Math.min(20, Math.floor(pointsEfficiency * 2))
- Formula:
min_shares Threshold: Rewards markets with lower capital requirements.
<= 50: +15 points<= 100: +10 points<= 200: +5 points> 200: -5 points
Buffer Utilization (Order Book Crowding): Measures
bookSpread / maxSpread.< 30%: +10 points (Loose book, easy to place orders)30-70%: 0 points (Normal)> 70%: -5 points (Crowded book, difficult to place orders)
max_spread Reward: Rewards wider spreads for higher profit potential.
>= 8c: +8 points>= 6c: +5 points< 6c: 0 points
Liquidity (24h Volume):
> $50K: +15 points> $20K: +12 points> $10K: +8 points> $2K: +4 points> $500: +1 point<= $500: -10 points (Warning)
Time Risk (Expiration):
> 30 days: +8 points14-30 days: +10 points (Optimal)7-14 days: +5 points3-7 days: +2 points (Warning)1-3 days: -10 points (Critical)< 1 day: -30 points (Extreme Risk)
Price Quality (Mid-price):
0.1 - 0.9: +3 points< 0.05or> 0.95: -5 points (High risk)
Polymarket Daily Rate:
> $0.05: +8 points> $0.01: +4 points> 0: +2 points
// Points Efficiency Calculation Example
// Market A: buffer=3c, min_shares=50
// efficiency = (3 / 50) * 1000 = 60
// score += Math.min(20, Math.floor(60 * 2)) -> +12 points
// Market B: buffer=3c, min_shares=500
// efficiency = (3 / 500) * 1000 = 6
// score += Math.min(20, Math.floor(6 * 2)) -> +1 point