- Restore alpha_vantage.py facade with explicit re-exports and __all__
- Restore agent_utils.py tool facade imports and expand __all__ to cover
all public names (prevents auto-fixer stripping re-exports in future)
- Consolidate fragmented per-function import blocks in interface.py into
single blocks; add combine-as-imports = true to ruff isort config
- Enable F403, F405, F841 in Ruff (remove from ignore list) and fix all
resulting violations: replace star imports in cli/main.py, setup.py,
and trading_graph.py with explicit imports; drop unused live/decision
assignments
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add _clean_dataframe() to normalize stock DataFrames before stockstats:
coerce invalid dates/prices, drop rows missing Close, fill price gaps.
Also add on_bad_lines="skip" to all cached CSV reads.
- Replace hardcoded column indices with column name lookup
- Add mapping for all supported indicators to their expected CSV column names
- Handle missing columns gracefully with descriptive error messages
- Strip whitespace from header parsing for reliability
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace FinnHub with Alpha Vantage API in README documentation
- Implement comprehensive Alpha Vantage modules:
- Stock data (daily OHLCV with date filtering)
- Technical indicators (SMA, EMA, MACD, RSI, Bollinger Bands, ATR)
- Fundamental data (overview, balance sheet, cashflow, income statement)
- News and sentiment data with insider transactions
- Update news analyst tools to use ticker-based news search
- Integrate Alpha Vantage vendor methods into interface routing
- Maintain backward compatibility with existing vendor system
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>