169136dd4a
Document per-module order logic, risk rules, and WeChat message templates with a central INDEX for navigation. Co-authored-by: Cursor <cursoragent@cursor.com>
94 lines
4.0 KiB
Markdown
94 lines
4.0 KiB
Markdown
# 关键位监控
|
||
|
||
**页面路径**:`/keys`
|
||
|
||
关键位监控用于在指定价格区间上设置 **5 分钟收盘** 触发规则,分为 **自动单**(箱体/收敛突破)与 **仅微信提醒**(关键支阻区)两类。
|
||
|
||
**文档索引**:[INDEX.md](./INDEX.md) · 微信模板:[WECHAT.md §6–§8](./WECHAT.md) · 风控:[RISK.md](./RISK.md)
|
||
|
||
---
|
||
|
||
## 监控类型
|
||
|
||
### 箱体突破 / 收敛突破(自动单)
|
||
|
||
| 项目 | 规则 |
|
||
|------|------|
|
||
| 触发 | 5 分钟 K 线 **收盘价** 高于上沿或低于下沿 |
|
||
| 顺势 / 反转 | 顺势:上破做多、下破做空;反转:上破做空、下破做多 |
|
||
| 下单 | CTP 已连接且在交易时段内,自动 **市价开仓** |
|
||
| 手数 | 按系统设置的风险比例与保证金上限计算 |
|
||
| 止损 | 突破 K 线最低价(多)/ 最高价(空)± **2 个最小变动价位** |
|
||
| 盈亏比 | 默认 **2**,可在新增监控时修改(0.5~10) |
|
||
| 移动保本 | 可选;开启后盈亏比默认 **3**,达 3R 止盈价自动平仓;同时启用移动保本止损逻辑(达 1R 后抬止损) |
|
||
| 成交后 | 进入 **下单监控** 持仓列表,`monitor_type` 显示为「箱体突破」或「收敛突破」 |
|
||
| 结案 | 触发并尝试下单后,本条监控移入历史(无论成败,同一根 5m K 线不重复触发) |
|
||
|
||
**前提**:CTP 已连接、处于交易时段、账户风控允许开仓。
|
||
|
||
### 关键支阻区(仅提醒)
|
||
|
||
| 项目 | 规则 |
|
||
|------|------|
|
||
| 区间 | **上沿 = 阻力**,**下沿 = 支撑**,合并为一个关键支阻区 |
|
||
| 触发 | 5m 收盘突破上沿或跌破下沿 |
|
||
| 推送 | 企业微信,见 [WECHAT §8](./WECHAT.md#8-关键支阻区提醒) |
|
||
| 次数 | 最多 **3 次**,间隔约 **5 分钟**(人工盯盘提醒) |
|
||
| 自动开仓 | **否** |
|
||
| 结案 | 第 3 次推送后自动归档 |
|
||
|
||
历史数据中的「关键阻力位」「关键支撑位」按 **关键支阻区** 同样规则处理。
|
||
|
||
---
|
||
|
||
## 与旧版差异
|
||
|
||
- 旧版:tick 现价触碰即推送,箱体/收敛仅微信提醒
|
||
- 新版:**统一 5m 收盘** 触发;箱体/收敛改为 **自动市价单**;阻力/支撑合并为 **关键支阻区** 三轮微信提醒
|
||
|
||
---
|
||
|
||
## 相关配置
|
||
|
||
- **企业微信 Webhook**:系统设置 → 企业微信推送
|
||
- **风险比例 / 保证金上限**:系统设置 → 交易相关(影响自动单手数)
|
||
- **移动保本跳数缓冲**:系统设置 → `trailing_be_tick_buffer`(自动单开启移动保本时生效)
|
||
|
||
---
|
||
|
||
## 技术说明
|
||
|
||
- 后台任务 `background_task` 约每 3 秒扫描一次 `key_monitors`
|
||
- 5m K 线优先 CTP,否则新浪/本地缓存
|
||
- 自动单逻辑:`key_monitor_lib.py` + `install_trading._execute_key_breakout`
|
||
- 止盈止损监控:`sl_tp_guard.py`(移动保本 + 显式止盈价可同时生效)
|
||
|
||
## 下单逻辑(自动单)
|
||
|
||
1. 后台 `background_task` 约每 3 秒调用 `run_key_monitor_check()`。
|
||
2. 拉取 5m K 线(优先 CTP),判断收盘价是否突破上/下沿。
|
||
3. **箱体突破 / 收敛突破**:
|
||
- 顺势/反转决定方向(上破做多或做空等)。
|
||
- 校验:交易时段、CTP、`assert_can_open()`、[RISK.md](./RISK.md) 全部规则。
|
||
- 手数:按 `risk_percent` + `max_margin_pct` 计算。
|
||
- **止损**:突破 K 线最低(多)/ 最高(空)± **2 跳**。
|
||
- **止盈**:默认盈亏比 **2**(可改 0.5~10);开启移动保本时默认 **3R** TP。
|
||
- **报单**:CTP 市价开仓 → 写入 `trade_order_monitors` → `sl_tp_guard` 守护。
|
||
4. 同一根 5m K 线只触发一次;触发后移入历史(成败皆然)。
|
||
5. 成交:微信 [§7](./WECHAT.md#7-关键位开仓成功);失败/摘要:[§6](./WECHAT.md#6-关键位自动单)。
|
||
|
||
## 风控规则
|
||
|
||
| 规则 | 自动单 | 支阻区 |
|
||
|------|--------|--------|
|
||
| assert_can_open | ✓ | — |
|
||
| 保证金 / 品种 | ✓ | — |
|
||
| 交易时段 | ✓ | — |
|
||
| 自动下单 | ✓ | ✗ |
|
||
|
||
全局规则见 [RISK.md](./RISK.md)。
|
||
|
||
---
|
||
|
||
详见 [FEATURES.md](./FEATURES.md) · [INDEX.md](./INDEX.md)
|