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
## 联系方式
如有问题或建议,请联系项目维护人员。