PGA Optimizer
Build a Lineup
Tournament
Auto-detected for the CURRENT week from data/current_event.json (Session 5.2's weekly config), and remembered permanently after that -- so it still resolves correctly even after that file moves on to a new week. If it doesn't resolve (e.g. testing against a past event), just type the tournament name here; it's saved for next time.
Event ID
Required because the real solve does NOT use the file you upload below -- GitHub Actions re-reads the already-committed final_projections_{site}_{event}.csv from the repo by this exact id (build_projections.py's own --event-id). The file you upload below is only used to show, search, sort, lock, and exclude players in this browser. Auto-filled from the Player Pool file's name when possible.
No player pool loaded -- upload a final_projections_{site}_{event}.csv for either site; the site is detected from the filename
On a different device? Set the Event ID above and tap this to pull in a pool already uploaded elsewhere -- guaranteed to check, unlike waiting for it to happen automatically.
No ownership data loaded -- this loads automatically once a Player Pool and Event ID are set, if chalk_scores_{site}_{event}.csv is already committed in the repo. Upload here to override.
# Lineups
Max Exposure %
Uniqueness
Randomization %
Wave Tilt
Minimum Projection
Minimum Total Ownership
Minimum Salary
"# Lineups" of 1 builds a single lineup (Session 3.1 behavior). Above 1 uses multi-lineup mode. Minimum Salary defaults near each site's full cap ($49,500 on DK, $59,500 on FD) and updates automatically when you switch sites -- set it to 0 to remove the floor. Minimum Projection excludes golfers below that floor from the pool entirely (locked golfers are always exempt). Minimum Total Ownership requires ownership data -- see the Player Pool below.
Runs the real optimizer.py via GitHub Actions (typically 20-90s) with every setting above.
Cash Lineup
Marks the single lineup currently shown as this week's real cash lineup -- this is what pivot suggestions and the automated Wednesday refreshes compare against. Only shows after a single-lineup (not multi/GPP) build completes. Re-click any time you rebuild a new single lineup you want to treat as final (e.g. after locking a pivot player and excluding the chalk player it replaces).
Download Built Lineups
Paste the downloaded rows into the G columns of your real DK/FD entries file, in order -- see the hint after downloading for the exact cell format used.