一、总体架构评价
该 EA 并非单一指标策略,而是一套 分层完整 的交易系统:
入场信号层(布林带突破)、波动率自适应层(历史收口统计)、仓位管理层(递减金字塔加仓)、离场管理层(七种止损/止盈模式)、监控展示层(可视化面板)。
各层之间参数联动,逻辑闭环完整。
二、核心优势逐项分析
1. 顺势突破逻辑——跳出传统布林带用法
绝大多数布林带 EA 做“均值回归”(碰上轨做空、碰下轨做多),而本策略 反其道而行 :
- Ask 突破上轨(或 Bid 距上轨`BreakMaxPoint=150` 点内)→ 做多;下破下轨 → 做空。
- 本质是 动量/趋势跟随 :布林上破往往意味着波动率扩张、趋势启动,策略吃的是趋势启动后的一段行情。
- 双重过滤避免假突破与追单:
- `BreakMaxPoint` :突破一定幅度才入场,过滤贴轨的毛刺信号;
- `PassBLPoint` :价格已远离轨道超过 500 点则放弃开仓, 不追山顶/谷底 。
2. 波动率自适应机制——最具技术含量的部分
这是本 EA 区别于普通布林带策略的最大亮点:
- 启动时扫描 2880 根历史K线 ,逐一计算布林带宽度(上轨-下轨),自动识别 局部收口极小值点 (前后各 10 根K线都比它宽,即真正的“波动率压缩”点);
- 统计这些收口点的平均宽度`G_do_118` ,再与当前带宽做对比;
- 用比值`G_do_117 = 历史收口均值 / G_do_16` 动态缩放四个关键距离参数 :移动止损启动点、最大止损、盈利达标点、保本移损点。
带来的实际好处:
- 跨品种移植性强 :同一套参数在黄金(高波动)和欧美(低波动)上,止损止盈距离会自动按波动率等比缩放,不需要每个品种重新优化;
- 跨周期环境适应 :行情从平静期进入剧烈期,止损自动放宽,减少被噪音扫损;平静期自动收紧,锁定更多利润;
- 面板实时显示`REAL(历史均值)` 与`NOW(当前值)` ,使用者能直观看到当前市场处于相对高波还是低波状态。
3. 金字塔式顺势加仓——与马丁格尔本质相反
加仓手数方式默认为 按比例 0.618 递减 (`AddPrecentLots=0.618` ):
- 首单最大、后续逐单按黄金比例递减,是 正金字塔 结构;
- 与马丁格尔“越亏越加倍”完全相反——这里是 越赚越加(但加得越来越少) ,平均成本始终靠近首单价位,尾部风险递减;
- 顺势加仓让利润奔跑的同时,不会出现马丁式几何级爆仓风险。
加仓触发方式提供 4 种可选模式 (枚举`tempAddWay` ),适应不同行情性格:
模式 逻辑 适配场景
单K加仓 出现幅度在 280~500 点之间的大阳/大阴线顺势追加 强动量单边市
破极值加仓 突破本波段前高/前低才加仓 阶梯式推进行情
回调加仓 基于波段价格回撤波段 23.6% 处加仓 顺大势、逆小势的低吸 小波段回调加仓 用更小参数的捕捉次级回调 震荡上行的碎步趋势
其中“回调 23.6% 加仓”内置了 斐波那契回调位 思想,在趋势中摊低成本而非盲目追高,是较为专业的加仓设计。同时`AddMinPoint=280` 点的最小加仓间距约束,避免了密集堆仓。
4. 多层次、结构化的止损体系
止损不是简单固定点数,而是 锚定市场结构 :
- 首单止损可选四种锚点:布林中轨 / 对侧轨道 / ZigZag 前拐点 / 固定点数——其中 ZigZag 拐点止损是典型的“结构位止损”,
止损放在波段拐点之后,只有趋势结构被破坏才离场;
- 硬性上限`FirstMaxSLPoint=500` 点封顶,无论结构位多远,单笔风险有天花板;
- 盈利后的止损推进分四档 :
1. `SaveTPPt=300` 点盈利 → 止损移至开单价( 保本锁利 );
2. `PassProfitMSLPt` 后启动 追踪止损 (`MVMinSLPt=150` 起步);
3. `lizong_31/lizong_32` :用 ZigZag 拐点动态移损—— 跟结构不跟点数 ,趋势不破不丢仓位;
4. `MaxSLPt=550` 点最终封顶。
- 加仓单止损独立管理 (`AddOutWay` 七选一):同首单止损 / 移至首单开价 / 保本位 / 小移损 / 前一单开价 / 倒数第二单开价
——保证整组持仓的风险随加仓推进逐步收敛为“零风险持仓”。
5. 波段衰竭整体离场——聪明的全平信号
最体现策略设计水平的一处出场逻辑:
当整组多单盈利曾达到`TPedPt=800` 点后,若 K线收阴且回到布林带以内 → 全部多单一次性平仓(空单对称)。
- “盈利到过高位 + 价格回归通道内 + 收反向K线”三者叠加,构成标准的 趋势衰竭三重确认 ;
- 避免了“跌破追踪止损才离场”导致的大幅利润回吐,也避免了“固定止盈”在强趋势中过早下车;
- 是介于移动止损和固定止盈之间的第三种状态感知式离场,兼得两者之长。
6. 严格的执行纪律与工程细节
代码层面体现了成熟的实盘经验:
- 每根K线只允许下一单 (`G_da_127 != Time[0]` 时间戳去重),杜绝同一根K线内信号反复触发导致的重复开仓;
- 反向持仓清理 (`CloseEX=true` ):开新方向前先平掉旧方向全部持仓,保证持仓方向纯粹,不留对冲死角;
- 规范的`IsTradeAllowed / IsTradeContextBusy` 等待循环 +`RefreshRates()` ,降低繁忙时段下单失败率;
- 点差处理`AddSpread` :空单止损自动加点差补偿,规避点差导致的意外打损;
- `wei` 平台位数参数:同一套源码兼容 5 位报价外汇与原油等不同位数品种。
7. 双向对称 + 再入场状态机
- 多空逻辑 完全对称 ,多头机会与空头机会都能捕捉;
- 状态变量`G_in_139/G_in_140` 构成小型状态机,实现两类再入场:
- BuyAgain / SellAgain :持仓期间回踩后再次上/下破轨道,允许二次进场;
- BuyEstAgain / SellEstAgain :记录建仓时间`G_da_131/132` ,动态计算本波段高点, 破前高再追 ;
- 这使策略在“突破 → 回踩 → 再突破”的复杂走势中不会只吃一波就沉默。
8. 人机结合的监控面板与复盘统计
- 重启不掉单 :`OnInit` 调用`统计持仓信息()` 重新加载已有持仓状态,终端重启后 EA 能无缝接管历史仓位;
- 深色卡片式面板实时显示:多/空单层数、累计手数、浮盈亏、持仓均价、当前点差、账号余额、授权剩余天数;
- 提供 平多 / 平空 / 全部平仓 三个手动按钮,紧急情况下人工干预一键完成;
- `OnDeinit` 卸载时自动输出关键复盘指标:总开仓手数、止损次数、 最大余额回撤、最大净值回撤 ——使用者可以直接量化评估风险敞口。
9. 资金管理的灵活性
首单手数三种模式:
- 固定手数(`KeepLots=0.3` );
- 按净值百分比 (`PrecentLots=5` ,即净值的万分之五)——实现天然 复利增长 ,账户做大后仓位自动跟随;
- 按初始资金分档(净值超过阈值后手数乘以放大系数),资金曲线管理更细腻。
三、综合结论
维度 评价
策略类型 布林带收口后突破的趋势跟随系统
盈利来源 波动率压缩后的趋势扩张段,配合金字塔加仓放大趋势利润
风控深度 结构化止损 + 四档移损 + 波段衰竭全平 + 单笔/整体点数封顶
适应性 波动率自适应参数缩放,跨品种/跨波动环境移植性较好
工程质量 状态机、重启恢复、点差补偿、执行等待循环等实盘细节到位
一句话总结 :该策略的核心优势在于——用“历史收口统计”实现波动率自适应,用“递减金字塔顺势加仓”放大趋势利润而非堆积风险,
用“结构位 +动态移损 + 波段衰竭全平”构成三层利润保护,整体是一套逻辑自洽、风控分层清晰的趋势型系统。
|
-
-
-
-
顺天府.ex4
162.42 KB, 下载次数: 0, 下载积分: 活跃度 -5
售价: 2 H币 [记录]
[购买]
无限制
-
-
顺天府.mq4
105 KB, 下载次数: 2, 下载积分: 活跃度 -5
售价: 5 H币 [记录]
[购买]
源码
|