EA-15679 · 时段交易
AutoTrader
该EA是一个基于时段的交易开关工具,根据用户设定的时间窗口自动启用或禁用MetaTrader的自动交易按钮(Ctrl+E)。在活跃交易时段之外,它还会平掉所有持仓。它不会根据策略自行产生交易信号或开仓。
打开交互版(权益曲线、切换品种)基本信息
回测结果(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
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
StartHour | 9 | 交易时段开始小时 |
StartMinute | 30 | 交易时段开始分钟 |
StopHour | 23 | 交易时段结束小时 |
StopMinute | 30 | 交易时段结束分钟 |
同类 EA:时段交易
回测是历史模拟,不代表未来收益,不构成投资建议。