news 2026/9/12 14:06:39

TradingAgents-CN v1.0.1 使用手册:配置管理、单股同步与上游同步实战指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
TradingAgents-CN v1.0.1 使用手册:配置管理、单股同步与上游同步实战指南

TradingAgents-CN v1.0.1 使用手册:配置管理、单股同步与上游同步实战指南

【免费下载链接】TradingAgents-CN基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN

本文是 TradingAgents-CNv1.0.1版本的完整使用手册。v1.0.1是一个面向日常使用的稳定维护版本,重点改进了配置管理体验(厂家/模型自动置顶、聚合 LLM 厂家 AiHubMix)、修复了报告与股票详情页切换时的数据残留问题,并大幅增强了单股同步的兜底链路与失败排查能力。读完本文,你将掌握:如何正确启动与访问系统、如何完成厂家—模型目录—大模型—数据源的全链路配置、如何用同步结果明细弹窗快速定位 AKShare/Tushare 同步失败的根因,以及本项目"人工选择性吸收上游"的维护机制。


1. 产品简介

TradingAgents-CN 是一个面向股票分析与管理场景的中文系统,v1.0.1版本覆盖了以下核心能力模块:

  • 配置管理:厂家管理、模型目录、大模型配置的统一 Web 管理体系
  • 股票详情:单只股票的综合信息展示(行情、基本信息、新闻舆情、财务数据、历史分析记录)
  • 报告分析:查看多智能体 LLM 生成的模块化分析报告
  • 自选股与筛选:维护自选列表,基于数据库与多维度条件筛选股票
  • 数据同步:AKShare / Tushare 驱动的单股与批量行情、历史、财务、基础数据同步
  • 大模型配置:绑定厂家与模型、设置默认模型、配置 Token/温度/超时/价格

v1.0.1相比此前版本重点增强了以下体验:

  • 新增厂家和模型后自动置顶显示
  • 新增聚合 LLM 厂家AiHubMix,支持通过统一 OpenAI 兼容接口接入多家模型
  • 切换报告和股票时页面会自动刷新正确内容,不再残留旧页面数据
  • 单股同步失败时可直接看到具体原因(主链路/回退链路/落库状态)
  • AKShare 单股实时行情支持备份接口兜底,降低单股同步失败率
  • 继续吸收上游项目核心能力,同时保留本地中文增强与 Web 管理体系

适用版本v1.0.1适用对象:日常使用 Web 界面的个人用户、管理员和运维人员。更完整的版本变更细节可参考 v1.0.1 发布说明 与 更新日志。


2. 启动与访问

2.1 启动服务

按部署方式启动后端与前端服务,常见入口包括:

python -m app.main

或使用项目中的启动脚本:

python scripts/startup/start_backend.py python scripts/startup/start_web.py

从源码结构看,scripts/startup 目录提供了完整的启动脚本族:start_api.pystart_backend.pystart_frontend.pystart_production.py等,以及 Windows 的.bat/ PowerShell 和 Linux 的.sh版本,可以按部署环境选择对应入口。

2.2 访问系统

  • 前端页面默认访问地址通常为http://localhost:3000或部署后的实际地址
  • 后端 API 默认访问地址通常为http://localhost:3001

如果你的环境使用 Docker 或反向代理,请以实际部署地址为准(仓库根目录的 docker-compose.yml 与 docker/nginx.conf 提供了容器化与反向代理的参考配置)。


3. 首次使用建议

首次进入系统后,建议按以下顺序完成配置:

  1. 检查系统是否能正常登录
  2. 进入配置管理
  3. 配置厂家信息
  4. 导入或维护模型目录
  5. 配置大模型
  6. 配置数据源
  7. 打开一只股票执行一次同步测试

这套流程覆盖了"登录 → 配置 → 验证"的完整闭环:先保证模型链路可用,再验证数据链路可用,最后再执行分析,可以最大程度避免后续分析任务因配置缺失而失败。


4. 配置管理

配置管理是v1.0.1的重点改进区域,Web 端的配置最终由 app/routers/config.py 与 app/services/config_service.py 支撑,并落库到 MongoDB 配置体系中。

4.1 厂家管理

配置管理 -> 厂家管理中可以:

  • 新增厂家
  • 编辑厂家信息
  • 删除不再使用的厂家
  • 检查厂家启用状态

v1.0.1新增内容:

  • 支持新增聚合 LLM 厂家AiHubMix
  • 支持聚合渠道厂家初始化能力,可批量生成302.AIAiHubMixOpenRouterOne APINew API等配置

建议维护的厂家字段包括:

字段说明
厂家标识(provider key)系统内部使用的规范键,如aihubmixqwendeepseek
厂家显示名称Web 界面展示的名称
API Key调用该厂家接口的密钥
Base URL该厂家 API 的入口地址
启用状态是否允许该厂家参与模型调用

从 tradingagents/llm_clients/provider_keys.py 的源码可以看到,厂家标识会被归一化为canonical key:例如dashscopealibaba阿里百炼都会被归一化为qwenzhipu智谱会被归一化为glm。这正是v1.0.1中"provider 规范键统一"的落地实现,它保证了不同来源的厂家命名不会引发调用分歧。同时该文件还维护了各厂家的默认环境变量映射(如AIHUBMIX_API_KEYDASHSCOPE_API_KEYOPENAI_API_KEYDEEPSEEK_API_KEYZHIPU_API_KEY等)与默认 Base URL(如aihubmixhttps://aihubmix.com/v1),可作为厂家配置的参考值。

4.2 模型目录管理

配置管理 -> 模型目录中可以:

  • 为指定厂家添加模型目录
  • 编辑模型目录内容
  • 删除模型目录

v1.0.1新行为:

  • 新增的厂家会自动排到列表最上面
  • 模型目录选择时会优先显示最近新增的厂家

这一行为的后端基础是:大模型配置补齐了created_at/updated_at时间字段,/api/config/llm按最新配置优先返回,前端排序与接口返回顺序保持一致。

4.3 大模型配置

配置管理 -> 大模型配置中可以:

  • 新增模型配置
  • 绑定厂家与模型
  • 设置默认模型
  • 配置 Token、温度、超时和价格信息
  • 启用或禁用模型

v1.0.1新行为:

  • 新增模型后会自动显示在最上方
  • 模型选择框中的候选模型也会优先显示最新添加的模型
  • 分析页面使用的模型下拉顺序与配置页面保持一致

在运行层面,配置好的大模型会通过 tradingagents/llm_clients 抽象层统一接入主链路:factory.py负责按 provider 创建客户端,model_catalog.py提供共享模型目录校验,openai_client.py实现 OpenAI 兼容协议调用,validators.py提供轻量校验。从 tradingagents/graph/trading_graph.py 的源码结构看,trading_graph.py的主要 provider 初始化路径已进一步收口到llm_clients,这意味着你在 Web 端配置的模型会直接影响分析主链路。

4.4 配置建议

  • 常用厂家保持启用状态
  • 不再使用的模型建议禁用而不是直接删除,便于日后回退
  • 配置完成后建议刷新一次页面确认排序与状态正常
  • 如果你使用聚合平台,建议优先配置AiHubMix这类 OpenAI 兼容聚合厂家,再补充对应模型目录——聚合厂家通常一次接入即可访问多家上游模型,能显著降低 Key 与 URL 的维护成本

5. 股票详情页使用

股票详情页用于查看单只股票的综合信息。

5.1 常见内容

  • 行情信息(由market_quotes集合提供实时快照)
  • 基本信息(由stock_basic_info集合提供)
  • 新闻与舆情
  • 财务数据
  • 历史分析记录

5.2 v1.0.1 改进

  • 从一只股票切换到另一只股票时,页面会重新加载对应数据
  • 不会再停留在上一个股票的旧内容

如果你通过自选股、筛选结果或列表页跳转到股票详情,页面应自动刷新为新股票内容。这一修复对应发布说明中的"股票详情页切换股票时重置旧状态并重新加载"与"详情页状态重置逻辑优化"。


6. 报告详情页使用

报告详情页用于查看已完成的多智能体分析报告。

6.1 常见操作

  • 查看报告摘要
  • 查看模块化分析内容
  • 回看历史报告

6.2 v1.0.1 改进

  • 在不同报告之间切换时,页面会自动重新拉取对应内容
  • 不会再停留在上一份报告的数据

该修复对应发布说明中的"报告详情页监听路由参数变化并自动刷新",解决了高频切换报告时旧内容残留的问题。


7. 单股同步操作

单股同步是v1.0.1重点增强的使用环节,其后端入口为 app/routers/stock_sync.py 中的POST /api/stock-sync/single

7.1 操作入口

进入任意股票详情页后,点击"同步数据"即可执行单股同步。

7.2 可同步内容

  • 实时行情(sync_realtime
  • 历史行情(sync_historical,默认开启)
  • 财务数据(sync_financial,默认开启)
  • 基础信息(sync_basic,默认关闭)

从 app/routers/stock_sync.py 的请求模型可以看到,单股同步还支持data_sourcetushare/akshare,默认tushare)与days(历史数据天数,范围 1~3650,默认 30)两个关键参数。一个值得注意的实现细节是:单股实时行情同步会自动切换到 AKShare——即使请求指定了tushare,后端也会先切换为akshare以规避 Tushare 接口限制;当 AKShare 主链路失败时,再回退到 Tushare 全量同步(仅同步实时行情场景)。

7.3 同步结果说明

v1.0.1中,同步完成后会弹出结果明细,而不是只显示"同步成功"或"同步失败"。你会看到以下信息:

  • 实时行情是否成功
  • 历史数据是否成功
  • 财务数据是否成功
  • 基础数据是否成功
  • 实际尝试过哪些数据源(attempted_sources
  • 主链路错误原因(primary_error
  • 回退链路错误原因(fallback_error
  • 是否已写入market_quotesmarket_quote_available

对应源码(app/routers/stock_sync.py)中,realtime_sync返回结构包含data_source_usedattempted_sourcesprimary_errorfallback_errormarket_quote_availablemarket_quote_snapshot等字段,且同步汇总日志会以📋前缀完整打印上述上下文,可直接用于问题排查。

此外,历史数据同步成功后,后端会调用_sync_latest_to_market_quotes(app/routers/stock_sync.py)将stock_daily_quotes中的最新数据同步到market_quotes,并带有一个智能判断:如果market_quotes中已有更新或相同交易日的数据,则不覆盖,避免用历史数据覆盖实时数据。


8. 数据源与故障排查

8.1 AKShare 实时行情策略

v1.0.1中,AKShare 单股实时行情采用以下顺序自动尝试(实现在 tradingagents/dataflows/providers/china/akshare.py):

  1. stock_bid_ask_em—— 主接口,东方财富买卖五档快照
  2. stock_zh_a_spot—— 备份接口 1,新浪全市场快照
  3. stock_zh_a_spot_em—— 备份接口 2,东方财富全市场快照
  4. stock_zh_a_hist—— 最终兜底,历史日线

含义如下:

  • 前 3 个属于实时或快照接口
  • 第 4 个属于历史日线兜底(即使实时接口全部不可用,也能用最新一根日线给出可用的行情结构)

该策略由 tradingagents/dataflows/providers/china/akshare.py 的get_stock_quotes实现:优先调用stock_bid_ask_em,若返回空或抛出异常,则自动转入备份接口链路;每一级失败都会记录 warning 日志,方便追踪实际生效的数据源。同时在 app/worker/akshare_sync_service.py 中,单只股票的同步会直接走get_stock_quotes单股接口,而不是批量快照接口,配合多级兜底提升单股成功率。

8.2 常见失败原因

情况 1:AKShare 连接被远端断开

常见表现:

  • 日志出现RemoteDisconnected
  • 同步提示里显示主链路失败

建议:

  • 检查网络环境
  • 检查是否有代理、VPN 或网络拦截
  • 重试一次同步(系统会自动尝试备份接口)
情况 2:Tushare 被限流

常见表现:

  • 日志或提示中出现"每分钟最多访问该接口 1 次"

建议:

  • 间隔 1 分钟以上再重试
  • 避免短时间连续点击同步
情况 3:未写入 market_quotes

常见表现:

  • 同步后/api/stocks/{code}/quote仍查不到数据

建议:

  • 查看同步结果弹窗中的market_quote_available
  • 检查实时链路是否全部失败
  • 必要时先同步历史数据,再补实时数据(历史数据同步成功后会触发_sync_latest_to_market_quotes自动回填market_quotes

重要提示:HTTP200只代表接口调用成功,不代表行情已经写入数据库。判定是否落库,必须以同步结果弹窗中的实时结果和market_quotes写入状态为准。


9. 推荐使用流程

适合日常管理员的推荐流程如下:

  1. 登录系统
  2. 打开配置管理
  3. 检查厂家、模型目录和大模型配置
  4. 确认新增项是否已置顶
  5. 打开目标股票详情页
  6. 执行一次单股同步
  7. 查看同步明细弹窗
  8. 确认行情是否已写入
  9. 再执行分析或查看报告

这套流程的关键在于第 4 步和第 8 步:置顶排序用于验证配置管理是否生效,行情落库验证用于确保数据链路真正打通,两者都通过后再进入分析环节,可避免"配置看似成功、分析却无数据"的隐性故障。


10. 上游同步说明

v1.0.1不只是本地修复版本,也包含"人工选择性同步上游项目"的持续演进成果。

10.1 什么是上游同步

这里的"上游"指原项目TauricResearch/TradingAgents。当前项目没有采用整仓自动跟随,而是按模块人工评估、选择性吸收上游更新。完整策略见 docs/maintenance/upstream-sync.md,逐项吸收记录见 docs/maintenance/manual-upstream-absorption-checklist.md。

10.2 当前同步原则

  • 优先吸收核心能力和底层抽象
  • 优先吸收明确的缺陷修复和稳定性改进
  • 不强行追求与上游完全一致
  • 保留本项目的中文增强、Web 配置管理和数据库配置体系

10.3 v1.0.1 中与上游同步相关的能力

  • llm_clients抽象层接入主链路,统一主要 LLM 调用入口(见 tradingagents/llm_clients 目录)
  • 共享模型目录接入 CLI 与轻量校验链路
  • provider 规范键统一为 canonical key,减少不同实现之间的命名分歧(见 tradingagents/llm_clients/provider_keys.py)
  • trading_graph.py的主要 provider 初始化路径进一步收口到llm_clients
  • fundamentals_analyst.py中与 qwen 相关的 fresh llm 重建逻辑适配新路径
  • 图层参数透传能力同步到当前实现
  • 工厂别名兼容和风控引用修复同步到当前实现
  • provider 命名兼容、默认 URL / 环境变量映射和依赖补齐同步到当前实现
  • provider 别名归一化工具和 model catalog 共享校验逻辑接入当前版本
  • MongoDB 默认库名(tradingagentscn)、按版本 / 实例隔离命名能力与迁移脚本同步到当前版本
  • 开发环境共享库保护和相关运维文档同步到当前版本

当前 canonical provider 键集合包括:qwenglmopenaigoogledeepseekopenrouterollamaqianfancustom_openai,另在v1.0.1中纳入aihubmix聚合厂家;规范键与中文别名(如"阿里百炼"→qwen、"智谱"→glm)的归一化映射可在 tradingagents/llm_clients/provider_keys.py 中直接查阅。

10.4 相关文档

  • 上游同步策略
  • 人工上游吸收清单

11. 常见问题

Q1:为什么新增厂家没有显示在最上面?

请刷新配置管理 -> 模型目录页面。在v1.0.1中,新增厂家默认按最新顺序置顶显示。

Q2:为什么新增模型没有显示在最上面?

请确认当前运行版本为v1.0.1,并刷新大模型配置页面。如果后端未重启,接口可能还在返回旧顺序(/api/config/llm的置顶排序依赖后端新增的created_at/updated_at时间字段)。

Q3:为什么点击另一个股票后还是旧页面?

v1.0.1已修复这个问题。如果仍出现,请清空前端缓存并刷新页面,确认部署代码已更新。

Q4:为什么同步接口返回 200,但还是没有行情?

HTTP200只表示接口调用成功,不代表行情已经写入数据库。请以同步结果弹窗中的实时结果和market_quotes写入状态为准(重点看market_quote_available字段)。

Q5:AKShare 失败后怎么办?

系统会自动尝试备份接口(stock_zh_a_spotstock_zh_a_spot_emstock_zh_a_hist)。如果全部失败,再考虑检查网络、等待限流恢复或改用其他数据源。


12. 运维建议

  • 每次升级后,先验证配置管理页面排序
  • 至少抽查一只股票的同步链路
  • 关注后端日志中的数据源切换与错误摘要(单股同步汇总日志以📋前缀输出,可直接定位主链路/回退链路错误)
  • 对 Tushare 用户,避免在一分钟内重复触发同类接口
  • 在吸收上游更新前,先参考上游同步策略和人工吸收清单做评估

13. 相关文档

  • v1.0.1 发布说明
  • 更新日志
  • 升级指南
  • 上游同步策略
  • 人工上游吸收清单

如需深入源码级验证本文提到的实现,可重点阅读:

  • app/routers/stock_sync.py —— 单股/批量同步 API、同步结果明细结构、market_quotes回填逻辑
  • app/worker/akshare_sync_service.py —— AKShare 同步服务(实时行情单股优化、批量快照与逐个回退、历史/财务/基础数据同步)
  • tradingagents/dataflows/providers/china/akshare.py ——stock_bid_ask_em多级兜底链路
  • tradingagents/llm_clients/provider_keys.py —— provider 规范键、别名归一化、默认 URL 与环境变量映射
  • tradingagents/llm_clients/factory.py —— LLM 客户端工厂与主链路接入
  • scripts/startup —— 后端/前端启动脚本族

【免费下载链接】TradingAgents-CN基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/12 14:04:34

Qt 5.14.2 aarch64静态交叉编译:从工具链到部署全攻略

干过嵌入式Linux开发的同行,多半都碰到过这个场景:交付给客户的ARM工控板上,系统裁剪得很干净,没有包管理器,甚至没有网络,却得跑一个带界面的Qt程序。这时候拿着动态链接的Qt往板子上一扔,缺库…

作者头像 李华
网站建设 2026/9/12 14:02:25

用Python重写地震易损性分析:从IDA数据到易损性曲线

简介:这是一份基于Python实现的地震易损性分析源码包,面向土木工程、地震工程方向的研究生、科研人员及结构设计人员,解决从地震需求计算到易损性曲线绘制的代码实现难题。压缩包共147个文件,包含6个Python源程序、100个out结果数…

作者头像 李华
网站建设 2026/9/12 13:58:47

迭代与增量开发:核心概念与实战策略解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华