Addresses gemini-code-assist review on #565:
- Type hints: int | None for nullable look_back_days/limit on get_global_news
in alpha_vantage_news.py, yfinance_news.py, and news_data_tools.py.
Adds explicit str type hint to curr_date in alpha_vantage_news.py.
- Config override: news_data_tools.get_global_news no longer hardcodes
look_back_days=7 / limit=5; defaults to None so DEFAULT_CONFIG values
flow through to the dataflow layer.
- Cross-vendor consistency: alpha_vantage_news.get_news now respects the
news_article_limit config (parity with yfinance_news.get_news_yfinance).
- Fallback consistency: alpha_vantage_news.get_global_news fallback now
matches DEFAULT_CONFIG (10) instead of the legacy 50.
Three parameters were hardcoded with no way to override via config:
- count=20 in yf.Ticker.get_news() inside get_news_yfinance
- look_back_days=7 default in get_global_news_yfinance
- limit=10 default in get_global_news_yfinance
Add three new keys to DEFAULT_CONFIG:
- news_article_limit (default 20): max articles per ticker for get_news
- global_news_lookback_days (default 7): lookback window for get_global_news
- global_news_article_limit (default 10): max global articles for get_global_news
Both yfinance and alpha_vantage news implementations now read these values
from config, allowing users running weekly/monthly strategies to increase
coverage without modifying library source code.
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>