EA-15679 · 时段交易

AutoTrader

该EA是一个基于时段的交易开关工具,根据用户设定的时间窗口自动启用或禁用MetaTrader的自动交易按钮(Ctrl+E)。在活跃交易时段之外,它还会平掉所有持仓。它不会根据策略自行产生交易信号或开仓。

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

基本信息

风险中等
评分★☆☆☆☆
类型辅助工具
周期M1, M5, M15, M30, H1, H4, D1
指标—
作者AM2

回测结果(H1,约 1 年)

暂未回测:这个 EA 还没能自动转换。

策略分析

该EA的策略概念是基于时间段来控制交易系统的启用和禁用,而非基于市场技术指标产生交易信号。入场条件方面,当当前时间进入用户设定的起始时间(默认9:30)且自动交易未开启时,EA通过模拟键盘按键Ctrl+E来开启自动交易。出场条件方面,当当前时间超出交易时段时,EA会遍历所有持仓并逐个平仓,同时关闭自动交易功能。仓位管理方面,该EA没有任何仓位管理逻辑,它只是简单地关闭所有持仓而不考虑仓位大小或盈亏状态。资金管理方面,同样没有任何资金管理机制,平仓是无差别执行的所有持仓平仓操作。整体而言,这是一个纯工具型EA,依赖Windows API的keybd_event函数来模拟键盘操作,存在平台依赖性和可靠性风险。

优势

  • 时间控制逻辑完善,支持跨午夜时段判断
  • 实现简洁,代码量小,易于理解和修改
  • 自动平仓功能可防止非交易时段持仓风险

劣势

  • 依赖Windows user32.dll的keybd_event函数,无法在非Windows平台运行
  • 使用键盘模拟方式切换自动交易状态极不可靠,可能因窗口焦点问题失败
  • 平仓操作无滑点保护、无错误处理、无仓位筛选,可能部分平仓失败
  • 没有检测新K线机制,每个Tick都会执行检查造成不必要的资源消耗
  • Sleep函数在EA中不推荐使用,可能导致线程阻塞

改进建议

  • 使用MQL5原生的TerminalInfoInteger和账户权限API替代keybd_event键盘模拟,提升跨平台兼容性和可靠性
  • 增加平仓的错误处理和重试机制,添加仓位筛选(如按品种、按盈亏)功能,并加入新K线检测以减少不必要的计算

风险评估

总体风险: 中等

  • keybd_event键盘模拟可能因窗口焦点丢失而失效,导致交易状态未正确切换
  • 平仓操作无错误处理,在快速行情中可能因重新报价或滑点导致平仓失败
  • 非交易时段无条件平掉所有持仓,可能违背用户在其他EA上的持仓意图

评估得分

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

参数

参数默认值说明
StartHour9交易时段开始小时
StartMinute30交易时段开始分钟
StopHour23交易时段结束小时
StopMinute30交易时段结束分钟

同类 EA:时段交易

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

订阅每周 Arena 周报

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