TradingAgents/CHANGELOG.md

8.0 KiB

Changelog

All notable changes to TradingAgents will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Added

  • pytest conftest.py hierarchy for organized test fixtures (Issue #49)
    • Root-level conftest.py with shared fixtures (environment variables, LangChain/ChromaDB mocking, configuration)
    • Unit-level conftest.py with data vendor mocking (akshare, yfinance, sample DataFrames)
    • Integration-level conftest.py with live ChromaDB and temporary directory fixtures
    • Fixture scope management (function, session, module) for test isolation and performance
    • Comprehensive docstrings for all fixtures with usage examples and scope documentation
    • pytest.ini configuration with custom markers (unit, integration, e2e, llm, chromadb, slow, requires_api_key)
    • Test suite validating fixture accessibility across test directories file:tests/test_conftest_hierarchy.py
    • Updated testing documentation with conftest.py hierarchy section file:docs/testing/README.md
    • Fixture usage examples in writing-tests.md file:docs/testing/writing-tests.md
  • Comprehensive documentation structure (Issue #52)
    • Organized docs/ directory with structured documentation sections
    • Quick start guide at docs/QUICKSTART.md
    • Architecture documentation in docs/architecture/ (multi-agent-system, data-flow, llm-integration)
    • API reference documentation in docs/api/ (trading-graph, agents, dataflows)
    • Developer guides in docs/guides/ (adding-new-analyst, adding-llm-provider, adding-data-vendor, configuration)
    • Testing documentation in docs/testing/ (README, running-tests, writing-tests)
    • Development setup guide in docs/development/
    • Central documentation index at docs/README.md with navigation and key concepts
    • Updated PROJECT.md DOCUMENTATION MAP section to reference new docs/ structure
    • Added Documentation section to README.md with links to key guides
  • Export reports to file with metadata (Issue #21)
  • Rate limit error handling for LLM APIs (Issue #39)
  • AKShare data vendor integration for US and Chinese stock market data (Issue #16)
  • OpenRouter API provider support for unified access to multiple LLM models
    • Support for provider/model-name format (e.g., anthropic/claude-sonnet-4.5)
    • Proper API key handling with OPENROUTER_API_KEY environment variable
    • Custom headers for OpenRouter attribution (HTTP-Referer, X-Title)
    • Embedding fallback to OpenAI when using OpenRouter (since OpenRouter lacks embeddings)
    • Comprehensive test suite for OpenRouter provider integration file:tests/test_openrouter.py
  • Expanded .env.example with all supported LLM provider API keys
  • Detailed LLM Provider Options section in README.md with examples for:
    • OpenAI (default)
    • Anthropic
    • OpenRouter (new)
    • Google Generative AI
    • Ollama (local)
  • OpenRouter configuration example in Python usage section
  • Documentation updates in PROJECT.md for OpenRouter support

Changed

Fixed

  • ChromaDB collection persistence issue by using get_or_create_collection() instead of create_collection() to prevent "collection already exists" errors and enable persistent memory across application restarts file:tradingagents/agents/utils/memory.py:29 (Issue #30)
  • Improved error messages for missing OPENROUTER_API_KEY when using openrouter provider
  • Better embedding client initialization for different LLM providers

[1.0.0] - 2025-01-01 (Example - Update with actual release date)

Added

  • Initial multi-agent trading framework release
  • Support for multiple LLM providers
  • Analyst team (fundamental, sentiment, news, technical)
  • Researcher debate mechanism
  • Risk management workflow
  • CLI interface
  • Integration with financial data APIs