diff --git a/.env.example b/.env.example index 9a713dec5..429cca4f2 100644 --- a/.env.example +++ b/.env.example @@ -311,6 +311,10 @@ SEARXNG_PUBLIC_INSTANCES_ENABLED=true # bull_trend — 多头趋势(MA5>MA10>MA20 排列 + 低乖离率) # ma_golden_cross — 均线金叉(MA5 上穿 MA10/MA20) # volume_breakout — 放量突破(价格突破近期高点 + 成交量放大) +# hot_theme — 热点题材(政策/产业热点、板块扩散与个股相关性) +# event_driven — 事件驱动(业绩、政策、订单、并购等催化事件) +# growth_quality — 成长质量(收入利润、ROE、现金流与成长持续性) +# expectation_repricing — 预期重估(业绩/政策/估值预期差修复或落空) # shrink_pullback — 缩量回踩(回踩均线 + 量能萎缩,低吸点) # bottom_volume — 底部放量(地量见地价,底部反转信号) # dragon_head — 龙头策略(强势龙头,趋势延续追涨) @@ -328,7 +332,7 @@ SEARXNG_PUBLIC_INSTANCES_ENABLED=true # # 完整启用所有内置策略(两种写法等效): # AGENT_SKILLS=all -# AGENT_SKILLS=bull_trend,ma_golden_cross,volume_breakout,shrink_pullback,bottom_volume,dragon_head,one_yang_three_yin,box_oscillation,chan_theory,wave_theory,emotion_cycle +# AGENT_SKILLS=bull_trend,ma_golden_cross,volume_breakout,hot_theme,event_driven,growth_quality,expectation_repricing,shrink_pullback,bottom_volume,dragon_head,one_yang_three_yin,box_oscillation,chan_theory,wave_theory,emotion_cycle # AGENT_SKILLS= # 自定义策略目录(可选,放置自定义 YAML 策略文件;环境变量名沿用内部 skill 命名) diff --git a/README.md b/README.md index 00304702c..b8695ce18 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ | AI 决策报告 | 核心结论、评分、趋势、买卖点位、风险警报、催化因素、操作检查清单 | | 多市场数据聚合 | A股、港股、美股、ETF;行情、K 线、技术指标、资金流、筹码、新闻、公告和基本面 | | Web / 桌面工作台 | 手动分析、任务进度、历史报告、完整 Markdown、回测、持仓、配置管理、浅色 / 深色主题 | -| Agent 策略问股 | 多轮追问,支持均线、缠论、波浪、趋势等 11 种内置策略,覆盖 Web/Bot/API | +| Agent 策略问股 | 多轮追问,支持均线、缠论、波浪、趋势、热点、事件、成长、预期等 15 种内置策略,覆盖 Web/Bot/API | | 智能导入与补全 | 图片、CSV/Excel、剪贴板导入;股票代码/名称/拼音/别名补全 | | 自动化与推送 | GitHub Actions、Docker、本地定时任务、FastAPI 服务和企业微信/飞书/Telegram/Discord/Slack/邮件推送 | @@ -234,7 +234,7 @@ python main.py --webui-only 配置任意可用 AI API Key 后,Web `/chat` 页面即可使用策略问股;如需显式关闭可设置 `AGENT_MODE=false`。 -- 支持均线金叉、缠论、波浪理论、多头趋势等内置策略 +- 支持均线金叉、缠论、波浪理论、多头趋势、热点题材、事件驱动、成长质量、预期重估等内置策略 - 支持实时行情、K 线、技术指标、新闻和风险信息调用 - 支持多轮追问、会话导出、发送到通知渠道和后台执行 - 支持自定义策略文件与多 Agent 编排(实验性) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 004c344de..10988887b 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/). - [修复] 美股日线路由未包含 Finnhub / AlphaVantage:扩展 `get_daily_data()` 美股分支的 source_order 以覆盖新增数据源。 - [文档] 新增小白客户端安装与配置指南,说明桌面客户端下载、基础模型配置、新闻源配置和常见问题。 - [新功能] Web 首页个股分析支持选择策略。 +- [新功能] 新增热点题材、事件驱动、成长质量和预期重估策略。 ## [3.17.1] - 2026-05-16 diff --git a/docs/README_CHT.md b/docs/README_CHT.md index bea1a563c..d57446a75 100644 --- a/docs/README_CHT.md +++ b/docs/README_CHT.md @@ -45,7 +45,7 @@ | AI 決策報告 | 核心結論、評分、趨勢、買賣點位、風險警報、催化因素、操作檢查清單 | | 多市場數據聚合 | A股、港股、美股、ETF;行情、K 線、技術指標、資金流、籌碼、新聞、公告和基本面 | | Web / 桌面工作台 | 手動分析、任務進度、歷史報告、完整 Markdown、回測、持倉、配置管理、淺色 / 深色主題 | -| Agent 策略問股 | 多輪追問,支援均線、纏論、波浪、趨勢等 11 種內建策略,覆蓋 Web/Bot/API | +| Agent 策略問股 | 多輪追問,支援均線、纏論、波浪、趨勢、熱點、事件、成長、預期等 15 種內建策略,覆蓋 Web/Bot/API | | 智能匯入與補全 | 圖片、CSV/Excel、剪貼簿匯入;股票代碼/名稱/拼音/別名補全 | | 自動化與推送 | GitHub Actions、Docker、本地定時任務、FastAPI 服務和企業微信/飛書/Telegram/Discord/Slack/郵件推送 | @@ -222,7 +222,7 @@ python main.py --webui-only 配置任意可用 AI API Key 後,Web `/chat` 頁面即可使用策略問股;如需顯式關閉可設定 `AGENT_MODE=false`。 -- 支援均線金叉、纏論、波浪理論、多頭趨勢等內建策略 +- 支援均線金叉、纏論、波浪理論、多頭趨勢、熱點題材、事件驅動、成長品質、預期重估等內建策略 - 支援即時行情、K 線、技術指標、新聞和風險資訊調用 - 支援多輪追問、會話匯出、發送到通知渠道和後台執行 - 支援自訂策略文件與多 Agent 編排(實驗性) diff --git a/docs/README_EN.md b/docs/README_EN.md index 4a95785e6..fd418aaac 100644 --- a/docs/README_EN.md +++ b/docs/README_EN.md @@ -45,7 +45,7 @@ English | [简体中文](../README.md) | [繁體中文](README_CHT.md) | AI decision reports | Core conclusion, score, trend, entry/exit levels, risk alerts, catalysts, and action checklist | | Multi-market data | A-shares, Hong Kong, US stocks, ETFs; quotes, K-lines, technicals, capital flow, chips, news, announcements, and fundamentals | | Web / desktop workspace | Manual analysis, task progress, history, full Markdown reports, backtest, portfolio, settings, and light/dark themes | -| Agent strategy chat | Multi-turn Q&A with 11 built-in strategies across Web/Bot/API | +| Agent strategy chat | Multi-turn Q&A with 15 built-in strategies across Web/Bot/API | | Smart import & autocomplete | Image, CSV/Excel, clipboard import; code/name/pinyin/alias autocomplete | | Automation & notifications | GitHub Actions, Docker, local scheduler, FastAPI service, and WeChat Work / Feishu / Telegram / Discord / Slack / Email delivery | @@ -222,7 +222,7 @@ Visit `http://127.0.0.1:8000`. Authentication, smart import, autocomplete, repor After configuring any available AI API key, the Web `/chat` page can use strategy chat. Set `AGENT_MODE=false` only if you want to disable it explicitly. -- Built-in strategies include moving-average crossovers, Chan theory, Elliott wave, bull trend, and more +- Built-in strategies include moving-average crossovers, Chan theory, Elliott wave, bull trend, hot themes, event-driven, growth quality, expectation repricing, and more - Calls realtime quotes, K-line data, technical indicators, news, and risk context - Supports follow-up questions, session export, notification sending, and background execution - Supports custom strategy files and experimental multi-agent orchestration diff --git a/strategies/README.md b/strategies/README.md index 780e84152..29f809d16 100644 --- a/strategies/README.md +++ b/strategies/README.md @@ -36,7 +36,7 @@ core_rules: [1, 2] # 策略需要使用的工具列表,可选 # 可用工具:get_daily_history, analyze_trend, get_realtime_quote, -# get_sector_rankings, search_stock_news +# get_sector_rankings, search_stock_news, get_stock_info required_tools: - get_daily_history - analyze_trend diff --git a/strategies/event_driven.yaml b/strategies/event_driven.yaml new file mode 100644 index 000000000..1e243e9c0 --- /dev/null +++ b/strategies/event_driven.yaml @@ -0,0 +1,54 @@ +# Event Driven Strategy / 事件驱动 + +name: event_driven +display_name: 事件驱动 +description: 围绕业绩、政策、并购、订单、产品发布等事件,评估催化强度、兑现概率和风险边界。 +category: framework +core_rules: [3, 5] +required_tools: + - search_stock_news + - get_realtime_quote + - analyze_trend +aliases: [事件驱动, 催化, 催化事件] +default_priority: 45 +market_regimes: [sector_hot, volatile] + +instructions: | + **事件驱动策略(Event Driven Strategy)** + + 适用场景: + - 公司或行业出现明确事件催化,如业绩预告、订单中标、并购重组、政策落地、产品发布、监管处罚、诉讼等。 + - 需要判断事件是短期交易催化、长期基本面改善,还是利好兑现。 + + 分析框架: + + 1. **事件分类** + - 使用 `search_stock_news` 梳理近期关键事件。 + - 将事件分为:业绩类、政策类、订单/产品类、资本运作类、监管/风险类。 + - 明确事件发生时间,过期或时间未知的信息不能作为主要依据。 + + 2. **影响路径** + - 判断事件影响的是收入、利润率、估值、融资能力、市场份额,还是仅影响情绪。 + - 对重大订单或政策利好,要说明兑现周期和不确定性。 + - 对监管、减持、处罚、诉讼等事件,风险优先。 + + 3. **市场反应** + - 使用 `get_realtime_quote` 和 `analyze_trend` 判断事件是否已被价格充分反映。 + - 放量上涨但未过关键阻力,可等待确认。 + - 高位放量滞涨或利好后冲高回落,应警惕兑现压力。 + + 4. **交易计划** + - 事件未兑现前,强调仓位控制和时间窗口。 + - 事件兑现后,重新评估是否从“预期交易”切换为“业绩验证”。 + - 对负面事件,先看风险释放是否充分,再考虑反弹。 + + 输出要求: + - 明确事件性质:利好 / 利空 / 中性 / 不确定。 + - 给出事件可信度、兑现周期、已反映程度。 + - 操作建议必须包含失效条件,如公告不及预期、跌破关键支撑或事件热度消退。 + + 评分调整建议: + - 高可信正向事件且价格尚未充分反映:`sentiment_score +14` + - 正向事件已大幅兑现:`sentiment_score -6` + - 负面事件仍在发酵:`sentiment_score -15` + - 事件影响不清晰或信息冲突:维持中性并降低置信度 diff --git a/strategies/expectation_repricing.yaml b/strategies/expectation_repricing.yaml new file mode 100644 index 000000000..a75ee7daa --- /dev/null +++ b/strategies/expectation_repricing.yaml @@ -0,0 +1,54 @@ +# Expectation Repricing Strategy / 预期重估 + +name: expectation_repricing +display_name: 预期重估 +description: 分析业绩预期、政策预期和估值预期的变化,寻找预期差修复或预期过热后的回落风险。 +category: framework +core_rules: [3, 5, 6] +required_tools: + - search_stock_news + - get_stock_info + - get_realtime_quote + - analyze_trend +aliases: [预期, 预期差, 预期重估] +default_priority: 65 +market_regimes: [volatile, sector_hot] + +instructions: | + **预期重估策略(Expectation Repricing Strategy)** + + 适用场景: + - 市场对公司业绩、政策、行业景气、估值中枢或竞争格局的预期正在变化。 + - 需要判断当前价格反映的是“预期修复”“预期落空”还是“预期过热”。 + + 分析框架: + + 1. **预期来源** + - 使用 `search_stock_news` 识别近期改变市场预期的信息:业绩预告、机构观点、订单、政策、产品进展、行业数据。 + - 区分硬信息(公告、财报、订单)和软信息(传闻、观点、情绪)。 + + 2. **预期差方向** + - 正向预期差:市场原本悲观,新增信息显示业务或业绩好于预期。 + - 负向预期差:市场原本乐观,新增信息低于预期或验证失败。 + - 若信息已经被连续大涨充分反映,需要提示预期兑现风险。 + + 3. **估值重估** + - 使用 PE/PB、市值、ROE、现金流等字段判断估值重估是否有基本面支撑。 + - 估值提升需要匹配盈利质量、增长持续性和行业空间。 + - 估值回落时,观察是否由一次性扰动还是长期逻辑变化导致。 + + 4. **价格确认** + - 使用 `analyze_trend` 判断预期变化是否已经转化为趋势。 + - 放量突破可视为预期被资金确认;缩量反弹则更偏修复观察。 + - 高位放量滞涨、利好不涨或跌破关键支撑,可能意味着预期转弱。 + + 输出要求: + - 明确当前是:正向预期差 / 预期兑现 / 负向预期差 / 预期不明。 + - 说明哪些信息改变了市场预期,哪些仍待验证。 + - 给出观察点:下一份财报、订单兑现、政策落地、估值回落或技术确认。 + + 评分调整建议: + - 正向预期差且价格尚未充分反映:`sentiment_score +15` + - 正向预期差已被连续大涨兑现:`sentiment_score -5` + - 负向预期差或核心假设被证伪:`sentiment_score -15` + - 信息不充分但存在潜在修复:维持中性并降低置信度 diff --git a/strategies/growth_quality.yaml b/strategies/growth_quality.yaml new file mode 100644 index 000000000..949774156 --- /dev/null +++ b/strategies/growth_quality.yaml @@ -0,0 +1,54 @@ +# Growth Quality Strategy / 成长质量 + +name: growth_quality +display_name: 成长质量 +description: 结合收入利润增长、ROE、现金流和行业空间,识别高质量成长股与成长失速风险。 +category: framework +core_rules: [2, 3, 5] +required_tools: + - get_stock_info + - get_realtime_quote + - search_stock_news + - analyze_trend +aliases: [成长, 成长股, 成长质量] +default_priority: 55 +market_regimes: [trending_up] + +instructions: | + **成长质量策略(Growth Quality Strategy)** + + 适用场景: + - 关注公司中长期成长能力,而不是只看短线技术形态。 + - 适合高景气行业、业绩持续改善或商业模式扩张阶段的公司。 + + 分析框架: + + 1. **成长性** + - 优先查看财报字段中的营业收入、归母净利润、经营现金流和 ROE。 + - 判断收入增长和利润增长是否同向,是否存在“增收不增利”。 + - 若只有概念热度但财报尚未验证,应降低成长确定性。 + + 2. **质量** + - ROE 越高且稳定,质量越好。 + - 经营现金流与净利润方向一致,说明盈利质量更可靠。 + - 现金流显著弱于利润时,要提示回款、存货或应收风险。 + + 3. **估值承受力** + - 使用 PE/PB、市值等估值字段判断市场是否已经提前透支成长。 + - 高成长可承受更高估值,但必须说明增长能否覆盖估值。 + - 估值高且成长放缓时,应明显下调评分。 + + 4. **趋势确认** + - 使用 `analyze_trend` 判断长期成长逻辑是否被市场资金确认。 + - 基本面向好但技术面未确认时,优先给观察条件而不是直接追买。 + + 输出要求: + - 明确公司处于:高质量成长 / 成长验证中 / 成长放缓 / 成长证伪。 + - 说明成长来自收入扩张、利润率改善、行业景气,还是一次性因素。 + - 给出适合成长股的买点:业绩验证后突破、回踩长期均线或估值回落。 + + 评分调整建议: + - 收入、利润、现金流和 ROE 同向改善:`sentiment_score +15` + - 行业景气与公司新闻互相验证:额外 `+6` + - 高估值但成长未验证:`sentiment_score -8` + - 增收不增利或现金流恶化:`sentiment_score -12` diff --git a/strategies/hot_theme.yaml b/strategies/hot_theme.yaml new file mode 100644 index 000000000..f036b7ba2 --- /dev/null +++ b/strategies/hot_theme.yaml @@ -0,0 +1,54 @@ +# Hot Theme Strategy / 热点题材 + +name: hot_theme +display_name: 热点题材 +description: 跟踪政策、产业和市场热点,判断题材强度、板块扩散和个股相对强弱。 +category: framework +core_rules: [2, 3, 5, 7] +required_tools: + - get_sector_rankings + - search_stock_news + - get_realtime_quote + - analyze_trend +aliases: [热点, 题材, 热点题材] +default_priority: 35 +market_regimes: [sector_hot] + +instructions: | + **热点题材策略(Hot Theme Strategy)** + + 适用场景: + - 市场出现明确政策、产业、技术路线或资金抱团热点。 + - 需要判断个股是否真正受益于热点,而不是单纯蹭概念。 + + 分析框架: + + 1. **热点强度** + - 使用 `get_sector_rankings` 判断相关板块是否在近期涨幅、成交额或人气上处于前列。 + - 观察热点是否从少数核心股扩散到板块内多只个股。 + - 若只有单股异动、板块未共振,降低信号权重。 + + 2. **个股相关性** + - 使用 `search_stock_news` 检查公司业务、订单、产能、客户、公告是否与热点直接相关。 + - 区分“实质受益”“间接受益”“概念关联较弱”。 + - 概念关联弱但涨幅过大时,应提示题材兑现风险。 + + 3. **相对强弱** + - 使用 `get_realtime_quote` 与 `analyze_trend` 判断个股涨幅、量比、换手率是否强于板块平均。 + - 强势热点股通常表现为放量、换手活跃、回调不破关键均线。 + + 4. **节奏与风险** + - 不在连续加速、高乖离率位置追涨。 + - 若新闻集中在“已经大涨”“资金追捧”“龙虎榜游资博弈”,需要警惕短线情绪顶。 + - 重大利空、监管问询、澄清公告可一票降低评级。 + + 输出要求: + - 明确当前热点阶段:启动 / 扩散 / 分化 / 退潮。 + - 说明个股与热点的实质相关性。 + - 给出可执行触发条件:回踩承接、放量突破、板块继续共振或退潮止损。 + + 评分调整建议: + - 热点处于启动或扩散期,且个股实质受益:`sentiment_score +12` + - 个股强于板块并有量能确认:额外 `+6` + - 热点进入分化或退潮:`sentiment_score -8` + - 仅概念蹭热点且乖离率过高:`sentiment_score -12`