TradingAgents/tradingagents/dataflows
swj.premkumar 97d13ee1ed 2026-01-15 (Phase 1: The Foundation)
### Added
- **Hyper-Immutability (Physically Secured State)**: Implemented `FactLedger` (TypedDict) and `write_once_enforce` reducer in `agent_states.py` to cryptographically lock data reality.
    - Ledger is hashed (SHA-256) upon creation.
    - Wrapped in `MappingProxyType` to prevent any downstream agent from mutating the facts.
- **The Data Registrar (Parallel Gatekeeper)**: Created `DataRegistrar` node (`tradingagents/agents/data_registrar.py`) that acts as the Single Source of Truth.
    - **Parallel I/O**: Fetches Price, Fundamentals, News, and Insider data concurrently (4x speedup over sequential).
    - **Partial Poisoning Guard**: Hard "Fail-Fast" if critical domains (Price, Fundamentals) are missing.
    - **Freshness Simulation**: Configurable `TRADING_MODE` (simulation/production) to allow rigorous testing without stale-data aborts.

### Fixed
- **Hallucination Vectors (The Lobotomy)**: Removed ALL tool access from `Market`, `Social`, `News`, and `Fundamentals` analysts.
    - Analysts now consume exclusively from `FactLedger`.
    - Eliminated "Tool Use Loop" latency and potential for agents to fetch divergent data.
- **Graph Wiring**: Refactored `setup.py` to route `START` -> `Data Registrar` -> `Market Analyst` -> Parallel Fan-Out.
2026-01-15 11:02:35 -06:00
..
__init__.py WIP 2025-09-26 16:17:50 +08:00
alpaca.py 2026-01-15 (Phase 1: The Foundation) 2026-01-15 11:02:35 -06:00
alpha_vantage.py **Global Market News**: Implemented `get_global_market_news` in Alpha Vantage module to support generic market news (topics: economy_macro, financial_markets), fixing the lack of a primary vendor for global news. 2026-01-10 12:45:04 -06:00
alpha_vantage_common.py 2026-01-15 (Phase 1: The Foundation) 2026-01-15 11:02:35 -06:00
alpha_vantage_fundamentals.py Add Alpha Vantage API integration as primary data provider 2025-09-26 22:57:50 +08:00
alpha_vantage_indicator.py Improve Alpha Vantage indicator column parsing with robust mapping 2025-09-26 23:36:36 +08:00
alpha_vantage_news.py - **Insider Veto Protocol (Rule B)**: Hard-coded safety gate in `trading_graph.py` that blocks ALL buy signals if Net Insider Selling exceeds $50M while the stock is in a technical downtrend (Price < 50 SMA). This prevents "Falling Knife" catches. 2026-01-13 05:27:24 -06:00
alpha_vantage_stock.py Add Alpha Vantage API integration as primary data provider 2025-09-26 22:57:50 +08:00
config.py chore(release): v0.1.0 – initial public release of TradingAgents 2025-06-05 04:27:57 -07:00
google.py - **Standalone HTML Reports**: Refactored report generation to perform server-side Markdown-to-HTML rendering using Python. 2026-01-14 05:58:33 -06:00
googlenews_utils.py 2026-01-15 (Phase 1: The Foundation) 2026-01-15 11:02:35 -06:00
interface.py - **Standalone HTML Reports**: Refactored report generation to perform server-side Markdown-to-HTML rendering using Python. 2026-01-14 05:58:33 -06:00
local.py ### Changed 2026-01-14 20:11:06 -06:00
notifications.py **Parallel Architecture (AsyncIO)**: Refactored `setup.py` to implement a "Fan-Out / Fan-In" pattern using LangGraph. 2026-01-14 07:29:12 -06:00
openai.py WIP 2025-09-26 16:17:50 +08:00
rag_isolator.py The **TradingAgents** system is a risk-managed, LLM-driven trading engine designed to execute trades based on validated truth, not hallucinations. It connects hierarchical LLM agents with deterministic safety gates to ensure that every trade is architecturally sound, factually correct, and risk-compliant. 2026-01-09 19:28:49 -06:00
reddit_utils.py ### Changed 2026-01-14 20:11:06 -06:00
stockstats_utils.py Add Alpha Vantage API integration as primary data provider 2025-09-26 22:57:50 +08:00
utils.py chore(release): v0.1.0 – initial public release of TradingAgents 2025-06-05 04:27:57 -07:00
y_finance.py - **Insider Veto Protocol (Rule B)**: Hard-coded safety gate in `trading_graph.py` that blocks ALL buy signals if Net Insider Selling exceeds $50M while the stock is in a technical downtrend (Price < 50 SMA). This prevents "Falling Knife" catches. 2026-01-13 05:27:24 -06:00
yfin_utils.py chore(release): v0.1.0 – initial public release of TradingAgents 2025-06-05 04:27:57 -07:00