TradingAgents-CN智能交易系统部署指南
TradingAgents-CN是基于多智能体LLM技术构建的中文金融交易框架,通过模拟投资团队协作模式,为用户提供专业的AI驱动股票分析能力。该系统支持A股、港股、美股等主流市场,采用FastAPI+Vue 3技术架构,提供全中文操作界面与文档,满足不同用户的智能投资分析需求。本文档将通过"准备-实施-验证-优化"四阶段框架,帮助用户系统部署该智能交易系统。
一、准备环境资源
1.1 确认硬件配置
部署TradingAgents-CN系统前,需确保硬件满足以下要求:
- 处理器:最低双核CPU,推荐四核及以上
- 内存:至少4GB RAM,建议8GB以上
- 存储:20GB可用空间,推荐SSD以提升数据读写性能
- 网络:稳定的互联网连接,用于数据同步和系统更新
1.2 安装基础软件
系统运行依赖以下软件环境,需提前安装并配置:
| 软件 | 版本要求 | 作用 |
|---|---|---|
| MongoDB | 4.4+ | 核心数据存储 |
| Redis | 6.0+ | 缓存服务与任务队列 |
| Python | 3.8-3.11 | 后端服务运行环境 |
| Docker | 20.10+ | 容器化部署支持(可选) |
| Node.js | 14.0+ | 前端构建与运行环境 |
1.3 准备环境检查脚本
创建环境检查脚本check_environment.py,验证系统依赖是否满足:
import sys
import platform
import subprocess
def check_dependency(name, version_cmd, min_version):
try:
output = subprocess.check_output(version_cmd, shell=True, text=True)
version = output.strip().split()[-1]
if version >= min_version:
print(f"✓ {name} {version} (满足要求)")
return True
else:
print(f"✗ {name} {version} (需要至少 {min_version})")
return False
except:
print(f"✗ {name} 未安装")
return False
print("=== TradingAgents-CN 环境检查 ===")
check_dependency("Python", "python --version", "3.8")
check_dependency("MongoDB", "mongod --version | head -n1", "4.4")
check_dependency("Redis", "redis-server --version | head -n1", "6.0")
check_dependency("Node.js", "node --version", "14.0")
print("\n系统信息:")
print(f"操作系统: {platform.system()} {platform.release()}")
print(f"处理器: {platform.processor()}")
print(f"内存: {round(int(subprocess.check_output('free -m | grep Mem | awk \'{print $2}\'', shell=True))/1024, 1)}GB")
运行脚本检查环境:python check_environment.py
常见问题
Q: 检查脚本提示MongoDB未安装怎么办?
A: 参考MongoDB官方文档,根据操作系统选择合适的安装方式。Linux用户可使用包管理器,Windows用户可下载安装程序,确保服务已启动并设置开机自启。
Q: Python版本符合要求但仍提示依赖问题?
A: 可能存在多版本Python冲突,建议使用虚拟环境隔离项目依赖:python -m venv venv,激活后再安装依赖。
二、实施部署方案
2.1 获取项目代码
通过Git克隆项目仓库到本地:
# 克隆代码仓库
git clone https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN
cd TradingAgents-CN
2.2 选择部署模式
根据使用场景选择以下部署方案之一:
方案A:容器化部署(推荐)
容器化部署可确保环境一致性,简化安装流程:
# 构建并启动所有服务组件
docker-compose up -d
# 查看服务状态
docker-compose ps
# 初始化系统数据
docker-compose exec backend python scripts/init_system_data.py
方案B:本地开发部署
适合需要代码修改和功能定制的场景:
# 创建并激活虚拟环境
python -m venv venv
source venv/bin/activate # Linux/macOS
# 或
venv\Scripts\activate # Windows
# 安装后端依赖
pip install -r requirements.txt
# 启动数据库服务(单独终端)
mongod --dbpath ./data/db
# 初始化数据库
python scripts/init_system_data.py
# 启动后端API服务(单独终端)
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
# 安装并启动前端服务(单独终端)
cd frontend
npm install
npm run dev
2.3 配置系统参数
系统核心配置文件位于config目录,主要包括:
- API密钥配置:
config/api_keys.toml
[tushare]
token = "your_tushare_token"
[akshare]
enabled = true
[finnhub]
api_key = "your_finnhub_key"
- 数据源优先级配置:
config/data_sources.toml
[stock]
realtime = ["tushare", "akshare"]
history = ["akshare", "baostock"]
fundamentals = ["tushare", "finnhub"]
[news]
priority = ["finnhub", "eastmoney", "sina"]
refresh_interval = 30 # 分钟
常见问题
Q: 容器启动后无法访问Web界面?
A: 检查端口映射是否冲突,可通过docker-compose logs frontend查看前端服务日志,确认是否有错误信息。默认Web访问地址为http://localhost:3000。
Q: 数据无法正常获取怎么办?
A: 检查API密钥配置是否正确,可通过python scripts/check_api_config.py验证各数据源连接状态。部分数据源需要申请API密钥才能使用。
三、验证系统功能
3.1 检查服务状态
部署完成后,验证各核心服务是否正常运行:
- 后端API服务:访问http://localhost:8000/docs,应显示Swagger API文档界面
- 前端Web界面:访问http://localhost:3000,应显示登录页面
- 数据库连接:使用MongoDB客户端连接,验证是否已创建
trading_agents数据库
3.2 执行基础功能测试
通过命令行工具进行系统功能验证:
# 运行CLI测试
python -m cli.main --test
# 执行简单股票分析
python examples/simple_analysis_demo.py --stock 600036
3.3 验证数据流程
检查系统数据获取和处理流程是否正常:
- 查看数据同步状态:
python scripts/check_stock_daily_data.py - 验证分析报告生成:
python examples/cli_demo.py - 检查缓存功能:
python scripts/check_redis_cache.py
常见问题
Q: 首次登录系统提示密码错误?
A: 默认管理员账号为admin,初始密码为admin123,首次登录后系统会强制要求修改密码。
Q: 分析报告生成缓慢或失败?
A: 检查LLM模型配置是否正确,网络连接是否正常。可通过python scripts/check_llm_providers.py验证模型服务连接状态。
四、优化系统性能
4.1 配置缓存策略
优化Redis缓存配置以提升系统响应速度,修改config/cache.toml:
[redis]
host = "localhost"
port = 6379
db = 0
[cache_strategy]
stock_data_ttl = 3600 # 股票数据缓存1小时
news_ttl = 1800 # 新闻数据缓存30分钟
analysis_result_ttl = 86400 # 分析结果缓存24小时
4.2 调整异步任务配置
修改config/worker.toml优化任务处理性能:
[celery]
broker_url = "redis://localhost:6379/1"
result_backend = "redis://localhost:6379/2"
worker_concurrency = 4 # 根据CPU核心数调整
[task_priorities]
analysis_task = 5
data_sync_task = 3
notification_task = 1
4.3 性能调优指标
监控并优化以下关键性能指标:
| 指标 | 目标值 | 优化方法 |
|---|---|---|
| API响应时间 | <500ms | 优化数据库查询,增加缓存 |
| 分析报告生成时间 | <30秒 | 调整LLM模型参数,优化提示词 |
| 数据同步成功率 | 100% | 配置数据源重试机制 |
| 内存使用率 | <70% | 优化缓存策略,定期清理临时数据 |
| CPU使用率 | <80% | 调整任务并发数,优化算法效率 |
常见问题
Q: 系统运行一段时间后变慢?
A: 检查Redis缓存占用情况,可通过redis-cli info memory查看内存使用,适当调整缓存过期时间。
Q: 多用户同时使用时性能下降明显?
A: 考虑启用负载均衡,增加应用服务实例,或使用更强大的服务器配置。
五、扩展功能配置
5.1 启用高级分析模块
编辑config/features.toml启用高级功能:
[analysis]
technical_indicators = true
sentiment_analysis = true
portfolio_optimization = true
[llm]
advanced_agent_mode = true
multi_agent_collaboration = true
5.2 配置数据备份策略
设置定期数据备份任务,创建scripts/backup_data.sh:
#!/bin/bash
BACKUP_DIR="./backups/$(date +%Y%m%d_%H%M%S)"
mkdir -p $BACKUP_DIR
# 备份MongoDB数据
mongodump --db trading_agents --out $BACKUP_DIR
# 压缩备份文件
tar -zcvf $BACKUP_DIR.tar.gz $BACKUP_DIR
# 保留最近30天备份
find ./backups -name "*.tar.gz" -mtime +30 -delete
添加到定时任务:crontab -e,添加一行:0 2 * * * /path/to/TradingAgents-CN/scripts/backup_data.sh
5.3 集成外部系统
通过API集成其他金融系统,修改config/integrations.toml:
[trading_platforms]
enabled = false
broker_api_endpoint = "https://api.example.com/trading"
api_key = "your_broker_api_key"
[notification]
email_enabled = true
smtp_server = "smtp.example.com"
smtp_port = 587
sender_email = "trading@example.com"
常见问题
Q: 启用多智能体协作模式后系统资源占用过高?
A: 可降低并发智能体数量,修改config/llm.toml中的max_concurrent_agents参数。
Q: 数据备份失败如何处理?
A: 检查MongoDB服务是否正常运行,备份目录权限是否足够,可通过mongodump --db trading_agents --out test_backup测试备份功能。
总结
通过本文档介绍的"准备-实施-验证-优化"四阶段部署框架,您可以根据自身需求选择合适的部署方案,快速搭建TradingAgents-CN智能交易系统。系统部署完成后,建议定期执行scripts/system_diagnostic.py进行健康检查,确保系统稳定运行。
系统架构采用多智能体协作模式,各组件协同工作以提供全面的金融分析能力:
随着使用深入,您可以根据实际需求调整配置参数,优化系统性能,或通过扩展功能模块增强系统能力,开启AI驱动的智能投资分析之旅。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0204- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00


