HALO V5.0 滞胀复合分析报告
触发条件:用户要求分析某只A股股票时触发(如"分析600519"、"帮我看看亨通光电") 用法:
/halo <股票代码或名称>版本:V5.0(数据驱动 + 行业公平版)
工作流程
Step 1: 获取数据
# 激活虚拟环境
source .venv/bin/activate
# 获取量化数据(行情+财报+资金流)
python fetch_stock_data.py <股票代码> <股票名称>
# 获取定性数据(新闻+研报+公告)
python fetch_qualitative.py <股票代码> <股票名称>
脚本输出:
data/{code}.json— 量化数据(行情/三表/HALO原始值/财务比率/成长性/资金流)data/{code}_qualitative.json— 定性数据(新闻/研报/公告)
可选增强:a-stock-data 桥接
如果已安装 a-stock-data skill(43端点A股数据底座),可使用桥接脚本获得:
- 更稳定的数据获取(内置限流防封 + 备用源降级)
- 3项新增能力:龙虎榜 / 北向资金 / 融资融券
# 生成桥接配置(告诉 AI 按路由表调用 a-stock-data 端点)
python bridge_a_stock_data.py <股票代码> <股票名称>
桥接不替换原有脚本,而是作为数据路由层:a-stock-data 端点优先,失败自动 fallback 到 fetch_stock_data.py。
Step 2: 生成报告骨架(数据锁定)
# 生成骨架:所有数据从 JSON 填充,分析槽位留空
python generate_report.py <股票代码>
输出:reports/{code}_skeleton.md
- 🔒 数据层:价格/PE/PB/HALO评分/财务比率/成长性… 全部由 Python 填充,100% 来自 JSON
- ✍️ AI层:66 个
{{AI_*}}槽位,等待 AI 填充分析文字
Step 3: AI 填充分析槽位
读取 reports/{code}_skeleton.md,将所有 {{AI_*}} 槽位替换为分析文字。
关键规则:
- 绝对不能修改 🔒 数据区域——所有数字已由 Python 从 JSON 精确填充
- 只在
{{AI_*}}位置写入分析文字 - AI 分析中引用的数字必须与骨架中已有的数据一致
- 如果骨架中某数据标注
⚠️ 缺失,分析中不得编造该数据
Step 4: 保存最终报告
将填充完毕的报告保存到 reports/{code}_halo_v5.md
Step 5: 一致性校验(可选)
检查最终报告中是否有任何数字与 JSON 源数据不一致。
Step 6: Serenity 产业链集成(可选)
如果已有 Serenity 产业链扫描数据,可集成到报告中:
# 集成 Serenity 数据到报告
python integrate_serenity.py <股票代码> [serenity_json_path]
Serenity 数据格式:data/{code}_serenity.json,包含:
- 产业链位置(chain, layer, bottleneck)
- 稀缺性评级(scarcity_rating)
- 证据链(evidence[])
- 风险分析(risks)
- 产业链评分(scores)
集成效果:在报告中新增第十二章"产业链定位",展示公司在产业链中的卡点位置、证据链、风险与证伪条件。
工作流:
- 使用
/serenity或 Serenity skill 进行产业链扫描 - 输出 Serenity JSON 数据
- 运行
integrate_serenity.py集成到 HALO 报告
示例:
# 1. Serenity 扫描(假设输出 data/688019_serenity.json)
/serenity A股 AI 半导体 688019
# 2. HALO 数据获取
python fetch_stock_data.py 688019 安集科技
python fetch_qualitative.py 688019 安集科技
# 3. 生成 HALO 骨架
python generate_report.py 688019
# 4. AI 填充分析槽位(生成 reports/688019_halo_v5.md)
# 5. 集成 Serenity 数据
python integrate_serenity.py 688019
🔧 失败模式与降级策略
| 失败场景 | 表现 | 处理方式 |
|---|---|---|
| 网络不通 | ConnectionError / ProxyError | 检查网络/代理设置;脚本会输出具体失败的URL |
| 腾讯行情API失败 | 价格/PE/PB为null | JSON中标注⚠️ 缺失,报告中不得编造价格 |
| 东财公司信息失败 | F10数据缺失 | 行业/股本/员工数标注缺失,不影响核心分析 |
| 新浪财报API失败 | 三表数据为空 | 脚本输出{"error": "缺少财务数据"},停止流程,告知用户稍后重试 |
| 财务数据不足2期 | 无法计算同比 | 成长性评分降级为"数据不足,无法评估" |
| 股票名称错误 | 用户输入的代码不存在 | 腾讯API返回空,脚本提示"找不到该股票" |
| 定性数据获取失败 | 新闻/研报为空 | 消息面章节标注"数据缺失",其他章节正常 |
| Serenity数据缺失 | 无{code}_serenity.json | 第十二章留空,跳过集成步骤 |
核心原则:
- 数据缺失 → 标注
⚠️ 缺失,绝不编造 - 财务数据缺失 → 停止流程,不可继续(无数据=无分析)
- 非核心数据缺失 → 降级处理,继续生成报告
⚠️ 数据铁律
🔒 数据层(Python 锁定,AI 不碰)
- 所有数字:价格/PE/PB/市值/营收/利润/资产/负债/现金流
- 所有计算结果:HALO六维评分/财务比率/成长性评分
- 报告结构:标题/表头/表格格式/emoji
- 这些数据由
generate_report.py从 JSON 精确填充
✍️ 分析层(AI 填充)
{{AI_*}}槽位中的分析文字- 评分理由、投资建议、SWOT、总结
- 护城河/滞胀/ESG/管理层/股东/风险等定性评分
🚫 禁止行为
- AI 绝对不能修改骨架中已有的任何数字
- AI 绝对不能编造骨架中不存在的数据
- 如果骨架标注
⚠️ 缺失,分析中必须说明数据缺失,不得估算
行业分类规则
根据 halo.asset_type 字段(由 fetch_stock_data.py 自动判定):
| 类型 | 代码 | 定义 | 典型行业 |
|---|---|---|---|
| 重资产型 | heavy | 核心壁垒=物理资产 | 钢铁/煤炭/电力/银行/基建 |
| 混合型 | mixed | 物理+无形资产并重 | 医药/化工/汽车/家电/电气机械 |
| 轻资产型 | light | 核心壁垒=品牌/技术/网络 | 软件/互联网/白酒/传媒/咨询 |
分类依据:固定资产占总资产比例 + 行业特性
评分框架
🔷 HALO 六维评分(5分制)
六维度 + 权重:
| # | 维度 | 公式 | 权重 |
|---|---|---|---|
| 1 | 有形资产密集度 | (固定资产+在建工程+存货)/总资产 | 20% |
| 2 | 固定资产密集度 | 固定资产/营业收入 | 15% |
| 3 | 固定资产份额 | 固定资产/总资产 | 15% |
| 4 | 资本-劳动力比率 | 有形资产/员工数 | 15% |
| 5 | Capex密集度 | Capex/营业收入 | 15% |
| 6 | Capex负担 | Capex/经营现金流 | 20% |
评分阈值(按行业类型)
3.1 有形资产密集度:
| 重资产 | 混合型 | 轻资产(用核心资产) | 评分 |
|---|---|---|---|
| ≥80% | ≥70% | ≥60% | 5 |
| 60-80% | 50-70% | 40-60% | 4 |
| 40-60% | 30-50% | 20-40% | 3 |
| 20-40% | 15-30% | 10-20% | 2 |
| <20% | <15% | <10% | 1 |
轻资产型"核心资产" = 固定资产+在建工程+存货+无形资产+商誉+数据资产
3.2 固定资产密集度:
| 重资产 | 混合型 | 轻资产 | 评分 |
|---|---|---|---|
| ≥100% | ≥60% | ≥30% | 5 |
| 80-100% | 40-60% | 15-30% | 4 |
| 60-80% | 20-40% | 5-15% | 3 |
| <60% | <20% | <5% | 2 |
3.3 固定资产份额:(通用标准)
| ≥25%:5 | 15-25%:4 | 8-15%:3 | 4-8%:2 | <4%:1 |
3.4 资本-劳动力比率:(通用标准,万元/人)
| ≥200:5 | 100-200:4 | 50-100:3 | 20-50:2 | <20:1 |
3.5 Capex密集度:
| 重资产 | 混合型 | 轻资产 | 评分 |
|---|---|---|---|
| ≥15% | ≥10% | ≥5% | 5 |
| 10-15% | 5-10% | 2-5% | 4 |
| 5-10% | 2-5% | 0.5-2% | 3 |
| <5% | <2% | <0.5% | 2 |
3.6 Capex负担:(通用标准)
| <5%:5 | 5-15%:4 | 15-30%:3 | 30-50%:2 | >50%:1 |
⚠️ 如果经营现金流为负,Capex负担评为1分(最差),并标注警示
HALO总分 = Σ(维度分 × 权重),评级:≥4.0极强 | 3.0-4.0强 | 2.0-3.0中等 | <2.0弱
🌱 成长性评分(10分制)
四个子维度,各25%权重:
| # | 子维度 | 评分参考 |
|---|---|---|
| 1 | 营收增长 | 同比>30%:9 |
| 2 | 利润增长 | 同上 |
| 3 | 增长质量 | 有机增长/非杠杆/主营驱动/现金流匹配 |
| 4 | 增长持续性 | 行业增速/市场空间/研发投入/新业务储备 |
成长性总分 = Σ(子维度 × 25%),评级:≥8.0极强 | 6.5-8.0强 | 5.0-6.5中等 | <5.0弱
🏰 低淘汰率/护城河评分(10分制)
五个子维度,各20%权重:
| # | 子维度 | 评分锚点 |
|---|---|---|
| 1 | 技术迭代风险 | 技术越不可颠覆→分越高 |
| 2 | 客户粘性 | 转换成本越高→分越高 |
| 3 | 竞争格局 | 寡头/垄断→分越高 |
| 4 | 产品差异化 | 越不可替代→分越高 |
| 5 | 进入壁垒 | 壁垒越多重→分越高 |
量化锚点(辅助AI判断):
- 毛利率 > 行业均值+15pp → +2分
- ROE 连续5年>15% → +2分
- 市场份额 Top3 → +2分
- 品牌溢价(终端价/出厂价) > 1.5x → +1分
评级:≥8.0极强 | 6.5-8.0强 | 5.0-6.5中等 | <5.0弱
🛡️ 滞胀防御评分(10分制)
五个子维度,各20%权重:
| # | 子维度 | 评分锚点 |
|---|---|---|
| 1 | 实物资产密集度 | 有形资产占比越高→分越高 |
| 2 | 通胀转嫁能力 | 毛利率越高+定价权越强→分越高 |
| 3 | 现金流与股息 | CF/净利润>0.8+股息率>2%→分越高 |
| 4 | 债务结构健康度 | 负债率<50%+流动比率>2→分越高 |
| 5 | 战略安全属性 | 涉及国防/能源/民生→分越高 |
评级:≥8.0极强 | 6.5-8.0强 | 5.0-6.5中等 | <5.0弱
🌍 ESG评分(10分制)
| 子维度 | 权重 | 评分锚点 |
|---|---|---|
| 环境(E) | 33% | 环保投入/碳排放/环保处罚记录 |
| 社会(S) | 33% | 员工福利/产品质量/社会贡献 |
| 治理(G) | 34% | 信披规范/独董制度/分红政策/管理层稳定性 |
评级:≥8.0极强 | 6.5-8.0强 | 5.0-6.5中等 | <5.0弱
👔 管理层质量评分(10分制)
| 子维度 | 权重 | 评分锚点 |
|---|---|---|
| 战略能力 | 30% | 战略方向是否清晰/执行力 |
| 资本配置 | 25% | ROE水平/分红率/并购记录 |
| 激励一致性 | 20% | 管理层持股/薪酬合理性 |
| 诚信记录 | 25% | 监管处罚/审计意见/信披合规 |
评级:≥8.0极强 | 6.5-8.0强 | 5.0-6.5中等 | <5.0弱
💰 股东资金面评分(10分制)
| 子维度 | 权重 | 评分锚点 |
|---|---|---|
| 股东结构 | 25% | 控股股东稳定性/筹码集中度 |
| 北向资金 | 25% | 持仓变化趋势 |
| 主力资金 | 25% | 近5日/30日主力净流入 |
| 融资动态 | 25% | 融资余额变化 |
评级:≥8.0极强 | 6.5-8.0强 | 5.0-6.5中等 | <5.0弱
⚠️ 风险评估(10分制,越低越好)
| 风险类别 | 权重 | 评分锚点 |
|---|---|---|
| 财务风险 | 25% | 负债率/流动比率/CF净利润 |
| 经营风险 | 20% | 行业周期/竞争格局 |
| 政策风险 | 15% | 行业监管/政策依赖度 |
| 治理风险 | 15% | 信披/管理层稳定性 |
| 估值风险 | 15% | PE历史分位 |
| 宏观风险 | 5% | 经济周期敏感度 |
| 舆情风险 | 5% | 近期负面新闻 |
综合风险 = Σ(子维度 × 权重) 评级:<3低风险 | 3-5中等风险 | 5-7较高风险 | >7高风险
💵 估值吸引力评分(10分制)
综合 PE/PB/PS/DCF/股息率 多维度评估:
- PE处于历史低位+低于行业中位数 → 高分
- PE处于历史高位+远高于行业中位数 → 低分
评级:≥8.0极有吸引力 | 6.5-8.0有吸引力 | 5.0-6.5中性 | <5.0偏贵
综合评分公式
综合评分 = HALO归一化(÷5×10)×15%
+ 成长性×15%
+ 护城河×15%
+ 滞胀防御×10%
+ ESG×10%
+ 管理层×10%
+ 股东资金面×5%
+ 估值吸引力×10%
- 风险×10%
评级:≥8.0极强 | 6.5-8.0强 | 5.0-6.5中等 | <5.0弱
报告结构(11章)
📋 第零章:执行摘要
├─ 8维评分卡片
├─ 实时估值(价格/PE/PB/市值/股息率)
├─ 投资评级 + 目标价
└─ 3条核心投资逻辑
📊 一、公司概况
├─ 基本信息表(名称/行业/股本/市值/管理层/员工数)
├─ 主营业务结构(业务板块/营收占比/毛利率)
└─ 核心竞争优势(3个优势+分析)
📰 二、最新基本面与消息面
├─ 利好因素表(5条左右)
├─ 利空因素表(2-3条)
└─ 消息面综合判断
🔷 三、HALO六维分析
├─ 6个子维度各含:数据表+评分标准+AI分析
└─ 评分汇总表
🌱 四、成长性分析
├─ 营收增长(含同比数据)
├─ 利润增长
├─ 增长质量(4项评估)
└─ 增长持续性(4项评估)
🏰 五、低淘汰率/护城河
└─ 5个子维度各含评分+分析
🛡️ 六、滞胀防御
└─ 5个子维度各含评分+分析
🌍 七、ESG评估
└─ E/S/G各含评分+分析
👔 八、管理层质量
└─ 4个子维度各含评分+分析
💰 九、股东与资金面
└─ 4个子维度各含评分+分析
⚠️ 十、风险评估
├─ 7类风险矩阵
└─ 综合风险评估表
💡 十一、综合评估与投资建议
├─ 11维综合评级表
├─ 综合评分计算过程
├─ 投资建议(评级/仓位/期限)
├─ 分投资者类型建议
├─ 估值分析(PE/DCF/PB多种方法)
├─ SWOT分析
└─ 总结 + 关键跟踪指标
格式规范
- 严禁使用 HTML 标签,全部使用 Markdown 原生格式
- 表格使用 Markdown 表格语法
- 评分用 emoji 标识等级:🟢极强 ≥8.0 | 🟡强 6.5-8.0 | 🟠中等 5.0-6.5 | 🔴弱 <5.0
- 数据来源标注在表格"来源"列
- 报告末尾包含免责声明 + 有效期(30日)
输出要求
- 报告保存到
reports/{code}_halo_v5.md - 报告开头标注:分析日期/行业/资产类型/模板版本
- 数据来源表格列出四层:行情层(腾讯)/信息层(东财)/财务层(新浪)/舆情层(搜索)
- 所有金额单位:亿元(保留2位小数)
- 百分比保留2位小数
- 评分保留1位小数
评论
加载中…