- Add Trade Strategist agent (trade_strategist_node.py): generates 5
actionable trade setups (Entry, SL, TP, R:R, Win%) after Portfolio Manager
- Wire Trade Strategist into LangGraph pipeline (setup.py)
- Add 'trade_possibilities' field to AgentState schema
- Initialize trade_possibilities in Propagator initial state
- Integrate SqliteSaver (langgraph-checkpoint-sqlite) for node-by-node
state persistence to trading_agents_state.sqlite
- Add unique thread_id (ticker_date) to graph config for checkpoint isolation
- Update CLI (main.py) to display Trade Strategist progress + save report section
- Restore full standard Python .gitignore (200+ rules) stripped in prior PR
- Fix: convert trade_strategist_node to factory function (create_trade_strategist)
to resolve LangGraph TypeError on missing 'llm' argument
- Fix: use sqlite3.connect() directly instead of SqliteSaver.from_conn_string()
to avoid _GeneratorContextManager TypeError
LLMs (especially smaller models) sometimes pass multiple indicator
names as a single comma-separated string instead of making separate
tool calls. Split and process each individually at the tool boundary.
- 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>
- Added support for running CLI and Ollama server via Docker
- Introduced tests for local embeddings model and standalone Docker setup
- Enabled conditional Ollama server launch via LLM_PROVIDER