Initialize crypto_monitor_user (user edition) from monitor codebase.

Retarget git remote, install path, and deploy docs from crypto_monitor to crypto_monitor_user.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-07-17 16:18:13 +08:00
commit 53863559f4
608 changed files with 162764 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
# 策略文档
各交易实例的人工下单策略,供 UI / 复盘对齐.
| 文档 | 实例 | 状态 |
|------|------|------|
| [binance-alt-trend-long.md](./binance-alt-trend-long.md) | 币安山寨·多头趋势 | v0.4 讨论稿 |
| [okx-trend-both.md](./okx-trend-both.md) | OKX·多空趋势 | v0.4 讨论稿 |
| [gate-intraday.md](./gate-intraday.md) | Gate·BTC 日内 | v0.2 |
## 约定
- **不写盈亏比(趋势户)**:币安/OKX 止盈/止损随行情人工设定,趋势 MD 不量化 RR.
- **日内例外**:Gate 日内 **最低 1:1** 才开仓,持仓目标可动态调整(见 [gate-intraday.md](./gate-intraday.md)).
- **界面(趋势户 · v0.4)**:两级 — **反转**(启动 A/B)| **顺势**(大分歧 A/B)| **波段**(小分歧);`lib/trade/entry_model_lib.py` 三所共用.
- **界面短标签(日内户)**:`假破` / `结构突破`.
- **多空共用三字**:方向由「做多/做空」表达,不复用为「大分歧A多」等.
- **自动联动**:大分歧 A/B → 趋势单;**小分歧 → 波段单**;平仓写入交易记录 `entry_reason`;复盘「填入」自动带入.
- **杠杆默认**:BTC/ETH **10x**,其它 **5x**;与开仓类型无关(env `BTC_LEVERAGE` / `ALT_LEVERAGE`).
- **日内 profile 独立**:env 启用 `TRADE_SYMBOL_WHITELIST=BTC,ETH` 且限制开启时,**不显示** 大分歧三项(Gate);开仓类型为 **假破 / 结构突破**(见 gate-intraday.md).
- **日内 0 点出场**:策略称「0 点平仓」;程序为 `FORCE_CLOSE_ENABLED` + `FORCE_CLOSE_BJ_HOUR=0`,交易记录 `result=强制清仓`(与表单 1h/2h/4h `time_close` 无关).
- **策略模块独立**:趋势回调,顺势加仓不走上述三项.
## 系统实现
- 库:`lib/trade/entry_model_lib.py`
- 趋势户表单:`lib/instance/templates/order_entry_model_fields.html`
- 日内判定:`is_intraday_trading_profile()`(白名单仅含 BTC/ETH)
- 0 点强平:`force_close_before_reset()`(三所 `app.py`);env `FORCE_CLOSE_ENABLED` / `FORCE_CLOSE_BJ_HOUR`
## 相关文档
- [计仓模式](../position-sizing-mode.md)
- [趋势回调策略](../trend-pullback-strategy.md)
+194
View File
@@ -0,0 +1,194 @@
# 币安山寨·多头趋势账户
> **状态**:v0.4(反转·启动 A/B 两级 UI 已实现;策略正文 + `entry_model_lib`)
---
## 1. 账户定位
| 项 | 说明 |
|----|------|
| 交易所 | 币安合约 |
| 方向 | **仅做多**(`TRADE_DIRECTION=long_only`) |
| 计仓 | `POSITION_SIZING_MODE=risk` |
| 关键位自动单 | `KEY_AUTO_ORDER_ENABLED=false` |
| UI profile | **趋势户**(非 BTC/ETH 白名单日内) |
---
## 2. 开仓类型(两级 UI · 三所共用)
### 2.1 趋势户:反转 / 顺势 / 波段
| 第一级 | 第二级 | code | 联动 |
|--------|--------|------|------|
| **反转** | 启动 A / 启动 B | `launch_a` / `launch_b` | 趋势单 |
| **顺势** | 大分歧 A / 大分歧 B | `big_div_a` / `big_div_b` | 趋势单 |
| **波段** | 小分歧 | `small_div` | 波段单 |
实现:`lib/trade/entry_model_lib.py` + `order_entry_model_fields.html` + `order_entry_model.js`(币安 / OKX / Gate 趋势户共用).
### 2.2 杠杆(与开仓类型无关)
| 币种 | 默认杠杆 |
|------|----------|
| BTC,ETH | **10x**(`BTC_LEVERAGE`) |
| 其它山寨 | **5x**(`ALT_LEVERAGE`) |
---
## 3. 反转·启动(做多,讨论定稿)
**性质**:反转 — 在**新主升确认之前**的作战;与大分歧(顺势)不是同一行情阶段.
**周期**:背离与箱体以 **4h** 为主;**日线与 4h 同处筑底阶段时,结构边界以日线为准**.作战后半段可用 **5m** 节奏(启动 A2).
### 3.0 流程总览
```text
MACD 背离(严格筛选)→ 标「参考高点」
第 1 次到高点附近 → 不做(V 形)
回落箱内(中间复杂形态不盯)
第 2 次到高点附近 → 开战
├─ 见小收敛 ──────────→ 启动 A(A1)
└─ 不见收敛 ──────────→ 启动 B(实体突破)
├─ 成 → 主升(后续才用顺势·大分歧 / 波段·小分歧)
└─ 败 → 止损(正常)
跌破箱高一半 → 暂弃,等再次到高点附近
仍在上半区 + 5m 不创新低 + N 字 → 启动 A(A2)
```
### 3.1 背离:何时进入候选池(MACD · 4h)
全部满足才承认「有过背离」:
| 规则 | 说明 |
|------|------|
| 级别 | **至少 4h** MACD 底背离 |
| 首次背离不做 | 第一段背离只观察,不交易 |
| 通道式下跌不做 | 顺滑通道下滑中的背离,不当反转依据 |
| 波段结构 | 有明显的波段高点,低点 |
| 分段下跌 | **三段及以上**明显下跌之后,才开始寻找背离 |
背离确认后:**标注最后一个显著高点为「参考高点」**(后文「高点附近」均相对此点).
> 横盘**时长不量化**;关键是顺序:**跌 → 背离 → 背离后的震荡**,而非下跌中继.
### 3.2 参考高点:两次摸高
| 次序 | 规则 |
|------|------|
| **第 1 次**到参考高点附近 | **不关注,不做**.假突破,未突破都算「到过附近」— 视为 **V 形反弹**风险区 |
| 回落箱内 | 箱内复杂形态**不是主战场**,不强行交易 |
| **第 2 次**到参考高点附近 | **开始关注**,进入作战区 |
### 3.3 启动 B(实体突破)
**条件**:第二次(及以后)靠近参考高点,且**未见**再次摸高前的小收敛.
| 项 | 说明 |
|----|------|
| 入场 | **实体突破**参考高点 / 箱体上沿(影线刺破不算) |
| 成功 | 走出主升 → 后续单型转为顺势·大分歧 / 波段·小分歧 |
| 失败 | 突破后未主升,回到箱内震荡 → **止损属正常** → 若满足 §3.4,下一笔用 **启动 A(A2)** |
### 3.4 启动 A(结构内 / 试仓,含 A1 与 A2)
**性质**:主升**确认前**在箱内找风险可控入场;**不是**小分歧.
#### A1 · 第二次摸高前的小收敛
- 在第 2 次到参考高点**之前**,出现**小的收敛结构** → 突破前企稳进场.
- 若**看不到**小收敛,不强行做 A1,改走 **启动 B**(§3.3).
#### A2 · 启动 B 失败后的 5m N 字(仍记启动 A)
在启动 B 止损后:
| 暂弃 | 可试启动 A2 |
|------|-------------|
| 回箱后继续跌,且**跌破箱体高度一半** | **未**跌破箱一半 |
| 暂不看,直至**再次**到参考高点附近 | 且 **5m 不创新低** |
| | 且 **突破 5m 高点** → 按 **5m N 字形突破** 试仓 |
- 5m 止损一般不大;此位置**允许多次试错**(突破路径约可错 2 次;5m 试仓约可错 3 次 — 同一参考高点周期内,具体计数实操自定).
- **5m N 字试仓不单列开仓类型**,复盘统一记 **启动 A**(可备注「A2 / 5m N」).
### 3.5 与大分歧,小分歧的边界
| | 反转·启动 | 顺势·大分歧 | 波段·小分歧 |
|---|-----------|-------------|-------------|
| 前端 | 跌 → 背离 → 箱 → 两次摸高 | 主升已确立 | 主升已确立 |
| V 形 | 第 1 次摸高不做 | — | — |
| 5m N 试仓 | **启动 A(A2)** | — | 不同于小分歧 |
| 第三次不做 | — | — | ✓ |
---
## 4. 顺势·大分歧(趋势单)
**前提**:**主升浪已确立**,上方仍有空间;前端是主升里的整理,**不要**求「跌 → 背离 → 箱 → 两次摸高」那条反转链.
### 4.1 大分歧 A
- 4h/日线大结构向上
- 5m/15m 收敛,**不创新低** 企稳进(不等突破)
### 4.2 大分歧 B
- 同上大级别多头结构
- **突破确认** 后入场(实体突破优先)
---
## 5. 波段·小分歧(波段单)
**前提**:主升**已走出**;反转链(启动 A/B)进行中**不做**小分歧.
- **前两次**可做,**第三次不做**
- 低吸为主,不追突破
- 入场:二次探底 → N 字突破;或 5m 三均线重新多头排列
---
## 6. 纪律
1. 不做空
2. 反转:首次背离不做;通道跌背离不做;第 1 次摸参考高点不做(V 形)
3. 顺势:第三次小分歧不做新单;小分歧不追突破
4. 止盈/止损/是否手平:**随行情**,本文档不量化 RR
---
## 7. 持仓与出场(定性)
| 单型 | 说明 |
|------|------|
| 启动 A/B | 赌新主升;B 失败可转 A2;未确立主升前不做小分歧 |
| 大分歧 | 可长持;途中两次小分歧后远目标未到,**可手平** |
| 小分歧 | 短拿,常手平 |
---
## 8. 系统字段
| 操作 | 字段 |
|------|------|
| 下单 | `order_monitors.entry_model`:`launch_a` / `launch_b` / `big_div_a` / `big_div_b` / `small_div` |
| 平仓 | `trade_records.entry_reason` = 界面标签 |
| 复盘 | 与开仓类型一致 + 策略项 +「其他」 |
---
## 修订记录
| 版本 | 日期 | 说明 |
|------|------|------|
| v0.4 | 2026-07-06 | 反转·启动 A/B 两级 UI 上线(共用 entry_model_lib) |
| v0.2 | 2026-07-06 | 定稿 UI 短标签(大分歧/小分歧);实现代码联动 |
| v0.1 | 2026-07-06 | 讨论稿 |
+68
View File
@@ -0,0 +1,68 @@
{
"exchange": "binance",
"title": "币安 · 开仓检查清单",
"version": "v0.4",
"groups": [
{
"title": "账户与方向",
"items": [
"本账户仅做多,不做空",
"计仓模式为以损定仓(risk),关键位自动单已关闭",
"已明确第一级:反转 / 顺势 / 波段(两级下拉已上线)"
]
},
{
"title": "反转 · 背离与箱体(启动 A/B 共同前置)",
"items": [
"4h MACD 底背离(非首次背离,非通道式下跌中的背离)",
"有明显波段高/低点,且三段及以上明显下跌后才认背离",
"背离后处于震荡箱体(时长不量化;非 V 形急跌急拉)",
"已标注参考高点(最后一个显著高点)",
"第 1 次到参考高点附近 → 不做;第 2 次到附近 → 才进入作战区"
]
},
{
"title": "反转 · 启动 B(实体突破)",
"items": [
"第 2 次到参考高点附近,且未见再次摸高前的小收敛",
"实体突破参考高点/箱体上沿(非仅影线)",
"突破失败回箱止损属正常;跌破箱高一半则暂弃直至再次到高点附近"
]
},
{
"title": "反转 · 启动 A(结构内,含 A1 / A2)",
"items": [
"性质:主升确认前;不是小分歧",
"A1:第 2 次摸高前出现小收敛 → 突破前企稳",
"A2:启动 B 止损后,未跌破箱高一半 + 5m 不创新低 + 5m N 字突破试仓",
"5m 试仓记为启动 A(不单列类型);小止损允许多次试错"
]
},
{
"title": "顺势 · 大分歧 A / B",
"items": [
"主升已确立,上方仍有空间(非跌后背离筑底阶段)",
"大分歧A:5m/15m 收敛且不创新低企稳",
"大分歧B:突破已确认,优先实体突破"
]
},
{
"title": "波段 · 小分歧",
"items": [
"主升已确立;反转链进行中不做小分歧",
"第三次小分歧 → 不做新单",
"不追突破;二次探底 N 字或 5m 三均线重新多头"
]
},
{
"title": "杠杆与出场",
"items": [
"杠杆:BTC/ETH 10x,其它山寨 5x(可选手改但须有理由)",
"止盈止损随行情人工设定,不在此清单量化 RR"
]
}
],
"footnotes": [
"v0.4:两级 UI 已实现;启动 A 含 A1 收敛与 A2(B 失败后 5m N 字)."
]
}
+38
View File
@@ -0,0 +1,38 @@
{
"exchange": "gate",
"title": "Gate · BTC 日内 · 开仓检查清单",
"version": "v0.2",
"groups": [
{
"title": "方向与均线过滤",
"items": [
"仅交易 BTC,同时仅 1 仓",
"15m 21/55/144 排列清晰(多或空),纠缠则不做",
"1H 方向与 15m 不冲突",
"21 均线关系满足:回踩支撑 / 站稳上方(多)或反弹承压 / 压在下方(空)"
]
},
{
"title": "开仓类型 A / B",
"items": [
"已选定:假破 或 结构突破(二选一)",
"假破:扫流动性后回到结构内,5m N 字 + 15m 顶/底分型齐全",
"结构突破:15m 收盘价站稳关键位,非仅刺破",
"止损带宽 0.4%1.5%,超出则不做",
"下单前空间至少 1:1,不足则不做"
]
},
{
"title": "一日节奏与笔数",
"items": [
"非周末;在早窗 / 晚窗计划时段内",
"今日笔数未达上限 3,连错未达 2 笔",
"宽幅震荡(S1)时降频或不做",
"0 点前须了结(系统强制清仓);本清单不含手动平仓"
]
}
],
"footnotes": [
"系统:FORCE_CLOSE_ENABLED 开启时,北京时间 0 点自动强制清仓(result=强制清仓)"
]
}
+72
View File
@@ -0,0 +1,72 @@
{
"exchange": "okx",
"title": "OKX · 开仓检查清单",
"version": "v0.4",
"groups": [
{
"title": "账户与方向",
"items": [
"已选定做多或做空,且与 4H/大级别结构方向一致",
"趋势户 profile(非 Gate 日内 BTC/ETH 白名单)",
"计仓模式为以损定仓(risk),关键位自动单已关闭",
"同一币种无未计划的对冲叠仓",
"已明确第一级:反转 / 顺势 / 波段(两级下拉已上线)"
]
},
{
"title": "反转 · 背离与箱体(启动 A/B 共同前置)",
"items": [
"做多:4h MACD 底背离;做空:4h MACD 顶背离",
"非首次背离;非通道式涨跌中的背离;明显波段高低点 + 三段及以上涨/跌后才认背离",
"背离后处于震荡箱体(时长不量化;非 V 形急拉急杀)",
"做多:已标参考高点;做空:已标参考低点",
"第 1 次到参考极值附近 → 不做;第 2 次到附近 → 才进入作战区"
]
},
{
"title": "反转 · 启动 B(实体突破)",
"items": [
"第 2 次到参考极值附近,且未见再次摸极值前的小收敛",
"做多:实体突破参考高点/箱顶;做空:实体跌破参考低点/箱底",
"突破失败回箱止损属正常",
"做多:跌破箱高一半暂弃;做空:涨破箱低一半暂弃;直至再次到极值附近"
]
},
{
"title": "反转 · 启动 A(结构内,含 A1 / A2)",
"items": [
"性质:主趋势确认前;不是小分歧",
"A1:第 2 次摸极值前出现小收敛 → 突破前企稳",
"A2 做多:B 止损后未跌破箱一半 + 5m 不创新低 + 5m N 字",
"A2 做空:B 止损后未涨破箱一半 + 5m 不创新高 + 5m 倒 N 字",
"5m 试仓记为启动 A(不单列);小止损允许多次试错"
]
},
{
"title": "顺势 · 大分歧 A / B",
"items": [
"主趋势已确立(非涨/跌后背离筑底/筑顶阶段)",
"做多大分歧A:5m/15m 收敛且不创新低;做空:不创新高",
"大分歧B:突破已确认,优先实体突破"
]
},
{
"title": "波段 · 小分歧",
"items": [
"主趋势已确立;反转链进行中不做小分歧",
"第三次小分歧 → 不做新单",
"做多:二次探底 N 字 / 5m 三均线多头;做空:二次探顶倒 N / 5m 空头"
]
},
{
"title": "杠杆与出场",
"items": [
"杠杆:BTC/ETH 10x,其它山寨 5x(可选手改但须有理由)",
"止盈止损随行情人工设定,不在此清单量化 RR"
]
}
],
"footnotes": [
"v0.4:两级 UI 反转/顺势/波段;做多细则见 binance-alt-trend-long.md §3."
]
}
+277
View File
@@ -0,0 +1,277 @@
# Gate·BTC 日内账户
> **状态**:v0.2(策略定稿;**0 点强平已实现**;日内 UI 隐藏平仓/委托/移动保本 **待实现**)
---
## 1. 账户定位
| 项 | 说明 |
|----|------|
| 交易所 | Gate 合约 |
| 品种 | **仅 BTC** |
| 方向 | **多空都做**(由过滤条件决定,非手选方向) |
| 计仓 | `POSITION_SIZING_MODE=full_margin`(全仓杠杆) |
| UI profile | **日内户**(`TRADE_SYMBOL_WHITELIST=BTC,ETH` 且限制开启;本策略只交易 BTC) |
| 与趋势户关系 | **不使用** 大分歧 A/B/小分歧;**不使用**「趋势单 / 波段单」手选 |
### 资金与杠杆(执行约定)
| 项 | 说明 |
|----|------|
| 账户规模 | 约 300U(测试阶段) |
| 日交易基数 | **50U**(早 8:00 重置为 50U,不延续前日阶梯) |
| 单笔阶梯 | 上一笔 **+10U / 10U** 调节下一笔基数(赢 60U / 亏 40U 等) |
| 杠杆 | **10× 全仓** |
| 一次一单 | 同时仅 **1** 个 Gate 仓位 |
| 止损带宽 | **0.4%1.5%**(结构要求更宽则 **不做**) |
---
## 2. 周期分层
自上而下,**先定能不能做,再做哪一类**:
| 层级 | 周期 | 作用 |
|------|------|------|
| 方向过滤 | **1H** | 大方向;**不得与 15m 排列反向** |
| 均线 + 结构 | **15m** | 21/55/144 排列,顶底分型,结构识别,**B 类收盘突破** |
| 触发 | **5m** | **A 类**:N 字形突破(配合 15m 分型) |
| 方法 | 裸 K + 三均线 | 形态确认,入场与止损锚点 |
**不做「趋势单」概念**:持仓以 **小时** 计,当日了结;与币安/OKX 多日趋势户区分.
---
## 3. 方向过滤(必过)
### 3.1 15m 三均线(21 / 55 / 144)
| 15m 排列 | 只允许 |
|----------|--------|
| **多头排列**(21 > 55 > 144) | **只做多** |
| **空头排列**(21 < 55 < 144) | **只做空** |
| 纠缠,粘合,不符合 | **不做** |
### 3.2 与 1H 同向
- **做多**:15m 多头排列,且 **1H 不得为空头排列**(1H 均线不能与 15m 方向相反).
- **做空**:15m 空头排列,且 **1H 不得为多头排列**.
- 1H/15m 方向冲突 → **当日该方向不做**.
### 3.3 21 均线关系(才允许开仓)
入场须与 **21 均线** 发生有效关系,避免 distant 追单:
| 方向 | 要求(定性) |
|------|----------------|
| **做多** | 多头排列下,**回踩 21 附近获支撑** 或 **站稳 21 上方** 后再按 playbook 入场 |
| **做空** | 空头排列下,**反弹 21 附近承压** 或 **压在 21 下方** 后再按 playbook 入场 |
---
## 4. 开仓类型(仅两类)
界面日后仅两个短标签(全称见下表 hover / 本文):
| 界面标签 | 存储 code(建议) | 本质 |
|----------|-------------------|------|
| **假破** | `liquidity_false_break` | 流动性扫单 → 假突破验证 → **5m N 字****15m 顶/底分型** |
| **结构突破** | `structure_breakout` | **15m 结构有效突破**(**收盘确认**) |
子结构 **不单独占主下拉**,可在复盘备注或二级标签中记录.
---
## 5. A 类:假破(流动性 / 假突破)
**适用**:关键位附近 **扫止损** 后价格 **回到结构内**,陷阱确认后再反向做.
### 5.1 流程
```text
1H/15m 方向 + 21 均线过滤通过
→ 假突破出现(扫高/扫低)
→ 验证为「假」(收回结构内 / 反向裸 K 确认)
→ 5m 走出 N 字(二次探底/探顶后,沿允许方向突破)
→ 15m 出现底分型(多)或顶分型(空)
→ 入场
```
### 5.2 做多 / 做空(对称)
| 步骤 | 做多 | 做空 |
|------|------|------|
| 假破 | 向下扫低后快速拉回支撑/箱上 | 向上扫高后跌回阻力/箱下 |
| 5m N 字 | 扫低 → 反弹 → 不破前低 → 向上突破 | 扫高 → 回落 → 不过前高 → 向下突破 |
| 15m 确认 | **底分型** | **顶分型** |
| 止损 | 假破极值或 N 字低点 **外侧**(仍须落在 0.4%1.5%) | 对称 |
| 目标 | **最低 1:1**;之后 **随行情动态** 部分止盈,移动止损或延伸 | 对称 |
### 5.3 注意
- **须等假破验证完成**,扫完不追.
- **5m N + 15m 分型** 为入场必要条件,缺一不可.
- 与大级别 **宽幅震荡(S1)** 叠加时假信号多,优先 **降频或不做**.
---
## 6. B 类:结构突破
**适用**:15m 上结构清晰,方向与均线排列一致,**收盘突破** 后顺势做.
### 6.1 子结构(均属 B 类)
双顶,双底,头肩顶/底,收敛(三角/楔形),箱体等——**统一记为「结构突破」**.
### 6.2 突破确认
- **以 15m K 线收盘价为准** 突破关键位(颈线,箱边,收敛边界等).
- **仅刺破,未收盘站稳** → **不算** 有效突破,不做.
- 可选:**收盘突破后回踩** 再进(裸 K 确认),仍须满足 21 均线关系与 **≥1:1** 空间.
### 6.3 止损与目标
| 项 | 说明 |
|----|------|
| 止损 | 结构另一侧或突破位回退点 **外侧**(0.4%1.5%,超出则不做) |
| 目标 | 下单前 **至少 1:1**;到位后 **随行情动态** 调整,不写死固定 RR |
| 空间不足 | 最近阻力/支撑导致 **达不到 1:1****不做** |
---
## 7. 行情状态(辅助过滤)
| 状态 | 特征 | Gate 动作 |
|------|------|-----------|
| **S0 趋势** | 1H/15m 排列清晰,高低点有序 | 正常:A/B 均可 |
| **S1 宽幅震荡** | 大箱横盘多日,均线反复穿 | **降频或不做** |
| **S2 末期/选边** | 贴边收敛,刚突破或假破频发 | 优先 **A 假破****B 收敛突破** |
---
## 8. 一日节奏与笔数
| 项 | 规则 |
|----|------|
| 周末 | **不开新仓** |
| 早窗 | 约 **9:00**(8:0012:00 内),**计划内第 1 笔** |
| 下午 | **默认不开新仓**(持仓可保留至晚窗) |
| 晚窗 | 约 **21:00**(20:0023:00 内),**计划内第 2 笔** |
| 第 3 笔 | 仅当 **未连错 2 笔**,且 **早/晚有一笔为止损出场**,可 **补 1 笔** |
| 日上限 | **最多 3 笔** |
| **连错 2 笔** | **当日不再开新仓**(第 3 笔名额作废) |
**连错计数**:
| 出场 | 是否算「错 1 笔」 |
|------|------------------|
| **计划止损**触发 | ✅ 算 |
| **0 点强制清仓**(系统结果 `强制清仓`)且亏损 | ✅ 算 |
| 止盈 / ≥1:1 按计划平 | ❌ 不算 |
| 0 点强制清仓且盈利或平推 | ❌ 不算 |
---
## 9. 出场与统计纪律
### 9.1 盈亏比
- 开仓前:**第一目标空间 ≥ 止损距离(最低 1:1)**.
- 持仓中:目标 **随行情动态** 调整;本文档 **不量化** 固定止盈比例.
### 9.2 禁止「手动止损」
- **亏损出场** 必须来自 **开仓时设定的计划止损**(交易所或监控等价执行).
- **禁止** 盘中亏着 **手点平仓** 充当止损(破坏统计与连错规则).
- 若违规手动平亏:**视为当日纪律失败,建议停手**;复盘结果 **不得** 记为「止损」糊弄统计.
### 9.3 时间出场:仅 0 点(程序已实现)
- **唯一** 时间类出场:**当日 0:00(北京时间)前必须空仓**(赚赔都平).
- **不使用** 下单表单里的 1h / 2h / 4h「开仓后 N 小时平」(`time_close`);与本策略无关.
- **程序兜底**(三所共用,Gate 已启用):
| env | 说明 |
|-----|------|
| `FORCE_CLOSE_ENABLED=true` | 开启整点强制清仓 |
| `FORCE_CLOSE_BJ_HOUR=0` | 北京时间 **0 点那一小时**(00:0000:59)执行 |
- 实现:`force_close_before_reset()`(各实例 `app.py` 后台循环调用).
- 行为:对该小时仍 **active**`order_monitors` **市价全平**,取消交易所触发单,写交易记录.
- **系统结果字段**:`result = 强制清仓`;备注含「北京时间 0:00 整点风控清仓」.
- **策略口语「0 点平仓」= 系统「强制清仓」**,统计连错时按 §8 盈亏判定,不按字段名区分.
> **与 `TRADING_DAY_RESET_HOUR=8` 无关**:后者只切 **交易日**(统计,8 点前禁开等),**不会**自动平仓.
### 9.4 允许的出场类型(统计用)
| 策略说法 | 系统 `result` | 说明 |
|----------|---------------|------|
| 止盈 | 止盈 / 移动止盈 / 保本止盈 等 | 计划止盈或 ≥1:1 后按计划/动态平 |
| 止损 | 止损 | 仅 **计划止损** 触发 |
| 0 点平仓 | **强制清仓** | 整点风控兜底(§9.3) |
| ~~手动平仓~~ | 手动平仓 | **策略禁止**(除极端技术故障等,须复盘说明) |
---
## 10. A / B 如何选择(当日)
| 盘面 | 优先 |
|------|------|
| 刚扫流动性,回到箱内 | **A 假破** |
| 结构清晰,排列已顺,收敛末端 | **B 结构突破** |
| 大箱乱扫,均线粘合 | **不做** |
早/晚窗 **有形态才做**,无形态 = **0 笔**,不占额度.
---
## 11. 与其它账户边界
| 账户 | 周期 | 持仓 | 本户勿混 |
|------|------|------|----------|
| 币安 | 日线/4H 事件 | 数天~数周 | 不要用 Gate 扛隔夜趋势 |
| OKX | 4H 波段滚仓 | 数小时~数天 | 勿与 Gate 同向同结构叠隔夜 |
| **Gate 日内** | 1H 过滤 + 15m/5m | **当日 0 点前** | 见上文 |
---
## 12. 系统对接
### 12.1 已实现
| 项 | 说明 |
|----|------|
| 日内 profile 判定 | `is_intraday_trading_profile()`(`lib/trade/entry_model_lib.py`) |
| 0 点强制清仓 | `FORCE_CLOSE_ENABLED` + `FORCE_CLOSE_BJ_HOUR`;`force_close_before_reset()`;结果 **`强制清仓`** |
| UI 标识 | 顶栏 **强制清仓 已开启** 徽章 + 持仓卡片 **倒计时**(三所 + 中控) |
| 交易记录展示 | 三所 UI / 中控:`强制清仓` 与止损同类 badge |
| 三所统一 | 币安 / OKX / Gate 同一函数与 env;**将来改日内只需各所 `.env` 打开,无需改代码** |
Gate 当前建议 env(节选):
```env
FORCE_CLOSE_ENABLED=true
FORCE_CLOSE_BJ_HOUR=0
TRADING_DAY_RESET_HOUR=8
```
### 12.2 待实现(UI / 纪律)
| 项 | 说明 |
|----|------|
| 开仓类型 | 界面 **`假破` / `结构突破`**(code:`liquidity_false_break` / `structure_breakout`);**无** trend/swing 手选 |
| 写入字段 | `trade_records.entry_model` / 复盘下拉同两项 |
| 隐藏操作 | 日内 profile 下 **隐藏** 平仓,委托,移动保本(**实例页 + 中控**,`intraday_discipline` / `order_entry_profile=intraday`) |
| 隐藏表单项 | 不展示 1h/2h/4h 时间平仓,移动保本勾选(避免与 §9.3 混用) |
| 后端可选 | 严格模式下拒绝 `del_order` / 改委托 API |
---
## 13. 修订记录
| 版本 | 日期 | 说明 |
|------|------|------|
| v0.1 | 2026-07-06 | 定稿:BTC 日内;1H+15m 均线;A 假破(5m N+15m 分型);B 结构突破(15m 收盘);早1晚1/最多3笔/连错2停;禁手动止损;仅 0 点强平 |
| v0.2 | 2026-07-06 | §9.3/§12:对齐 `FORCE_CLOSE_*` 与系统结果「强制清仓」;区分 `time_close` / `TRADING_DAY_RESET_HOUR`;Gate 已启用说明 |
+157
View File
@@ -0,0 +1,157 @@
# OKX·多空趋势账户
> **状态**:v0.4(讨论稿:反转·启动 A/B;**UI 仍为 v0.2 三档**,两级下拉待实现)
---
## 1. 账户定位
| 项 | 说明 |
|----|------|
| 交易所 | OKX 永续合约 |
| 方向 | **做多 + 做空**(`TRADE_DIRECTION=both`,可按需限制) |
| 计仓 | `POSITION_SIZING_MODE=risk` |
| 关键位自动单 | `KEY_AUTO_ORDER_ENABLED=false` |
| UI profile | **趋势户**(非 Gate BTC/ETH 日内白名单) |
**选方向原则**:开仓前确认 4H / 日线大级别与所选「做多/做空」一致;逆势单不在本策略范围内.
做多侧反转细则与 [binance-alt-trend-long.md §3](./binance-alt-trend-long.md) 同构;本文 **§3.2** 给出做空镜像.
---
## 2. 开仓类型(规划与现状)
### 2.1 规划:两级选择(与币安共用实现)
| 第一级 | 第二级 | 做多 | 做空 |
|--------|--------|------|------|
| **反转** | 启动 A / 启动 B | `launch_a` / `launch_b` | 同 code,方向在表单 |
| **顺势** | 大分歧 A / B | `big_div_a` / `big_div_b` | 同左 |
| **波段** | 小分歧 | `small_div` | 同左 |
`lib/trade/entry_model_lib.py` + 共用模板/JS,三所趋势户一致.
### 2.2 现状:下单监控 UI
两级下拉:**性质** → **类型**;提交 `entry_model` code.
### 2.3 杠杆
BTC/ETH **10x**,其它 **5x**;与方向,开仓类型无关.
---
## 3. 反转·启动(讨论定稿)
**性质**:反转 — 在新一轮主趋势**确认之前**作战;与顺势·大分歧不是同一阶段.
**周期**:背离与箱体以 **4h** 为主;**日线与 4h 同阶段时,结构边界以日线为准**;A2 可用 **5m** 节奏.
### 3.1 做多(跌后筑底 → 新主升)
与币安 [§3](./binance-alt-trend-long.md) 一致,摘要如下:
```text
4h MACD 底背离(严格筛选)→ 标「参考高点」
第 1 次到高点附近 → 不做(V 形)
回落箱内 → 第 2 次到高点附近 → 开战
├─ 见小收敛 → 启动 A(A1)
└─ 不见收敛 → 启动 B(实体突破)
B 失败回箱 → 跌破箱一半暂弃;否则 5m 不创新低 + N 字 → 启动 A(A2)
```
| 环节 | 规则 |
|------|------|
| 背离 | 4h MACD **底背离**;**首次**不做;**通道式下跌**不做;明显波段高低点 + **三段及以上**跌后才开始找背离 |
| 参考点 | 背离后标 **最后一个显著高点** |
| 两次摸高 | 第 1 次到高点附近(假破/不破都算)**不做**;第 2 次才关注 |
| 启动 B | 无小收敛 → **实体突破**参考高点/箱顶 |
| 启动 A | A1:摸高前小收敛;A2:B 止损后,**未跌破箱一半** + **5m 不创新低** + **5m N 字** |
### 3.2 做空(涨后筑顶 → 新主跌,镜像)
| 环节 | 做多 | 做空(镜像) |
|------|------|----------------|
| 前端结构 | **跌** → 背离 → 箱 | **涨** → 背离 → 箱 |
| 背离 | 4h MACD **底背离** | 4h MACD **顶背离** |
| 背离过滤 | 首次不做;**通道式下跌**不做;三段及以上**跌** | 首次不做;**通道式上涨**不做;三段及以上**涨** |
| 参考点 | **参考高点** | **参考低点**(最后一个显著低点) |
| 两次摸极值 | 第 1 次到**高点**附近不做(V 形反弹) | 第 1 次到**低点**附近不做(V 形下跌) |
| 作战区 | 第 2 次到**高点**附近 | 第 2 次到**低点**附近 |
| 启动 B | **实体跌破**参考低点/箱底 | 同上(向下实体突破) |
| 启动 A1 | 第二次摸高前**小收敛** | 第二次摸低前**小收敛** |
| 启动 A2 | B 失败后**未跌破**箱一半;**5m 不创新低**;破 **5m 高** N 字 | B 失败后**未涨破**箱一半;**5m 不创新高**;破 **5m 低**倒 N 字 |
| 成功后 | 主升 → 顺势大分歧 / 小分歧 | 主跌 → 顺势大分歧 / 小分歧 |
> 横盘**时长不量化**;顺序为 **涨/跌 → 背离 → 背离后震荡**,非趋势中继.
### 3.3 与顺势,波段的边界
| | 反转·启动 | 顺势·大分歧 | 波段·小分歧 |
|---|-----------|-------------|-------------|
| 做多前端 | 跌→背离→箱→两次摸高 | 主升已确立 | 主升已确立 |
| 做空前端 | 涨→背离→箱→两次摸低 | 主跌已确立 | 主跌已确立 |
| V 形 | 第 1 次摸极值不做 | — | — |
| 5m N 试仓 | **启动 A(A2)**,非小分歧 | — | — |
| 第三次不做 | — | — | ✓ |
---
## 4. 顺势·大分歧(趋势单)
**前提**:主趋势**已确立**;上方(多)或下方(空)仍有空间;**不要**求反转链(§3).
| | 做多 | 做空 |
|---|------|------|
| **大分歧 A** | 4h/日线多头;5m/15m 收敛,**不创新低**企稳 | 4h/日线空头;5m/15m 收敛,**不创新高**企稳 |
| **大分歧 B** | **向上突破**确认(实体优先) | **向下突破**确认(实体优先) |
---
## 5. 波段·小分歧(波段单)
**前提**:主趋势**已走出**;反转链进行中**不做**小分歧.
- **前两次**可做,**第三次不做**;不追突破
- **做多**:二次探底 → N 字;或 5m 三均线重新多头
- **做空**:二次探顶 → 倒 N;或 5m 三均线重新空头
---
## 6. 纪律
1. 方向与大级别一致;不做顺手反向单;同一币种避免未计划对冲叠仓
2. **反转**:首次背离不做;通道式涨跌中的背离不做;第 1 次摸参考极值不做(V 形)
3. **顺势**:第三次小分歧不做;小分歧不追突破
4. 止盈/止损/是否手平:**随行情**,本文档不量化 RR
---
## 7. 持仓与出场(定性)
| 单型 | 做多 | 做空 |
|------|------|------|
| 启动 A/B | 赌新主升;B 失败可 A2;确立前不做小分歧 | 赌新主跌;同上镜像 |
| 大分歧 | 可长持;两次小分歧后远目标未到可手平 | 同左 |
| 小分歧 | 短拿,常手平 | 短拿,常手平 |
---
## 8. 系统字段
| 操作 | 字段 |
|------|------|
| 下单(现状) | `entry_model` + `trade_style`;方向在订单侧 |
| 下单(规划) | `launch_a` / `launch_b` + 两级 UI |
| 平仓 / 复盘 | `entry_reason` = 界面标签;与币安一致 |
---
## 修订记录
| 版本 | 日期 | 说明 |
|------|------|------|
| v0.4 | 2026-07-06 | 反转·启动 A/B(做多同币安 §3;做空镜像);两级 UI 规划 |
| v0.3 | 2026-07-06 | 独立完整策略说明 |
| v0.2 | 2026-07-06 | 定稿 UI 短标签 |