TradingAgents-CN 市场分析师技术报告深度解析:以五粮液(000858)2025年7月实战样本为例
【免费下载链接】TradingAgents-CN基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN
在 TradingAgents-CN 多智能体金融交易框架中,市场分析师(Market Analyst)是投研流水线的第一道关卡:它负责拉取标的价格与行情数据,输出结构化的技术分析报告,为后续的基本面分析师、新闻分析师以及最终的交易决策提供技术面输入。本文以仓库内一份真实产出的样本——五粮液(000858)技术分析报告(分析周期 2025年7月1日—7月28日)——为解剖对象,逐节还原这份报告的生成逻辑、每个技术指标的含义与判读方法、支撑/阻力位的计算依据,并对照框架源码说明它是如何被生成、保存并在多智能体决策链中流转的。读完本文,你将既能读懂一份 LLM 生成的技术分析报告,也能理解 TradingAgents-CN 中"市场分析师节点"的完整工作方式,以及如何在data/analysis_results目录中定位与复现同类报告。
一、报告从何而来:市场分析师节点与统一行情工具
这份报告并非人工撰写,而是由 TradingAgents-CN 图计算框架中的市场分析师节点生成的产物。核心实现在 tradingagents/agents/analysts/market_analyst.py 的create_market_analyst(llm, toolkit)工厂函数中。
其工作流可概括为四个步骤:
- 识别标的市场:通过
StockUtils.get_market_info(ticker)判断股票类型(A股 / 港股 / 美股),例如000858会被识别为 A 股市场; - 获取公司名称:A 股标的调用
get_china_stock_info_unified(ticker)从数据源解析出"五粮液"这一名称,并构建instrument_context标的上下文; - 绑定统一行情工具:节点将
toolkit.get_stock_market_data_unified绑定给 LLM,作为唯一的取数工具; - 调用 LLM 生成报告:将系统提示词、工具结果与消息历史一起交给 LLM,产出结构化 Markdown 报告,写入状态的
market_report字段。
其中get_stock_market_data_unified定义于 tradingagents/agents/utils/agent_utils.py,是这套流程的关键设计:
- 自动识别市场并路由数据源:A 股走
get_china_stock_data_unified,港股走get_hk_stock_data_unified,美股走get_us_stock_data_cached,调用方无需关心底层差异; - 自动回溯历史数据:工具文档明确说明"系统会自动扩展到配置的回溯天数(通常为 365 天)",即分析师只需传入当前分析日期(如
2025-07-28),系统会自动拉取此前 365 天的日线数据,确保 MACD、布林带等技术指标拥有足够的计算窗口; - 单次调用约束:节点提示词强制 LLM"一次工具调用就足够",并通过
market_tool_call_count计数器限制最多 3 次工具调用,防止多智能体协作中出现死循环。
报告生成后,market_report会作为图状态的共享字段被下游节点读取,并在 tradingagents/graph/trading_graph.py 的_log_state中被连同sentiment_report、news_report、fundamentals_report、investment_debate_state一起落盘,形成可回溯的完整状态快照。
二、报告结构拆解:六个模块的编排逻辑
框架在系统提示词中为市场分析师规定了严格的输出模板(见 market_analyst.py 中的analysis_prompt),要求报告"不少于 800 字"、使用标准 Markdown 标题、禁用 emoji、全部价格使用对应市场的货币符号。本样本(约 850 字)完全符合该模板,其六个模块分别对应模板中的"技术指标分析、价格趋势分析、投资建议"等章节,并在实际生成时被组织为:
1. 价格趋势分析(短期 + 中期)
报告首先给出短期结论:最新收盘价 124.06 元(7月28日),较 7月22日高点 125.53 元小幅回落,处于高位震荡状态。判据是 5 日均线(123.85 元)与 10 日均线(124.32 元)粘合——均线粘合意味着短期多空成本趋于一致,方向尚未明朗,是典型的变盘前兆。同时给出两个关键观察点:
- 向上观察点:突破 7月22日高点 125.89 元,可能开启新一轮上涨;
- 向下观察点:跌破 122 元支撑(7月28日低点),短期趋势转弱。
中期层面,20 日均线(122.40 元)仍呈上行态势,说明中期上升通道未被破坏;但周线级别 MACD 红柱缩短,提示需警惕回调风险。这种"短期粘合 + 中期上行 + 周线动能衰减"的三层表述,正是模板中"短期趋势(5-10 个交易日)/ 中期趋势(20-60 个交易日)"要求的具体落地。
2. 技术指标解读(MACD / KDJ / RSI / 布林带)
这是报告的量化核心,四个指标各有分工:
- MACD(12/26/9):DIF(0.78)与 DEA(0.65)位于零轴上方,说明中期趋势仍偏多;但两者差值缩小,多头动能减弱,若 DIF 下穿 DEA 将形成死叉信号;
- KDJ(9/3/3):K 值(58.3)与 D 值(62.1)从超买区回落,J 值(50.7)回到中性区域,短期超买压力缓解;若 K 值跌破 50,可能触发技术性抛压;
- RSI(6/12):6 日 RSI(52.4)位于 50 中轴上方,12 日 RSI(49.8)略低于 50,多空力量均衡;
- 布林带:股价运行于中轨(123.2 元)与上轨(126.1 元)之间,Bandwidth(带宽)收窄至 4.3%,预示即将选择方向。
指标参数的默认值(MACD 12/26/9、KDJ 9/3/3、RSI 6/12)在报告末尾有明确声明,这也是模板要求分析师"基于工具返回的真实数据"进行计算、并给出"具体数值"的直接体现——LLM 依据行情数据推算指标并填入报告,而不是凭印象编造。
3. 支撑与阻力位分析
- 第一支撑 122 元:7月28日低点与 20 日均线(122.40 元)重合位,属于"技术支撑 + 均线支撑"共振区域;
- 第二支撑 120 元:整数关口,属于心理支撑位;
- 第一阻力 125.89 元:7月22日高点;
- 第二阻力 127 元:2025年6月峰值形成的前高压力区。
支撑阻力的来源组合(近期高低点 + 均线 + 整数关口 + 前高)保证了报告具备可操作的价位锚点,这也是模板中"关键价格区间"章节所要求的"支撑位 / 压力位 / 突破买入价 / 跌破卖出价"的具体呈现。
4. 成交量分析(量价关系 + 换手率)
报告捕捉到一个关键的量价背离现象:7月22日放量上涨(成交量 303 万手、成交额 37.8 亿元),但此后成交量持续萎缩,7月28日仅 178 万手,显示资金追高意愿不足。同时指出缩量回调期间未出现恐慌性抛售,主力筹码相对稳定;日均换手率 0.54%,低于历史峰值(1.2% 以上),市场活跃度中等。模板中"成交量分析"一节要求"分析成交量变化、量价配合情况",本段正是该要求的完整执行。
5. 投资建议与风险提示
报告按风险偏好区分策略:
- 激进型投资者:若放量突破 125.89 元可短线跟进,目标价 127–130 元,止损位 122 元;
- 稳健型投资者:等待回调至 120–122 元支撑区企稳后分批布局,中期目标价 130 元。
风险提示覆盖三层:技术面(MACD 顶背离雏形,跌破 120 元需警惕趋势反转)、市场面(白酒行业政策变动或消费数据不及预期引发板块调整)、流动性(成交量萎缩导致波动加剧)。
6. 总结
报告将结论收敛为一个可操作的区间判断:"关注 122–126 元区间突破方向,结合成交量变化动态调整仓位;中期守住 120 元关键支撑则仍具备配置价值。"
三、报告在决策链中的位置:从技术面到最终交易决策
需要特别说明的是,市场分析师的技术报告只是多智能体决策链中的一个输入,它不直接产出最终交易指令。从仓库中的完整报告集可以清晰看到这一点——同一标的、同一交易日(2025-07-28)在 data/analysis_results/detailed/000858/2025-07-28/reports/ 下并存六份报告:
| 报告文件 | 职责 |
|---|---|
market_report.md | 市场分析师:技术面 |
fundamentals_report.md | 基本面分析师:估值与财务 |
news_report.md | 新闻分析师:舆情与事件 |
investment_plan.md/trader_investment_plan.md | 交易员:综合各分析师的交易计划 |
final_trade_decision.md | 最终决策(多空辩论后) |
以 final_trade_decision.md 为例,最终决策"持有(有条件观望)"明确引用了市场分析师的技术面结论("7月28日跌破短期均线组合(5/10日)已削弱突破动能""布林带收窄暗示变盘可能"),并将其与 DCF 估值、库存周转、中秋打款预期等基本面信息综合,最终给出"减持 20% 仓位 + 领口期权对冲 + 8月25日数据验证"的分情景交易计划。
这意味着,解读本报告时应把它视为多智能体框架中技术面子系统的输出:它的价值在于提供可验证的技术价位、量价状态与方向概率,而不是独立的下单指令。
四、如何复现与查看同类报告
在 TradingAgents-CN 中,分析结果统一保存于data/analysis_results/目录,目录结构为data/analysis_results/[detailed/]股票代码/交易日期/reports/*.md,每个交易日的报告集包含上文表格中的六份文件。该目录同时被 Web 后端直接读取:在 app/routers/analysis.py 中,API 会根据股票代码 + 分析日期在data/analysis_results/{symbol}/{date}/reports及detailed子目录下通过*.md通配符扫描并返回历史报告,供前端展示。
若要复现一份新的技术分析报告,只需在项目根目录运行一次针对目标标的的分析任务,例如:
# 使用 CLI 或通过前端发起分析,指定标的与交易日 python -m cli.main --ticker 000858 --date 2025-07-28分析完成后,即可在data/analysis_results/detailed/000858/2025-07-28/reports/market_report.md(或对应标的/日期的目录)中查看生成的市场分析师报告。需要注意的是,报告内容取决于当时拉取的实时行情数据,历史样本(如本文引用的 2025-07-28 报告)是当日数据的固化快照,不会随行情更新而改变。
五、读报告的正确姿势:三个关键判读视角
结合源码与样本,读这类 LLM 生成的技术分析报告时,建议把握三个视角:
先看量价,再看指标:报告的顺序(价格趋势 → 指标 → 支撑阻力 → 成交量)遵循"价格定方向、指标给确认、量能验真伪"的逻辑。本样本中"放量 303 万手后缩量至 178 万手"正是判断突破 125.89 元是否有效的核心前提——没有量能配合的突破,可靠性要打折扣。
交叉验证多周期结论:5/10 日均线粘合(短期)、20 日均线上行(中期)、周线 MACD 红柱缩短(更长期限)三层信号指向不同时间尺度,任何单一指标(如"MACD 死叉")都不应脱离周期语境单独解读。
把报告放入决策链:技术报告给出的支撑/阻力与止损位,会被下游交易员与辩论环节引用、修正(如最终决策将止损位调整为 118–125 元区间),因此应将其视为"可被反驳的输入",而非最终答案。框架的图状态(
market_report、news_report、fundamentals_report、investment_debate_state)设计本身就体现了这种"多源输入 → 辩论 → 收敛"的决策架构。
结语
这份五粮液技术分析报告是 TradingAgents-CN 多智能体框架技术面子系统的代表性样本:它完整覆盖了均线、MACD、KDJ、RSI、布林带、量价关系、支撑阻力与风险提示等标准技术分析要素,输出格式与内容深度均受 market_analyst.py 中提示词模板的严格约束,数据来源统一由get_stock_market_data_unified提供并自动回溯 365 天历史。理解这份报告的生成链路——从统一行情工具、市场分析师节点,到图状态流转与最终决策——也就理解了 TradingAgents-CN 多智能体协作框架中最基础也最关键的一环。
本文引用的报告为 TradingAgents-CN 仓库内的真实分析样本,技术指标基于标准参数(MACD 12/26/9、KDJ 9/3/3、RSI 6/12)计算;报告内容不构成投资建议,市场有风险,决策需谨慎。
【免费下载链接】TradingAgents-CN基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考