EA-49272 · 突破

BreakoutStrategy

该EA实现了通道突破策略,当价格突破可配置回看期内的最高价或最低价时,分别放置BuyStop和SellStop挂单。它基于通道对侧边界或中线进行跟踪止损,并根据每笔交易占权益的固定风险比例计算仓位大小。

打开交互版(权益曲线、切换品种)

基本信息

分类突破
风险中等
爆仓风险低
评分★★☆☆☆
类型交易型 EA
周期H1, H4, D1
指标Donchian Channel (Highest High/Lowest Low), ATR
作者QuanAlpha

回测结果(H1,约 1 年)

品种盈亏年化最大回撤交易数胜率夏普恢复因子最长连亏每笔期望状态
EURUSD0.00%0.00%0.00%0—————暂不支持转换
GBPUSD0.00%0.00%0.00%0—————暂不支持转换
USDJPY0.00%0.00%0.00%0—————暂不支持转换
XAUUSD0.00%0.00%0.00%0—————暂不支持转换

这个 EA 从未交易的原因:转换后没有留下任何开仓规则。

由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。

爆仓风险: 未发现爆仓模式

代码里没有发现常见的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。

高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →

策略分析

策略概念基于唐奇安通道突破,利用N周期最高价和最低价形成价格通道,突破上轨做多、突破下轨做空。入场条件为:当没有同方向持仓时,在最高价加一个tick上方挂BuyStop单,在最低价减一个tick下方挂SellStop单。出场条件采用跟踪止损机制:若启用中线出场,多头止损跟踪中线和最低价的较大值,空头止损跟踪中线和最高价的较小值;若未启用,则多头跟踪最低价、空头跟踪最高价。当价格反向突破跟踪线时直接平仓,否则将跟踪线作为新止损价修改持仓。仓位管理基于固定风险比例模型,通过OrderCalcProfit计算1手在止损距离下的亏损金额,再根据风险金额反算手数,并向下取整到品种最小手数步长。资金管理还考虑了自由保证金不足时自动缩减手数的机制,以及超过最大手数限制时分批下单的处理。订单管理方面,每个新K线开盘时删除所有未成交挂单并重新挂单,使用ORDER_TIME_DAY类型的挂单避免隔夜残留。

优势

  • 基于固定风险比例的仓位管理,风险可控且与账户规模自适应
  • 使用挂单入场避免滑点,并设有止损止盈逻辑,风险管理体系较为完整
  • 通道突破策略逻辑清晰简洁,参数可配置性强,易于理解和回测
  • 考虑了最大手数限制的分批下单和自由保证金不足时的手数缩减
  • 每个新K线才执行逻辑,避免高频交易和过度交易

劣势

  • ATR指标句柄在每次调用ATR()函数时都重新创建但从未释放,会造成严重的资源泄漏
  • 挂单仅使用ORDER_TIME_DAY过期,在周末或节假日跳过时可能导致意外行为
  • 缺乏品种过滤器、交易时段过滤和新闻事件过滤,可能在低流动性时段产生不利入场
  • PositionManaging中positions--在平仓后递减但循环从高到低遍历,可能导致索引偏移问题
  • 没有对交易操作(BuyStop、SellStop、PositionModify等)的返回值进行错误检查和处理

改进建议

  • 将ATR指标句柄移到OnInit()中创建并在OnDeinit()中释放,避免每次调用时重复创建导致资源泄漏
  • 为所有交易操作添加错误检查和重试机制,并在日志中记录失败原因以便调试
  • 添加交易时段过滤和点差过滤,避免在低流动性或高点差时段入场

风险评估

总体风险: 中等

  • ATR句柄资源泄漏可能导致长期运行后终端性能下降甚至崩溃
  • 交易操作无错误检查,失败时无反馈可能导致策略状态与实际持仓不一致
  • 缺乏交易时段和点差过滤,可能在不利条件下入场导致异常滑点

评估得分

代码质量2.0
策略逻辑3.0
风险管理3.0
稳健性2.0
创新性2.0
文档1.0
综合2.2

参数

参数默认值说明
BOT_NAMEBreakoutStrategyEA名称标识
EXPERT_MAGIC1EA魔术号码,用于标识本EA的订单
ENTRY_PERIOD20入场通道回看周期数
ENTRY_SHIFT1入场通道偏移量(1=从上一根K线开始计算)
EXIT_PERIOD20出场通道回看周期数
EXIT_SHIFT1出场通道偏移量
EXIT_MIDDLE_LINEtrue是否使用通道中线作为出场参考
TRADING_TIMEFRAMEPERIOD_H1交易使用的时间周期
RISK_PER_TRADE0.01每笔交易风险占权益的比例(1%)

同类 EA:突破

回测是历史模拟,不代表未来收益,不构成投资建议。

订阅每周 Arena 周报

每周一封邮件:排名变化、新信号和新研究。不发垃圾邮件,随时可以退订。