EA-43837 · 辅助工具

ShowHistoryOnChart-V1.1

该EA从CSV文件中读取交易历史记录,并在图表上用彩色箭头标示买入/卖出的开仓和平仓点位,以虚线趋势线连接。它本身不执行任何交易,纯粹是一个用于回顾过去交易活动的可视化工具。

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

基本信息

风险安全
评分★★☆☆☆
类型辅助工具
周期M1, M5, M15, M30, H1, H4, D1
指标—
作者MetaQuotes Ltd.

回测结果(H1,约 1 年)

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

策略分析

该EA并非交易策略程序,而是一个交易历史可视化工具。它在OnInit()初始化阶段从MQL5/Files目录下读取用户指定的CSV文件,解析每笔交易的开仓时间、方向、手数、品种、开仓价、平仓时间、平仓价、佣金、掉期和利润等字段。对于买入交易,使用蓝色箭头和趋势线标记;对于卖出交易,使用红色箭头和趋势线标记。开仓点用买入/卖出箭头对象标示,平仓点用反向箭头标示,两者之间用虚线趋势线连接,直观展示每笔交易的入场和出场轨迹。仓位管理和资金管理方面完全不涉及,因为该工具不进行任何交易操作。

优势

  • 直观可视化交易历史,便于复盘分析交易表现
  • 用颜色区分多空方向,箭头和趋势线组合展示入场出场,信息清晰
  • 实现简单轻量,不占用运行时资源(仅在初始化时执行一次)

劣势

  • 全局变量clr、objectArrowOpen等未在函数内声明,多实例或重复初始化时存在状态冲突风险
  • CSV解析脆弱:StringSubstr截取价格硬编码为7字符,对不同价格精度品种会导致价格错误
  • FileReadString(handle,4)读取4个字段跳过列的方式不可靠,如果CSV格式略有变化就会解析错位
  • 无错误处理:文件不存在或格式错误时无用户提示,仅静默失败
  • OnDeinit删除所有对象过于激进,会清除图表上其他EA或手动添加的对象

改进建议

  • 将全局变量改为函数内局部变量,并在对象命名中加入品种前缀以避免冲突
  • 使用完整的字符串转Double方式替代StringSubstr硬编码截取,并增加CSV文件格式校验和错误提示
  • OnDeinit中仅删除本EA创建的对象,使用统一前缀标记而非删除全部对象

风险评估

总体风险: 安全

  • ObjectsDeleteAll会清除图表上所有对象,包括其他指标或手动添加的绘图,造成意外数据丢失
  • 全局变量状态在重复初始化时可能产生竞态条件,但在非交易工具中影响有限

评估得分

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

参数

参数默认值说明
fileName""CSV文件名(需放置在MQL5/Files目录下,以分号为分隔符)

同类 EA:辅助工具

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

订阅每周 Arena 周报

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