README.md

# AI Quant - A 股量化交易框架

AI Quant 是一个基于 VNpy 4.3.0 的 A 股量化交易框架,旨在提供简单易用、功能强大的量化交易功能,帮助投资者快速构建和测试量化策略,并提供模拟交易和实盘交易功能。

## 项目特色

- **三层架构设计**:核心接口层、服务引擎层、应用策略层,各模块间通过统一接口通信,无跨模块强依赖
- **招商证券对接**:单独封装招商证券专属配置模板,简化配置参数
- **单票量化策略**:单独抽离,标准化入参/出参,仅负责单票分析
- **大模型推理**:独立插件式设计,预留 Ollama/FinGPT 接口
- **双模式运行**:支持控制台模式和图形界面模式,满足不同使用场景
- **依赖管理优化**:添加依赖检查功能,自动检测并提示缺失的依赖包
- **模拟数据生成**:使用几何布朗运动模型生成更真实的股票价格序列
- **交易信号优化**:调整了交易信号的判断逻辑,降低了买入信号的门槛

## 项目架构

### 核心接口层 (core/)
- **招商证券接口**:core/api/zs_sec.py,提供招商证券接口配置和交易功能
- **市场数据接口**:core/api/market.py,提供市场数据获取功能
- **交易接口**:core/api/trade.py,提供交易功能
- **工具模块**:core/utils/,提供通用工具函数

### 服务引擎层 (service/)
- **回测引擎**:service/backtest/,提供回测功能
- **风险控制引擎**:service/risk/,提供风险控制功能
- **数据管理引擎**:service/data/,提供数据缓存和管理功能
- **大模型推理引擎**:service/llm/,提供大模型推理功能

### 应用策略层 (app/)
- **单票量化策略**:app/strategy/single_stock.py,实现单只股票的量化分析和交易信号生成
- **控制台模式**:app/console/console.py,提供控制台界面
- **图形界面模式**:app/main/mainwindow.py,提供图形界面
- **策略配置**:app/config/,提供策略参数配置

## 快速开始

### 环境要求
- Python 3.8+
- VNpy 4.3.0
- 其他依赖包(参考 requirements.txt)

### 安装依赖
```bash
pip install -r requirements.txt
```

### 配置参数
1. 复制 config/zs_sec_config.ini.template 到 config/zs_sec_config.ini
2. 编辑 config/zs_sec_config.ini,填入招商证券接口参数

### 启动程序

#### 控制台模式
```bash
python app/console/console.py
```

#### 图形界面模式
```bash
python app/main/mainwindow.py
```

#### 一键启动
```bash
python script/startup.py
```

## 测试

### 基础测试
```bash
python script/test_basic.py
```

### 模拟测试
```bash
python script/simulate_test.py --stock-count 10 --data-days 365 --frequency d --save-cache --clear-cache
```

### 代码质量检查
```bash
flake8 core/ service/ app/ config/ script/ run.py --count --select=E501
```

## 文档

- **项目设计文档**:DESIGN.md,详细介绍项目架构和功能设计
- **项目依赖**:requirements.txt,列出项目依赖包
- **项目配置**:config/,包含项目配置文件

## 开发

### 项目结构
```
AIQuant/
├── core/                  # 核心接口层
│   ├── api/              # 接口模块
│   ├── constant/         # 常量模块
│   └── utils/            # 工具模块
├── service/               # 服务引擎层
│   ├── backtest/         # 回测引擎
│   ├── data/             # 数据管理引擎
│   ├── llm/              # 大模型推理引擎
│   └── risk/             # 风险控制引擎
├── app/                  # 应用策略层
│   ├── strategy/         # 策略模块
│   ├── console/          # 控制台模式
│   └── main/             # 图形界面模式
├── config/               # 配置模块
├── script/               # 脚本模块
├── data_cache/           # 数据缓存目录
├── DESIGN.md             # 项目设计文档
├── README.md             # 项目说明文档
├── requirements.txt      # 项目依赖
└── run.py                # 项目入口文件
```

### 代码规范
- 使用 PEP 8 规范
- 所有模块添加详细中文注释
- 遵循三层架构设计原则

## 许可证

MIT License

## 联系方式

如有问题或建议,请联系项目维护人员。