diff --git a/SKILL.md b/SKILL.md index 1f2eb12..6182040 100644 --- a/SKILL.md +++ b/SKILL.md @@ -7,7 +7,7 @@ description: 多市场股票分析助手,提供 A 股、港股、美股的技 ## 概述 -A 股、港股、美股的技术面与基础估值综合分析工具,输出量化评分和明确操作建议(强烈买入/买入/持有/卖出/强烈卖出)。 +A 股、港股、美股的技术面与基础估值综合分析工具,输出量化评分和明确操作建议(强烈买入/买入/持有/卖出/强烈卖出)。默认以**决策优先**的方式返回结果:先给简明结论、评分/置信度、事件修正后的二次建议与挂单实操建议;只有在用户明确要求时才展开完整长报告。 四大核心场景: 1. **单只股票分析** — 对指定股票进行完整技术面+基本面分析,给出操作建议 @@ -49,14 +49,19 @@ bash {{SKILL_DIR}}/scripts/install_deps.sh 3. **解读并呈现结果** - 脚本输出 JSON 格式分析数据 - - **首次单股分析必须按模板输出**:若无额外要求,严格按 `references/output_templates.md` 中"单只股票分析报告"模板直接输出,不改写成随意风格,不额外展开成长篇自由分析 + - **默认单股分析优先使用** `references/output_templates.md` 中的 **“默认查询模板”**:先返回最重要的决策信息,必须包含:股票基本信息、基于数据面的操作建议(含评分与置信度)、重要事件、事件加持后的二次分析建议,以及最终的挂单实操建议 + - **挂单风格默认走平衡型**:若用户未特别指定,挂单价格按 `references/output_templates.md` 中的“挂单价格生成规范”采用平衡型;只有当用户明确要求“保守版”或“激进版”时才切换 + - **完整报告仅在用户明确要求时输出**:当用户说"完整报告"、"详细分析"、"完整分析详情"、"全量报告"等,再按同文件中的 **“完整报告组合规则”**,用多个原子模板拼装完整报告 + - **顶部完整分析详情为必选项**:无论默认查询还是完整报告,都必须先给出 2-4 句话的自然语言完整分析详情,概括市场场景、主建议、置信度、支撑/风险点,以及是否适合立刻操作 - **仅当用户明确追问细节时**(如"展开讲讲"、"为什么是这个评级"、"短线怎么看"、"止盈止损怎么设"、"详细分析"),才切换为更自然的开放式解读,围绕用户追问点展开说明 - - 最终结果直接输出为标准 Markdown 正文,不要包在代码块里;默认可以保留规范 Markdown 表格,并确保标题层级、分隔线与表格语法标准化 + - 最终结果直接输出为标准 Markdown 正文,不要包在代码块里;默认优先短段落、项目符号和卡片式结构,除非用户明确要求,否则不要自动展开过多宽表格 ### 场景二:持仓批量分析 触发示例:"分析我的持仓"、"看看我的股票"、"持仓怎么样了" +默认输出仍以**决策优先**为主:每只持仓先给操作建议、评分/置信度、重要事件、事件修正后的二次建议,以及最简挂单实操版;除非用户明确要求详细版,否则不要把每只股票都展开成冗长全量报告。 + **步骤:** 1. **检查持仓数据** @@ -115,6 +120,8 @@ bash {{SKILL_DIR}}/scripts/install_deps.sh 仅当用户要求解释评分逻辑、技术指标含义,或你需要校准开放式解读时,再读取 `references/technical_indicators.md`。 +当需要组织最终输出格式、决定默认查询 vs 完整报告、或生成挂单实操建议时,优先读取 `references/output_templates.md`;其中已经定义了默认查询模板、原子模板、完整报告组合规则,以及保守型/平衡型/激进型挂单价格生成规范(默认平衡型)。 + ## 重要注意事项 - 所有分析仅供参考,**不构成投资建议** @@ -132,5 +139,5 @@ bash {{SKILL_DIR}}/scripts/install_deps.sh | `scripts/portfolio_manager.py` | 持仓管理脚本,支持增删改查和批量分析 | | `scripts/install_deps.sh` | Python 依赖安装脚本 | | `references/technical_indicators.md` | 技术指标详解和评分标准 | -| `references/output_templates.md` | 分析报告输出模板 | +| `references/output_templates.md` | 分析输出模板总控:默认查询模板、原子模板、完整报告组合规则、挂单价格生成规范 | | `references/data-source-roadmap.md` | 数据源升级路线图:主源 / fallback / 事件层规划;仅在需要扩展数据源或接入事件信息时读取 | diff --git a/references/output_templates.md b/references/output_templates.md index 2c61209..ea2d0ad 100644 --- a/references/output_templates.md +++ b/references/output_templates.md @@ -1,17 +1,79 @@ # 分析报告输出模板 -## 单只股票分析报告 +## 使用规则 -> 按以下 Markdown 结构直接输出最终报告,不要再包一层代码块。 -> 优先适配 Telegram 等 IM:少用表格,多用短段落和项目符号,避免横向过宽的排版。 +- 默认响应使用 **“默认查询模板”**,优先给出最重要的决策信息。 +- 只有当用户明确要求 **“完整报告 / 详细报告 / 全量分析 / 完整分析详情”** 时,才按 **“完整报告组合规则”** 拼装全部原子模板。 +- 所有最终输出必须是标准 Markdown 正文,不要包在代码块里。 +- 优先适配 Telegram 等 IM:少用宽表格,多用短段落、项目符号和卡片式结构。 +- 价格、盈亏、挂单建议按实际币种书写,不要写死为 HK$ / ¥ / $。 +- 若数据缺失,显示 `N/A` / `样本不足` / `暂无`,不要伪造。 -## 📊 {公司名称} ({股票代码}) 分析报告 +--- +## 默认查询模板 + +> 用于用户只说“分析一下”“现在能不能买”“给我建议”“今天怎么操作”“下午怎么搞”这类默认查询。 +> 目标:先返回最重要、最可执行的信息,而不是一上来铺满技术指标。 +> **默认挂单风格:平衡型。** 只有当用户明确指定“保守版 / 激进版”时才切换。 + +## 📌 {公司名称} ({股票代码}) 快速决策卡 + +### 一句话结论 +{用 2-4 句话写成的完整分析详情。至少包含:股票当前所处市场场景、基于数据面的主操作建议、置信度、主要支撑/风险点、是否适合今天立即操作。语气直接,像交易前 briefing。} + +### 股票基本信息 - **市场 / 交易所 / 币种**:{市场} / {交易所} / {币种} - **当前价格**:{币种符号}{价格} ({涨跌幅}%) - **分析时间**:{时间} - **数据周期**:{周期} +### 数据面主建议 +- **操作建议**:{建议图标} {操作建议} +- **动作类型**:{动作类型} +- **综合评分**:{评分} +- **置信度**:{置信度等级} ({置信度分数}) +- **市场场景**:{市场场景} +- **核心信号**: + - {核心信号1} + - {核心信号2} + - {核心信号3} + +### 重要事件 +- **事件基调**:{事件整体基调,如“偏利多 / 中性 / 偏利空 / 事件扰动有限”} +- **重点事件**: + - {事件1} + - {事件2} + - {事件3} + +### 事件加持后的二次分析建议 +- **二次判断**:{结合事件后,对原始数据面建议做二次修正后的结论。明确说明“维持 / 小幅上修 / 小幅下修 / 暂不修正”以及原因。} +- **执行提示**:{说明今天/本周更适合追涨、低吸、观望、减仓、防守中的哪一种。} + +### 挂单实操建议 +- **买入挂单**:{建议价格;若不建议买入则写“不建议主动挂买单”} +- **卖出 / 止盈挂单**:{建议价格} +- **防守 / 止损挂单**:{建议价格} +- **实操版**:{按“买/卖/防守”给出一句最简洁的可执行指令,例如:`买 55.9 / 卖 57.8 / 防守 54.9`} + +> ⚠️ 以上分析仅供参考,不构成投资建议。投资有风险,入市需谨慎。 + +--- + +## 原子模板 + +> 以下模板用于按需拼装。默认查询不要全量输出;只有在用户明确要完整报告时才组合。 + +### ATOM-01|顶部完整分析详情 +{用 2-4 句话给出完整分析详情:当前市场场景、主操作建议、置信度、主要支撑/风险点、是否建议立刻操作。默认完整报告和默认查询模板都必须包含这一段。} + +### ATOM-02|股票基本信息 +- **市场 / 交易所 / 币种**:{市场} / {交易所} / {币种} +- **当前价格**:{币种符号}{价格} ({涨跌幅}%) +- **分析时间**:{时间} +- **数据周期**:{周期} + +### ATOM-03|数据来源 ### 🧾 数据来源 - **行情**:{行情源} - **K线**:{K线源} @@ -19,24 +81,54 @@ - **事件**:{事件源} - **舆情雷达**:{舆情源} ---- - +### ATOM-04|数据面操作建议 ### {建议图标} 操作建议:{操作建议} - **动作类型**:{动作类型} - **综合评分**:{评分} - **置信度**:{置信度等级} ({置信度分数}) - **市场场景**:{市场场景} +- **核心信号**: + - {核心信号1} + - {核心信号2} + - {核心信号3} + - {核心信号4} + - {核心信号5} + - {核心信号6} -#### 核心信号 -- {核心信号1} -- {核心信号2} -- {核心信号3} -- {核心信号4} -- {核心信号5} -- {核心信号6} +### ATOM-05|事件与新闻摘要 +### 📰 重要事件与舆情 +- **事件基调**:{事件整体基调} +- **新闻情绪**:{新闻情绪} +- **新闻热度**:{新闻热度} +- **舆情雷达**:{舆情等级} +- **重点事件**: + - {事件1} + - {事件2} + - {事件3} +- **主要新闻样本**: + - {新闻1} + - {新闻2} + - {新闻3} ---- +### ATOM-06|事件加持后的二次分析建议 +### 🔁 二次分析建议 +- **原始结论**:{原始数据面建议} +- **事件修正**:{维持 / 小幅上修 / 小幅下修 / 暂不修正} +- **修正后建议**:{修正后的建议} +- **修正原因**:{事件/新闻为何改变或不改变策略} +- **执行窗口**:{今天 / 未来1-3日 / 未来1-2周 的操作节奏建议} +### ATOM-07|挂单实操建议 +### 🎯 挂单实操建议 +- **挂单风格**:{保守型 / 平衡型 / 激进型;默认平衡型} +- **买入挂单**:{建议价格;若无则写“不建议主动挂买单”} +- **加仓挂单**:{建议价格;若无则写“暂无”} +- **卖出 / 止盈挂单**:{建议价格} +- **防守 / 止损挂单**:{建议价格} +- **最简执行版**:{如:`买 55.9 / 卖 57.8 / 防守 54.9`} +- **说明**:{这些价格对应的支撑/压力/确认逻辑,以及为何匹配当前挂单风格} + +### ATOM-08|多层评分 ### 📈 多层评分 - **趋势层**:{趋势层} —— {趋势层解读} - **动量层**:{动量层} —— {动量层解读} @@ -45,6 +137,7 @@ - **相对强弱**:{相对强弱} —— {相对强弱解读} - **量价结构**:{量价结构} —— {量价结构解读} +### ATOM-09|技术面细节 ### 📉 技术面细节 - **均线趋势**:{均线排列} - 信号:{均线信号} @@ -59,6 +152,7 @@ - **成交量**:量比 {量比} - 信号:{成交量信号} +### ATOM-10|基本面概况 ### 📋 基本面概况 - **市盈率 (PE)**:{PE} - **市净率 (PB)**:{PB} @@ -68,6 +162,7 @@ - **52周位置**:{52周位置} - **基本面判断**:{基本面判断} +### ATOM-11|历史验证 ### 🧪 历史验证 - **相似样本数**:{样本数} - **5日平均收益 / 胜率**:{5日平均收益}% / {5日胜率}% @@ -75,25 +170,35 @@ - **20日平均收益 / 胜率**:{20日平均收益}% / {20日胜率}% - **回撤代理**:{回撤代理}% -### 📰 新闻与舆情辅助 -- **新闻情绪**:{新闻情绪} -- **新闻热度**:{新闻热度} -- **舆情雷达**:{舆情等级} -- **主要样本**: - - {新闻1} - - {新闻2} - - {新闻3} - -### 📌 近期关键事件 -- {事件1} -- {事件2} -- {事件3} - +### ATOM-12|总结与免责 ### 💡 分析总结 -{2-4句话的自然语言总结,至少包含:当前市场场景、操作建议、置信度、主要支撑/风险点。若历史验证样本不足,要明确提醒。可在 1 句话内补充新闻/舆情/事件仅作辅助,不直接决定评级。} +{2-4 句话的自然语言总结,至少包含:当前市场场景、操作建议、置信度、主要支撑/风险点。若历史验证样本不足,要明确提醒。可在 1 句话内补充新闻/舆情/事件仅作辅助,不直接决定评级。} > ⚠️ 以上分析仅供参考,不构成投资建议。投资有风险,入市需谨慎。 +--- + +## 完整报告组合规则 + +> 用户明确要求“完整报告 / 详细分析 / 全量报告 / 完整分析详情”时,按以下顺序拼接。 + +## 📊 {公司名称} ({股票代码}) 分析报告 + +1. `ATOM-01|顶部完整分析详情` +2. `ATOM-02|股票基本信息` +3. `ATOM-03|数据来源` +4. `ATOM-04|数据面操作建议` +5. `ATOM-05|事件与新闻摘要` +6. `ATOM-06|事件加持后的二次分析建议` +7. `ATOM-07|挂单实操建议` +8. `ATOM-08|多层评分` +9. `ATOM-09|技术面细节` +10. `ATOM-10|基本面概况` +11. `ATOM-11|历史验证` +12. `ATOM-12|总结与免责` + +--- + ## 持仓批量分析报告 > 按以下 Markdown 结构直接输出最终报告,不要再包一层代码块。 @@ -121,6 +226,9 @@ - **当前价 / 买入价**:{当前价} / {买入价} - **持仓数量 / 盈亏**:{数量}股 / {盈亏} ({盈亏比例}%) - **综合评分 / 置信度**:{评分} / {置信度等级} ({置信度分数}) +- **重要事件**:{1-2条关键事件} +- **二次建议**:{结合事件后的简短操作建议} +- **挂单实操**:{最简执行版,如:`买 55.9 / 卖 57.8 / 防守 54.9`} - **核心信号**:{1-3条最重要的信号} --- @@ -134,6 +242,99 @@ > ⚠️ 以上分析仅供参考,不构成投资建议。投资有风险,入市需谨慎。 +--- + +## 挂单价格生成规范 + +### 一、挂单风格 + +#### 1) 保守型 +- 目标:优先控制回撤,降低误触发和追单概率。 +- 买入挂单:仅在强支撑位、回踩确认位或明显低风险位置给出;弱势票可直接不给买点。 +- 卖出挂单:优先给反弹减仓位或保守止盈位,价格更贴近当前压力区。 +- 防守挂单:收得更紧,优先放在关键支撑位/逻辑失效位下方。 + +#### 2) 平衡型(默认) +- 目标:兼顾胜率、盈亏比和执行性。 +- 买入挂单:允许给出 1 个主买点 + 1 个更低承接点。 +- 卖出挂单:允许给出 1 个主止盈位 + 1 个更高延伸位(若趋势支持)。 +- 防守挂单:放在短线逻辑失效位下方,不宜过紧也不宜过松。 + +#### 3) 激进型 +- 目标:优先捕捉短线波动和强势延续。 +- 买入挂单:允许更靠近突破回踩位、浅回调位,甚至在强势确认后给追击型回踩买点。 +- 卖出挂单:允许给更高的扩展止盈位。 +- 防守挂单:可略放宽,但必须保留明确的趋势失效位。 + +### 二、挂单类型 +- **买入挂单**:抄底买、回踩确认买、突破回踩买。 +- **卖出挂单**:反弹减仓卖、压力位止盈卖、分批止盈卖。 +- **防守挂单**:跌破关键位止损、趋势失效保护卖、盈利回撤保护单。 + +### 三、价格生成来源 + +#### 买入挂单来源 +优先从以下结构取值: +- MA5 / MA10 / MA20 +- 布林中轨 / 下轨 +- 整数关口 +- 当日回踩低点附近 +- 前高突破后的回踩确认位 + +#### 卖出挂单来源 +优先从以下结构取值: +- 短期压力位 +- 布林上轨 +- 前高附近 +- 整数关口 +- 成本上方、且盈亏比合适的位置 + +#### 防守挂单来源 +优先从以下结构取值: +- 关键支撑位下方 +- MA10 / MA20 下破确认位 +- 前低下方 +- 整数关口下方 +- 短线逻辑失效位 + +### 四、市场状态到挂单策略映射 + +#### 偏强 +- 保守型:回踩买 + 近端止盈 + 紧防守 +- 平衡型:回踩买 + 冲高卖 + 防守保护 +- 激进型:浅回踩买/突破回踩买 + 更高止盈 + 趋势防守 + +#### 震荡 +- 保守型:区间下沿才考虑买,上沿先减,防守贴近区间下界 +- 平衡型:区间低吸 + 区间高抛 + 严格防守 +- 激进型:允许更靠近中枢做来回,但必须明确失效位 + +#### 偏弱 +- 保守型:默认不给主动买单,只给防守卖和反弹减仓卖 +- 平衡型:通常不给主动买单;只有极强支撑位才给轻仓低吸参考 +- 激进型:允许给超跌反抽位,但必须明确标注高风险,并同步给出更紧的防守位 + +### 五、事件修正层 +- **利多但盘面未确认**:不主动上调买点;可小幅上修卖点预期;防守不放松。 +- **利多且盘面确认**:买点可略上移,卖点可上修,防守位可维持原结构。 +- **利空扰动**:买点下移或取消,防守点收紧,卖点更偏反弹减仓。 +- **事件中性**:维持技术面原建议,不额外修正。 + +### 六、价格修正规则 +- 避免机械挂在整数位,优先给更贴近真实委托行为的价格。 +- 港股常用修正示例: + - `56.0` → `55.9` 或 `55.8` + - `58.0` → `57.8` 或 `57.9` + - `80.0` → `79.8` +- 修正后仍需保持原始支撑/压力逻辑,不要为了避开整数位而偏离结构。 + +### 七、输出要求 +- 默认输出 **平衡型** 挂单建议。 +- 若用户明确说“保守版挂单”或“激进版挂单”,才切换风格。 +- 对弱势票,允许明确写:`不建议主动挂买单`。 +- 对强势票,允许给出:主买点、次买点、主止盈位、扩展止盈位、防守位。 +- 最终必须输出一句 **最简执行版**,格式尽量固定:`买 X / 卖 Y / 防守 Z`。 + ## 模板使用说明 - 所有 `{占位符}` 根据脚本返回的 JSON 数据填充。 @@ -141,12 +342,16 @@ - `{新闻情绪}` / `{新闻热度}` / `{新闻1-3}` 来自 `news` 字段;若新闻抓取失败或为空,分别填 `暂无` / `低` / `暂无相关新闻`。 - `{舆情等级}` 来自 `buzz.level`;当前为新闻驱动的热度雷达,不是社交媒体实时讨论量。 - `{事件1-3}` 来自 `events.items`;美股优先使用 SEC 事件,其他市场先从新闻标题中提取关键事件。 +- `{事件整体基调}` 需结合事件类别、新闻情绪和事件新鲜度人工归纳,不要机械照抄标题。 +- `{修正后建议}` 必须明确表达:事件是否改变原始数据面建议;若事件影响弱,也要明确写“维持原建议”。 +- `{挂单实操建议}` 要基于支撑位、压力位、均线、整数关口和当日波动结构来落具体价格;如果盘面偏弱,允许明确写“不建议主动挂买单”。 +- 默认查询优先输出“默认查询模板”;除非用户明确要求完整报告,否则不要自动展开全部技术面细节。 - 最终输出必须是标准 Markdown 正文,不要放进 ``` 代码块。 - 优先使用短段落、项目符号、卡片式结构;除非用户明确要求,否则尽量不要使用宽表格。 - Telegram 等 IM 场景下,优先保证手机端可读性,避免一行承载过多字段。 - 操作建议图标映射:🟢🟢 强烈买入 / 🟢 买入 / 🟡 持有 / 🔴 卖出 / 🔴🔴 强烈卖出。 -- 单股报告优先展示:`recommendation.action`、`recommendation.action_type`、`recommendation.confidence`、`recommendation.regime`、`recommendation.layer_scores`、`signal_validation`。 -- 价格和盈亏前缀不要写死为 HK$,应按币种动态展示(HKD/CNY/USD)。 +- 单股报告优先使用 `recommendation.action`、`recommendation.action_type`、`recommendation.confidence`、`recommendation.regime`、`recommendation.layer_scores`、`signal_validation`、`events`、`news` 来填充。 - 若某项历史验证不存在或样本不足,显示为 `样本不足`,不要伪造数值。 - 若某项基本面数据缺失,显示为 `N/A`。 - 分析总结部分使用自然语言,避免机械堆砌指标;要把“为什么是这个评级”说清楚。 +- 对于用户问“今天怎么搞 / 下午如何操作 / 给挂单价格”,优先使用默认查询模板,并确保输出包含“挂单实操建议”。