# 小果信号管道 — xiaoguo → signal_news → 知微评估 → 自选/关注

## 一、整体流程

```
xiaoguo_scanner.py（每5分钟跑一轮）
  ├─ 同花顺看多榜（6个轮换）：创新高、量价齐升、向上突破、连续上涨、持续放量、险资举牌
  └─ 同花顺看空榜（5个轮换）：创新低、持续缩量、量价齐跌、连续下跌、向下突破
       ↓ 写入 signal_news
         source=xiaoguo（看多） / source=xiaoguo_risk（看空）
       ↓
知微（盯盘cron每15-25分钟）
  ├─ 读 signal_news 最新未处理信号
  ├─ 全面评估（五维分析）
  │   大盘 → 行业 → 个股
  │   消息面 + 基本面 + 技术面
  ├─ 评估结论分三级：
  │   ✅ 正式自选 → watchlist（默认status）+ decisions.json
  │   🔄 关注列表 → watchlist（status=watching），价格波动>3%触发升级
  │   ❌ 跳过 → 不跟踪
  └─ 在报告中体现
```

## 二、数据源

### 榜单来源（三路并行）
1. **同花顺技术面榜单**（akshare，6看多+5看空轮换）— 技术指标类信号
2. **行业领涨股**（从 market.json 读取，每轮都跑）— 涨幅>2.5%板块的领涨龙头
3. **东方财富热榜**（akshare.stock_hot_rank_em）— 因502不可用，降级静默

### 三路数据合并规则
优先级：行业领涨 > 同花顺技术榜 > 东方财富热榜
同只股票不重复处理，最多15只/轮。
行业领涨股保证能被扫描到，不会被技术榜单的股票挤掉。

### 新闻来源
- 东方财富个股新闻API（akshare.stock_news_em）
- 新闻旧了不是排除条件，而是继续用其他维度评估

## 三、评估标准

### 五维全面分析
1. **大盘维度** — 当前市场环境（普涨/分化/普跌）
2. **行业维度** — 板块联动性，行业趋势
3. **消息面** — 新闻、公告、概念催化
4. **基本面** — PE/PB、盈亏状态、市值
5. **技术面** — 价量关系、支撑压力位、买入区

### 筛选条件
- 亏损股（PE为负）且暴跌 → ❌ 跳过
- PE为负还上涨 → 纯炒作 ❌ 跳过
- PE>100 且大涨 → 题材炒作 ❌ 跳过
- 单日暴跌>8% → ❌ 等企稳
- 停牌 → ❌ 跳过
- PE合理（0~60）+ 技术面信号 → ✅ 可考虑
- PE极度低估（<15）+ 行业有催化 → ✅ 优先

### 结论分三级
| 等级 | watchlist status | 含义 | 后续动作 |
|------|-----------------|------|---------|
| ✅ 正式自选 | 默认 | 有完整策略（买入区/止损/止盈） | 价格监控每2min+K线缓存+策略重评 |
| 🔄 关注 | watching | 有待验证，等价格波动>3%或出新闻 | 价钱跟踪，条件触发自动升级评估 |
| ❌ 跳过 | 不跟踪 | 明确不碰 | 无 |

## 四、关注列表升级条件

watchlist 中 status=watching 的股票，每轮cron检查：
1. 已有正式策略（decisions.json中有entry_low/entry_high）→ 价格进入买入区则升级
2. 无正式策略 → 价格波动>3%或搜到新新闻 → 触发完整五维评估
3. 符合条件的移入正式自选（status改为默认），生成策略，在报告中体现

## 五、自选股自动获得的数据服务

- price_monitor.py（每2分钟刷新价钱）
- refresh_mtf_cache.py（每天9:00拉日/周/月K线）
- stale_detector.py（每天检查买入区偏离+过期）
- 盘前+午间策略重评（每天9:00+12:00）
- 盯盘报告覆盖分析（每15-25分钟）
