mirror of
https://github.com/simonlin1212/TradingAgents-astock.git
synced 2026-10-30 09:29:56 +00:00
chore: 移除仓库内的个股分析案例与评级结论
- 删除 examples/cases/ 下 3 份含具体买卖价位/止损/目标价的个股分析报告 - DEV_LOG / CHANGES_FROM_UPSTREAM 的 E2E 记录改为脱敏样本,只保留工程指标 (耗时 / AI message 数 / 链路通过情况),移除个股评级与分析结论 本项目定位为多 Agent 框架的技术实现与研究复现,不在仓库内提供 针对具体证券的分析意见、评级或买卖建议。
This commit is contained in:
@@ -313,10 +313,10 @@ eastmoney 全系北向资金接口(含 akshare `stock_hsgt_hist_em`、datacent
|
||||
|
||||
### E2E 实战结果
|
||||
|
||||
| 股票 | 代码 | 信号 | 耗时 | 说明 |
|
||||
|------|------|------|------|------|
|
||||
| 宁德时代 | 300750 | Hold | 977s (16.3 min) | 7 analyst 全通过,解禁评估 10 章完整报告 |
|
||||
| 比亚迪 | 002594 | Hold | 890s (14.8 min) | 识别 4 月销量 -26% + 北向流出 40 亿极端值 |
|
||||
| 样本 | 板块 | 耗时 | 说明 |
|
||||
|------|------|------|------|
|
||||
| 样本 A | 创业板 | 977s (16.3 min) | 7 analyst 全通过,解禁评估 10 章完整报告结构正常 |
|
||||
| 样本 B | 主板 | 890s (14.8 min) | 销量/北向资金字段解析正常,极端值处理正常 |
|
||||
|
||||
全链路:7 Analysts → Quality Gate → Bull/Bear Debate → Trader → Risk Panel → PM ✅
|
||||
|
||||
|
||||
+12
-20
@@ -350,10 +350,10 @@ TradingAgents 每次分析需 30-50 次 LLM API 调用,必须使用 API Key 模
|
||||
|
||||
**E2E 实战结果(2 只股票):**
|
||||
|
||||
| 股票 | 代码 | 信号 | 耗时 | AI Message 数 | 数据层错误 |
|
||||
|------|------|------|------|---------------|-----------|
|
||||
| 宁德时代(创业板·动力电池) | 300750 | **Hold** | 977s (16.3 min) | 17 | 1 (akshare 超时) |
|
||||
| 比亚迪(主板·新能源汽车) | 002594 | **Hold** | 890s (14.8 min) | 23 | 2 (akshare 超时) |
|
||||
| 样本 | 板块 | 耗时 | AI Message 数 | 数据层错误 |
|
||||
|------|------|------|---------------|-----------|
|
||||
| 样本 A | 创业板 | 977s (16.3 min) | 17 | 1 (akshare 超时) |
|
||||
| 样本 B | 主板 | 890s (14.8 min) | 23 | 2 (akshare 超时) |
|
||||
|
||||
**Pipeline 全链路验证:**
|
||||
|
||||
@@ -362,17 +362,11 @@ TradingAgents 每次分析需 30-50 次 LLM API 调用,必须使用 API Key 模
|
||||
✅ ✅ ✅ ✅ ✅ ✅
|
||||
```
|
||||
|
||||
**宁德时代分析亮点:**
|
||||
- 技术分析:MACD/布林带/RSI 全套计算,识别出 436-460 区间震荡
|
||||
- 基本面:Q1 净利润 +48.52%,钠电 60GWh 订单,H 股融资 391 亿港元
|
||||
- 解禁评估:10 章完整报告,未来 90 天零解禁,减持压力评级"无明显压力"
|
||||
- 最终决策:Hold(短期技术面偏弱,北向资金净流出 40.38 亿,等量能恢复再加仓)
|
||||
|
||||
**比亚迪分析亮点:**
|
||||
- 识别出 4 月销量同比下滑 26%,北向资金单日流出 40 亿创极端值
|
||||
- 技术面发现 3 次均线死叉,主力资金近 5 日累计净流出 28 亿
|
||||
- 但高管集体增持 + 社保基金逆势加仓 + 员工持股计划净流入
|
||||
- 最终决策:Hold(基本面短期承压 + 政策面中长期支撑的博弈格局)
|
||||
**链路覆盖度验证(不记录个股结论,仅记录各环节是否跑通):**
|
||||
- 技术分析层:MACD/布林带/RSI 全套指标计算正常返回
|
||||
- 基本面层:财报字段、融资事件字段解析正常
|
||||
- 解禁评估层:10 章完整报告结构生成正常
|
||||
- 资金面层:北向/主力资金字段拉取正常
|
||||
|
||||
**已知问题(不影响功能):**
|
||||
|
||||
@@ -383,10 +377,8 @@ TradingAgents 每次分析需 30-50 次 LLM API 调用,必须使用 API Key 模
|
||||
| akshare 偶发超时 | P3 | 东方财富 `stock_individual_info_em` 偶尔 ProxyError,不影响整体流程 |
|
||||
|
||||
**案例文件归档:**
|
||||
- `examples/cases/300750_宁德时代.md` — 完整分析报告 + Hold 信号
|
||||
- `examples/cases/300750_summary.json` — 结构化摘要
|
||||
- `examples/cases/002594_比亚迪.md` — 完整分析报告 + Hold 信号
|
||||
- `examples/cases/002594_summary.json` — 结构化摘要
|
||||
- 已于 2026-07-24 移除。本项目不在仓库内提供针对具体证券的分析报告或评级结论;
|
||||
`examples/run_cases.py` 保留为可自行运行的技术演示脚本,运行结果由使用者自行保管。
|
||||
|
||||
**run_cases.py 配置更新:**
|
||||
- `llm_provider`: `"anthropic"` → `"minimax"`
|
||||
@@ -510,7 +502,7 @@ pyproject.toml:
|
||||
- ✅ **Week 5.5 边界测试(P2)** — ST(*ST岩石 600696) 16OK/1WARN/0FAIL + 科创板(中芯国际 688981) 17/0/0 + 中小板(立讯精密 002475) 17/0/0
|
||||
- ✅ **ToolNode 关键 Bug 修复** — `trading_graph.py` 的 `_create_tool_nodes()` 未包含 signal 工具(get_hot_stocks/get_northbound_flow 等),导致 analyst 的 tool call 在 ToolNode 执行时找不到函数。Week 2-4 的所有信号工具调用都受此影响
|
||||
- ✅ **Week 6 MiniMax 集成** — factory.py + openai_client.py + model_catalog.py + README.md 四文件改动,MiniMax 成为推荐供应商
|
||||
- ✅ **Week 6 E2E 实战验证** — 300750 宁德时代(Hold, 16.3min) + 002594 比亚迪(Hold, 14.8min),MiniMax-M2.7 全链路通过,案例归档到 `examples/cases/`
|
||||
- ✅ **Week 6 E2E 实战验证** — 两只样本(创业板 16.3min + 主板 14.8min),MiniMax-M2.7 全链路通过
|
||||
- ✅ **Week 7 Web UI** — Streamlit 可视化界面:一键分析 + 12 阶段实时进度 + 7 报告展示 + 多空/风控辩论 Tabs + PDF 导出 + 历史记录(10 文件 + 2 配置)
|
||||
|
||||
### 未开始
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
{
|
||||
"ticker": "002594",
|
||||
"label": "比亚迪 (主板·新能源汽车)",
|
||||
"trade_date": "2026-05-12",
|
||||
"run_time": "2026-05-12T10:54:47.430175",
|
||||
"duration_seconds": 890,
|
||||
"signal": "Hold",
|
||||
"decision_preview": "**Rating**: Hold\n\n**Executive Summary**: 比亚迪002594评级为 Hold。长期配置逻辑成立(前向PE 21.3倍、历史低位;账上757亿现金+经营现金流591亿为硬实力防线;FY2026 EPS CAGR 约25%),但4月销量下滑26%、北向外资系统性撤退、T+1制度下止损机制失效率三大短期风险尚未完全释放,当前99元一线并非理想重仓窗口。建议以不超过20%总仓位建立底仓(等待回踩97-98元支撑确认后轻仓),严格止损设于95元下方;加仓条件:①股价放量突破102元站稳 AND ②月度销量环比改善≥10%;目标价105元(第一目标)/117元(第二目标),持有期6-12个月。\n\n**Investment Thesis**: 多空辩论综合裁决:①估值方向有利(PE 21.3倍/PEG 0.86)但FY2026 EPS预测分歧±43%,不可作为单一锚点;②销量下滑26%已非季节性因素,渗透率红利期结束,结构性价格战压力持续,基本面拐点尚需等待月销环比改善信号确认;③内部人增持(社保/高管)和外资撤退形成资金面对峙,但T+1制度使止损机制在A股高波动环境下实效化,倒逼更保守的初始仓位;④技术面RSI 47处于中性偏低区域而非超卖,MACD仍在零轴下方,均线死叉3次,短期趋势反转条件尚未齐备。综合来看,方向正确但时机未成熟,应以底仓控险+等信号加仓的滚动策略应对,避免在信号不完整时重仓承受T+1隔夜敞口。"
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
> ⚠️ **免责声明:以下内容由 AI 自动生成,仅供学习研究与技术演示,不构成任何投资建议。投资有风险,决策请咨询持牌专业机构。**
|
||||
|
||||
# 002594 比亚迪 (主板·新能源汽车)
|
||||
|
||||
- **Trade Date**: 2026-05-12
|
||||
- **Run Time**: 2026-05-12 10:54
|
||||
- **Duration**: 890s (14.8 min)
|
||||
- **LLM**: MiniMax-M2.7 / M2.7-highspeed
|
||||
|
||||
## Signal: Hold
|
||||
|
||||
## Full Analysis
|
||||
|
||||
**Rating**: Hold
|
||||
|
||||
**Executive Summary**: 比亚迪002594评级为 Hold。长期配置逻辑成立(前向PE 21.3倍、历史低位;账上757亿现金+经营现金流591亿为硬实力防线;FY2026 EPS CAGR 约25%),但4月销量下滑26%、北向外资系统性撤退、T+1制度下止损机制失效率三大短期风险尚未完全释放,当前99元一线并非理想重仓窗口。建议以不超过20%总仓位建立底仓(等待回踩97-98元支撑确认后轻仓),严格止损设于95元下方;加仓条件:①股价放量突破102元站稳 AND ②月度销量环比改善≥10%;目标价105元(第一目标)/117元(第二目标),持有期6-12个月。
|
||||
|
||||
**Investment Thesis**: 多空辩论综合裁决:①估值方向有利(PE 21.3倍/PEG 0.86)但FY2026 EPS预测分歧±43%,不可作为单一锚点;②销量下滑26%已非季节性因素,渗透率红利期结束,结构性价格战压力持续,基本面拐点尚需等待月销环比改善信号确认;③内部人增持(社保/高管)和外资撤退形成资金面对峙,但T+1制度使止损机制在A股高波动环境下实效化,倒逼更保守的初始仓位;④技术面RSI 47处于中性偏低区域而非超卖,MACD仍在零轴下方,均线死叉3次,短期趋势反转条件尚未齐备。综合来看,方向正确但时机未成熟,应以底仓控险+等信号加仓的滚动策略应对,避免在信号不完整时重仓承受T+1隔夜敞口。
|
||||
@@ -1,9 +0,0 @@
|
||||
{
|
||||
"ticker": "300750",
|
||||
"label": "宁德时代 (创业板·动力电池)",
|
||||
"trade_date": "2026-05-12",
|
||||
"run_time": "2026-05-12T10:38:34.698774",
|
||||
"duration_seconds": 977,
|
||||
"signal": "Hold",
|
||||
"decision_preview": "<think>\nThe user wants me to engage in a debate format about investing in 300750 (宁德时代/CATL). They've asked for a \"neutral\" position that serves as a middle-ground between the bullish and bearish arguments. Based on the context, I need to present a balanced analysis that acknowledges both sides but advocates for a measured, tactical approach rather than extreme positions.\n\nLet me craft a response that:\n1. Takes a balanced, middle-ground stance\n2. Draws specific evidence from the data provided\n3. Presents a nuanced \"折中方案\" (middle-ground solution)\n4. Covers technical analysis, fundamental analysis, sentiment, policy, and capital flows\n5. Provides specific, actionable guidance\n6. Is written entirely in Chinese\n7. Has a natural, conversational tone without special formatting\n\nI need to be comprehensive and present all three perspectives mentioned (bullish, conservative, and my balanced/neutral stance), but the user specifically asked for my \"Conservative Analyst\" persona to argue for a neutral/balanced position. So my response should be the balanced view.\n\nLet me structure this:\n- Opening: Acknowledge both sides have valid points\n- Technical analysis: Neutral reading\n- Fundamental analysis: Balanced assessment\n- Sentiment/capital flows: Acknowledge risks but not excessive worry\n- Policy: Stay neutral, acknowledge both support and risks\n- Actionable recommendation: Medium position, tactical approach\n- Key metrics to watch\n- Mental framework for this position\n</think>\n\n我觉得两边说的都有道理,不如找个折中的方案。\n\n先承认激进派的判断没错——基本面确实强劲,一季度业绩摆在那里,估值也不算贵,政策红利实实在在。但保守派的担忧也不是杞人忧天,T+1制度是实实在在的约束,外资流出40亿不是小数目,连续缩量说明市场情绪在降温。\n\n我的建议是:与其非此即彼,不如把仓位控制好。\n\n具体来说,现在可以先建个底仓,比如占总仓位10-15%,不用急着重仓。然后设置一个买入条件——等它回落到420到425这个区间再加仓。这个位置是布林带中轨和ATR止损位的交汇处,技术面支撑比较扎实。如果跌不到呢?那就持有现有的底仓,至少不会踏空后面的行情。\n\n止损就设在420块,跌破就出来,不要幻想反弹。这个止损幅度大概是当前价格的4%,考虑到宁德时代的波动性,这个风险敞口是合理的。\n\n涨上去怎么办?如果反弹到460到465的前高附近,可以先减掉一半,把成本降下来。剩下的仓位设个移动止损,比如回撤5%就出。这样就算判断错了,亏不了太多;判断对了,能留住大部分利润。\n\n说实话,我不太认同现在满仓杀进去的做法。不是说这股票不好,而是市场短期情绪不明朗的时候,把仓位控制好,心态会更稳。散户最大的优势就是资金灵活,没"
|
||||
}
|
||||
@@ -1,53 +0,0 @@
|
||||
> ⚠️ **免责声明:以下内容由 AI 自动生成,仅供学习研究与技术演示,不构成任何投资建议。投资有风险,决策请咨询持牌专业机构。**
|
||||
|
||||
# 300750 宁德时代 (创业板·动力电池)
|
||||
|
||||
- **Trade Date**: 2026-05-12
|
||||
- **Run Time**: 2026-05-12 10:38
|
||||
- **Duration**: 977s (16.3 min)
|
||||
- **LLM**: MiniMax-M2.7 / M2.7-highspeed
|
||||
|
||||
## Signal: Hold
|
||||
|
||||
## Full Analysis
|
||||
|
||||
<think>
|
||||
The user wants me to engage in a debate format about investing in 300750 (宁德时代/CATL). They've asked for a "neutral" position that serves as a middle-ground between the bullish and bearish arguments. Based on the context, I need to present a balanced analysis that acknowledges both sides but advocates for a measured, tactical approach rather than extreme positions.
|
||||
|
||||
Let me craft a response that:
|
||||
1. Takes a balanced, middle-ground stance
|
||||
2. Draws specific evidence from the data provided
|
||||
3. Presents a nuanced "折中方案" (middle-ground solution)
|
||||
4. Covers technical analysis, fundamental analysis, sentiment, policy, and capital flows
|
||||
5. Provides specific, actionable guidance
|
||||
6. Is written entirely in Chinese
|
||||
7. Has a natural, conversational tone without special formatting
|
||||
|
||||
I need to be comprehensive and present all three perspectives mentioned (bullish, conservative, and my balanced/neutral stance), but the user specifically asked for my "Conservative Analyst" persona to argue for a neutral/balanced position. So my response should be the balanced view.
|
||||
|
||||
Let me structure this:
|
||||
- Opening: Acknowledge both sides have valid points
|
||||
- Technical analysis: Neutral reading
|
||||
- Fundamental analysis: Balanced assessment
|
||||
- Sentiment/capital flows: Acknowledge risks but not excessive worry
|
||||
- Policy: Stay neutral, acknowledge both support and risks
|
||||
- Actionable recommendation: Medium position, tactical approach
|
||||
- Key metrics to watch
|
||||
- Mental framework for this position
|
||||
</think>
|
||||
|
||||
我觉得两边说的都有道理,不如找个折中的方案。
|
||||
|
||||
先承认激进派的判断没错——基本面确实强劲,一季度业绩摆在那里,估值也不算贵,政策红利实实在在。但保守派的担忧也不是杞人忧天,T+1制度是实实在在的约束,外资流出40亿不是小数目,连续缩量说明市场情绪在降温。
|
||||
|
||||
我的建议是:与其非此即彼,不如把仓位控制好。
|
||||
|
||||
具体来说,现在可以先建个底仓,比如占总仓位10-15%,不用急着重仓。然后设置一个买入条件——等它回落到420到425这个区间再加仓。这个位置是布林带中轨和ATR止损位的交汇处,技术面支撑比较扎实。如果跌不到呢?那就持有现有的底仓,至少不会踏空后面的行情。
|
||||
|
||||
止损就设在420块,跌破就出来,不要幻想反弹。这个止损幅度大概是当前价格的4%,考虑到宁德时代的波动性,这个风险敞口是合理的。
|
||||
|
||||
涨上去怎么办?如果反弹到460到465的前高附近,可以先减掉一半,把成本降下来。剩下的仓位设个移动止损,比如回撤5%就出。这样就算判断错了,亏不了太多;判断对了,能留住大部分利润。
|
||||
|
||||
说实话,我不太认同现在满仓杀进去的做法。不是说这股票不好,而是市场短期情绪不明朗的时候,把仓位控制好,心态会更稳。散户最大的优势就是资金灵活,没必要跟机构比谁跑得快。用10%的仓位去试错,用条件单去捕捉更好的买点,这比一把梭哈聪明多了。
|
||||
|
||||
关键是别跟自己较劲。觉得好就轻仓先进,觉得不确定就等一等,投资不需要每天都做决定。耐心本身就是一种优势,特别是在A股这种T+1的市场里。
|
||||
@@ -1,8 +0,0 @@
|
||||
{
|
||||
"ticker": "600519",
|
||||
"label": "贵州茅台 (主板·白酒龙头)",
|
||||
"trade_date": "2026-04-30",
|
||||
"run_time": "2026-05-04T21:15:40.226353",
|
||||
"duration_seconds": 823,
|
||||
"decision_preview": "Hold"
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
> ⚠️ **免责声明:以下内容由 AI 自动生成,仅供学习研究与技术演示,不构成任何投资建议。投资有风险,决策请咨询持牌专业机构。**
|
||||
|
||||
# 600519 贵州茅台 (主板·白酒龙头)
|
||||
|
||||
- **Trade Date**: 2026-04-30
|
||||
- **Run Time**: 2026-05-04 21:15
|
||||
- **Duration**: 823s (13.7 min)
|
||||
- **LLM**: Kimi 2.6 (claude-sonnet-4-6)
|
||||
|
||||
## Final Decision
|
||||
|
||||
Hold
|
||||
Reference in New Issue
Block a user