# OpenClaw投资策略系统 - 完整流程整合文档
## 版本: v1.0 | 更新日期: [REDACTED_PHONE]

---

## 一、系统架构概览

```
用户请求
    ↓
┌─────────────────────────────────────────────────────────────┐
│                    主控入口 (DounaiSystem)                   │
│  skills/dounai-investment-system/__init__.py                 │
└─────────────────────────────────────────────────────────────┘
    ↓
┌─────────────────────────────────────────────────────────────┐
│                    功能路由分发                              │
├─────────────────┬─────────────────┬─────────────────────────┤
│  产业链分析      │  市场报告       │  个股分析               │
│  analyze_       │  generate_      │  analyze_stock()        │
│  industry()     │  us_report()    │                         │
│                 │  generate_      │                         │
│                 │  ah_preopen()   │                         │
└─────────────────┴─────────────────┴─────────────────────────┘
    ↓                    ↓                    ↓
┌──────────────┐  ┌──────────────┐  ┌──────────────────────┐
│ 知识星球API   │  │ 长桥API       │  │ 数据库 + 长桥API      │
│ zsxq_fetcher │  │ longbridge   │  │ v26因子 + 实时行情    │
└──────────────┘  └──────────────┘  └──────────────────────┘
    ↓                    ↓                    ↓
┌─────────────────────────────────────────────────────────────┐
│                    输出整合                                  │
│  - 知识星球调研信息                                          │
│  - 实时行情数据                                              │
│  - v26因子评分                                               │
│  - 产业链分析                                                │
│  - 投资建议                                                  │
└─────────────────────────────────────────────────────────────┘
    ↓
┌─────────────────────────────────────────────────────────────┐
│                    自动推送                                  │
│  - 飞书消息 (主要)                                           │
│  - 本地文件保存                                              │
│  - 日志记录                                                  │
└─────────────────────────────────────────────────────────────┘
```

---

## 二、核心Skills清单

| Skill名称 | 路径 | 功能 | 触发方式 |
|:----------|:-----|:-----|:---------|
| **dounai-investment-system** | `skills/dounai-investment-system/` | 主控入口，统一调度 | Python调用 |
| **industry-chain-analysis** | `skills/industry-chain-analysis/` | 产业链深度分析 | 主控调用 |
| **us-market-analysis** | `skills/us-market-analysis/` | 美股隔夜报告 | 定时任务/主控调用 |
| **ah-market-preopen** | `skills/ah-market-preopen/` | A+H开盘前瞻 | 定时任务/主控调用 |
| **a-stock-analysis** | `skills/a-stock-analysis/` | 个股v26因子分析 | 主控调用 |
| **investment-analysis-suite** | `skills/investment-analysis-suite/` | 统一调度封装 | Python调用 |

---

## 三、数据流API配置

### 3.1 长桥API (实时行情)

**配置文件**: `.longbridge.env`
```bash
LONGPORT_APP_KEY="68f2e2a62a7911943bd05db4bd584b6c"
LONGPORT_APP_SECRET="ede99d5e90a810122983f159f2bc947aa962a0844f13f6e540b90981937a26dd"
LONGPORT_ACCESS_TOKEN="m_eyJhbGciOiJSUzI1NiIs..."
```

**封装模块**: `tools/longbridge_api.py`
- `get_quotes(symbols)` - 批量获取行情
- `get_quote(symbol)` - 单只股票行情
- 支持A股/港股/美股

### 3.2 知识星球API (调研信息)

**配置文件**: `tools/zsxq_fetcher.py`
```python
COOKIES = "sensorsdata2015jssdkcross=...; zsxq_access_token=..."
```

**封装函数**:
- `search_industry_info(keyword)` - 搜索行业信息
- `get_latest(count)` - 获取最新文章
- **注意**: 频率限制，每次间隔≥30秒

### 3.3 数据库 (历史因子)

**路径**: `data/historical/historical.db`

**数据表**:
- `stock_factors` - 技术指标因子
- `stock_defensive_factors` - 防御因子
- `stock_fina` - 财务数据

---

## 四、定时任务配置

### 4.1 Crontab配置

```bash
# 编辑 crontab
crontab -e

# === 美股隔夜报告 (08:30) ===
30 8 * * * cd ~/.openclaw/workspace && source setup_env.sh && python3 skills/us-market-analysis/scripts/generate_report_longbridge.py >> logs/us_market.log 2>&1

# === A+H开盘前瞻 (09:15) ===
15 9 * * * cd ~/.openclaw/workspace && source setup_env.sh && python3 skills/ah-market-preopen/scripts/generate_report_longbridge.py >> logs/ah_market.log 2>&1

# === 收盘深度报告 (15:00) ===
0 15 * * * cd ~/.openclaw/workspace && python3 tools/daily_market_report.py >> logs/daily_report.log 2>&1

# === 知识星球信息 (每2小时) ===
0 */2 * * * cd ~/.openclaw/workspace && python3 tools/heartbeat_zsxq_fetch.py >> logs/zsxq.log 2>&1

# === 策略优化器 (每15分钟) ===
*/15 * * * * cd ~/.openclaw/workspace && python3 tools/auto_optimizer.py >> logs/optimizer.log 2>&1
```

### 4.2 Heartbeat任务

**触发文件**: `HEARTBEAT.md`

**执行内容**:
1. 整点状态汇报
2. 模拟盘跟踪
3. Git同步

---

## 五、使用流程

### 5.1 产业链分析流程

```python
# 方式1: 主控系统调用
from skills.dounai_investment_system import DounaiSystem

system = DounaiSystem()
result = system.analyze_industry("存储芯片")

# 自动执行:
# 1. 搜索知识星球"存储芯片"信息
# 2. 获取存储芯片产业链股票实时行情
# 3. 计算v26因子评分
# 4. 生成投资组合建议
# 5. 输出完整报告
```

### 5.2 个股分析流程

```python
# 完整分析单只股票
from skills.dounai_investment_system import DounaiSystem

system = DounaiSystem()
analysis = system.analyze_stock(
    code="301421.SZ",
    include_zsxq=True,      # 包含知识星球
    include_industry=True,  # 包含产业链
    include_factors=True    # 包含v26因子
)

# 输出:
# - 实时行情
# - 产业链位置
# - 知识星球相关调研
# - v26因子评分
# - 建仓建议
```

### 5.3 自动报告流程

**美股报告 (08:30自动)**:
```
定时任务触发
    ↓
调用 generate_report_longbridge.py
    ↓
1. 长桥API获取美股行情
2. 生成分析报告
3. 保存到本地文件
4. 推送到飞书 ✅
```

**A+H报告 (09:15自动)**:
```
定时任务触发
    ↓
调用 generate_report_longbridge.py
    ↓
1. 长桥API获取A股/港股行情
2. 生成开盘前瞻
3. 保存到本地文件
4. 推送到飞书 ✅
```

---

## 六、输出格式规范

### 6.1 产业链分析报告

```markdown
## 📊 [行业名称]产业链分析报告

### 一、知识星球最新调研
- [日期] [标题] - [核心结论]

### 二、实时行情
| 标的 | 价格 | 涨跌 | 仓位 |
|:-----|-----:|-----:|-----:|

### 三、产业链分析
上游 → 中游 → 下游

### 四、投资建议
- 综合评分: +XX分
- 推荐组合: ...
- 建仓策略: ...
```

### 6.2 个股分析报告

```markdown
## 📊 [股票名称] ([代码]) 深度分析

### 一、实时行情
- 最新价: XX元 (+X.XX%)

### 二、产业链位置
- 上游/中游/下游定位

### 三、知识星球相关调研
- [如果有]

### 四、v26因子评分
- 综合得分: +X.XX分
- 各因子明细...

### 五、投资建议
- 评级: 买入/观望/卖出
- 目标价: XX元
- 止损位: -XX%
```

---

## 七、故障处理

### 7.1 长桥API失败

```python
# 自动处理逻辑
try:
    quotes = api.get_quotes(symbols)
except Exception as e:
    print(f"❌ 长桥API失败: {e}")
    # 使用T-1日数据
    quotes = get_cached_quotes(symbols)
```

### 7.2 知识星球API失败 (14001)

```python
# 频率限制处理
if error_code == 14001:
    print("⚠️ 知识星球频率限制，等待30秒后重试...")
    time.sleep(30)
    # 或使用已有缓存数据
```

### 7.3 飞书推送失败

```python
# 推送失败处理
try:
    send_feishu_message(report)
except Exception as e:
    print(f"⚠️ 飞书推送失败: {e}")
    # 保存到本地文件
    save_to_file(report)
```

---

## 八、日志管理

### 8.1 日志文件位置

```
logs/
├── us_market.log          # 美股报告日志
├── ah_market.log          # A+H报告日志
├── zsxq.log               # 知识星球日志
├── optimizer.log          # 优化器日志
├── daily_report.log       # 收盘报告日志
└── heartbeat.log          # Heartbeat日志
```

### 8.2 日志轮转

```bash
# 每周清理一次旧日志
0 0 * * 0 find ~/.openclaw/workspace/logs -name "*.log" -mtime +7 -delete
```

---

## 九、快速开始

### 9.1 环境准备

```bash
cd ~/.openclaw/workspace
source setup_env.sh
```

### 9.2 手动执行分析

```bash
# 产业链分析
python3 -c "
from skills.dounai_investment_system import DounaiSystem
system = DounaiSystem()
result = system.analyze_industry('存储芯片')
"

# 个股分析
python3 -c "
from skills.dounai_investment_system import DounaiSystem
system = DounaiSystem()
result = system.analyze_stock('301421.SZ')
"
```

### 9.3 查看报告

```bash
# 美股报告
cat data/us_market_daily_$(date +%Y%m%d).md

# A+H报告
cat data/ah_market_preopen_$(date +%Y%m%d).md
```

---

## 十、扩展开发

### 10.1 添加新的分析模块

```python
# 在 skills/dounai-investment-system/__init__.py 添加

def analyze_new_sector(self, sector_name: str):
    """新增板块分析"""
    # 1. 知识星球信息
    zsxq_data = self.search_zsxq(sector_name)
    
    # 2. 实时行情
    quotes = self.get_industry_quotes(sector_name)
    
    # 3. 生成报告
    return self.generate_report(zsxq_data, quotes)
```

### 10.2 添加新的数据源

```python
# 在 tools/ 添加新的API封装
# 例如: tushare_api.py, eastmoney_api.py
```

---

## 十一、系统状态

| 模块 | 状态 | 说明 |
|:-----|:----:|:-----|
| 长桥API | ✅ 已配置 | 实时行情 |
| 知识星球API | ✅ 已配置 | 频率限制需注意 |
| 美股报告 | ✅ 可用 | 自动推送到飞书 |
| A+H报告 | ✅ 可用 | 自动推送到飞书 |
| 产业链分析 | ✅ 可用 | 整合知识星球+行情 |
| 个股分析 | ✅ 可用 | v26因子+产业链 |
| 定时任务 | ✅ 已配置 | Crontab |
| Heartbeat | ✅ 已配置 | 每30分钟 |

---

**系统整合完成，全自动运行！** 🚀