89 Commits
Author SHA1 Message Date
Yijia-Xiao f802271fb3 release: 0.7.0 2026-10-16 21:13:16 +00:00
Yijia-Xiao bc55fe3ed7 docs: ChatGPT plan sign-in and the start-up update check (#1475)
- README and .env.example cover the chatgpt provider, `tradingagents login chatgpt` (also in Docker) and logout
- README and .env.example name TRADINGAGENTS_NO_UPDATE_CHECK
2026-10-16 21:13:04 +00:00
Yijia-Xiao f5e3eae3a8 fix(memory): score a decision from the first close after its date (#1518)
- settlement enters at the first session after the decision date, so news published after that day's close is not scored against the same day's close
2026-10-16 21:12:51 +00:00
Yijia-Xiao ff0d0b1b4d release: 0.6.0 2026-10-03 21:27:43 +00:00
Yijia-Xiao dca93d5290 docs: show the Tauric Research logo from the SVG the report uses 2026-10-03 21:27:43 +00:00
Yijia-Xiao 56a98d9df7 feat(reports): save the report as one HTML page as well (#1419)
- a saved report also includes complete_report.html: the report as one self-contained page with its sections listed beside the text, readable in a browser, on a phone and in print
- answering the save question at the prompt also asks about the page and offers to open it in a local browser window; --no-html and save_reports(..., html=False) skip it
- the Tauric Research logo leads the header at the top left, and a line at the foot credits TradingAgents and Tauric Research
- the page loads nothing and runs nothing (inline styles, a content-security policy); report text is rendered without raw HTML or images
- markdown-it-py is declared as a dependency
2026-10-03 21:27:43 +00:00
Yijia-Xiao cc39a35c42 feat(llm): let each model tier run on its own provider (#1440)
- quick_think_provider / deep_think_provider and their backend URLs (with TRADINGAGENTS_* variables) choose a tier's provider; unset, a tier uses llm_provider and backend_url
- a tier on another provider gets that provider's own settings and endpoint, and the run settings and report header name each tier's provider
- the CLI checks each tier provider's model variable and key before the run
2026-10-03 21:27:43 +00:00
Yijia-Xiao f65fcabb60 feat(graph): settle past decisions alongside the analysts (#1428)
- a Memory Log step runs beside the analysts, settles every ticker's due decisions and loads the lessons known by the trade date for the Portfolio Manager; the run no longer settles before it starts
- a settlement failure is logged and noted in the report's header instead of ending the run
- the checkpoint signature records the new layout
2026-10-03 21:27:43 +00:00
Yijia-Xiao 5d8de36f6d feat(memory): settle the pending decisions of every ticker on request (#1445)
- TradingAgentsGraph.settle_all_pending() settles each ticker with a due decision; settle_pending and it return the decisions settled and those that failed
2026-10-03 21:27:43 +00:00
Yijia-Xiao b838e257ee fix(sentiment): send Jev requests to the endpoint TYPESAFE_BASE_URL names (#1416)
- post screening reads TypeSafe's own TYPESAFE_BASE_URL and appends /v1/systemone, as the TypeSafe SDKs do, so Jev can be reached through OpenRouter; the key still turns screening on
2026-10-03 21:27:43 +00:00
Yijia-Xiao 4b7d39856b docs: TradingAgents v0.5.2 release 2026-09-29 06:10:24 +00:00
Yijia-Xiao 23536f545a release: 0.5.2 2026-09-29 05:57:18 +00:00
Yijia-Xiao 7d38885e81 build: require Python 3.11 and pandas 3
- requires-python 3.11 and pandas 3.0.6; the CI matrix runs Python 3.11 to 3.14 and ruff targets 3.11
- datetime.UTC in place of timezone.utc, and the rating, action, band, analyst and asset enums are StrEnum, which formats a member as its value
2026-09-29 05:57:18 +00:00
Yijia-Xiao da6b35f22f fix(dataflows): withhold insider trades with no filing date from a past run
- Yahoo and Alpha Vantage date a trade by when it happened, not by its Form 4 filing, so a run dated in the past is told they are withheld instead of served trades that may not yet have been public
2026-09-29 05:57:18 +00:00
Yijia-Xiao bd9693f8ba docs: write the provider key notes without em-dashes 2026-09-29 05:57:18 +00:00
Yijia-Xiao d7ac9461da fix(dataflows): serve a past run financial statements only with a known filing date
- Yahoo and Alpha Vantage statements, dated by the period they cover, are withheld from a run dated in the past, with a notice saying why
- statements come from SEC EDGAR by default (fundamental_data "sec_edgar,yfinance"), so a past run reads US filers as filed
2026-09-29 05:57:18 +00:00
Yijia-Xiao 0f05689334 docs: show a current Claude model ID in the Bedrock example 2026-09-29 05:57:18 +00:00
Yijia-Xiao 76a93480dd build: run the Docker image on Python 3.13, and set up with it in the README 2026-09-29 05:57:18 +00:00
Yijia-Xiao c540c00778 docs: show save_reports in the Python example 2026-09-29 05:57:17 +00:00
Yijia-Xiao 9968bd8dd1 feat(graph): run the analysts at the same time (#1255)
- each analyst is a graph of its own (model and tools on a private message history) that returns only its report; all start together and the research debate waits for every report
- the message-clearing nodes are gone; a checkpoint saved by the sequential layout starts fresh
- TradingAgentsGraph.stream_run streams the analysts' messages for debug mode and the CLI, whose status and timing now track the analysts side by side
2026-09-25 06:35:54 +00:00
Yijia-Xiao 0c602846ba feat(cli): run an analysis without questions from flags (#1127, #1133)
- --ticker, --date and --analysts answer their steps, checked as the prompts check them; --save/--no-save and --show/--no-show answer the questions after the run
- with no terminal, the run stops before it starts and names every flag or TRADINGAGENTS_* variable still needed; a missing API key and an announcement no longer wait for input
- README shows an unattended run
2026-09-24 20:42:51 +00:00
Yijia-Xiao 45391d0962 feat(docker): keep results in a host folder when TRADINGAGENTS_DATA_DIR is set (#865)
- both compose services mount ${TRADINGAGENTS_DATA_DIR:-tradingagents_data}; unset keeps the named volume
- README and .env.example show the setting
2026-09-24 19:38:41 +00:00
Yijia-Xiao 5ac5786d0d docs: call it the memory log throughout
- docstrings, comments, messages and the README section use "memory log", matching TradingMemoryLog and memory_log_path
- the write, read and settle paths are named for what they do, not by design phase
2026-09-24 19:38:41 +00:00
Yijia-Xiao 25c751346e docs: move the changelog link below the latest news 2026-09-24 07:47:51 +00:00
Yijia-Xiao f692949f14 docs: TradingAgents v0.5.1 release 2026-09-24 07:20:06 +00:00
Yijia-Xiao e1a5f20480 release: 0.5.1 2026-09-24 05:04:30 +00:00
Yijia-Xiao 24c38602e5 docs: document Jev post screening (#1376) 2026-09-24 05:00:36 +00:00
Yijia-Xiao f281feb483 feat(models): add GPT-6 Sol and Luna and Claude Opus 5.5
- gpt-6-sol and gpt-6-luna are the new default deep and quick models
- claude-opus-5-5 replaces claude-opus-5 in the picker; opus-5 and gpt-5.4-mini stay known as legacy IDs
2026-09-24 05:00:36 +00:00
Yijia-Xiao dcbff5ea42 feat(backtest): summarize a backtest result, or a decision log by its path
- callers no longer construct TradingMemoryLog to score a run; README and CLI pass the result
2026-09-24 05:00:36 +00:00
Yijia-Xiao 7fe2252244 release: 0.5.0
- point-in-time integrity across every dated path, and a vendor failure reported as a vendor failure
- SEC EDGAR fundamentals served as filed
- backtesting over a ticker and date grid, and the caller's portfolio as run input
- current model lineups across every provider
2026-09-18 05:42:23 +00:00
Yijia-Xiao 8bde10cf44 docs: correct the claims that no longer match the code
- the custom model option does not exist for every provider; name any model ID instead
- alpha is measured against the regional benchmark, not always SPY
- the environment overrides a fixed set of config keys
- list the providers the picker offers, and the macro data key
- drop the example call to a method that was removed
2026-09-17 23:44:14 +00:00
Yijia-Xiao 13b35e8aeb docs: state the behaviour without the worked examples 2026-09-17 07:31:44 +00:00
Yijia-Xiao 3244a568ed docs: document fundamentals as filed 2026-09-17 02:37:15 +00:00
Yijia-Xiao c4152d6946 docs: note the backtest command and remembered selections 2026-09-16 21:45:08 +00:00
Yijia-Xiao 63738c8f2c docs: drop the analyze subcommand from the CLI examples 2026-09-16 20:19:49 +00:00
Yijia-Xiao 7bf2117491 docs: document the portfolio input and decision evaluation 2026-09-16 20:19:49 +00:00
Yijia-Xiao ef52d4452b docs: add uv install and Docker rebuild notes (#1173, #1297)
- uv alternative to conda and pip
- rebuild the Docker image after updating
2026-09-15 01:33:48 +00:00
Yijia-Xiao b9666f6e09 docs: use a current date in the usage examples 2026-09-14 22:38:19 +00:00
Yijia-Xiao c95f83dfaf chore: release v0.4.0
- look-ahead / point-in-time fixes across FRED macro, social sentiment, and the
  decision-log memory; clearer decision signals; CLI checkpoint resume; Trader
  price grounding
- GPT-5.6 / GLM-5.3 models
2026-08-31 03:02:39 +00:00
Yijia-Xiao a33fd4c0f1 docs: streamline README header 2026-07-18 15:55:04 +00:00
Yijia-Xiao 7bbe33ab1d docs: add trending badge 2026-07-18 15:23:59 +00:00
Yijia-Xiao 01477f9afb chore: release v0.3.1
- correctness/stability patch: look-ahead filter, router crash-safety, checkpoint
  identity, crypto sentiment sources, configurable retries, Bedrock API-key auth
- adds Claude Sonnet 5 / Fable 5 support
2026-07-05 14:29:07 +00:00
Yijia-Xiao 85946c2f60 chore: release v0.3.0
- CI gate, unified verified data-access contract, provider and data-vendor registry
- env-over-CLI config precedence, current-generation model catalog
- programmatic report output, plus sweep fixes for data and structured output
2026-06-22 02:05:07 +00:00
Yijia-Xiao cbd17ac3e0 docs: drop retired model IDs from the reproducibility note and smoke script
The README reproducibility example named gpt-4.1 and the structured-output smoke
script listed gemini-2.5-flash / deepseek-chat / qwen-plus / grok-4 — all retired
from the catalog. Generalize the note and refresh the smoke defaults.
2026-06-21 23:50:33 +00:00
Yijia-Xiao 03600f3121 chore(models): refresh the model catalog to current provider lineups
Verified each provider's hard-coded list against current official docs:
- MiniMax: add MiniMax-M3 (1M ctx, multimodal) as the default; keep M2.7 line.
- Qwen: use the live qwen{3.7,3.6}-{plus,max} IDs.
- GLM: add glm-5.2 as the latest flagship.
- xAI: drop deprecated grok-4-fast-* / grok-4-0709 builds.
- DeepSeek: migrate to deepseek-v4-pro / deepseek-v4-flash (the chat/reasoner
  aliases are deprecated 2026-07-24 and now map to V4 Flash).
OpenAI, Anthropic, and Gemini were already current and are unchanged.
2026-06-14 17:03:17 +00:00
Yijia-Xiao 895ed130f9 feat(llm): add Amazon Bedrock as a first-class provider
Bedrock uses the Converse API (langchain-aws) and the AWS credential chain, so
it has its own client like Anthropic/Google rather than the OpenAI-compatible
registry. langchain-aws is an optional dependency (pip install ".[bedrock]"),
lazy-imported with a clear install hint; importing the package never requires
it. The model name is a Bedrock model ID / inference profile ID.
2026-06-14 04:24:54 +00:00
Yijia-Xiao 295e84cd54 feat(llm): add NVIDIA NIM, Kimi, Groq, and Mistral providers
Each is a one-row entry in the OpenAI-compatible provider registry (base_url,
key env, CLI option); the model is user-specified since they serve many models.
2026-06-14 04:13:39 +00:00
Yijia-Xiao 20d3b0782f feat(llm): unify OpenAI-compatible providers behind a registry + generic endpoint
The OpenAI-compatible family (openai, xAI, DeepSeek, Qwen, GLM, MiniMax,
OpenRouter, Ollama) all speak the same Chat Completions API and differ only by
base_url, key, and two narrow wire-format quirks already isolated in subclasses.
Replace the scattered base-URL dict, key handling, and client-class branches with
one ProviderSpec registry that get_llm and the factory drive off; provider quirks
stay in their subclasses. Add a generic "openai_compatible" provider for any
OpenAI-compatible server (vLLM, LM Studio, llama.cpp, relays) via backend_url +
optional key — adding a provider is now one registry row. Native Anthropic/Google
keep their own clients (genuinely different APIs). Also fixes the env backend URL
being ignored when the provider was chosen interactively (#978).
2026-06-14 03:22:24 +00:00
Yijia-Xiao 2a58c2208f ci: add test/lint/smoke workflow, declare python-dotenv, recommend Python 3.12
GitHub Actions: pytest across Python 3.10-3.13, a clean-install import smoke
that catches undeclared runtime deps, and a strict Ruff gate (standard rule set)
scoped to the files each PR changes. Declares python-dotenv (imported by the CLI
but previously undeclared) and adds a [dev] extra. Recommends Python 3.12 for
setup, verified from a clean isolated install.
2026-06-13 20:29:24 +00:00
Yijia-XiaoandClaude Opus 4.8 04f434e86d chore: README housekeeping and remove stale TODO
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-01 02:02:47 +00:00