个股诊断
工作流概览
对用户指定的A股个股进行全面诊断,输出一份结构化的HTML诊断报告。报告需注明报告日期、信息来源、作者:boluo。
诊断步骤
Step 1:确定个股所属行业
使用 FinQuery 查询该股所属的行业/申万行业分类。
示例query:
- "查询[股票名称/代码]所属的行业分类"
- "[股票名称/代码]的申万行业分类是什么"
Step 2:行业资讯与情绪分析(行业层面)
2a. 查询近1个月行业资讯
使用 NewsDataQuery 查询该行业近1个月的金融资讯。
示例query:
- "近一个月[行业名称]行业有哪些重要资讯和动态"
- "[行业名称]行业最近一个月的热点新闻"
同时使用 WebSearch 进行全网搜索补充,信息源以主流金融资讯网站和公众号为主。搜索关键词示例:
- "[行业名称] 行业 2026 最新动态"
- "[行业名称] 行业 政策 新闻"
2b. 分析行业情绪
基于收集到的行业资讯,总结分析整体情绪偏向正面还是负面。需考虑:
- 政策面:是否有利好/利空政策
- 基本面:行业景气度变化
- 事件驱动:是否有重大行业事件
Step 3:行业研究报告分析(行业层面)
使用 FinancialResearchReport 查询近半年的行业研究报告,罗列各家机构的主要观点。
示例query:
- "近半年关于[行业名称]行业的券商研报主要观点"
- "[行业名称]行业最新的研究报告和机构观点"
- "近六个月[行业名称]行业研报总结"
Step 4:个股基本信息分析(个股层面)
使用 FinQuery 查询该股票的基本信息,呈现:
- 核心经营业务
- 主要经营管理层
- 主要持仓机构
- 主要机构调研次数
示例query:
- "[股票名称/代码]的核心主营业务是什么"
- "[股票名称/代码]的高管和管理层信息"
- "[股票名称/代码]的主要机构持仓"
- "[股票名称/代码]近一年机构调研次数"
Step 5:个股财务数据分析(个股层面)
使用 FinQuery 查询近3年的财务经营数据和ROE数据。
示例query:
- "[股票名称/代码]近三年的营业收入、净利润和主营业务收入同比增长率数据"
- "[股票名称/代码]近三年的ROE数据"
- "[股票名称/代码]近三年的财务指标汇总"
注意:返回的行情数据可能包含不同交易日,必须显式核对数据中的日期字段,避免将历史数据误作当日数据。
Step 5b:同行业比较分析(个股层面)
在财务分析完成后,使用 FinQuery 查询该股票所属申万三级行业的主要可比公司,进行多维度横向对比。
示例query:
- "[股票名称/代码]所属申万三级行业的可比公司有哪些"
- "[股票名称/代码]与同行业可比公司近一年的营业收入、净利润对比"
- "[股票名称/代码]与同行业可比公司的PE、PB、PS等估值指标对比"
- "[股票名称/代码]与同行业可比公司今年以来涨跌幅对比"
比较的主要维度包括:
1. 营收对比:最近一个完整年度营业收入规模及增速
2. 净利润对比:最近一个完整年度净利润规模及增速
3. 主要估值指标对比:PE(市盈率)、PB(市净率)、PS(市销率)等当前估值水平
4. 今年以来涨跌幅对比:年初至今股价涨跌幅,判断个股在行业中的相对强弱
将对比结果以表格形式呈现,并简要分析该股票在同行业中的竞争地位和估值水平。
Step 6:个股舆情监测(个股层面)
使用 NewsDataQuery 查询该个股近期的金融资讯,判断是否有重大舆情。
示例query:
- "[股票名称/代码]近期有哪些重要新闻"
- "[股票名称/代码]最近的舆情动态"
- "[股票名称/代码]近期是否有重大事件"
Step 6b:股价异动分析(个股层面)
使用 FinQuery 查询该股票近20个交易日的日涨跌幅数据,识别是否存在异常波动(单日涨跌幅绝对值大于7%)。
示例query:
- "[股票名称/代码]近20个交易日的每日涨跌幅"
- "[股票名称/代码]最近一个月的日行情数据"
判断标准:若近20个交易日内出现单日涨跌幅绝对值≥7%,则视为异常波动,需进一步分析原因。
分析方法:
1. 列出所有异常波动日期及对应涨跌幅
2. 结合当日及前后的NewsDataQuery舆情、公司公告、行业新闻,分析异常波动的原因(如业绩公告、重大合同、政策影响、板块轮动、市场情绪等)
3. 若未发现明显异常波动,则注明"近20个交易日股价运行平稳,未出现单日涨跌幅超过7%的异常波动"
均线技术分析(必做):
以均线 MA5 为核心参考指标,同时结合 MA20、MA60,明确计算并呈现当前价格与三条均线的对比结果。
示例query:
- "[股票名称/代码]最近60个交易日的每日收盘价"
- "[股票名称/代码]近3个月的日行情数据"
计算与呈现要求:
1. 计算三条均线数值:基于最近60个交易日收盘价,分别计算 MA5(近5日收盘价均值)、MA20(近20日收盘价均值)、MA60(近60日收盘价均值)
2. 现价对比:明确列出当前价格与 MA5、MA20、MA60 的对比结果(现价高于/低于均线,偏离幅度百分比)
3. 趋势判断:以 MA5 为核心,判断短期趋势方向:
- 现价 > MA5 > MA20 > MA60:多头排列,短期强势
- 现价 < MA5 < MA20 < MA60:空头排列,短期弱势
- 现价在 MA5 附近反复穿越:震荡整理
4. 关键信号:观察 MA5 与 MA20 是否金叉/死叉,现价是否站上/跌破 MA5,作为短期买卖参考
HTML呈现(在 2.3b 股价异动分析章节内,新增"均线对比"表格):
<table>
<tr><th>指标</th><th>MA5</th><th>MA20</th><th>MA60</th><th>现价</th></tr>
<tr><td>数值(元)</td><td>[MA5]</td><td>[MA20]</td><td>[MA60]</td><td>[现价]</td></tr>
<tr><td>现价偏离(%)</td><td>[偏离MA5%]</td><td>[偏离MA20%]</td><td>[偏离MA60%]</td><td>-</td></tr>
</table>
<p><strong>均线判断:</strong>[现价相对三条均线的位置关系 + MA5核心趋势结论]</p>
Step 6c:限售解禁风险排查(个股层面)
使用 FinQuery 查询该股票未来一个月的限售股解禁计划,识别是否存在大额解禁风险。同时使用 WebSearch 搜索相关信息做交叉验证。
示例query:
- FinQuery:"[股票名称/代码]未来一个月的限售股解禁计划"
- FinQuery:"[股票名称/代码]最近即将解禁的限售股有哪些"
- WebSearch:"[股票名称] 限售解禁 2026年8月"
- WebSearch:"[股票代码] 解禁 股份"
注意:若 FinQuery 仅返回历史数据而无未来解禁计划,则以 WebSearch 结果为准。两种查询必须同时执行。
判断标准:
- 若未来一个月内存在解禁数量占流通股本比例 ≥ 5% 的解禁事件,视为大额解禁风险,需在报告中使用醒目的红色警告框高亮标识
- 若解禁比例在 1%-5% 之间,视为中等风险,使用黄色提示框
- 若解禁比例 < 1% 或未来一个月无解禁,则正常注明
呈现要点:
1. 解禁日期、解禁数量(万股)、占流通股本比例
2. 解禁股份类型(首发原股东限售/定向增发机构配售/股权激励限售等)
3. 解禁股东/机构名称
4. 风险提示:大额解禁可能导致短期抛压,尤其当解禁股东为财务投资者或持股成本较低时
HTML呈现模板(若存在大额解禁):
<div class="lockup-warn-box">
<strong>🚨 限售解禁预警 — 未来一个月内存在大额解禁:</strong>
<table>
<tr><th>解禁日期</th><th>解禁数量(万股)</th><th>占流通股本(%)</th><th>解禁类型</th><th>解禁方</th></tr>
<tr><td>[日期]</td><td>[数量]</td><td>[比例]</td><td>[类型]</td><td>[股东名称]</td></tr>
</table>
<p>以当前股价估算,解禁市值约 [金额] 亿元。限售股解禁后可能面临较大的短期抛售压力,投资者需密切关注解禁前后的股价波动风险。</p>
</div>
HTML呈现模板(若存在中等解禁):
<div class="lockup-info-box">
<strong>⚠ 限售解禁提示:</strong>未来一个月内存在[数量]万股限售股解禁(占流通股本[比例]%),解禁类型为[类型]。建议关注解禁前后的股价波动。
</div>
Step 7:生成诊断报告
7a. 综合分析
基于以上所有信息(含限售解禁风险),用一句话总结对该个股的基本判断。若存在大额解禁风险,需在总结中明确提及。
7b. 输出HTML报告
以HTML格式呈现诊断报告,报告结构如下:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>[股票名称] 个股诊断报告</title>
<style>
body { font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif; max-width: 960px; margin: 0 auto; padding: 24px; line-height: 1.7; color: #333; }
h1 { font-size: 24px; border-bottom: 2px solid #1a73e8; padding-bottom: 8px; }
h2 { font-size: 18px; color: #1a73e8; margin-top: 28px; }
h3 { font-size: 15px; color: #444; margin-top: 20px; }
.meta { color: #666; font-size: 13px; margin-bottom: 16px; }
.summary-box { background: #f0f7ff; border-left: 4px solid #1a73e8; padding: 12px 16px; margin: 16px 0; }
.positive { color: #d32f2f; }
.negative { color: #388e3c; }
.new-shareholder { background: #fff3cd; padding: 2px 6px; border-radius: 4px; font-weight: 600; }
.lockup-warn-box { background: #fff0f0; border: 2px solid #d32f2f; border-left: 6px solid #d32f2f; padding: 12px 16px; margin: 16px 0; font-size: 14px; }
.lockup-info-box { background: #fff8e1; border: 1px solid #ff8f00; border-left: 4px solid #ff8f00; padding: 10px 14px; margin: 12px 0; font-size: 13px; }
.lockup-warn-box table { background: #fff; }
.lockup-warn-box th { background: #ffebee; color: #c62828; }
table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 13px; }
th, td { border: 1px solid #ddd; padding: 8px 10px; text-align: left; }
th { background: #f5f5f5; font-weight: 600; }
.footer { margin-top: 32px; padding-top: 16px; border-top: 1px solid #ddd; font-size: 12px; color: #888; }
</style>
</head>
<body>
<h1>[股票名称] ([股票代码]) 个股诊断报告</h1>
<div class="meta">
报告日期:YYYY-MM-DD | 信息来源:恒生聚源/公开资讯/全网搜索 | 作者:boluo
</div>
<div class="summary-box">
<strong>一句话判断:</strong>[综合判断结论]
</div>
<h2>一、行业层面分析</h2>
<h3>1.1 所属行业</h3>
<p>[行业分类信息]</p>
<h3>1.2 近1个月行业资讯与情绪</h3>
<p>[行业资讯摘要]</p>
<p><strong>情绪判断:</strong>[正面/负面/中性,并说明依据]</p>
<h3>1.3 近半年行业研究报告观点</h3>
<table>
<tr><th>机构</th><th>报告时间</th><th>作者</th><th>主要观点</th><th>评级/倾向</th></tr>
<tr><td>[机构1]</td><td>[YYYY-MM-DD]</td><td>[作者]</td><td>[观点摘要]</td><td>[评级]</td></tr>
</table>
<h2>二、个股层面分析</h2>
<h3>2.1 基本信息</h3>
<p><strong>核心经营业务:</strong>[业务描述]</p>
<p><strong>主要经营管理层:</strong>[管理层信息]</p>
<p><strong>主要持仓机构:</strong>[机构持仓,对比最近两个报告期,若发现近3个月内新增进入前十大股东名单的机构或个人股东,使用 <span class="new-shareholder">股东名称</span> 高亮标注]</p>
<p><strong>近一年机构调研次数:</strong>[调研次数]</p>
<h3>2.2 近3年财务数据</h3>
<table>
<tr><th>年度</th><th>营业收入(亿元)</th><th>营收同比增长(%)</th><th>净利润(亿元)</th><th>ROE(%)</th></tr>
<tr><td>[年份1]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td></tr>
</table>
<h3>2.2b 同行业比较分析</h3>
<p><strong>可比公司选取:</strong>[所属申万三级行业]主要可比公司包括[公司名称1]、[公司名称2]、[公司名称3]等。</p>
<table>
<tr><th>公司名称</th><th>股票代码</th><th>营业收入(亿元)</th><th>净利润(亿元)</th><th>PE(TTM)</th><th>PB(LF)</th><th>今年以来涨跌幅(%)</th></tr>
<tr><td>[标的股票]</td><td>[代码]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td></tr>
<tr><td>[可比公司1]</td><td>[代码]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td><td>[数值]</td></tr>
</table>
<p><strong>竞争地位分析:</strong>[分析该股票在营收规模、盈利能力、估值水平、股价表现等方面相对于同行业的位置和优劣势]</p>
<h3>2.3 近期舆情监测</h3>
<p>[舆情摘要,是否重大]</p>
<h3>2.3b 股价异动与均线分析</h3>
<p><strong>近20个交易日波动情况:</strong></p>
<p>[列出异常波动日期及涨跌幅,或注明无异常波动]</p>
<p><strong>异动原因分析:</strong></p>
<p>[结合公告、新闻、行业事件等分析异常波动原因;若无异常则注明股价运行平稳]</p>
<p><strong>均线对比(以MA5为核心):</strong></p>
<table>
<tr><th>指标</th><th>MA5</th><th>MA20</th><th>MA60</th><th>现价</th></tr>
<tr><td>数值(元)</td><td>[MA5]</td><td>[MA20]</td><td>[MA60]</td><td>[现价]</td></tr>
<tr><td>现价偏离(%)</td><td>[偏离MA5%]</td><td>[偏离MA20%]</td><td>[偏离MA60%]</td><td>-</td></tr>
</table>
<p><strong>均线判断:</strong>[现价相对三条均线的位置关系 + MA5核心趋势结论]</p>
<h3>2.3c 限售解禁风险排查</h3>
<p>[若存在大额解禁:使用 lockup-warn-box 红色警告框;若存在中等解禁:使用 lockup-info-box 黄色提示框;若无解禁或解禁比例极小:注明"未来一个月内无大额限售解禁,解禁压力较小"]</p>
<div class="footer">
免责声明:本报告仅供参考,不构成投资建议。数据来源于公开渠道,作者不对数据准确性及投资决策负责。
</div>
</body>
</html>
关键提醒
- 所有 MCP 调用均使用自然语言 query,不需要构造复杂参数
- 财务数据查询务必核对日期字段,避免误用历史数据
- 报告必须包含:报告日期、信息来源、作者:boluo
- 情绪判断需有明确依据,不可主观臆断
- 研报观点需标注来源机构
- 限售解禁检查为必做步骤:每次诊断必须查询未来一个月限售解禁情况,大额解禁(占流通股本≥5%)必须红色警告高亮
- HTML文件保存后需向用户展示文件路径