QK — quality-of-kill scoring
How QK works
QK (quality-of-kill) is a composite score that ranks candidates by signal strength. It blends EV, sharp-consensus quality, line-stability, and other factors into a single number. Candidates with low QK get blocked even if their EV passes; candidates with very high QK can also be blocked (high QK often correlates with stale-line outliers).
The three threshold knobs
filters.minQk— global floor. Default 1.75.filters.scopedMinQk— per-(mode, market, league, book, flow, sharpCount) floor overrides. Can go negative in scoped rules (e.g.-1.25) — that's intentional, not a bug. Negative QK floors mean "any quality, even very low, is acceptable for this scope."filters.scopedMaxQk— per-scope ceiling. Caps suspiciously-high QK that often indicates stale-line traps or pricing anomalies.
Resolution order
- Match scoped rules by mode + market + league + book + flow + sharpCount.
- Most-specific match wins; ties → more restrictive value.
- If no scoped match, fall back to global
filters.minQk.
What this Studio page does
Replays settled positions and sweeps QK floor + ceiling across scopes. The floor sweep finds where below-threshold candidates underperform; the ceiling sweep finds where above-threshold candidates flip from edge to noise. Use the per-(book, league, flow) detail tables for scope-specific inflections.
Canonical contract for QK thresholds is in docs/gates.md#qk-thresholds. Negative scoped values are documented there as intentional.
Data
Controls
Run Settings
Guardrails
Minimum Bets, (2) pass enabled guardrails, (3) rank remaining candidates by Objective Metric. If all fail guardrails, the run falls back to score-only with a warning.
Data Quality & Output
Summary
| Param | Baseline | Best | Bets Kept (Best / Baseline) | Baseline Score | Best Score | Delta |
|---|
Distribution
| Parameter Value | Bets | Pass Rate | Distinct Days | Green Day % | Worst Day | Win Rate | ROI | Profit | Stake | Avg EV |
|---|