新增振幅锁仓策略:回测系统、交易日志、盈亏曲线、实盘账本

This commit is contained in:
fish
2026-07-23 16:58:48 +08:00
parent f24dd3fe9b
commit 8ed73697b8
6 changed files with 4184 additions and 0 deletions
+150
View File
@@ -0,0 +1,150 @@
# 振幅锁仓策略 · 操作流程
> 玻璃期货 FG 主力合约 · 每日累仓做空 + 振幅止盈 + 3 锁熔断
---
## 一、策略思想
玻璃期货受地产下行拖累,长期空头趋势明确。不做方向判断,**默认每天做空**,用近 5 日均振幅作为动态止盈/锁仓阈值。回调是利润,反弹锁仓扛,连扛 3 次认输出局。
---
## 二、核心参数
| 参数 | 取值 | 说明 |
|------|------|------|
| 交易方向 | 空 | 每天开盘无条件做空 |
| 每手规模 | 1 手(20 吨) | 可等比放大 |
| 每点价值 | 20 元 | 玻璃期货合约规格 |
| 振幅阈值 | 近 5 日 (最高−最低) 均值 | 每日盘前重新计算 |
| 锁仓上限 | 3 次 | 累计触发后清仓重来 |
| 初始资金 | 10,000 元 | 约 5-6 手保证金 |
---
## 三、每日操作流程
### 盘前(1 分钟)
1. 取前 5 个交易日的 (最高 − 最低),计算均值 → **当日振幅阈值 A**
2. 检查当前持仓状态:
- 无持仓 → 新 Episode 开始
- 有活跃空单 → 继续累仓
- 有锁仓 → 继续累仓(锁仓不阻止开新空单)
### 开盘
**无条件开 1 手空单**,记录开仓价和该手对应的锁仓阈值(= 当日振幅阈值 A)。
```
第 N 手空单: 开仓价 = 今日开盘价, 锁仓阈值 = 当日 A
```
### 盘中监控
用日内最高价、最低价判断触发:
| 条件 | 触发 | 动作 |
|------|------|------|
| **总浮盈 ≥ A 点** | 🟢 止盈 | 全部清仓(活跃空单 + 锁仓对),获利了结,Episode 结束 |
| **某空单亏损 ≥ 该手开仓时的振幅阈值** | 🔒 锁仓 | 对该手开多单锁仓,冻结亏损。该手从"活跃"移入"锁仓" |
| **累计锁仓 ≥ 3 次** | 🔴 3 锁熔断 | 全部清仓(活跃空单按结算价平仓 + 锁仓对平仓),认输重来 |
| 以上均未触发 | — 持仓 | 所有活跃空单和锁仓对继续持有至次日 |
### 盘中判断细节
- 如果止盈和锁仓同时可能触发(日内振幅足够大),用**收盘方向**判断哪个先触发:收盘 > 开盘 → 锁仓先触发,反之止盈先触发。
- 当天新开的空单和昨天留下的活跃空单**平等对待**——任何一笔活跃空单亏损达到它自己的锁仓阈值,就锁那一笔。
---
## 四、锁仓机制
锁仓 = 对亏损达到阈值的空单,**额外开一手多单**,形成锁仓对。
```
锁仓对 = 空单@开仓价 + 多单@(开仓价 + 阈值)
锁仓对盈亏 = (开仓价 − 现价) + (现价 − (开仓价 + 阈值))
= −阈值 (固定,不再随价格变动)
```
**一旦锁仓,该笔亏损被冻结,不会扩大。** 但锁仓对也不贡献利润——只有活跃空单才能在价格下跌时产生收益。
锁仓对在两种情况下平仓:
1. 后续总浮盈触发止盈 → 和所有头寸一起清仓
2. 累计 3 锁触发熔断 → 和所有头寸一起清仓
---
## 五、清仓规则
### 🟢 止盈清仓
**触发条件**:当日最低价对应的总浮盈 ≥ 当日振幅阈值 A
总浮盈 = 所有活跃空单浮盈 + 所有锁仓对冻结盈亏
- 清仓所有活跃空单(按 trigger 价格平仓)
- 清仓所有锁仓对(空单和多单同时平仓)
- Episode 结束,锁仓计数器归零,次日重新开始
### 🔴 3 锁熔断
**触发条件**:累计锁仓次数 ≥ 3(跨日累计,不清零直到 Episode 结束)
- 活跃空单按当日结算价平仓
- 锁仓对同步平仓
- 认输出局,Episode 结束,计数器归零
---
## 六、回测结果
| 指标 | 数值 |
|------|------|
| 回测区间 | 2024-01-02 → 2026-07-22617 个交易日) |
| 累计盈亏 | **+232,568 元**+23.26 万) |
| 初始资金 | 10,000 元 |
| 总收益率 | **+2,325.7%** |
| 年化收益 | ~9.3 万/年 |
| 最大回撤 | 3,056 元(发生在 2024-05 |
| 总 Episode | 219 轮 |
| 止盈清仓 | 184 次(84.0% |
| 3 锁清仓 | 35 次(16.0% |
| 平均每轮 | 2.8 天,盈利 +1,062 元 |
| 平均止盈 | +1,439 元 |
| 平均熔断 | 921 元 |
### 年度表现
| 年份 | 盈亏 | 止盈 | 熔断 |
|------|------|------|------|
| 2024 | +11.74 万 | 73 次 | 15 次 |
| 2025 | +8.42 万 | 73 次 | 13 次 |
| 2026 (YTD) | +3.09 万 | 38 次 | 7 次 |
---
## 七、风控要点
1. **3 锁熔断是最后防线**:限制连续逆势加仓的亏损上限。回测中单次熔断最大亏损 −3,056 元。
2. **振幅阈值自适应**:波动大时阈值宽(少触发但单笔大),波动小时阈值窄(多触发但单笔小),天然适配市场节奏。
3. **不止损单笔,只熔断累计**:单笔锁仓冻结亏损但不退出,给后续空单留翻盘机会。
4. **不加倍加仓**:每手固定 1 手,不 Martingale。亏损靠多手同时盈利覆盖,而非重仓赌反弹。
---
## 八、适用条件
| 条件 | 说明 |
|------|------|
| ✅ 长期空头趋势 | 每日默认做空有正期望 |
| ✅ 日均振幅 > 15 点 | 阈值足够覆盖交易成本 |
| ✅ 无极端单边上涨 | 连续锁仓是最怕的场景 |
| ❌ 趋势反转(熊→牛) | 会连续 3 锁出局,建议暂停 |
| ❌ 振幅 < 10 点 | 利润不够覆盖滑点 |
---
> 生成日期:2026-07-23 · 数据来源:akshare / Sina FG0 主连