Files
aiagents-stock/docs/MINIQMT_INTEGRATION_GUIDE.md
T

258 lines
6.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# MiniQMT量化交易集成指南
## 📚 概述
本系统已为监测板块增加MiniQMT量化交易预留接口,支持自动化量化交易功能。该功能可以在监测到特定价格条件时,自动执行买卖操作。
## 🚀 功能特性
### 核心功能
-**自动交易执行**:监测触发后自动下单
-**仓位管理**:智能仓位控制和风险管理
-**多种订单类型**:市价单、限价单、止损单等
-**持仓监控**:实时查看持仓和盈亏
-**风险控制**:自动止损、止盈功能
-**策略配置**:灵活的量化策略参数设置
### 交易信号类型
1. **进场信号(Entry**:价格进入预设进场区间时触发买入
2. **止盈信号(Take Profit**:价格达到止盈位时触发卖出
3. **止损信号(Stop Loss**:价格达到止损位时紧急止损
## ⚙️ 配置说明
### 1. 环境变量配置
在项目根目录的 `.env` 文件中添加以下配置:
```bash
# MiniQMT量化交易配置
MINIQMT_ENABLED=true # 是否启用MiniQMTtrue/false
MINIQMT_ACCOUNT_ID=your_account_id # 交易账户ID
MINIQMT_HOST=127.0.0.1 # MiniQMT服务地址
MINIQMT_PORT=58610 # MiniQMT服务端口
```
### 2. 代码配置
配置会自动从环境变量加载,也可以在 `config.py` 中直接修改:
```python
MINIQMT_CONFIG = {
'enabled': True, # 启用MiniQMT
'account_id': 'your_account_id', # 账户ID
'host': '127.0.0.1', # 服务地址
'port': 58610, # 服务端口
}
```
## 📖 使用指南
### 第一步:安装MiniQMT
1. 下载并安装MiniQMT客户端
2. 启动MiniQMT客户端
3. 登录你的交易账户
4. 确保API服务已启动
### 第二步:启用量化功能
1. 进入系统的"实时监测"板块
2. 在底部找到"MiniQMT量化交易"状态面板
3. 点击"连接MiniQMT"按钮
4. 等待连接成功提示
### 第三步:添加量化监测股票
#### 方式一:添加新股票时启用
1. 点击"添加股票监测"
2. 填写股票信息和关键位置
3. 在"量化交易(MiniQMT"区域勾选"启用量化自动交易"
4. 配置量化参数:
- **最大仓位比例**:单只股票最大占总资金的比例(建议0.1-0.3)
- **自动止损**:是否在触发止损位时自动卖出
- **自动止盈**:是否在触发止盈位时自动卖出
5. 点击"添加监测"
#### 方式二:编辑现有股票启用
1. 在监测股票列表中找到目标股票
2. 点击"编辑"按钮
3. 勾选"启用量化自动交易"
4. 配置量化参数
5. 点击"保存修改"
### 第四步:监控交易执行
系统会在以下情况自动执行交易:
1. **进场买入**
- 条件:价格进入进场区间
- 动作:按配置的仓位比例自动买入
- 订单类型:限价单
2. **止盈卖出**
- 条件:价格达到止盈位
- 动作:卖出全部持仓
- 订单类型:限价单
3. **止损卖出**
- 条件:价格达到止损位
- 动作:紧急卖出全部持仓
- 订单类型:市价单(快速成交)
## 🔧 接口说明
### MiniQMTInterface 类
#### 主要方法
```python
# 连接到MiniQMT
success, msg = miniqmt.connect(account_id)
# 断开连接
miniqmt.disconnect()
# 获取账户信息
account_info = miniqmt.get_account_info()
# 获取持仓
positions = miniqmt.get_positions()
# 下单
success, msg, order_id = miniqmt.place_order(
symbol='000001',
action=TradeAction.BUY,
quantity=100,
price=10.50,
order_type=OrderType.LIMIT
)
# 撤销订单
success, msg = miniqmt.cancel_order(order_id)
# 执行策略信号(自动调用)
success, msg = miniqmt.execute_strategy_signal(
stock_id=1,
symbol='000001',
signal={'type': 'entry', 'price': 10.5},
position_size=0.2
)
```
### 量化策略配置
```python
quant_config = {
'max_position_pct': 0.2, # 最大仓位比例(20%
'auto_stop_loss': True, # 自动止损
'auto_take_profit': True, # 自动止盈
'min_trade_amount': 5000, # 最小交易金额
}
```
## 💡 最佳实践
### 1. 仓位管理建议
- 单只股票仓位不超过20%
- 总仓位不超过80%
- 保留至少20%现金应对突发情况
### 2. 风险控制建议
- 必须设置止损位(建议5-10%
- 设置合理的止盈位(建议10-20%)
- 启用自动止损功能
### 3. 监测参数建议
- 监测间隔:5-30分钟(日内交易)
- 进场区间:设置合理的价格范围
- 及时更新关键位置
### 4. 测试建议
- 先用小仓位测试
- 验证连接和下单功能
- 确认止损止盈逻辑正确
## ⚠️ 风险提示
### 重要警告
1. **实盘交易风险**:自动交易涉及真实资金,请谨慎使用
2. **网络延迟**:可能导致下单延迟或失败
3. **系统故障**:监测服务中断可能错过交易时机
4. **价格滑点**:实际成交价可能与预期不同
5. **市场风险**:量化交易无法规避市场系统性风险
### 安全建议
1. ✅ 使用专门的测试账户进行测试
2. ✅ 设置合理的单笔交易限额
3. ✅ 定期检查持仓和资金状态
4. ✅ 保持人工监控,不要完全依赖自动化
5. ✅ 及时处理异常通知和错误
## 🛠️ 故障排除
### 连接失败
- 检查MiniQMT客户端是否启动
- 确认账户已登录
- 验证账户ID是否正确
- 检查网络连接
### 下单失败
- 检查资金是否充足
- 确认股票代码格式正确
- 验证交易时间(交易日9:30-15:00)
- 检查仓位限制
### 交易未执行
- 确认量化功能已启用
- 检查MiniQMT连接状态
- 验证监测服务是否运行
- 查看通知记录中的错误信息
## 📊 技术架构
```
监测服务 (monitor_service.py)
价格触发检测 (_check_trigger_conditions)
量化交易执行 (_execute_quant_trade)
MiniQMT接口 (miniqmt_interface.py)
订单执行 (execute_strategy_signal)
MiniQMT客户端 (真实交易)
```
## 🔄 更新日志
### v1.0.0 (当前版本)
- ✅ 实现MiniQMT预留接口
- ✅ 支持自动买卖交易
- ✅ 集成监测触发机制
- ✅ 添加量化配置界面
- ✅ 实现仓位管理功能
- ✅ 支持多种订单类型
### 未来规划
- 🔜 支持更多交易策略
- 🔜 添加回测功能
- 🔜 优化仓位算法
- 🔜 增加风控规则
- 🔜 支持批量操作
## 📞 技术支持
如有问题,请查看:
1. 系统日志输出
2. MiniQMT客户端日志
3. 通知记录中的详细信息
---
**免责声明**:本系统仅供学习和研究使用,不构成任何投资建议。量化交易涉及真实资金风险,请谨慎使用并自行承担投资风险。