TradingAgents/tradingagents/dataflows/discovery/scanners
Youssef Aitousarrah 704af1a855 fix(discovery): commit risk_metrics.py and reduce Minervini max_tickers to 50
Two bugs causing zero recommendations:

1. risk_metrics.py was untracked — importing it raised ModuleNotFoundError which
   was caught by the outer try/except in filter.py, silently dropping all 32
   candidates that reached the fundamental risk check stage.

2. Minervini scanner at max_tickers=200 took >5 min to download 200 tickers x 1y
   of OHLCV data. ThreadPoolExecutor.cancel() cannot kill a running thread, so the
   download kept running as a zombie thread for 20 more minutes after the pipeline
   completed, holding the Python process alive until the 30-min workflow timeout
   killed the entire job.

   Reducing to 50 tickers brings the download to ~75s, well under the 300s global
   scanner timeout.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 16:24:29 -07:00
..
__init__.py fix(ci): restore daily discovery workflow 2026-04-06 13:46:21 -07:00
analyst_upgrades.py Update 2026-02-20 08:38:15 -08:00
earnings_calendar.py feat: improve all 9 scanners and add 3 new scanners 2026-02-20 08:36:18 -08:00
insider_buying.py fix(scanners): rank by signal quality before limiting in 3 more scanners 2026-04-06 13:46:21 -07:00
market_movers.py feat: improve all 9 scanners and add 3 new scanners 2026-02-20 08:36:18 -08:00
minervini.py fix(discovery): commit risk_metrics.py and reduce Minervini max_tickers to 50 2026-04-07 16:24:29 -07:00
ml_signal.py fix(discovery): fix three scanner hang/validation bugs found in ranker_debug.log 2026-02-20 22:35:42 -08:00
options_flow.py fix(options_flow): scan full universe before applying limit, rank by signal strength 2026-04-06 13:46:21 -07:00
reddit_dd.py feat(scanners): add minervini scanner to registry 2026-04-06 13:51:42 -07:00
reddit_trending.py feat: improve all 9 scanners and add 3 new scanners 2026-02-20 08:36:18 -08:00
sector_rotation.py fix(scanners): rank by signal quality before limiting in 3 more scanners 2026-04-06 13:46:21 -07:00
semantic_news.py Update 2026-02-20 08:38:15 -08:00
technical_breakout.py fix(scanners): rank by signal quality before limiting in 3 more scanners 2026-04-06 13:46:21 -07:00
volume_accumulation.py Update 2026-02-20 08:38:15 -08:00