
随着人工智能技术的飞速发展,其在金融领域的应用愈发广泛。金融交易决策作为金融领域的重要环节,正逐渐被AI技术所改变。今天,我们将深入探讨一个开源项目——TradingAgents-CN,这是一个专为中文用户设计的多智能体金融交易决策框架。

一、项目概述
TradingAgents-CN是一个基于多智能体大语言模型(LLM)的中文金融交易决策框架,它在TauricResearch/TradingAgents的基础上进行了深度开发和本地化优化。该项目通过模拟真实交易公司的专业分工和协作决策流程,利用多个专业化AI智能体协作评估市场条件,为用户提供全面的金融交易决策支持。
它支持多种大语言模型,包括阿里百炼、Google AI、OpenAI和Anthropic等,并且针对A股、港股等中国金融市场进行了优化,整合了Tushare、AkShare等中文金融数据。TradingAgents-CN不仅提供了现代化的Web界面,还支持多格式报告导出,具备高性能、高可用性和易用性等特点。
二、技术原理
(一)角色专业化与分工
TradingAgents-CN采用多智能体系统架构,将复杂的交易任务分解为多个子任务,并为每个LLM智能体分配清晰、明确的角色和具体目标。
例如,分析师团队包括基本面分析师、技术分析师、新闻分析师和社交媒体分析师,分别负责从不同维度对市场进行分析;研究员团队则由看涨研究员和看跌研究员组成,通过结构化辩论提供深度市场洞察。
(二)多智能体协作机制
该框架模拟现实世界交易公司的组织结构和协作流程,各智能体之间通过信息共享、辩论和反馈,实现对市场信息的综合分析和决策的优化。
例如,基本面分析师和新闻分析师可以共享信息,帮助交易员智能体更好地理解市场动态;看涨研究员和看跌研究员之间的辩论则可以为交易决策提供更全面的视角。
(三)模型选择与应用
TradingAgents-CN根据不同任务的需求,选择合适的LLM模型进行处理。例如,使用快速思考模型(如gpt-4o-mini)进行数据检索和信息总结,使用深度思考模型(如gpt-4o)进行复杂推理和决策支持。这种灵活的模型选择机制可以根据不同的任务需求,优化性能和成本。
(四)LLM与自然语言处理
基于LLM强大的自然语言处理能力,TradingAgents-CN能够对文本数据进行深入理解和分析,提取关键信息和知识。智能体之间可以进行自然语言对话和辩论,向用户解释决策过程,使用户能够更好地理解交易决策的依据。
(五)结构化与非结构化数据融合
该框架将结构化数据(如财务报表、交易数据等)与非结构化数据(如新闻文章、社交媒体情绪等)相结合。通过LLM的分析和处理,挖掘数据之间的关联和潜在价值,为交易决策提供更丰富的信息支持。
(六)数据管道设计
TradingAgents-CN通过高效的数据管道设计,实现数据的获取、清洗、特征工程等流程。例如,原始数据从FinnHub API获取后,经过清洗和特征工程处理,最终汇入智能体知识共享池。这种设计不仅提高了数据处理的效率,还确保了数据的质量。
三、主要功能
(一)多智能体协作架构
-
分析师团队:包括基本面分析师、技术分析师、新闻分析师和社交媒体分析师,负责从不同维度对市场进行分析。
-
研究员团队:由看涨研究员和看跌研究员组成,进行结构化辩论,提供深度市场洞察。
-
交易员智能体:综合所有信息,做出最终的交易决策。
-
风险管理:对交易进行多层次的风险评估和管理,确保交易的安全性。
-
管理层:协调各团队工作,确保决策的质量和效率。
(二)多LLM模型支持
-
国产LLM集成:已完整支持阿里百炼(qwen-turbo, qwen-plus-latest, qwen-max)和Google AI(gemini-2.0-flash, gemini-1.5-pro, gemini-1.5-flash)。
-
国际LLM支持:支持OpenAI(GPT-4o, GPT-4o-mini, GPT-3.5-turbo)和Anthropic(Claude-3-Opus, Claude-3-Sonnet, Claude-3-Haiku)等模型。
(三)直观操作
-
现代化Web界面:基于Streamlit的现代化Web界面,用户无需命令行操作,通过浏览器即可使用。
-
实时进度显示:分析过程可视化,实时显示进度,避免用户等待焦虑。
-
智能配置:支持5级研究深度选择,从快速分析(2-4分钟)到全面分析(15-25分钟)。
-
结果展示:结构化显示投资建议、目标价位、置信度、风险评估等。
-
中文界面:完全中文化的用户界面和分析结果,降低中文用户的使用门槛。
(四)全面数据集成
-
A股数据支持:通过通达信API提供A股实时行情和历史数据。
-
美股数据支持:支持FinnHub、Yahoo Finance等数据源的实时行情。
-
新闻数据集成:整合Google News、财经新闻等,提供实时新闻数据。
-
社交数据支持:支持Reddit、Twitter等社交媒体情绪分析。
-
数据库支持:支持MongoDB数据持久化和Redis高速缓存,提升数据访问效率。
(五)并行处理与性能优化
-
多智能体并行分析:提高分析效率。
-
智能缓存:多层缓存策略,减少API调用成本。
-
实时分析:支持实时市场数据分析,快速响应市场变化。
-
灵活配置:高度可定制的智能体行为和模型选择,满足不同用户的需求。
-
成本控制:实时统计Token使用情况,帮助用户了解成本。提供不同配置下的成本估算,帮助用户优化使用成本。
四、应用场景
(一)个股分析
TradingAgents-CN可以对个股的基本面、情绪、新闻和技术指标等信息进行深入分析,制定买入、卖出或持有的交易策略。用户可以通过Web界面输入股票代码,选择分析深度,系统将自动完成分析并生成详细的报告。
(二)投资组合风险评估
该框架能够对投资组合或单个资产进行全面的风险评估,识别潜在风险因素,制定相应的风险控制措施。用户可以输入投资组合的资产信息,系统将综合分析市场动态、财务数据和新闻事件,生成风险评估报告。
(三)市场风险预警
TradingAgents-CN实时监测市场风险,及时发出预警信号,帮助投资者规避或降低投资损失。用户可以设置预警参数,系统将在市场出现异常波动时及时通知用户。
(四)市场趋势分析
该框架为金融机构和研究人员提供市场研究工具,深入分析市场趋势、行业动态和宏观经济因素。用户可以通过系统的历史数据分析功能,研究市场趋势,为投资决策提供理论支持。
(五)投资策略研究
通过多智能体的辩论和协作,TradingAgents-CN可以探索和研究新的投资策略,为投资决策提供理论支持。用户可以利用系统的智能体协作功能,进行投资策略的模拟和优化。
五、快速使用
TradingAgents-CN支持Docker部署和本地部署两种方式。推荐使用Docker部署,因为它可以快速启动,且环境隔离,适合生产环境。
(一)Docker部署
1. 克隆项目
git clone https://github.com/hsliuping/TradingAgents-CN.git
cd TradingAgents-CN
2. 配置环境变量
cp .env.example .env
# 编辑.env文件,填入API密钥
3. 构建并启动所有服务
docker-compose up -d --build
注意:首次运行会构建Docker镜像,需要5-10分钟。
4. 访问应用
– Web界面:`http://localhost:8501`
– 数据库管理:`http://localhost:8081`
– 缓存管理:`http://localhost:8082`
(二)本地部署
1. 环境要求
– Python 3.10+(推荐3.11)
– 4GB+ RAM(推荐8GB+)
– 稳定的网络连接
2. 安装步骤
# 克隆项目
git clone https://github.com/hsliuping/TradingAgents-CN.git
cd TradingAgents-CN
# 创建虚拟环境
python -m venv env
# Windows
env\Scripts\activate
# Linux/macOS
source env/bin/activate
# 安装所有依赖
pip install -r requirements.txt
3. 配置API密钥
# 复制配置模板
cp .env.example .env
# 编辑.env文件,配置以下必需的API密钥:
DASHSCOPE_API_KEY=your_dashscope_api_key_here
FINNHUB_API_KEY=your_finnhub_api_key_here
# 推荐:Tushare API(专业A股数据)
TUSHARE_TOKEN=your_tushare_token_here
TUSHARE_ENABLED=true
# 可选:其他AI模型API
GOOGLE_API_KEY=your_google_api_key_here
DEEPSEEK_API_KEY=your_deepseek_api_key_here
4. 启动应用
# 启动Web管理界面
streamlit run web/app.py
然后在浏览器中访问`http://localhost:8501`。
(三)代码调用(适合开发者)
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
# 配置阿里百炼
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "dashscope"
config["deep_think_llm"] = "qwen-plus" # 深度分析
config["quick_think_llm"] = "qwen-turbo" # 快速任务
# 创建交易智能体
ta = TradingAgentsGraph(debug=True, config=config)
# 分析股票 (以苹果公司为例)
state, decision = ta.propagate("AAPL", "2024-01-15")
# 输出分析结果
print(f"推荐动作: {decision['action']}")
print(f"置信度: {decision['confidence']:.1%}")
print(f"风险评分: {decision['risk_score']:.1%}")
print(f"推理过程: {decision['reasoning']}")
六、结语
TradingAgents-CN是一个功能强大、性能卓越的中文金融交易决策框架。它通过多智能体协作架构和多种LLM模型的支持,为用户提供全面、高效的金融交易决策支持。无论是个股分析、投资组合风险评估还是市场趋势研究,TradingAgents-CN都能满足用户的需求。此外,其现代化的Web界面和详细的中文文档体系,使得用户能够快速上手并深入学习。
GitHub仓库:https://github.com/hsliuping/TradingAgents-CN
(文:小兵的AI视界)