feat: personal user edition v1.0.0-user on release branch
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+8
-100
@@ -1,4 +1,4 @@
|
||||
# 下单监控
|
||||
# 下单监控 · 个人用户版
|
||||
|
||||
**页面路径**:`/positions`(默认首页)
|
||||
|
||||
@@ -13,7 +13,8 @@
|
||||
| 顶栏 | 模拟/实盘、CTP 状态、风险状态、权益、连接按钮 |
|
||||
| 期货下单 | 手动开仓/平仓表单 |
|
||||
| 当前持仓 | pending 挂单 + active 持仓卡片 |
|
||||
| 可开仓品种 | 按权益与保证金筛选的推荐表 |
|
||||
|
||||
个人用户版 **不含**「可开仓品种」筛选大表。
|
||||
|
||||
---
|
||||
|
||||
@@ -38,114 +39,21 @@
|
||||
5. **成交后**:
|
||||
- 写入 `trade_order_monitors`(status=active 或 pending)
|
||||
- 注册本地 SL/TP 守护(`sl_tp_guard`)
|
||||
- 微信:结构化开仓推送(有止损)或简版
|
||||
- AI:后台开仓分析(有止损时)
|
||||
|
||||
### 挂单(限价未立即成交)
|
||||
### 小账户四品种
|
||||
|
||||
- status=`pending`,显示「挂单中」。
|
||||
- **超时撤单**:`pending_order_worker` 每 10 秒 reconcile(有 pending 时);默认超时见系统设置 `pending_order_timeout_sec`。
|
||||
- 微信:`委托已提交 · … 挂单中(N 分钟未成交自动撤单)`
|
||||
|
||||
### 手动平仓
|
||||
|
||||
- 市价平仓当前品种方向持仓。
|
||||
- 关闭对应 monitor,写入 `trade_logs`。
|
||||
- 若当日手动平仓次数超限 → 触发冷静期([RISK.md](./RISK.md))。
|
||||
- 微信:结构化平仓推送(成交同步后)。
|
||||
|
||||
### 止盈止损守护
|
||||
|
||||
后台 `sl_tp_guard` 线程 + tick 事件:
|
||||
|
||||
| 条件 | 动作 |
|
||||
|------|------|
|
||||
| 价格触及 **止盈价** | 市价平仓,结果=止盈 |
|
||||
| 价格触及 **止损价** | 市价平仓,结果=止损 |
|
||||
| 开启 **移动保本** | 见下节 |
|
||||
|
||||
触发时先推简版「平仓委托已提交」,成交写入 trade_logs 后推 **结构化平仓**。
|
||||
权益 ≤20 万或未连 CTP 时,非 `c` / `m` / `MA` / `rb` 品种开仓会被拒绝。品种下拉同样受限。
|
||||
|
||||
---
|
||||
|
||||
## 移动保本
|
||||
|
||||
**开启条件**:下单表单勾选「移动保本」,**必须填写止损**,不设固定止盈。
|
||||
|
||||
**逻辑**(`sl_tp_guard._update_trailing_stop_loss`):
|
||||
|
||||
| 浮盈 R 倍数 | 止损移动至 |
|
||||
|-------------|------------|
|
||||
| ≥ 1R | 开仓价 ± `trailing_be_tick_buffer` 跳(保本) |
|
||||
| ≥ 2R | 开仓价 ± 1R |
|
||||
| ≥ nR | 开仓价 ± (n−1)R |
|
||||
|
||||
**平仓结果标签**:
|
||||
|
||||
- 1R 锁定后止损出场 → **保本止盈**
|
||||
- 2R 及以上锁定后止损出场 → **移动止盈**
|
||||
|
||||
关键位自动单若开启移动保本且设目标盈亏比(默认 3R),达 TP 仍按 **止盈** 平仓;移动止损与显式 TP **可同时生效**。
|
||||
|
||||
---
|
||||
|
||||
## 风控规则
|
||||
|
||||
本板块执行 [RISK.md](./RISK.md) 全部规则,另加:
|
||||
|
||||
| 规则 | 说明 |
|
||||
|------|------|
|
||||
| 非交易时段 | 禁止开仓 |
|
||||
| 移动保本 | 必须填止损 |
|
||||
| 固定金额 | 必须填止损才能算手数 |
|
||||
| 保证金 | 新开仓前校验总占用 |
|
||||
| 单笔 50 手 | 超限拒绝 |
|
||||
|
||||
顶栏 **风险状态** 实时反映:正常 / 冷静期 / 日冻结 / 仓位上限。
|
||||
|
||||
---
|
||||
|
||||
## 可开仓品种表
|
||||
|
||||
- 按当前权益、`max_margin_pct`、合约保证金计算可开手数。
|
||||
- 权益 ≤20 万或 CTP 未连接:仅四品种;未连接按 10 万权益估算。
|
||||
- 夜盘时段过滤无夜盘品种。
|
||||
- 每日后台刷新 `product_recommend_cache`。
|
||||
|
||||
详见 [TRADING.md](./TRADING.md)。
|
||||
|
||||
---
|
||||
|
||||
## 微信推送
|
||||
|
||||
| 事件 | 模板 |
|
||||
|------|------|
|
||||
| 开仓成交(有止损) | [WECHAT §1](./WECHAT.md#1-手动开仓成功) |
|
||||
| 开仓成交(无止损) | [WECHAT §2](./WECHAT.md#2-简版开仓) |
|
||||
| 挂单提交 | [WECHAT §3](./WECHAT.md#3-挂单提交) |
|
||||
| 平仓完成 | [WECHAT §4](./WECHAT.md#4-平仓完成) |
|
||||
| SL/TP 触发 | [WECHAT §5](./WECHAT.md#5-本地止盈止损触发) |
|
||||
| AI 分析 | [AI.md](./AI.md)(仅页面,默认不推微信) |
|
||||
|
||||
---
|
||||
|
||||
## 数据流
|
||||
|
||||
```
|
||||
用户下单 → API /api/trade/order
|
||||
→ CTP 报单
|
||||
→ trade_order_monitors
|
||||
→ sl_tp_guard 监控
|
||||
→ 平仓 → trade_logs → 微信 + AI
|
||||
```
|
||||
|
||||
SSE:`/api/trading/stream` 推送持仓快照,无需整页刷新。
|
||||
见 [TRADING.md](./TRADING.md) 与完整版 ORDER_MONITOR 说明(逻辑相同)。
|
||||
|
||||
---
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [RISK.md](./RISK.md)
|
||||
- [WECHAT.md](./WECHAT.md)
|
||||
- [TRADING.md](./TRADING.md)
|
||||
- [SETTINGS.md](./SETTINGS.md)
|
||||
- [RISK.md](./RISK.md)
|
||||
- [RELEASE-v1.0.0-user.md](./RELEASE-v1.0.0-user.md)
|
||||
|
||||
Reference in New Issue
Block a user