EA-359 · 多周期

EA_OBJPROP_CHART_ID

该EA是一个工具类程序,演示如何在指标子窗口中创建和管理OBJ_CHART对象(嵌入式图表)。它在一个自定义子窗口指标内显示日线(D1)和H4周期图表,并各自附加了Price Channel指标。该EA不进行任何交易,纯粹展示图表对象操作和多周期图表嵌入功能。

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

基本信息

分类多周期
风险安全
评分★★☆☆☆
类型辅助工具
周期D1, H4
指标Price Channel
作者MetaQuotes Software Corp.

回测结果(H1,约 1 年)

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

策略分析

该EA并非交易策略,而是一个MQL5图形对象操作工具。其核心功能是利用OBJ_CHART对象在指标子窗口中嵌入不同时间周期的图表,实现多周期同屏显示。入场条件不适用,因为该EA不执行任何交易操作。出场条件同样不适用。仓位管理不涉及,因为没有开仓行为。资金管理也不存在。EA的主要技术点包括:通过ObjectCreate创建OBJ_CHART对象,使用ObjectSetInteger设置图表属性(位置、大小、缩放、时间周期),通过OBJPROP_CHART_ID获取嵌入图表的句柄,再使用ChartSetInteger/ChartSetDouble对该嵌入图表进行进一步配置(背景色、前景、网格、偏移等),最后通过iCustom和ChartIndicatorAdd为嵌入图表添加Price Channel指标。

优势

  • 演示了OBJ_CHART对象的完整创建和配置流程,对MQL5图形编程学习非常有价值
  • 实现了多周期图表同屏显示功能,方便交易者同时监控不同时间周期的市场动态
  • 代码结构清晰,CreateChartInSubwindow函数封装良好,参数化设计便于复用和修改

劣势

  • 不执行任何交易操作,仅作为技术演示用途,实用价值有限
  • OnDeinit中对象删除代码被注释掉,可能导致EA卸载后图表对象残留
  • 硬编码了指标路径和参数值,缺乏输入参数配置灵活性,无法适应不同用户需求

改进建议

  • 取消注释OnDeinit中的对象删除代码,并增加完整的资源清理逻辑,防止EA卸载后遗留图形对象
  • 将硬编码的参数(图表名称、尺寸、指标路径等)改为input参数,增强灵活性和可配置性

风险评估

总体风险: 安全

  • OnDeinit中对象删除代码被注释掉,EA反复加载卸载可能导致OBJ_CHART对象堆积占用内存
  • 依赖外部自定义指标'Subwindow'和'Price_Channel',若这些指标不存在则初始化会部分失败

评估得分

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

参数

参数默认值说明
daily_chart0日线图表ID变量,用于存储D1嵌入图表的句柄
H4_chart0H4图表ID变量,用于存储H4嵌入图表的句柄
D1"daily"日线OBJ_CHART对象的名称
H4"H4"H4周期OBJ_CHART对象的名称
subwindow_handle0子窗口指标的句柄
subwindow_ID0子窗口的ID编号
indicator_handle0指标句柄变量

同类 EA:多周期

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

订阅每周 Arena 周报

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