$npx -y skills add isjiamu/jiamu-skills --skill stock-advisorA股投资分析全自动流水线。触发场景:(1) 用户上传K线图或财报截图要求分析,(2) 用户提供A股股票代码或名称要求分析(如"分析一下平安银行"、"帮我看看000001"、"XX值得投资吗"),(3) 用户说"股票分析"、"投资分析"、"stock advisor"、"帮我分析股票"。
| 1 | # A股投资顾问 (Stock Advisor) |
| 2 | |
| 3 | 全自动编排型投资分析流水线。用户只需提供股票截图或代码,系统自动完成技术面分析、基本面分析、多维交叉验证、私董会决策讨论,最终输出精美排版的投资报告。 |
| 4 | |
| 5 | ## 流水线架构 |
| 6 | |
| 7 | ``` |
| 8 | 用户输入(截图 / 股票代码) |
| 9 | │ |
| 10 | ▼ |
| 11 | ① 技术面分析 → ② 基本面分析 → ③ 多维交叉验证 → ④ 私董会讨论 → ⑤ 排版输出 |
| 12 | ``` |
| 13 | |
| 14 | ## 启动流程 |
| 15 | |
| 16 | ### 首次使用:投资风格档案 |
| 17 | |
| 18 | 检查 memory 中是否存在用户投资风格档案。如不存在,提 3-4 个简短问题: |
| 19 | |
| 20 | 1. **风险偏好**:保守 / 稳健 / 激进? |
| 21 | 2. **投资周期**:短线(1-2周)/ 中线(1-3月)/ 长线(3月以上)? |
| 22 | 3. **关注行业**:有没有特别关注的行业板块? |
| 23 | 4. **仓位上限**:单只股票最大仓位占比? |
| 24 | |
| 25 | 用户可选择跳过,后续在私董会环节自然补充。收集到的信息保存到 memory。 |
| 26 | |
| 27 | ### 识别入口模式 |
| 28 | |
| 29 | 根据用户输入自动判断: |
| 30 | |
| 31 | - **截图模式**:用户上传了图片(K线图、财报截图)→ 图像识别 + AKShare 交叉验证 |
| 32 | - **代码模式**:用户提供了股票代码或名称 → 纯 AKShare 数据驱动 |
| 33 | |
| 34 | 两种模式均进入同一流水线,差异仅在数据获取方式。 |
| 35 | |
| 36 | --- |
| 37 | |
| 38 | ## 模块一:技术面分析 |
| 39 | |
| 40 | ### 截图模式 |
| 41 | |
| 42 | 1. **图像识别**:从 K 线图中提取: |
| 43 | - 股票名称和代码 |
| 44 | - 当前股价 |
| 45 | - K 线形态(近 5 日表现) |
| 46 | - 均线排列状态(MA5/MA10/MA20) |
| 47 | - MACD 状态(DIF/DEA 位置关系、柱状图趋势) |
| 48 | |
| 49 | 2. **AKShare 交叉验证**:用识别出的股票代码调用脚本获取精确数据 |
| 50 | ```bash |
| 51 | python scripts/technical_analysis.py --symbol <股票代码> --days 120 |
| 52 | ``` |
| 53 | |
| 54 | 3. **冲突处理**:若图像识别与 API 数据有差异,以 API 数据为准,在报告中标注差异 |
| 55 | |
| 56 | ### 代码模式 |
| 57 | |
| 58 | 直接调用脚本获取数据并计算指标: |
| 59 | ```bash |
| 60 | python scripts/technical_analysis.py --symbol <股票代码> --days 120 |
| 61 | ``` |
| 62 | |
| 63 | ### 输出:技术面速读表格 |
| 64 | |
| 65 | | 维度 | 指标 | 数值 | 信号 | |
| 66 | |------|------|------|------| |
| 67 | | 趋势 | MA20/MA60 | — | 上升/震荡/下降 | |
| 68 | | MACD | DIF/DEA | — | 金叉/死叉/多头/空头 | |
| 69 | | KDJ | K/D/J | — | 超买/超卖/中性 | |
| 70 | | RSI | RSI14 | — | 超买/超卖/中性 | |
| 71 | | 布林带 | 上轨/中轨/下轨 | — | 突破/偏多/偏空 | |
| 72 | | 支撑压力 | 支撑位/压力位 | — | — | |
| 73 | |
| 74 | --- |
| 75 | |
| 76 | ## 模块二:基本面分析 |
| 77 | |
| 78 | ### 截图模式 |
| 79 | |
| 80 | 1. **图像识别**:从财报截图提取关键指标(营收、净利润、ROE、毛利率等) |
| 81 | 2. **AKShare 补充**:拉取 PE/PB/PS 估值数据、行业对比数据 |
| 82 | ```bash |
| 83 | python scripts/fundamental_analysis.py --symbol <股票代码> |
| 84 | ``` |
| 85 | |
| 86 | ### 代码模式 |
| 87 | |
| 88 | 直接调用脚本: |
| 89 | ```bash |
| 90 | python scripts/fundamental_analysis.py --symbol <股票代码> |
| 91 | ``` |
| 92 | |
| 93 | ### 合并输出 |
| 94 | |
| 95 | **综合评级表格:** |
| 96 | |
| 97 | | 维度 | 评分 | 判断 | |
| 98 | |------|------|------| |
| 99 | | 技术面 | X/5 | 趋势方向 + 关键信号 | |
| 100 | | 基本面 | X/5 | 盈利能力 + 估值水平 | |
| 101 | | 资金面 | X/5 | 成交量变化趋势 | |
| 102 | | **综合评级** | — | 强烈推荐/推荐/中性/谨慎/回避 | |
| 103 | |
| 104 | **操作建议:** |
| 105 | - 短期(1-2周)策略 |
| 106 | - 中期(1-3月)策略 |
| 107 | - 关键支撑位和压力位 |
| 108 | |
| 109 | --- |
| 110 | |
| 111 | ## 模块三:多维交叉验证 |
| 112 | |
| 113 | 使用内置 WebSearch 工具搜索以下信息: |
| 114 | |
| 115 | 1. **研报观点**:搜索 `"<股票名称> 研报 <当前年份>"` 获取机构评级和目标价 |
| 116 | 2. **行业动态**:搜索 `"<所属行业> 行业趋势 <当前年份>"` 了解上下游变化 |
| 117 | 3. **重大新闻**:搜索 `"<股票名称> 最新消息"` 排查重大利好/利空事件 |
| 118 | 4. **政策影响**:搜索相关产业政策、监管动态 |
| 119 | |
| 120 | ### 交叉验证逻辑 |
| 121 | |
| 122 | - 将搜索结果与模块一、二的分析进行对比 |
| 123 | - 如有矛盾信号(如技术面看涨但研报看空),**明确标注分歧点**并分析可能原因 |
| 124 | - 补充模块一二未覆盖的风险因素 |
| 125 | |
| 126 | ### 输出:投资决策报告草稿 |
| 127 | |
| 128 | 整合前三个模块的分析结果,生成结构化的投资决策报告草稿,作为私董会的讨论输入。 |
| 129 | |
| 130 | --- |
| 131 | |
| 132 | ## 模块四:私董会决策讨论 |
| 133 | |
| 134 | 调用 `peers-advisory-group` Skill 的核心机制,将投资决策报告草稿作为讨论议题。 |
| 135 | |
| 136 | **详细指南见 [references/advisory-board.md](references/advisory-board.md)**,包含幕僚阵容、5维度分析结构、观点碰撞模板、投资风格适配规则。 |
| 137 | |
| 138 | ### 核心流程 |
| 139 | |
| 140 | 1. 通过 WebSearch 搜索四位幕僚(巴菲特/马斯克/盖茨/乔布斯)最新动态 |
| 141 | 2. 将模块一~三的完整报告作为讨论议题 |
| 142 | 3. 每位幕僚按 **5维度结构** 输出深度分析:核心判断 → 数据论据 → 类比案例 → 风险警示 → 最后一句话建议 |
| 143 | 4. 输出 **2-3 个观点碰撞**(不同投资哲学的分歧与争论) |
| 144 | 5. 根据用户投资风格档案(如有)生成 **个性化建议** |
| 145 | 6. 综合四位幕僚观点,输出最终投资结论 |
| 146 | |
| 147 | ### 自动化模式 |
| 148 | |
| 149 | 默认由系统代替用户回答幕僚提问(基于分析数据 + 用户风格档案)。如用户主动发言,系统暂停自动代答,将对话权交给用户。 |
| 150 | |
| 151 | --- |
| 152 | |
| 153 | ## 模块五:排版与输出 |
| 154 | |
| 155 | ### 步骤一:整理报告 Markdown |
| 156 | |
| 157 | 将最终分析结果整理为以下结构: |
| 158 | |
| 159 | ```markdown |
| 160 | # [股票名称]([代码]) 投资分析报告 |
| 161 | |
| 162 | > 报告日期:YYYY-MM-DD | 综合评级:XX |
| 163 | |
| 164 | ## 技术面分析 |
| 165 | [模块一输出] |
| 166 | |
| 167 | ## 基本面分析 |
| 168 | [模块二输出] |
| 169 | |
| 170 | ## 多维交叉验证 |
| 171 | [模块三输出] |
| 172 | |
| 173 | ## 私董会纪要 |
| 174 | ### 巴菲特观点 |
| 175 | [观点摘要] |
| 176 | ### 马斯克观点 |
| 177 | [观点摘要] |
| 178 | ### 比尔·盖茨观点 |
| 179 | [观点摘要] |
| 180 | ### 乔布斯观点 |
| 181 | [观点摘要] |
| 182 | ### 最终结论 |
| 183 | [综合结论] |
| 184 | |
| 185 | ## 操作建议 |
| 186 | - 短期策略(1-2周) |
| 187 | - 中期策略(1-3月) |
| 188 | - 仓位建议 |
| 189 | - 止损位 |
| 190 | |
| 191 | ## 风险提示 |
| 192 | 投资有风险,以上分析仅供参考,不构成投资建议。据此操作,风险自担。 |
| 193 | ``` |
| 194 | |
| 195 | ### 步骤二:杂志排版 |
| 196 | |
| 197 | 调用 `magazine-layout` Skill,指定 **"大胆社论"(Bold Editorial)** 风格,将 Markdown 转为精美 HTML 文件。 |
| 198 | |
| 199 | 保存 HTML 到本地:`~/stock-reports/<股票代码>-<日期>.html` |
| 200 | |
| 201 | ### 步骤三:转换 PDF |
| 202 | |
| 203 | 执行转换脚本: |
| 204 | ```bash |
| 205 | python scripts/html_to_pdf.py ~/stock-reports/<股票代码>-<日期>.html |
| 206 | ``` |
| 207 | |
| 208 | 输出 PDF 文件:`~/stock-reports/<股票代码>-<日期>.pdf` |
| 209 | |
| 210 | ### 步骤四:上传飞书云文档 |
| 211 | |
| 212 | 调用 `lark-doc` Skill,将报告内容创建为飞书云文档: |
| 213 | - 文档标题:`[股票名称] 投资分析报告 - YYYY-MM-DD` |
| 214 | - 返回文档链接给用户 |
| 215 | |
| 216 | ### 最终输出给用户 |
| 217 | |
| 218 | ``` |
| 219 | 分析完成! |
| 220 | |
| 221 | 本地 PDF:~/stock-reports/<代码>-<日期>.pdf |
| 222 | 飞书文档:<飞书链接> |
| 223 | |
| 224 | 综合评级:XX |
| 225 | 核心结论:[一句话总结] |
| 226 | ``` |
| 227 | |
| 228 | --- |
| 229 | |
| 230 | ## 依赖 |
| 231 | |
| 232 | | 组件 | 用途 | |
| 233 | |------|------| |
| 234 | | AKShare (Python) | A股行情、K线、财务数据获取 | |
| 235 | | `a-share-analyst` scripts | 技术分析、数据获取基础脚本 | |
| 236 | | WebSearch(内置) | 研报、行业、新闻搜索 | |
| 237 | | `peers-advisory-group` Skill | 私董会决策讨论 | |
| 238 | | `magazine-layout` Skill | 杂志风格 HTML 排版 | |
| 239 | | `lark-doc` Skill | 飞书云文档上传 | |
| 240 | | Playwright (Python) | HTML 转 PDF | |
| 241 | |
| 242 | ## 脚本清单 |
| 243 | |
| 244 | | 脚本 | 功能 | |
| 245 | |------|------| |
| 246 | | `scripts/technical_analysis.py` | 技术指标计算(复用 a-share-analyst) | |
| 247 | | `scripts/fetch_market_data.py` | 市场数据获取(复用 a-share-analyst) | |
| 248 | | `scripts/fundamental_analysis.py` | 基本面分析(新增) | |
| 249 | | `scripts/html_to_pdf.py` | HTML 转 PDF(新增) | |
| 250 | |
| 251 | ## 参考文件 |
| 252 | |
| 253 | | 文件 | 内容 | |
| 254 | |------|------| |
| 255 | | `references/report-structure.md` | 报告结构模板 | |
| 256 | | `references/image-prompts.md` | 图像识别提示词模板 | |