Files
dekun 169136dd4a Add modular docs with index, WeChat templates, and AI guide.
Document per-module order logic, risk rules, and WeChat message templates with a central INDEX for navigation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 10:49:10 +08:00

306 lines
7.5 KiB
Markdown
Raw Permalink 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.
# 企业微信推送
**配置**:系统设置 → 企业微信 Webhook(`wechat_webhook`)。
**发送函数**`app.send_wechat_msg()` — 所有推送正文前自动加前缀:
```
【国内期货】
{正文}
```
未配置 Webhook 时静默跳过,不报错。
---
## 推送类型索引
| # | 类型 | 触发场景 | 模板章节 |
|---|------|----------|----------|
| 1 | 手动开仓成功(结构化) | 下单监控成交且填写止损 | [§1](#1-手动开仓成功) |
| 2 | 手动开仓(简版) | 成交但未填止损 | [§2](#2-简版开仓) |
| 3 | 挂单提交 | 限价单未立即成交 | [§3](#3-挂单提交) |
| 4 | 平仓完成(结构化) | trade_logs 写入平仓记录 | [§4](#4-平仓完成) |
| 5 | SL/TP 触发(简版) | 本地止盈止损市价平仓委托已提交 | [§5](#5-本地止盈止损触发) |
| 6 | 关键位自动单结果 | 箱体/收敛突破尝试下单 | [§6](#6-关键位自动单) |
| 7 | 关键位开仓成功(结构化) | 自动单成交 | [§7](#7-关键位开仓成功) |
| 8 | 关键支阻区提醒 | 5m 收盘突破区间 | [§8](#8-关键支阻区提醒) |
| 9 | 开单计划触发 | 现价进入决策区间 | [§9](#9-开单计划) |
| 10 | 开单计划止盈/止损 | 激活后价格触及 TP/SL | [§10](#10-开单计划结果) |
| 11 | 策略趋势回调 | 首仓/止盈/补仓 | [§11](#11-策略趋势回调) |
| 12 | AI 分析 | 开仓/平仓/日终报告 | [§12](#12-ai-分析) |
实现文件:`wechat_notify.py``trade_notify.py``key_monitor_lib.py``app.py``install_trading.py``ai_worker.py`
---
## 结构化推送
以下模板由 `wechat_notify.py` 生成,字段随实际成交数据填充。
### 1. 手动开仓成功
**函数**`format_open_success()` · **来源**`trade_notify.notify_manual_open_filled()`
**触发**:下单监控开仓 **成交** 且填写了 **止损价**
**模板**
```
📈 {品种名} 开仓成功
💼 账户:{模拟盘/实盘}
🧾 订单基础信息
📌 来源:期货下单
🔖 委托号:{order_id}
📈 方向:多头(long)/ 空头(short
⚠ 单笔风控:{risk_percent}%≈{risk_amount}元
📊 仓位配置
账户权益:{capital} 元
开仓手数:{lots} 手
占用保证金:{margin} 元
仓位占比:{margin_pct}%
🎯 价位 & 盈亏比
开仓价:{entry}
止损价:{stop_loss}
止盈价:{take_profit}
计划盈亏比:RR {rr} : 1
移动保本:1.0R → {be_px}(缓冲 {be_tick_buffer} 跳) ← 仅开启移动保本时
📌 状态
✅ 已进入下单监控,本地 SL/TP 守护
```
**示例**
```
📈 螺纹钢 开仓成功
💼 账户:SimNow 模拟
🧾 订单基础信息
📌 来源:期货下单
📈 方向:多头(long
⚠ 单笔风控:1%≈1000.00元
📊 仓位配置
账户权益:100000.00 元
开仓手数:2 手
占用保证金:8500.00 元
仓位占比:8.50%
🎯 价位 & 盈亏比
开仓价:3200
止损价:3180
止盈价:3240
计划盈亏比:RR 2 : 1
📌 状态
✅ 已进入下单监控,本地 SL/TP 守护
```
---
### 4. 平仓完成
**函数**`format_close_done()` · **来源**`trade_notify.notify_trade_log_close()`
**触发**`trade_logs` 新增平仓记录(SL/TP 守护、CTP 同步、手动平仓等)。
**模板**
```
📈/📉 {品种名} 平仓完成
💼 账户:{mode_label}
🧾 平仓概要
📌 方向:多头(long)/ 空头(short
📌 平仓结果:{止盈|止损|保本止盈|移动止盈|手动平仓}
💰 本单净盈亏:+/-{pnl_net} 元
⏱ 持仓时长:{N分钟|N小时N分钟|N天…}
💵 账户权益:{equity_after} 元
🎯 价位(计划)
开仓价:{entry}
平仓价:{close_price}
止盈价:{take_profit}
止损价:{stop_loss}
📎 备注
成交价不在计划止盈/止损带内(可能为手动或其他类型平仓) ← 可选
```
---
### 7. 关键位开仓成功
**函数**`format_key_open_success()` — 在 §1 基础上追加:
```
📎 关键位触发
类型:{箱体突破|收敛突破}
模式:{顺势|反转} · {向上突破|向下突破}
5m 收盘:{bar_time}
```
**来源字段**`{monitor_type}·{trade_mode}`(如「箱体突破·顺势」)。
---
### 8. 关键支阻区提醒
**函数**`format_zone_alert()` · **最多 3 次**,间隔约 **5 分钟**
**模板**
```
📌 {品种名} 关键位突破提醒({1|2|3}/3
🧾 突破概要
📌 类型:关键支阻区
⏱ 触发时间:{bar_time}
📊 上沿:{upper}|下沿:{lower}
💹 触发收盘:{close_price}
🎯 {向上突破/向下突破}({多头/空头})
📍 突破价位:{boundary}
📎 说明
· 人工盯盘,共推送 3 次(间隔约 5 分钟)
· 推送完毕后本条监控自动结案
· 不参与自动开仓
```
---
## 简版与业务推送
### 2. 简版开仓
**触发**:成交但未填止损。
```
{模拟盘/实盘} 开仓 {symbol} {direction} {lots}手 @{price}
```
---
### 3. 挂单提交
**触发**:限价开仓委托已提交、尚未成交。
```
委托已提交 · {symbol} {direction} {lots}手挂单中({N} 分钟未成交自动撤单)
```
---
### 5. 本地止盈止损触发
**触发**`sl_tp_guard` 本地检测到 TP/SL,已提交市价平仓委托(结构化平仓推送在成交写入 trade_logs 后另行发送)。
```
{止盈|止损} {symbol} {direction} {lots}手 @{mark},平仓委托已提交
```
---
### 6. 关键位自动单
**函数**`format_auto_breakout_msg()` · **成败均推送**
**模板**
```
✅/❌ {品种名} {箱体突破|收敛突破}自动单
⏱ 5m 收盘:{bar_time}
🎯 {向上突破|向下突破} · {顺势|反转} · {做多|做空}
💹 入场:{entry} 止损:{sl} 止盈:{tp}(盈亏比 {rr}
📦 手数:{lots}
🛡 已开启移动保本(达目标盈亏比自动止盈) ← 可选
{detail} ← 失败原因等
```
---
### 9. 开单计划
**触发**`planned` → 现价进入 `[zone_lower, zone_upper]`
```
【开单计划触发】{name} ({symbol})
方向:做多/做空
决策区间:{zone_lower} ~ {zone_upper}
决策理由:{reason}
当前价:{p}
止损:{stop_loss} 止盈:{take_profit}
```
---
### 10. 开单计划结果
**触发**`active` 状态下触及止盈或止损。
```
[做多/做空] {name} 已{止盈|止损}
决策区间:{zone_lower} ~ {zone_upper}
止损:{stop_loss} 止盈:{take_profit}
当前价:{p}
```
> 开单计划 **不自动下单**,仅微信提醒并写入 `trade_records`。
---
### 11. 策略趋势回调
| 事件 | 模板 |
|------|------|
| 首仓成交 | `趋势回调首仓 {sym} {first_lots}手` |
| 止盈平仓 | `趋势回调止盈 {sym}` |
| 补仓成交 | `趋势回调补仓 {sym} +{add_lots}手 @档位{done+1}` |
---
### 12. AI 分析
详见 [AI.md#微信推送](./AI.md#微信推送)。
**事件分析**(开仓/平仓后,AI 成功时):
```
🤖 AI 分析 · {title}
{content 前 1800 字}
```
**日终报告**
```
🤖 {YYYY-MM-DD} 日终持仓与交易报告
{content 前 1800 字}
```
---
## 推送与板块对照
| 板块 | 推送类型 |
|------|----------|
| 下单监控 | §1 §2 §3 §4 §5 §12 |
| 关键位监控 | §6 §7 §8 |
| 开单计划 | §9 §10 |
| 策略交易 | §11 §4 |
| AI 分析 | §12 |
---
## 注意事项
1. 所有消息经 `【国内期货】` 前缀发送,企业微信群机器人 `msgtype=text`
2. 结构化开仓/平仓需 **填写止损** 才会发送完整模板;否则为简版。
3. AI 推送仅在 AI 调用 **成功** 时发送;失败内容只写入 `/ai` 页面。
4. 关键支阻区第 3 次推送后监控自动归档,不再推送。