- buy() now always loads WF history from trade_results DB directly (not lazy-cached in memory) → restart-safe, no stale-history issue - Added WF_VOL_BYPASS_THRESH (default 10.0x): if vol_ratio at entry exceeds this threshold, WF filter is skipped regardless of win rate - buy() now accepts vol_ratio param; runner.py passes it from get_active_signals() for both fast-poll and main scan loops Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
26 KiB
26 KiB