银行理财产品健诊 Skill v1.3
定位
银行客户经理/理财经理使用的客户银行理财产品持仓健诊工具。聚焦银保监体系下的银行理财产品(含理财子公司产品),与基金健诊(fund-diagnosis-v2)互补,共同覆盖客户全品类投资资产。
适用范围
✅ 适用产品:
- 银行理财产品(含理财子公司产品)
- 资管新规后的净值型理财
- 封闭式/定开式/现金管理类理财
❌ 不适用:
- 公募基金 → 使用 fund-diagnosis-v2
- 保险产品 → 使用保单健诊
- 信托产品 → 仅在资产配置skill中做简化穿透
- 存款类 → 无需健诊
刚性约束总则
- 🚫 禁止虚拟数据:任何数据必须来自真实查询或用户确认,禁止编造、模拟、幻想
- 🚫 禁止跳过信息查询:必须执行产品信息查询步骤,不可因"信息难获取"而跳过
- 🚫 禁止改变规则:健诊规则以 references/健诊规则.json 为准,AI不得自行调整阈值或判断标准
- 🚫 禁止替换用户持仓产品:分析的产品必须是用户在Step 2中确认的产品清单,不得增删替换。如搜索中发现用户提供的产品名称可能有误,必须回到用户确认,禁止自行替换为"同类"产品
- 🚫 净值/到期日/穿透比例不可缺失:三项核心数据均不得用估算或规则映射替代,无法自动获取时须请客户手工下载后处理
- ✅ 强制数据溯源标注:每项数据必须标注来源(✅真实 / ⚠️估算 / ❌未获取)
- ✅ 强制用户确认:关键信息展示后必须等用户确认,方可进入分析环节
- ✅ 强制风险适配检查:每个产品必须检查风险等级与客户风险承受能力是否适配
- ✅ 信息不完整时必须声明:无法获取准确信息时直接声明"信息不齐全",不得用估算替代
- ✅ 强制收集全部产品信息:3.2中所有产品信息项均为必须收集和分析,缺失项须在报告中逐项说明
- ✅ 报告产品清单校验:Step 5生成报告前必须校验报告中的产品清单与Step 2用户确认的产品清单完全一致(名称、金额、数量),如有不一致必须修正后方可输出
- ✅ 穿透后资产配置比例必须来自定期公告原文:禁止用规则默认映射替代,组合大类资产配置比例必须按每个产品的真实穿透比例加权计算
执行流程
Step 1:收集客户信息
必须收集的信息:
| 信息项 | 是否必须 | 收集方式 | 说明 |
|---|---|---|---|
| 持仓产品清单 | ✅必须 | 文字输入/截图 | 产品名称或代码 + 持有金额或份额 |
| 风险承受能力 | ✅必须 | 文字选择/截图 | C1-C5 或 保守/稳健/平衡/成长/进取 |
| 现金流需求 | 可选 | 自然语言 | 需从理财资产中提取现金的时间、金额 |
持仓输入格式(推荐):
产品名称/代码 | 持有金额(万元) 或 持有份额(万份)
截图支持:
- 手机银行理财持仓截图
- 网上银行理财持仓截图
- AI解析截图内容后,必须逐项与用户确认
风险承受能力映射:
| 测评结果 | 标准等级 | 代码 |
|---------|---------|------|
| 保守型 | C1 | R1 |
| 稳健型 | C2 | R2 |
| 平衡型 | C3 | R3 |
| 成长型 | C4 | R4 |
| 进取型 | C5 | R5 |
现金流需求处理规则:
- 支持自然语言输入,如"3个月后要用20万"、"每月需要1万生活费"
- AI必须将自然语言解析为结构化格式:{时间点, 金额}
- 如无法理解用户意图,必须通过问答互动澄清,禁止模拟、假设
- 用户未提供则默认为不需要从理财资产中提取现金
Step 2:整理确认客户信息
目的: 将收集到的信息整理为结构化数据,供用户核对确认。
输出格式:
【客户信息确认表】
一、风险承受能力
风险等级:C{X} / {等级名称}
二、持仓产品清单
| 序号 | 产品名称 | 产品代码(如有) | 持有金额(万) | 持有份额(万份) |
|------|---------|--------------|-------------|--------------|
| 1 | | | | |
三、现金流需求
| 序号 | 预计提取时间 | 提取金额(万) | 用途(如有) |
|------|------------|-------------|-----------|
| | | | |
(未提供则显示:暂无现金流需求)
确认规则:
1. 展示上述确认表后,必须等待用户确认
2. 用户指出差错时修改后必须再次确认
3. 客户持仓、风险承受能力测评结果必须能从用户提供的信息解读出准确信息,不能模拟、假设
4. 现金流需求不能模拟、假设,如无法明白用户自然语言指令应通过与用户问答互动解决
5. 🚫 未经用户确认,不得进入Step 3
6. 🔒 产品清单锁定规则:用户确认后的产品清单即为本次健诊的分析对象,后续步骤中:
- 禁止增减产品:不得添加用户未持有的产品,不得遗漏用户持有的产品
- 禁止替换产品:即使用户提供的产品名称在搜索中发现可能有误或为简称,也不得自行替换为"更准确的"产品,必须回到用户确认
- 搜索结果匹配校验:Step 3搜索到的产品信息必须与用户确认的产品名称/代码严格匹配,如搜索结果与用户提供的名称差异较大,应向用户确认是否为同一产品
- 将确认后的产品清单作为常量传递至后续所有步骤
Step 3:产品信息查询
目的: 从权威渠道获取产品完整信息。
3.1 查询优先级
| 优先级 | 渠道 | 数据类型 | 可用性 |
|---|---|---|---|
| 1 | 中国理财网 chinawealth.com.cn | 产品登记信息、净值公告、定期报告 | ✅ WebFetch |
| 2 | 产品发行机构官网 | 产品说明书、发行公告、净值公告、定期报告 | ✅ WebFetch/WebSearch |
| 3 | 代销银行官网/APP公开信息 | 产品详情、发行公告、净值披露 | ✅ WebFetch/WebSearch |
| 4 | 主流财经媒体/行业自律机构 | 产品相关新闻、政策 | ✅ WebSearch |
| 5 | akshare Python库 | 仅宏观数据(发行量),无产品级数据 | ⚠️ 有限 |
各关键数据的优先查找路径:
| 关键数据 | 第一优先 | 第二优先 | 第三优先 | 无法获取时的处理 |
|---|---|---|---|---|
| 最新净值 + 净值日期 | 中国理财网产品详情页 | 发行机构官网净值公告 | 代销银行官网披露信息 | 不得缺失。如网站限制无法自动获取,提供对应网址请客户手工下载后发送给我处理 |
| 到期日/下次开放日 | 发行文件(产品说明书) | 中国理财网产品登记信息 | 发行机构官网产品介绍页 | 不得缺失。如三个渠道均无法获取,提供网址请客户手工下载发行文件后发送给我处理 |
| 穿透后资产配置比例 | 最近一期定期公告(季报/年报) | 中国理财网披露的定期报告 | 发行机构官网定期报告 | 必须来自定期公告原文,禁止估算或用规则映射替代。如确实无法获取,标注❌并在报告中声明对组合分析的影响 |
| 前十大持仓资产 | 最近一期定期公告 | 中国理财网定期报告 | 发行机构官网定期报告 | 同穿透后资产配置比例 |
> ⚠️ 刚性要求(新增):
> 1. 净值数据(最新净值+净值日期)不可缺失:三个优先渠道均无法自动获取时,必须提供对应网址,请客户手工下载净值公告后发送给我处理,不得用估算值或规则映射值替代。
> 2. 到期日/下次开放日不可缺失:三个渠道均无法获取时,必须提供网址请客户手工下载发行文件后发送给我处理,不得留空或估算。
> 3. 穿透后资产配置比例不可缺失:必须来自最近一期定期公告原文。如确实无法获取定期公告,标注❌并在报告中声明对组合分析的具体影响,禁止用规则默认映射替代。组合的大类资产配置比例必须按每个产品的真实穿透比例加权计算,不得使用映射估算值。
🚫 禁止使用的渠道:
- 社交媒体(微博、小红书、抖音等)
- 论坛类(贴吧、雪球讨论区等)
- 百科类(百度百科、维基百科等)
- 个人博客、自媒体号
3.2 必须收集的产品信息
> ⚠️ 刚性要求:以下所有信息项均为必须收集和分析,不得跳过任何项目。如经搜索后确实无法获取某项信息,必须在最终报告中逐项说明缺失情况及对分析结论的影响。
| 信息项 | 来源 | 是否可缺失 | 说明 |
|---|---|---|---|
| 产品全称 | 中国理财网 | ❌不可缺失 | 以登记名称为准 |
| 产品代码 | 中国理财网 | ❌不可缺失 | 统一产品编码 |
| 产品类型 | 中国理财网/发行文件 | ❌不可缺失 | 固收/混合/权益/商品及金融衍生品类 |
| 风险等级 | 中国理财网 | ❌不可缺失 | PR1-PR5 |
| 发行机构 | 中国理财网 | ❌不可缺失 | 理财公司/银行 |
| 成立日期 | 中国理财网 | ❌不可缺失 | |
| 产品期限 | 发行文件 | ❌不可缺失 | 封闭式/定开式/最短持有期/现金管理类 |
| 开放周期 | 发行文件 | ❌不可缺失 | 每日开放/每周/每月/季度/年度/到期 |
| 到期日/下次开放日 | 发行文件/中国理财网 | ❌不可缺失 | 封闭式填到期日,定开式填下次开放日,现金管理类填"每日开放" |
| 最新净值 | 中国理财网/发行机构官网 | ❌不可缺失 | |
| 净值日期 | 同最新净值来源 | ❌不可缺失 | |
| 业绩比较基准 | 发行文件 | ⚠️尽量获取 | |
| 成立以来年化收益 | 中国理财网/计算 | ⚠️尽量获取 | |
| 资产配置比例(穿透后) | 定期公告原文 | ❌不可缺失 | 必须来自最近一期定期公告原文,禁止用规则映射或估算替代 |
| 前十大持仓资产 | 定期公告原文 | ❌不可缺失 | 必须来自最近一期定期公告原文 |
| 产品规模 | 中国理财网/定期公告 | ⚠️尽量获取 | |
| 管理费率 | 发行文件 | ⚠️尽量获取 | |
| 申购/赎回费率 | 发行文件 | ⚠️尽量获取 |
> ⚠️ 刚性要求(净值/到期日/穿透比例不可缺失):
> 1. 净值数据(最新净值+净值日期)不可缺失:三个优先渠道(中国理财网→发行机构官网→代销银行官网)均无法自动获取时,必须提供对应网址,请客户手工下载净值公告后发送给我处理,不得用估算值或规则映射值替代。
> 2. 到期日/下次开放日不可缺失:发行文件→中国理财网→发行机构官网三个渠道均无法获取时,必须提供网址请客户手工下载发行文件后发送给我处理,不得留空或估算。
> 3. 穿透后资产配置比例不可缺失:必须来自最近一期定期公告原文。如确实无法获取定期公告,标注❌并在报告中声明对组合分析的具体影响,禁止用规则默认映射替代。组合的大类资产配置比例必须按每个产品的真实穿透比例加权计算,不得使用映射估算值。
信息缺失处理规则:
- 每项信息查询后必须标注获取状态:✅已获取 / ❌未获取(附原因)
- ❌未获取的项目不得跳过分析,应在分析中以"信息不齐全"声明该维度的分析局限
- 最终报告中需单列"信息完整性声明",逐项说明缺失信息及其对分析结论的影响
3.3 必须收集的补充信息
| 信息项 | 来源 | 收集深度 | 说明 |
|---|---|---|---|
| 最近4个季度定期公告 | 中国理财网/发行机构 | 必须查询 | 关注资产配置变化,穿透后资产配置比例和前十大持仓必须来自这些公告原文 |
| 产品和管理人网络舆论 | WebSearch(限权威来源) | 必须查询 | 监管处罚/违规/重大负面 |
| 管理人最新公告 | 管理人官网 | 推荐查询 | 对产品有影响的公告 |
| 代销银行最新公告 | 代销银行官网 | 推荐查询 | 关于产品或理财销售的公告 |
3.4 数据质量要求
- 优先从指定网站获取,无法获取时才可网络搜索
- 网络搜索仅限:监管机构、行业自律机构、主流财经媒体、各银行官方网站
- 无法从权威来源获取时,必须重新与用户确认产品信息是否有误
- 禁止模拟、幻想,确实无法获得准确信息时直接声明信息不齐全
- 净值数据不可缺失:中国理财网→发行机构官网→代销银行官网,三个渠道均无法自动获取时,提供网址请客户手工下载净值公告后发送给我处理,严禁用估算值或规则映射值填充净值字段
- 到期日/下次开放日不可缺失:发行文件→中国理财网→发行机构官网,三个渠道均无法获取时,提供网址请客户手工下载发行文件后发送给我处理,严禁留空或估算
- 穿透后资产配置比例必须来自定期公告原文:中国理财网定期报告→发行机构官网定期报告,必须获取最近一期定期公告原文中的穿透后大类资产比例,严禁用规则默认映射表填充该字段。如确实无法获取,标注❌并在报告中声明对组合分析的影响
- PDF无法解析时的备用处理流程:见下方 3.4.1
3.4.1 PDF无法解析备用处理流程
定期公告、发行文件等文件通常以PDF格式发布,WebFetch有时无法直接解析PDF内容(如返回空白、乱码或"无法解析文档"等错误)。此时按以下流程处理:
触发条件:
WebFetch获取到的URL内容为PDF文件,且出现以下任一情况:
- 返回内容为空或极少(<200字符)
- 返回内容含乱码,无法提取有效数据
- 明确报错无法解析PDF格式
处理流程:
第一步:尝试直接获取PDF链接
→ 使用 WebFetch 访问 PDF URL
→ 如解析成功,继续正常流程
→ 如解析失败(空白/乱码/报错),进入第二步
第二步:尝试Python requests下载PDF到本地
→ 使用 Python requests 库将PDF下载至工作区
→ 示例:
import requests
url = "https://example.com/report.pdf"
r = requests.get(url, headers={"User-Agent": "Mozilla/5.0"}, timeout=30)
with open("/workspace/temp_report.pdf", "wb") as f:
f.write(r.content)
→ 下载成功后,使用 Read 工具读取本地PDF文件(WorkBuddy支持读取PDF)
第三步:如Python下载失败(403/反爬/需登录)
→ 向用户说明情况,提供PDF文件的直接URL
→ 请用户手工下载后,通过对话上传/发送PDF文件或将文件路径告知我
→ 我使用 Read 工具直接读取用户提供的本地路径
第四步:如PDF文件需要登录才能访问(如需账号的银行系统)
→ 说明哪些信息需要从PDF中提取(见下方数据提取模板)
→ 请客户直接提取相关数据以文字形式告知,或截图发送
PDF数据提取模板(供客户参考):
当需要客户手工从PDF提取数据时,提示客户提供以下信息:
从定期公告中,我需要以下内容:
1. 报告期末资产配置情况(大类资产比例):
- 固定收益类资产(债券等)占比:____%
- 权益类资产(股票等)占比:____%
- 货币市场工具(现金等)占比:____%
- 其他资产占比:____%
2. 前十大持仓资产明细(资产名称 + 金额/占比)
3. 报告期末产品规模(亿元)
从产品说明书/发行文件中,我需要:
1. 产品到期日(封闭式)或下次开放日(定开式)
2. 开放周期
3. 业绩比较基准
> ⚠️ 刚性要求:PDF解析失败不等于信息缺失,必须按上述流程逐步尝试本地下载和请用户协助,不得直接标注❌放弃获取。只有第三、四步均告失败时,才可标注❌并声明信息不齐全。
3.5 信息查询结果展示
【产品信息查询结果】
产品{序号}:{产品名称}
| 信息项 | 查询结果 | 数据来源 | 可信度 |
|-------|---------|---------|-------|
| 产品全称 | | | ✅/⚠️/❌ |
| 产品代码 | | | ✅/⚠️/❌ |
| 最新净值 | | | ✅/❌(不可缺失)|
| 净值日期 | | | ✅/❌(不可缺失)|
| 到期日/下次开放日 | | | ✅/❌(不可缺失)|
| 资产配置比例(穿透后) | | | ✅/❌(不可缺失,必须来自定期公告原文)|
| 前十大持仓资产 | | | ✅/❌(不可缺失,必须来自定期公告原文)|
| ... | | | |
补充信息收集情况:
- 定期公告:✅已获取 X 个季度 / ❌未获取(原因)
- 网络舆论:✅无负面 / ⚠️发现关注点 / ❌未查询
- 管理人公告:✅无重大影响 / ⚠️发现关注点 / ❌未查询
🚫 未完成所有产品的信息查询前,不得进入Step 4。信息严重不齐全的产品应在报告中单独标注。
Step 4:分析评估
4.1 单一产品分析(每个产品必须完成)
维度1:风险适配性检查
| 检查项 | 规则 | 结论 |
|---|---|---|
| 产品风险等级 vs 客户风险承受能力 | 产品PR等级 ≤ 客户C等级 → 适配 | 适配/不适配 |
| 客户C1持有PR2及以上 | 不适配,属于超风险销售 | ⚠️ 严重关注 |
| 客户C2持有PR3及以上 | 不适配 | ⚠️ 关注 |
| 客户C3持有PR4及以上 | 不适配 | ⚠️ 关注 |
| 客户C4持有PR5 | 不适配 | ⚠️ 关注 |
维度2:流动性与现金流需求匹配
| 检查项 | 规则 | 结论 |
|---|---|---|
| 产品开放周期 vs 现金流需求时间 | 产品最近开放日 ≤ 需求时间 → 匹配 | 匹配/不匹配 |
| 封闭式产品未到期需提现 | 存在流动性风险 | ⚠️ 关注 |
| 定开产品下次开放日在需求时间之后 | 存在流动性风险 | ⚠️ 关注 |
| 现金管理类用于短期需求 | 匹配 | ✅ 合理 |
维度3:投资策略一致性检查
| 检查项 | 数据来源 | 关注点 |
|---|---|---|
| 穿透后大类资产比例 vs 产品类型定位 | 定期公告原文 | 偏离产品定位(如固收类产品权益仓位异常偏高) |
| 前十大持仓资产 | 定期公告原文 | 是否存在负面信息、集中度过高 |
| 资产配置趋势变化 | 连续季度公告 | 是否出现策略漂移(如固收类逐步增加权益暴露) |
偏离度判断标准(参考资产配置skill):
- 轻度偏离(5%-10%):建议关注
- 中度偏离(10%-20%):建议调整
- 重度偏离(>20%):建议立即关注
维度4:业绩评估
| 检查项 | 评估方法 | 关注点 |
|---|---|---|
| 累计年化收益 vs 业绩基准 | 对比偏离程度 | 大幅低于基准需关注 |
| 净值波动情况 | 净值走势分析 | 异常波动(如固收类净值大幅回撤) |
| 份额变动 | 定期公告规模变化 | 规模大幅缩减可能预示风险 |
| 同类产品对比 | 参考同类产品收益水平 | 持续落后同类需关注 |
收益偏离判断标准:
- 业绩基准为区间值时:实际收益落在区间内 → 合理;偏离区间 → 需关注
- 业绩基准为单一值时:偏离超过1个百分点 → 需关注
维度5:管理人评估
| 检查项 | 关注点 | 严重程度 |
|---|---|---|
| 监管处罚 | 对管理人全面影响的处罚 | 🔴 高 |
| 违法违规事件 | 影响投资能力和盈利的事件 | 🔴 高 |
| 行业市场波动/政策调整 | 对其投资策略的影响 | 🟡 中 |
| 负面评价 | 对投资能力和盈利的负面评价 | 🟡 中 |
| 管理人重大变更 | 高管变动、核心投研人员离职 | 🟡 中 |
维度6:其他风险信息
- 收集到的其他信息是否需要进行风险提示
- 产品是否有特殊条款(如提前终止权、巨额赎回限制等)
4.2 产品组合分析
分析1:穿透后大类资产配置
> ⚠️ 刚性要求:穿透后大类资产配置比例必须来自每个产品的定期公告原文,禁止用规则默认映射表。组合大类资产配置比例必须按每个产品的真实穿透比例加权计算。
| 步骤 | 操作 | 说明 |
|---|---|---|
| 1 | 从每个产品的定期公告原文中获取穿透后大类资产比例 | 必须来自定期公告原文,禁止使用规则映射表 |
| 2 | 加权计算组合大类资产占比 | 各产品金额 × 该产品定期公告中的真实穿透比例 / 总金额 |
| 3 | 与客户风险等级目标配置对比 | 参考风险等级配置.json |
| 4 | 计算偏离度 | 逐项计算偏离 |
⚠️ 标注要求: 穿透数据来自定期公告原文标注 ✅,如确实无法获取定期公告则标注 ❌并在报告中声明对组合分析的影响,严禁标注 ⚠️(估算)。
分析2:流动性匹配度
| 分析项 | 方法 | 评价标准 |
|---|---|---|
| 投资现金流计算 | 按产品开放周期计算最近可变现时间和金额 | 覆盖需求 → 匹配 |
| 流动性覆盖率 | 可快速变现资产 / 现金流需求总额 | ≥100% → 充足 |
| 流动性缺口 | 需要变现但未到开放期的资产金额 | 0 → 无缺口 |
分析3:组合健康度
| 检查项 | 问题类型 | 判断标准 |
|---|---|---|
| 分散度 | 假分散 | 多个产品穿透后底层资产高度重叠(同一管理人同类策略产品过多) |
| 分散度 | 过度分散 | 持有8个以上理财产品,管理成本>收益改善 |
| 分散度 | 过度集中 | 单一产品占组合>50%,或同一管理人产品占组合>70% |
| 相关性 | 高度相关 | 多个产品底层资产配置结构相似,无法实现分散效果 |
Step 5:生成报告
5.0 报告生成前校验(必须执行)
> ⚠️ 刚性要求:生成报告前必须完成以下校验,校验不通过则不得输出报告。
产品清单一致性校验:
【校验清单】
Step 2 用户确认的产品清单:
| 序号 | 产品名称 | 持有金额 |
| 1 | {产品A} | {金额} |
| 2 | {产品B} | {金额} |
...
本次报告拟包含的产品清单:
| 序号 | 产品名称 | 持有金额 |
| 1 | {产品A} | {金额} |
| 2 | {产品B} | {金额} |
...
校验结果:
- 产品数量:确认 {N}只 = 报告 {M}只 → ✅一致 / ❌不一致
- 产品名称:逐一比对 → ✅一致 / ❌{具体差异}
- 持有金额:逐一比对 → ✅一致 / ❌{具体差异}
校验规则:
1. 报告中的产品数量必须与Step 2确认的产品数量完全一致
2. 报告中每个产品的名称必须与Step 2确认的名称一致(允许因查询获得正式全称而补充,但核心关键词不得变更)
3. 报告中每个产品的持有金额必须与Step 2确认的金额一致
4. 如发现报告中出现用户未持有的产品,必须立即删除并修正
5. 如发现报告中遗漏了用户持有的产品,必须补充分析
6. 校验通过后方可生成报告,校验不通过必须修正后重新校验
5.1 报告结构
# 银行理财产品健诊报告
## 一、客户与持仓概况
- 客户风险承受能力:C{X} / {等级名称}
- 持仓产品数量:{N}只
- 持仓总金额:{XX.XX}万元
- 现金流需求:{有/无}(如有则列明明细)
## 二、产品基本信息
| 序号 | 产品名称 | 产品代码 | 类型 | 风险等级 | 最新净值 | 净值日期 | 到期日/下次开放日 | 开放周期 | 累计年化 | 业绩基准 |
|------|---------|---------|------|---------|---------|---------|-----------------|---------|---------|---------|
## 三、逐产品分析结论
### 产品{N}:{产品名称}
#### 3.{N}.1 风险适配性
产品风险等级PR{X} vs 客户风险承受能力C{Y} → {适配/不适配}
{如不适配,说明具体风险}
#### 3.{N}.2 流动性匹配
{产品开放周期与现金流需求的匹配情况}
#### 3.{N}.3 投资策略一致性
{穿透后资产配置与产品定位的偏离分析,数据来自定期公告原文}
{前十大持仓分析,数据来自定期公告原文}
{策略漂移分析(如有)}
#### 3.{N}.4 业绩评估
累计年化收益 vs 业绩基准:{偏离情况}
净值波动:{正常/异常}
份额变动趋势:{稳定/缩减/增长}
同类对比:{优秀/良好/一般/落后}
#### 3.{N}.5 管理人评估
{管理人负面信息检查结果}
{如有发现,按严重程度标注}
#### 3.{N}.6 其他风险提示
{特殊条款、其他关注点}
#### 3.{N}.7 综合评价
综合结论:{正常/需关注/建议调整}
## 四、产品组合分析结论
### 4.1 大类资产配置分析
(必须按每个产品的定期公告原文中的真实穿透比例加权计算,禁止使用规则映射表)
| 资产类别 | 当前占比 | 目标占比(C{X}) | 偏离度 | 评价 |
|---------|---------|----------------|-------|------|
| 权益类 | | | | |
| 固收类 | | | | |
| 货币类 | | | | |
### 4.2 流动性匹配分析(投资现金流时间线)
**投资现金流时间线说明:** 以时间轴方式展示所有持仓产品的到期/开放时间和对应金额,与客户现金流需求对照。
【投资现金流时间线】
时间轴 ──────────────────────────────────────────────────────►
当前 1个月 3个月 6个月 1年 2年 3年
│ │ │ │ │ │ │
│ ┌──────┤ ┌─────┤ │ ┌─────┤ │ │
│ │产品A │ │产品C│ │ │产品B│ │ │
│ │5万 │ │10万 │ │ │20万 │ │ │
│ │(月开)│ │(季开)│ │ │(年开)│ │ │
│ └──────┘ └─────┘ │ └─────┘ │ │
│ │ │ │
│ ▼ 需求1: 3个月后8万 │ ▼ 需求2: ... │ │
│ ─────────○ │ ───────○ │ │
可变现金额汇总:
| 时间点 | 可变现产品 | 可变现金额 | 现金流需求 | 覆盖情况 |
|-------|-----------|-----------|-----------|---------|
| 1个月内 | 产品A(月开) | 5万 | - | ✅ 充裕 |
| 3个月 | 产品A+产品C | 15万 | 8万 | ✅ 覆盖 |
| 6个月 | 产品A+产品C | 15万 | - | ✅ |
| 1年 | 产品A+C+B | 35万 | - | ✅ |
流动性覆盖率:{XX}%
流动性缺口:{有/无,如有则说明金额和时间}
**时间线展示规则:**
1. 所有持仓产品按到期/下次开放时间在时间轴上标注
2. 每个产品标注:产品简称、可变现金额、开放类型
3. 客户现金流需求以标记在对应时间点
4. 汇总表按时间节点计算累计可变现金额与需求对比
### 4.3 组合健康度分析
分散度:{优秀/良好/一般/集中}
{假分散/过度分散/过度集中问题分析(如有)}
相关性分析:{低/中/高}
## 五、综合评价及风险提示
### 综合评价
{对客户理财产品持仓的整体评价,100字以内}
### 主要风险提示
{按严重程度排列的风险提示清单}
### 调整建议
{如有不适配或需关注的产品,给出调整建议方向}
{注意:不推荐具体替代产品}
### 信息完整性声明
{逐项说明哪些产品信息完整,哪些信息不齐全,缺失项对分析结论的具体影响。特别注意说明:净值数据、到期日/开放日、穿透后资产配置比例是否完整获取}
---
报告生成日期:{YYYY-MM-DD}
数据截止日期:{净值/公告最新日期}
数据来源:{列出所有使用的数据来源}
5.2 报告格式与呈现
默认输出:HTML报告
- 使用独立HTML文件呈现健诊报告,通过 preview_url 展示
- HTML报告需包含完整的CSS样式,确保打印效果良好
- 报告命名:
理财产品健诊报告_{客户简称}_{YYYYMMDD}.html
HTML报告设计要求:
- 整体风格:专业、简洁、适合打印
- 配色:白色背景、深色文字、表头使用浅蓝色(#e8f0fe)
- 风险标识:🔴严重 ⚠️关注 ✅正常,使用对应颜色
- 表格:带边框、斑马纹、关键数据加粗
- 投资现金流时间线:使用CSS实现可视化时间轴,非ASCII图
- 分页:适合A4打印,关键模块前可插入分页符
可选输出:Word文档(.docx)
- 需用户明确要求时才生成
- 基于HTML报告内容,使用 docx skill 转换
- 报告命名:
理财产品健诊报告_{客户简称}_{YYYYMMDD}.docx
HTML报告模板结构(必须遵循):
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>理财产品健诊报告</title>
<style>
/* 基础样式 */
body { font-family: "Microsoft YaHei", sans-serif; max-width: 900px; margin: 0 auto; padding: 20px; color: #333; line-height: 1.6; }
h1 { color: #1a3a5c; border-bottom: 3px solid #1a3a5c; padding-bottom: 10px; }
h2 { color: #1a3a5c; border-bottom: 2px solid #e0e0e0; padding-bottom: 8px; margin-top: 30px; }
h3 { color: #2d6a9f; margin-top: 20px; }
h4 { color: #444; }
/* 表格样式 */
table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 14px; }
th { background: #e8f0fe; color: #1a3a5c; padding: 8px 12px; text-align: left; border: 1px solid #d0d7de; font-weight: 600; }
td { padding: 8px 12px; border: 1px solid #d0d7de; }
tr:nth-child(even) { background: #f8f9fa; }
tr:hover { background: #eef3ff; }
/* 风险标识 */
.risk-high { color: #dc3545; font-weight: bold; }
.risk-medium { color: #e8913a; font-weight: bold; }
.risk-low { color: #2d8a6e; font-weight: bold; }
/* 标签 */
.tag { display: inline-block; padding: 2px 8px; border-radius: 3px; font-size: 12px; margin: 2px; }
.tag-red { background: #fce4e4; color: #dc3545; }
.tag-orange { background: #fff3e0; color: #e8913a; }
.tag-green { background: #e8f5e9; color: #2d8a6e; }
.tag-blue { background: #e8f0fe; color: #1a3a5c; }
/* 时间线样式 */
.timeline { position: relative; padding: 20px 0; margin: 20px 0; }
.timeline-line { position: absolute; top: 50%; left: 0; right: 0; height: 4px; background: #1a3a5c; border-radius: 2px; }
.timeline-point { position: relative; display: inline-block; width: 14%; vertical-align: top; text-align: center; }
.timeline-dot { width: 16px; height: 16px; border-radius: 50%; background: #1a3a5c; margin: 0 auto 8px; position: relative; top: -8px; }
.timeline-dot.need { background: #e8913a; }
.timeline-label { font-size: 12px; color: #666; }
.timeline-amount { font-size: 13px; font-weight: 600; color: #1a3a5c; }
.timeline-product { font-size: 11px; color: #888; }
/* 概览卡片 */
.summary-cards { display: flex; gap: 16px; margin: 16px 0; flex-wrap: wrap; }
.summary-card { flex: 1; min-width: 180px; background: #f8f9fa; border: 1px solid #e0e0e0; border-radius: 8px; padding: 16px; text-align: center; }
.summary-card .value { font-size: 24px; font-weight: 700; color: #1a3a5c; }
.summary-card .label { font-size: 13px; color: #666; margin-top: 4px; }
/* 综合评价 */
.verdict { padding: 16px; border-radius: 8px; margin: 12px 0; }
.verdict-normal { background: #e8f5e9; border-left: 4px solid #2d8a6e; }
.verdict-attention { background: #fff3e0; border-left: 4px solid #e8913a; }
.verdict-adjust { background: #fce4e4; border-left: 4px solid #dc3545; }
/* 打印优化 */
@media print { body { max-width: 100%; } .summary-cards { flex-wrap: nowrap; } }
.page-break { page-break-before: always; }
</style>
</head>
<body>
<!-- 报告内容由AI根据实际数据动态生成,遵循5.1报告结构 -->
</body>
</html>
> ⚠️ 刚性要求:报告必须以HTML文件生成,不得仅输出Markdown文本。HTML文件写入工作区后使用 preview_url 展示。
与其他Skill的联动
| 条件 | 触发动作 | 说明 |
|---|---|---|
| 用户同时持有基金 ≥ 3只 | 建议调用 fund-diagnosis-v2 | 基金需单独健诊 |
| 用户持仓含保险产品 | 建议调用保单健诊 | 保险需单独检视 |
| 用户需要资产配置建议 | 建议调用 asset-allocation | 理财健诊不包含配置建议 |
| 用户持仓含多种资产类型 | 建议调用 asset-allocation | 应做整体资产配置分析 |
注意: 本skill聚焦银行理财产品,发现客户还持有基金/保险等资产时,应建议使用对应skill,而非在本skill中分析。
错误处理
| 场景 | 处理方式 |
|---|---|
| 产品名称无法匹配 | 与用户确认名称是否有误,提供可能的模糊匹配结果 |
| 中国理财网查不到产品 | 尝试其他渠道,无法获取则标注"❌信息未获取" |
| 定期公告缺失(穿透比例无法获取) | 标注❌,在报告中声明对组合分析的具体影响,禁止使用规则映射表填充 |
| 净值数据缺失 | 不得缺失。三个渠道均无法自动获取时,提供网址请客户手工下载后处理 |
| 到期日/开放日缺失 | 不得缺失。三个渠道均无法获取时,提供网址请客户手工下载发行文件后处理 |
| 客户未提供风险承受能力 | 提示必须提供,不可默认或假设 |
| 客户未提供现金流需求 | 默认为无需求,明确告知用户此默认 |
版本信息
- 版本:1.3
- 创建日期:2026-05-22
- 更新日期:2026-05-23
- 说明:v1.3 新增PDF无法解析时的四步备用处理流程;净值/到期日/穿透比例不可缺失,必须来自权威渠道原文;产品清单锁定和报告前校验