← All articles
engine2026-05-08

How the Trade Finder ranks suggestions

By Nick1 min read

The Trade Finder doesn't return every legal trade. That's noise. It returns the trades both sides actually benefit from. Here's the math.

Step 1: Per-team starting-lineup expected points

For each team we greedy-fill the league's roster slots (QB / RB / WR / TE / FLEX / SUPERFLEX / K / DST) with the highest FFP-projected player on the roster. Sum = SLEP.

Step 2: Position surplus / need

Per position, position_strength = sum(top_K_at_pos) − league_median(top_K_at_pos). Positive = surplus (tradeable). Negative = need (target).

Step 3: Candidate generation

For your team and each potential partner, enumerate 1-for-1, 2-for-1, and 2-for-2 packages where you have surplus at their need and they have surplus at yours. Capped at top-8 surplus assets per side to keep search bounded.

Step 4: Scoring


score = ΔSLEP_user + ΔSLEP_partner − α · |ΔSLEP_user − ΔSLEP_partner| − β · packagePenalty

Filters to min_mutual_gain > 0.5 AND |gap| < 100 FFP. Then we multiply by partner trade propensity (from the manager grader) so high- trading GMs surface first.

Why this beats raw "trade value"

Most trade calculators score in points. We score in *mutual lineup gain*. A 2-for-1 dumping bench depth into a star RB might look fair on a value calculator but flunks here unless both starting lineups improve.

Free · No card

Run this on your own league.

Connect ESPN or Sleeper to get trade suggestions, league-aware rankings, and manager grades.

Sign up free

More articles