---

title: # 富贵系统 — 优化升级方案
source: 复盘提取
stars: 3
tags: ["复盘"]
source_id: 26
created: 2026-06-03 07:14:06
status: active
---


# # 富贵系统 — 优化升级方案

# 富贵系统 — 优化升级方案

> 基于 fugui-install.zip 全面对比分析
> 数据底座 === 唯一数据源（不动）
> 改造目标：取架构精华，嫁接现有系统

---

## 一、当前系统能力全景

### 已具备（优势项）🏆

| 能力 | 实现位置 | 说明 |
|------|---------|------|
| 数据底座 | `~/.hermes/stock_db/` (SQLite) | 5512只股票×243天K线+110个二级行业板块+5028只资金流 |
| 数据预热 | `warmup.py` + `boards.py` | 全量预热+板块日线汇总+增量更新，cron定时执行 |
| 行业板块 | `industry_boards` + `board_daily` | 110个申万二级行业，市面最强板块分类 |
| 板块扫描 | `pool_scanner.scan_boards()` | 板块涨幅排名+资金排行+池子管理 |
| 股票扫描 | `pool_scanner.scan_stocks()` | 当日强势+5日强势+资金TOP |
| 日复盘 | `daily_review.py` + 6子代理 | 天时/地利/人和/持仓/情绪/Kelly仓位 |
| 周复盘 | `weekly_review.py` | 5天回顾+对错反思+下周展望 |
| 情绪评分 | 0-10分(涨停+涨跌比+连板) | 涨跌比>2=10分 ... 冰点<4分 |
| 引擎A评分 | 量能25+形态25+资金25+趋势25 | 个股100分制 |
| Kelly仓位 | 基于情绪评分动态调整 | boom减半，ice保底10% |
| 自选股/板块池 | `portfolios`表 | 观察池+投资池+板块池 |
| 历史判断 | `judge_tracker`表 | 对错标注+16列字段 |
| 复盘报告 | HTML+TXT+网站+语音 | 自动生成+同步qiugh.online |
| 定时调度 | 6条cron | 盘前预热+盘中扫描+收盘复盘+周末复盘 |

### 缺失（改进项）🔴

| 能力 | fugui包做法 | 数据底座支持 | 难度 | 价值 |
|------|-----------|-------------|:----:|:----:|
| ① 主力五阶段 | K线→识别吸筹/试盘/洗盘/拉升/出货 | ✅ K线已齐 | ★★☆ | 高 |
| ② 筹码分布 | `chips_dist.pyx` 计算集中度+洗盘vs出货 | ✅ K线已齐 | ★★★ | 高 |
| ③ 买卖节奏 | RSI+55岁动能+25岁动能 | ✅ K线已齐 | ★☆☆ | 中 |
| ④ 风控分析 | 止损止盈+最大回撤+R/R+仓位建议 | ✅ K线已齐 | ★☆☆ | 中 |
| ⑤ 资金连续流入 | `fund_flow.py` 连续天数判断+北向联动 | ⚠ moneyflow有5028只 | ★☆☆ | 中 |
| ⑥ Verify闭环 | 数据充分性+置信度+信号一致性 | ✅ 纯算法 | ★☆☆ | 中 |
| ⑦ 一票否决 | 瀑布+放量+出货→跳过 | ✅ 纯逻辑 | ★☆☆ | 低 |
| ⑧ Cython加速 | 指标/筹码/形态/并行×50x | ✅ 现有算法 | ★★☆ | 中 |
| ⑨ 并行调度 | ThreadPool 同时跑8插件 | ✅ 现有子代理 | ★☆☆ | 低 |

---

## 二、详细实施方案（5步走）

### 第1步：主力五阶段识别

> 目标：给 daily_review 的引擎A增加五阶段判断
> 数据：只用现有 kline(open/high/low/close/vol)
> 参考：fugui/plugins/pattern.py

**改动文件**：`~/stock/pool_scanner.py` 新增 `def analyze_five_phases(kline)`

```python
# 输出示例
phase = "accumulate"  # accumulate / test / wash / lift / distribute
phase_score = 15       # 20(拉升) ~ -20(出货)
phase_confidence = 0.75
```

**接入点**：`engine_score()` 中「形态25分」逻辑替换为五阶段评分

**工作量**：1h

---

### 第2步：[[筹码分布]]分析

> 目标：判断筹码集中度+洗盘vs出货判别
> 数据：只用现有 kline(high/low/volume/close)
> 参考：fugui/plugins/chips.py

**改动文件**：`~/stock/pool_scanner.py` 新增 `def calc_chips(kline)`

```python
# 输出
concentration = 0.35    # 集中度(越低越集中)
is_washout = True       # 洗盘：缩量下跌
is_distribution = False # 出货：放量下跌+量创新高
chips_score = +15       # 集中+15，分散-5
```

**接入点**：`engine_score()` 新增「筹码15分」维度

**工作量**：1.5h

---

### 第3步：买卖节奏 + 风控

> 目标：RSI买卖点+55岁动量+止损止盈计算
> 数据：只用现有 kline
> 参考：fugui/plugins/rhythm.py + risk.py

**改动文件**：`~/stock/pool_scanner.py` + `~/stock/daily_review.py`

新增函数：
- `calc_rsi(closes, period=14)` → RSI值+超买超卖信号
- `calc_momentum(closes)` → 55岁动能 fading / sustained
- `calc_risk(kline)` → 止损价+止盈价+R/R比+最大回撤

**接入点**：
- 节奏 → `engine_score()` 新增「节奏10分」
- 风控 → `daily_review.py` 策略建议中加入止损止盈建议

**工作量**：1h

---

### 第4步：Verify闭环 + 一票否决

> 目标：数据充分性校验 + 极端情况自动否决
> 数据：纯逻辑，不依赖额外数据

**改动文件**：`~/stock/pool_scanner.py` 新增 `def verify_result(stock_data)`

```python
# Verify 检查项
- kline 数据 ≥ 20天？数据不充分 = 降权
- 所有引擎维度都跑完了？缺失维度 = 警告
- 信号一致性？buy≥3且sell≥3 = 矛盾信号
- 总分≥70但数据不足 = 降权

# 一票否决
- 瀑布+放量+下跌 → 跳过
- 筹码分布判断"出货" → 跳过
- 最大回撤>20% → 跳过
```

**接入点**：`engine_score()` 计算完总分后，过一遍Verify

**工作量**：0.5h

---

### 第5步：Cython加速（可选）

> 目标：指标计算编译为.so，50x加速
> 适合大规模扫描时（5512只计算一遍可缩短）

**改动文件**：新增 `~/stock_db/compute/indicators.pyx`

```cython
# 编译指标
ma_calc() → 50x
macd()    → 50x
rsi()     → 50x
atr()     → 50x

# 编译命令
python setup.py build_ext --inplace
```

**注意**：现有系统算力够用（5512只纯Python算一遍约3-5秒），Cython非必须

**工作量**：1h（含build脚本+测试）

---

## 三、实施总结

| 步 | 功能 | 文件改动 | 数据源 | 工时 | 优先级 |
|:--:|------|---------|-------|:----:|:-----:|
| 1 | 五阶段识别 | `pool_scanner.py` | kline ✅ | 1h | **P0** |
| 2 | 筹码分布 | `pool_scanner.py` | kline ✅ | 1.5h | **P0** |
| 3 | 节奏+风控 | `pool_scanner.py` + `daily_review.py` | kline ✅ | 1h | P1 |
| 4 | Verify+否决 | `pool_scanner.py` | 纯逻辑 | 0.5h | P2 |
| 5 | Cython加速 | 新建 `compute/` | 现有算法 | 1h | P3 |
| | **合计** | 3个文件 | **全用现有数据** | **4h** | |

**核心原则**：
1. 数据底座一条数据不增 — 全用现有 kline/moneyflow/board_daily
2. 算法全部用fugui包已验证的 — 移植+调整不是从零写
3. 加维度不改结构 — 引擎A从4个维度→6个维度(形态+节奏+筹码+风控)

---

生成时间：2026-05-02


---
_由 wiki_builder 自动生成 | 源记录ID: 26_


---
**相关概念**: [[洗盘与出货]] | [[成交量与主力控盘]] | [[买卖点判断]] | [[选股策略框架]] | [[风险控制]] | [[筹码分布]] | [[策略回测模板]]
