EA-36631 · 时段交易
Closeprofitendofweek
该EA是一个工具型程序,在周五用户指定的结束时间后自动平掉当前品种所有盈利仓位。它通过定时器运行,跳过加密货币品种,本身不开仓,仅作为周末利润管理工具。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
暂未回测:这个 EA 还没能自动转换。
策略分析
该EA的策略概念是在周五交易时段结束时自动关闭所有盈利仓位,以避免周末持仓风险。入场条件方面,该EA不执行任何入场操作,仅负责出场管理。出场条件为:当前时间为周五且服务器时间已超过用户设定的Endtrade时间,且持仓浮盈大于零。仓位管理方面,该EA不涉及开仓仓位管理,仅对已有仓位进行选择性平仓(仅平盈利仓)。资金管理方面,没有任何资金管理逻辑,不根据账户余额或风险比例调整操作。此外,该EA通过SYMBOL_CATEGORY过滤掉加密货币品种,且仅针对当前图表品种进行操作,使用定时器触发而非OnTick事件。
优势
- 逻辑简单明了,专注于周末风险管理,减少持仓过周末的风险
- 仅平仓盈利仓位,保留亏损仓位让交易者自行决定,避免锁定亏损
- 通过品种类别过滤跳过加密货币,考虑了7×24市场的特殊性
- 使用CTrade标准库进行平仓操作,代码规范可靠
劣势
- 仅在OnTimer中运行,若未正确设置定时器间隔则可能错过平仓时机
- 只平盈利仓不平亏损仓,可能导致账户仍持有亏损仓位过周末面临跳空风险
- 没有重试机制,平仓失败后仅打印日志而不进行再次尝试
- Starttrade参数声明了但从未使用,属于无效参数
- 遍历仓位时使用索引而非从后向前遍历,平仓后可能导致索引错乱
改进建议
- 应从后向前遍历仓位列表(从PositionsTotal()-1到0),避免平仓后索引错乱导致跳过仓位
- 移除未使用的Starttrade参数或实现其功能,增加OnTimer中EventSetTimer的初始化设置
- 增加平仓失败重试机制,并考虑同时提供关闭亏损仓位的选项以全面规避周末风险
风险评估
总体风险: 低风险
- 从前往后遍历仓位列表时平仓可能导致索引错乱,跳过部分仓位
- OnTimer未在OnInit中初始化,若未手动设置定时器则EA不会执行任何操作
评估得分
代码质量2.0
策略逻辑3.0
风险管理2.0
稳健性2.0
创新性1.0
文档1.0
综合1.8
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
Starttrade | "00:00" | 开始交易时间,格式HH:mm |
Endtrade | "20:00" | 结束交易时间,格式HH:mm |
Closetradeatendtime | true | 是否在结束时间和周末关闭所有盈利仓位 |
同类 EA:时段交易
回测是历史模拟,不代表未来收益,不构成投资建议。