Yijia-Xiao
872b063e69
fix: use explicit encoding="utf-8" for all file I/O so Windows users avoid cp1252 crashes ( #543 , #550 , #576 )
2026-04-25 07:25:32 +00:00
Yijia-Xiao
fa4d01c23a
fix: process all chunk messages for tool call logging, harden memory score normalization ( #534 , #531 )
2026-04-13 07:21:33 +00:00
Yijia-Xiao
b0f6058299
feat: add DeepSeek, Qwen, GLM, and Azure OpenAI provider support
2026-04-13 07:12:07 +00:00
Yijia-Xiao
59d6b2152d
fix: use ~/.tradingagents/ for cache and logs, resolving Docker permission issue ( #519 )
2026-04-13 05:26:04 +00:00
Yijia-Xiao
10c136f49c
feat: add Docker support for cross-platform deployment
2026-04-04 08:14:01 +00:00
Yijia-Xiao
4f965bf46a
feat: dynamic OpenRouter model selection with search ( #482 , #337 )
2026-04-04 07:56:44 +00:00
Yijia-Xiao
bdb9c29d44
refactor: remove stale imports, use configurable results path ( #499 )
2026-04-04 07:35:35 +00:00
Yijia-Xiao
bdc5fc62d3
chore: bump langchain-google-genai minimum to 4.0.0 for thought signature support
2026-04-04 07:28:03 +00:00
Yijia-Xiao
78fb66aed1
fix: normalize indicator names to lowercase ( #490 )
2026-04-04 07:23:31 +00:00
Yijia-Xiao
7269f877c1
fix: portfolio manager reads trader's proposal and research plan ( #503 )
2026-04-04 07:22:01 +00:00
Yijia-Xiao
28d5cc661f
fix: add missing pandas import in y_finance.py ( #488 )
2026-04-04 07:14:10 +00:00
Yijia-Xiao
7004dfe554
fix: remove hardcoded Google endpoint that caused 404 ( #493 , #496 )
2026-04-04 07:07:53 +00:00
Yijia-Xiao
4641c03340
TradingAgents v0.2.3
2026-03-29 19:50:46 +00:00
Yijia-Xiao
e75d17bc51
chore: update model lists and defaults to GPT-5.4 family
2026-03-29 19:45:36 +00:00
Yijia-Xiao
6cddd26d6e
feat: multi-language output support for analyst reports and final decision ( #472 )
2026-03-29 19:19:01 +00:00
Yijia-Xiao
58e99421bd
fix: pass base_url to Google and Anthropic clients for proxy support ( #427 )
2026-03-29 17:59:52 +00:00
Yijia-Xiao
ae8c8aebe8
fix: gracefully handle invalid indicator names in tool calls ( #429 )
2026-03-29 17:50:30 +00:00
Yijia-Xiao
f3f58bdbdc
fix: add yf_retry to yfinance news fetchers ( #445 )
2026-03-29 17:42:24 +00:00
Yijia-Xiao
e1113880a1
fix: prevent look-ahead bias in backtesting data fetchers ( #475 )
2026-03-29 17:34:35 +00:00
Yijia-Xiao
589b351f2a
TradingAgents v0.2.2
2026-03-22 23:47:56 +00:00
Yijia-Xiao
6c9c9ce1fd
fix: set process-level UTF-8 default for cross-platform consistency
2026-03-22 23:42:37 +00:00
Yijia-Xiao
b8b2825783
refactor: standardize portfolio manager, five-tier rating scale, fix analyst status tracking
2026-03-22 23:30:29 +00:00
Yijia-Xiao
318adda0c6
refactor: five-tier rating scale and streamlined agent prompts
2026-03-22 23:07:20 +00:00
Yijia-Xiao
7cca9c924e
fix: add exponential backoff retry for yfinance rate limits ( #426 )
2026-03-22 22:11:08 +00:00
Yijia-Xiao
bd9b1e5efa
feat: add Anthropic effort level support for Claude models
...
Add effort parameter (high/medium/low) for Claude 4.5+ and 4.6 models,
consistent with OpenAI reasoning_effort and Google thinking_level.
Also add content normalization for Anthropic responses.
2026-03-22 21:57:05 +00:00
Yijia-Xiao
77755f0431
chore: consolidate install, fix CLI portability, normalize LLM responses
...
- Point requirements.txt to pyproject.toml as single source of truth
- Resolve welcome.txt path relative to module for CLI portability
- Include cli/static files in package build
- Extract shared normalize_content for OpenAI Responses API and
Gemini 3 list-format responses into base_client.py
- Update README install and CLI usage instructions
2026-03-22 21:38:01 +00:00
Yijia-Xiao
0b13145dc0
fix: handle list content when writing report sections
...
Closes #400
2026-03-22 20:40:18 +00:00
Yijia-Xiao
3ff28f3559
fix: use OpenAI Responses API for native models
...
Enable use_responses_api for native OpenAI provider, which supports
reasoning_effort with function tools across all model families.
Removes the UnifiedChatOpenAI subclass workaround.
Closes #403
2026-03-22 20:34:03 +00:00
Yijia-Xiao
b19c5c18fb
docs: add v0.2.1 release note to README
2026-03-15 23:39:05 +00:00
Yijia-Xiao
551fd7f074
chore: update model lists, bump to v0.2.1, fix package build
...
- OpenAI: add GPT-5.4, GPT-5.4 Pro; remove o-series and legacy GPT-4o
- Anthropic: add Claude Opus 4.6, Sonnet 4.6; remove legacy 4.1/4.0/3.x
- Google: add Gemini 3.1 Pro, 3.1 Flash Lite; remove deprecated
gemini-3-pro-preview and Gemini 2.0 series
- xAI: clean up model list to match current API
- Simplify UnifiedChatOpenAI GPT-5 temperature handling
- Add missing tradingagents/__init__.py (fixes pip install building)
2026-03-15 23:34:50 +00:00
Yijia-Xiao
b0f9d180f9
fix: harden stock data parsing against malformed CSV and NaN values
...
Add _clean_dataframe() to normalize stock DataFrames before stockstats:
coerce invalid dates/prices, drop rows missing Close, fill price gaps.
Also add on_bad_lines="skip" to all cached CSV reads.
2026-03-15 18:29:43 +00:00
Yijia-Xiao
9cc283ac22
fix: add missing console import to cli/utils.py
...
Seven error-handling paths used console.print() but console was never
imported, causing NameError on invalid user input.
2026-03-15 18:21:05 +00:00
Yijia-Xiao
fe9c8d5d31
fix: handle comma-separated indicators in get_indicators tool
...
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.
2026-03-15 18:05:36 +00:00
Yijia-Xiao
eec6ca4b53
fix: initialize all debate state fields in propagation.py
...
InvestDebateState was missing bull_history, bear_history, judge_decision.
RiskDebateState was missing aggressive_history, conservative_history,
neutral_history, latest_speaker, judge_decision. This caused KeyError
in _log_state() and reflection, especially with edge-case config values.
2026-03-15 17:54:32 +00:00
Yijia-Xiao
3642f5917c
fix: add explicit UTF-8 encoding to all file open() calls
...
Prevents UnicodeEncodeError on Windows where the default encoding
(cp1252/gbk) cannot handle Unicode characters in LLM output.
Closes #77 , closes #114 , closes #126 , closes #215 , closes #332
2026-03-15 16:44:23 +00:00
Yijia-Xiao
8a60662070
chore: remove unused chainlit dependency (CVE-2026-22218)
2026-03-15 16:16:42 +00:00
Yijia Xiao
5fec171a1e
chore: add build-system config and update version to 0.2.0
2026-02-07 08:26:51 +00:00
Yijia Xiao
50c82a25b5
chore: consolidate dependencies to pyproject.toml, remove setup.py
2026-02-07 08:18:46 +00:00
Yijia Xiao
b4b133eb2d
fix: add typer dependency
2026-02-04 00:39:15 +00:00
Yijia Xiao
80aab35119
docs: update README for v0.2.0 release
...
- TradingAgents v0.2.0 release
- Trading-R1 announcement
- Multi-provider LLM documentation
2026-02-04 00:13:10 +00:00
Yijia Xiao
393d4c6a1b
chore: add data_cache to .gitignore
2026-02-03 23:30:55 +00:00
Yijia Xiao
aba1880c8c
chore: update .gitignore to official Python template
2026-02-03 23:16:38 +00:00
Yijia Xiao
6cd35179fa
chore: clean up dependencies and fix Ollama auth
...
- Remove unused packages: praw, feedparser, eodhd, akshare, tushare, finnhub
- Fix Ollama requiring API key
2026-02-03 23:08:12 +00:00
Yijia Xiao
102b026d23
refactor: clean up codebase and streamline documentation
...
- Remove debug prints from vendor routing (interface.py)
- Simplify vendor fallback to only handle rate limits
- Reorder CLI provider menu: OpenAI, Google, Anthropic, xAI, OpenRouter, Ollama
- Remove dead files: local.py, reddit_utils.py, openai.py, google.py, googlenews_utils.py, yfin_utils.py
2026-02-03 22:27:20 +00:00
Yijia Xiao
224941d8c2
feat: add post-analysis report saving and fix display truncation
...
- Add save prompt after analysis with organized subfolder structure
- Fix report truncation by using sequential panels instead of Columns
- Add optional full report display prompt
2026-02-03 22:27:20 +00:00
Yijia Xiao
93b87d5119
fix: analyst status tracking and message deduplication
...
- Add update_analyst_statuses() for unified status logic (pending/in_progress/completed)
- Normalize analyst selection to predefined ANALYST_ORDER for consistent execution
- Add message deduplication to prevent duplicates from stream_mode=values
- Restructure streaming loop so state handlers run on every chunk
2026-02-03 22:27:20 +00:00
Yijia Xiao
54cdb146d0
feat: add footer statistics tracking with LangChain callbacks
...
- Add StatsCallbackHandler for tracking LLM calls, tool calls, and tokens
- Integrate callbacks into TradingAgentsGraph and all LLM clients
- Dynamic agent/report counts based on selected analysts
- Fix report completion counting (tied to agent completion)
2026-02-03 22:27:20 +00:00
Yijia Xiao
b06936f420
fix: improve data vendor implementations and tool signatures
...
- Add get_global_news for Alpha Vantage
- Fix get_insider_transactions signature (remove unused curr_date param)
- Remove unnecessary default params from API calls (sort, limit, tab)
2026-02-03 22:27:20 +00:00
Yijia Xiao
b75940e901
feat: add announcements panel fetching from api.tauric.ai/v1/announcements
2026-02-03 22:27:20 +00:00
Yijia Xiao
3d040f8da4
feat: add yfinance support to accommodate community request for stability and quota
2026-02-03 22:27:20 +00:00
Yijia Xiao
50961b2477
refactor: rename risky/safe agents to aggressive/conservative
2026-02-03 22:27:20 +00:00
Yijia Xiao
a3761bdd66
feat: update Ollama and OpenRouter model options
...
- Ollama: Add Qwen3 (8B), GPT-OSS (20B), GLM-4.7-Flash (30B)
- OpenRouter: Add NVIDIA Nemotron 3 Nano, Z.AI GLM 4.5 Air
- Add explicit Ollama provider handling in OpenAI client for consistency
2026-02-03 22:27:20 +00:00
Yijia Xiao
d4dadb82fc
feat: add multi-provider LLM support with thinking configurations
...
Models added:
- OpenAI: GPT-5.2, GPT-5.1, GPT-5, GPT-5 Mini, GPT-5 Nano, GPT-4.1
- Anthropic: Claude Opus 4.5/4.1, Claude Sonnet 4.5/4, Claude Haiku 4.5
- Google: Gemini 3 Pro/Flash, Gemini 2.5 Flash/Flash Lite
- xAI: Grok 4, Grok 4.1 Fast (Reasoning/Non-Reasoning)
Configs updated:
- Add unified thinking_level for Gemini (maps to thinking_level for Gemini 3,
thinking_budget for Gemini 2.5; handles Pro's lack of "minimal" support)
- Add OpenAI reasoning_effort configuration
- Add NormalizedChatGoogleGenerativeAI for consistent response handling
Fixes:
- Fix Bull/Bear researcher display truncation
- Replace ChromaDB with BM25 for memory retrieval
2026-02-03 22:27:20 +00:00
Yijia Xiao
79051580b8
feat: add multi-provider LLM support with factory pattern
...
- Add tradingagents/llm_clients/ with unified factory pattern
- Support OpenAI, Anthropic, Google, xAI, OpenRouter, Ollama, vLLM
- Replace direct LLM imports in trading_graph.py with create_llm_client()
- Handle provider-specific params (reasoning_effort, thinking_config)
2026-02-03 22:27:20 +00:00
Yijia-Xiao
0013415378
Add star history
2025-06-09 15:14:41 -07:00
Yijia-Xiao
47176ba8a2
chore(release): v0.1.1 – TradingAgents cleaned release
2025-06-07 12:17:58 -07:00
Yijia-Xiao
cc97cb6d5d
chore(release): v0.1.0 – initial public release of TradingAgents
2025-06-05 04:27:57 -07:00
Yijia-Xiao
635e91ac75
Schema upload
2025-02-02 12:53:37 -08:00
Yijia-Xiao
af6f916ffd
Reference
2025-01-23 17:17:32 -08:00
Yijia-Xiao
1f55a4d229
Update index.html
2025-01-20 22:13:50 -08:00
Yijia-Xiao
6945ab30cf
Update index.html
2025-01-20 22:09:22 -08:00
Yijia-Xiao
ee0502bf86
Update index.html
2025-01-20 21:36:27 -08:00
Yijia-Xiao
413d9ecbcf
Paper and Code links
2024-12-31 11:58:35 +08:00
Yijia-Xiao
c252bbb155
Brief
2024-12-29 15:04:43 +08:00
Yijia-Xiao
c850ddf1a7
Brief version
2024-12-29 15:00:27 +08:00
Yijia-Xiao
0ef7b46579
Results
2024-12-28 13:41:45 +08:00
Yijia-Xiao
21890ac942
Results
2024-12-28 13:35:10 +08:00
Yijia-Xiao
1920757ed9
Layout
2024-12-28 13:06:03 +08:00
Yijia-Xiao
fac7eca73f
Layout
2024-12-28 12:51:51 +08:00
Yijia-Xiao
2e8a02e874
Layout
2024-12-28 12:35:29 +08:00
Yijia-Xiao
8b7b5b9c78
Layout
2024-12-28 12:28:02 +08:00
Yijia-Xiao
db9f63fa54
Citations
2024-12-28 11:56:38 +08:00
Yijia-Xiao
a70ca6e1a1
Figures
2024-12-28 11:47:36 +08:00
Yijia-Xiao
c2fa046a9b
TradingAgents-AI
2024-12-28 11:32:06 +08:00