EA-11777 · 统计套利

Double trading

该EA实现了一种配对交易/统计套利策略,当两个相关货币对的相关系数达到阈值时,同时开立相反方向的仓位。它监控两个仓位的合计利润,达到目标利润后同时平仓,同时以止损/止盈作为兜底退出。自动模式根据交易时段的货币强度假设来确定交易方向。

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

基本信息

风险高风险
爆仓风险低
评分★★☆☆☆
类型交易型 EA
周期H1, H4, D1
指标Correlation (Custom)
作者MetaQuotes Software Corp.

回测结果(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% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。

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

  • 最多可同时持有 2 个仓位

单独这一点不算典型的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。

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

策略分析

策略概念:该EA基于两个货币对之间的相关性进行统计套利,当相关系数接近设定阈值(-0.98±0.003)时开仓。入场条件:相关系数CorrelationBuffer[0]落入Open_Value±Demis_Value范围内,且当日为允许交易的星期、没有持仓时触发入场。自动模式下,根据GMT时段判断主流货币的强弱趋势来决定买卖方向(如欧洲时段EUR/CHF/GBP为强势货币),直接模式(default AutoD)两对货币开反向仓,镜像模式(AutoM)两对货币开同向仓。出场条件:双仓合计利润达到Profit参数(默认20)时同时反向平仓,或任一仓位触发止损/止盈后等待另一仓位也被止损/止盈。仓位管理:两对货币分别使用独立手数Lot1和Lot2,默认1和1.3,不设动态加仓或减仓逻辑。资金管理:无动态资金管理,固定手数交易,止损止盈均为5000点,属于较宽的止损设置。

优势

  • 配对交易策略逻辑清晰,利用相关性进行统计套利,具有一定的理论基础
  • 支持自动模式根据交易时段货币强度判断方向,增加了策略灵活性
  • 设有双仓合计利润目标出场机制,有利于锁定套利收益
  • 提供交易日过滤功能,可以避开不活跃或风险较高的交易日

劣势

  • 使用Sleep()函数阻塞OnTick线程,会导致EA无法响应其他事件,严重降低平台稳定性
  • 止损/止盈后仅通过轮询历史交易记录判断是否另一仓位也被止损/止盈,存在死循环风险且逻辑脆弱
  • 当任一仓位被SL/TP后,另一仓位可能长期浮亏无人管理,存在巨大风险敞口
  • 相关性判断依赖外部自定义指标Correlation,若指标不存在则EA无法正常运行且无错误提示
  • 代码编码问题导致俄语注释乱码,严重影响可读性和可维护性
  • 使用StringLen()==3来判断Buy/Sell方向非常脆弱,依赖硬编码字符串长度而非内容比较

改进建议

  • 移除Sleep()阻塞调用,改用状态机模式在OnTick中分步处理订单生命周期,避免阻塞主线程
  • 增加单边仓位被止损/止盈后的另一仓位应急平仓逻辑,防止单边风险敞口无限扩大
  • 使用PositionSelect或PositionGetTicket替代轮询历史记录的方式来管理持仓状态
  • 将StringLen()==3的方向判断替换为字符串内容比较(如StringCompare),提高代码健壮性
  • 添加Correlation自定义指标的存在性检查,指标不可用时输出错误提示并禁止交易

风险评估

总体风险: 高风险

  • Sleep()阻塞OnTick线程,可能导致平台卡死或无法及时处理其他事件
  • 单边仓位止损后另一仓位缺乏保护机制,可能产生巨额浮亏
  • 止损/止盈检测使用while(1)无限循环+Sleep轮询,存在死循环风险
  • 默认止损5000点非常宽,单笔最大亏损可能极大
  • 外部Correlation指标依赖无校验,指标加载失败可能导致错误信号

评估得分

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

参数

参数默认值说明
Lot11第1对货币的交易手数
Lot21.3第2对货币的交易手数
StopLoss5000止损点数
TakeProfit5000止盈点数
Profit20双仓合计目标利润(货币单位)
Money2USDCHF第2对货币对符号
Money1_SELL_or_BUYAuto第1对货币方向: SELL/BUY/Auto
Money2_SELL_or_BUYAuto第2对货币方向: SELL/BUY/Auto
AutoAutoM自动交易模式: AutoD=反向(对冲), AutoM=镜像(同向)
Try10下单最大重试次数
Mondaytrue周一是否允许交易
Tuesdaytrue周二是否允许交易
Wednesdaytrue周三是否允许交易
Thursdaytrue周四是否允许交易
Fridayfalse周五是否允许交易
Open_Value-0.98开仓相关系数阈值
Demis_Value0.003相关系数容差范围(+/-)
Depth50相关性计算深度(K线数)
AppliedPricePRICE_WEIGHTED相关性计算所用价格类型

同类 EA:统计套利

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

订阅每周 Arena 周报

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