Results & history
How to read Hunter's results: the per-size menu, alternates, the Luck Check and its caveat, loading a row into the Builder, and comparing past runs.
A finished run lands on the Results tab as a menu: one row per solved portfolio size, deliberately without a designated "best" row. Which size — and whether any of them — is up to you.

The menu

Above the table, a verdict strip counts the funnel: candidates → eligible → pool, and how long the solve took. Then the table's own introduction does the compliance work, verbatim:
These are the extreme outcomes of a search across [n] rule-satisfying strategies — results selected from many candidates are partly selection luck. Open a row to see its Luck Check. This table reflects only the parameters you entered; different parameters produce different tables.
The columns: Size, Fam (family counts), SL (stop-loss levels in use), BP (netted), P/L over your reference period, CAGR, Avg MAR, Max DD %, Max DD $, Sharpe, Win — and, when a combined-DD cap was set, Combined DD, flagged "(over cap)" if the cap could not be met. CAGR, drawdown, Sharpe and win rate are daily-series figures computed per portfolio; they fill in as you open each row.
BP (netted) is worth a definition: call and put verticals on the same SPX 0DTE expiry are margined at the larger side only — only one side can finish in the money — so the deployed buying power shown is the netted figure, with the gross number disclosed in the opened row when it differs.
Alternates appear only if you set a result tolerance: rows labeled alt 1, alt 2… after a size's optimum, each materially different from everything above it. No tolerance, no alternates — optima only.
If no portfolio satisfies your rules, the page says which rule blocked it (or, when it can't isolate one: "try loosening one rule at a time") — a diagnosis, not a shrug.
An opened row

Opening a row expands the full picture:
- KPI tiles — P/L over both windows (with the calendar-aligned figure replacing the solver's cache-sum estimate once computed — the label tells you which you're looking at), average MAR, netted buying power, premium per day, and the theoretical max daily loss with all stops hit.
- Live analytics — CAGR, true combined-curve max drawdown, Sharpe/Sortino, win rate as green-day share, average pairwise correlation (with the worst pair), best/worst day, and the Luck Check.
- The picks table — every strategy with entry time, quantity (shown against its cap when capped), premium, stop-loss, width, buying power, and its P/L, drawdown and MAR over both windows.
- The walk-forward panel for this exact configuration and size.
The Luck Check
Each opened portfolio is tested on data the search never optimized over, and graded on whether its mean daily P/L is statistically distinguishable from zero. The tile shows the grade, the p-value and the number of validation days — and, always attached, the caveat that keeps the number honest:
Caveat for searched results: this p-value is computed for the opened portfolio alone and is not adjusted for the number of candidates the search considered — extremes selected from a large search can grade well partly by that selection.
When the validation window is too short or the data unavailable, the check reports that it didn't run rather than showing a hollow pass.
Into the Builder
Two actions per row: Load into Builder carries the picks, quantities and sizing into the Portfolio Builder — where every position stays fully editable — and Save as portfolio stores it directly. Hunter's output is a starting point you own, not a finished product.
History

Every run is logged automatically — no "save" step to remember. Each row carries the run's rule-set summary (families, stop-losses, size) and its result KPIs: buying power, P/L, CAGR, MAR, both drawdown figures, Sharpe and win rate.
The P/L column deserves a footnote the table gives you itself: it is the calendar-aligned portfolio P/L over the reference window — the same basis Portfolio Analytics uses — not the per-strategy cache sum shown on the results menu. When the two differ, this is the one to trust.
The five row actions
| Action | What it does |
|---|---|
| Recall these settings into the form | Loads that run's complete rule-set back into Settings, ready to tweak and re-run |
| Save this run's settings as a named preset | Stores the rule-set under a name you choose, so it appears in the saved-settings bar |
| Export this run's settings as a JSON file | Downloads the rule-set as hunter-settings-….json |
| Load this exact portfolio into the Builder | Sends the picks and sizing to the Portfolio Builder |
| Delete this run | Removes the row (confirmed first, not undoable) |
Deleting in bulk works too: tick rows for Delete selected, or Delete all when nothing is ticked. Both confirm before acting.
Saving, exporting and importing rule-sets

A Hunter rule-set is a portable object, and that matters more than it sounds: it is the entire definition of a run. Three ways to move one around:
- Save current (in the saved-settings bar at the top of Settings) names the rule-set you have on screen and adds it to the dropdown — the bar's own caption is "your own named rule-sets — nothing is pre-filled for you".
- Export writes it to a JSON file — a plain, readable record you can keep alongside your notes, archive, or send to someone.
- Import reads such a file back in. A file that isn't a valid Hunter settings file is rejected with a message rather than half-applied.
Because the file is the rule-set, an exported run is reproducible: import it, press Hunt, and you are solving exactly the program you solved before — against whatever the catalog looks like now, which is precisely how you find out whether a rule-set still holds up.
Comparing runs

Tick two or three runs and press Compare. The view lines them up in two blocks:
- Result — strategies, contracts, buying power used, calendar-aligned P/L, CAGR, MAR, Max DD in both % and $, Sharpe, Sortino, win rate, average correlation — plus picks in common, which tells you whether two runs found genuinely different portfolios or shuffled the same ones.
- Rule-set — every setting from both runs, row by row, so the reason for the difference is visible directly under the difference itself.
Teal marks each metric's extreme — highest P/L, lowest drawdown, and so on. The footer states the limit plainly: that marking is per metric only, with no overall ranking. Nothing in Hunter will tell you which run was "best", because that judgment depends on what you are optimizing for — which is the thing you defined in the first place.
