docs/plans/2026-01-17-grid-market-regime-design.md
增强网格策略的市场状态识别能力,实现震荡/趋势的精准判断,并根据不同震荡级别自动调整网格参数和风控策略。
| 维度 | 指标 | 作用 |
|---|---|---|
| 价格波动 | ATR14 + Bollinger带宽 | 判断震荡幅度 |
| 趋势强度 | EMA20/50距离 + MACD | 判断是否有趋势 |
| 动量 | RSI14 + 1h/4h涨跌幅 | 判断超买超卖 |
基于1小时K线的多周期Donchian通道:
| 箱体级别 | 周期 | 覆盖时间 | 用途 |
|---|---|---|---|
| 短期箱体 | 72根1小时 | 3天 | 日内波动边界 |
| 中期箱体 | 240根1小时 | 10天 | 周级别震荡区间 |
| 长期箱体 | 500根1小时 | ~21天 | 大级别趋势边界 |
由AI综合分析以上指标 + 原始K线序列 + 箱体位置,输出市场状态判断。
| 级别 | 特征 | 判断依据 |
|---|---|---|
| 窄幅震荡 | 价格在短期箱体内小幅波动 | Bollinger带宽 < 2%,ATR低 |
| 标准震荡 | 价格在中期箱体内正常波动 | Bollinger带宽 2-3%,ATR正常 |
| 宽幅震荡 | 价格接近中期箱体边缘 | Bollinger带宽 3-4%,ATR较高 |
| 剧烈震荡 | 价格接近长期箱体边缘 | Bollinger带宽 > 4%,ATR高 |
| 级别 | 网格密度 | 网格范围 | 单格仓位 | 总仓位上限 | 有效杠杆上限 |
|---|---|---|---|---|---|
| 窄幅震荡 | 密集 | 窄 | 小 | 30-40% | 2x |
| 标准震荡 | 正常 | 中等 | 正常 | 60-70% | 3-4x |
| 宽幅震荡 | 稀疏 | 宽 | 正常 | 50-60% | 3x |
| 剧烈震荡 | 最稀疏 | 最宽 | 小 | 30-40% | 2x |
核心原则:
确认方式: 收盘价突破箱体后,持续3根1小时K线不回箱体
| 箱体级别 | 突破处理 |
|---|---|
| 短期箱体突破 | 降低仓位到 50% |
| 中期箱体突破 | 暂停网格 + 取消挂单 |
| 长期箱体突破 | 暂停网格 + 取消挂单 + 平掉所有持仓 |
价格回到箱体内 → 以50%仓位恢复网格
| 类别 | 显示内容 |
|---|---|
| 杠杆信息 | 当前杠杆、有效杠杆、系统推荐杠杆 |
| 仓位信息 | 当前仓位、最大仓位、仓位占比 |
| 爆仓信息 | 爆仓价格、爆仓距离(%) |
| 市场状态 | 当前震荡级别(窄幅/标准/宽幅/剧烈) |
| 箱体状态 | 短期/中期/长期箱体上下沿、当前价格位置 |
箱体指标计算 (market/data.go)
calculateDonchian(klines, period) 函数市场状态评估 (kernel/grid_engine.go)
网格参数动态调整 (trader/auto_trader_grid.go)
突破处理逻辑 (trader/auto_trader_grid.go)
GridConfigModel 新增字段:
EffectiveLeverageLimit - 有效杠杆上限ShortBoxPeriod - 短期箱体周期 (默认72)MidBoxPeriod - 中期箱体周期 (默认240)LongBoxPeriod - 长期箱体周期 (默认500)GridInstanceModel 新增字段:
CurrentRegimeLevel - 当前震荡级别 (narrow/standard/wide/volatile)ShortBoxUpper/Lower - 短期箱体上下沿MidBoxUpper/Lower - 中期箱体上下沿LongBoxUpper/Lower - 长期箱体上下沿BreakoutStatus - 突破状态 (none/short/mid/long)BreakoutConfirmCount - 突破确认K线计数| 控制点 | 机制 |
|---|---|
| 仓位控制 | 根据震荡级别限制总仓位上限 (30-70%) |
| 杠杆控制 | 根据震荡级别限制有效杠杆 (2-4x) |
| 突破保护 | 三级箱体突破分级处理 |
| 假突破恢复 | 50%仓位降级恢复 |
| 爆仓预防 | 前端展示爆仓距离,系统自动限制杠杆 |