- Replace OpenAI-specific responses.create() API with standard chat.completions.create()
- Update get_stock_news_openai, get_global_news_openai, and get_fundamentals_openai
- Add comprehensive tests for OpenAI, Gemini, and OpenRouter compatibility
- All functions now use standard OpenAI-compatible chat completion API
- Fixes RuntimeError: All vendor implementations failed for method 'get_global_news'
- Fixes RuntimeError: All vendor implementations failed for method 'get_indicators'
The issue was that the openai vendor functions used OpenAI-specific API features
(responses.create with web_search_preview tools) that are not supported by
Gemini or OpenRouter. By switching to the standard chat completions API,
these functions now work with any OpenAI-compatible provider.
- 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>