欢迎访问 外汇EA下载与MT4/MT5自动交易资源 - 聚合外汇EA、黄金EA、量化交易工具与自动化交易实战内容。
登录 注册

新柱事件 - MetaTrader 5 库

author emer | 738 人阅读 | 0 人评论 |

允许您确定多货币 Expert Advisor 中新柱事件的发生。

在多货币 EA 交易中,不同工具的新柱形形成事件可能会在不同时间发生。但由于 EA 始终在一种工具的图表上工作,因此有必要在 OnTick() 事件处理程序中正确确定另一工具上是否已在所需时间段内形成新柱。

这个库实现了这样的功能。为了确定所需时间段内新柱的开始时间,有关每个感兴趣工具的柱的第一个价格变动时间的信息将在每个价格变动时存储。当新柱开始时,新柱的开始时间会发生变化。然后,直到出现新的柱,该时间始终保持不变。在这个库中,所有粗略的工作都是为了创建必要的变量来存储不同仪器和周期的时间。用户只需在正确的位置应用 IsNewBar() 和 UpdateNewBar() 函数即可。

要使用它,您需要包含 NewBarEvent.mqh 库,然后:

下面和 NewBarEventExample.mq5 文件中给出了使用示例。

空白 勾选() {//--- 1. 重要!在 OnTick() 开始处调用 UpdateNewBar() 函数   更新新栏();//--- 2.1 检查事件  如果(是新栏(象征(),时期()))   {打印“新酒吧”+枚举转字符串时期()) +“ 为了 ”+象征()); }
   
  如果(是新栏(“欧元英镑”,PERIOD_M15)){打印“EURGBP PERIOD_M15 的新柱”); }
  如果(是新栏(“美元加元”,PERIOD_M15)){打印“美元加元 PERIOD_M15 的新柱”); }
  如果(是新栏(“美元兑瑞郎”,PERIOD_M15)){打印“美元兑瑞郎的新柱为 PERIOD_M15”); }
   
  如果(是新栏(“欧元英镑”,PERIOD_H1))  {打印“EURGBP PERIOD_H1 的新柱”); }
  如果(是新栏(“美元加元”,PERIOD_H1))  {打印“美元加元 PERIOD_H1 的新柱”); }
  如果(是新栏(“美元兑瑞郎”,PERIOD_H1))  {打印“美元兑瑞郎的 PERIOD_H1 新柱”); }//--- 执行一些操作...  睡觉1500);//--- 2.2 如果需要,再次检查事件  如果(是新栏(象征(),时期()))   {打印“新酒吧”+枚举转字符串时期()) +“ 为了 ”+象征() +“同一时刻第二次”); }
   
  如果(是新栏(“欧元英镑”,PERIOD_M15)){打印“欧元英镑在 PERIOD_M15 的新柱在同一价格变动中第二次出现”); }
  如果(是新栏(“美元加元”,PERIOD_M15)){打印“美元加元第二次在同一价格变动的 PERIOD_M15 处出现新柱”); }
  如果(是新栏(“美元兑瑞郎”,PERIOD_M15)){打印“美元兑瑞郎在同一价格变动中第二次出现 PERIOD_M15 的新柱”); }
   
  如果(是新栏(“欧元英镑”,PERIOD_H1))  {打印“欧元英镑在 PERIOD_H1 的新柱在同一价格变动中第二次出现”); }
  如果(是新栏(“美元加元”,PERIOD_H1))  {打印“美元加元在同一价格变动中第二次在 PERIOD_H1 处出现新柱”); }
  如果(是新栏(“美元兑瑞郎”,PERIOD_H1))  {打印“美元兑瑞郎在同一价格变动中第二次在 PERIOD_H1 出现新柱”); }
}

在 GBPAUD M30 上运行时,您可以看到类似以下的输出

2022.0401 22:30:00   新酒吧位于PERIOD_M30 为了GBPAUD2022.0401 22:3000   新酒吧位于PERIOD_M15 为了欧元英镑2022.0401 223000   新酒吧位于PERIOD_M15 为了美元兑加元2022.0401 223000   新酒吧位于PERIOD_M15 为了美元瑞郎2022.0401 223002   新酒吧位于PERIOD_M30 为了GBPAUD 在同一时间点第二次2022.0401 223002   新酒吧位于PERIOD_M15 为了欧元兑英镑在同一时刻第二次2022.0401 223002   新酒吧位于PERIOD_M15 为了美元兑加元在同一时刻第二次2022.0401 22:30:02   新酒吧位于PERIOD_M15 为了美元兑瑞郎在同一时刻第二次2022.0401 22:4501   新酒吧位于PERIOD_M15 为了欧元英镑2022.0401 224501   新酒吧位于PERIOD_M15 为了美元兑加元2022.0401 22:4501   新酒吧位于PERIOD_M15 为了美元瑞郎2022.0401 224502   新酒吧位于PERIOD_M15 为了欧元兑英镑在同一时刻第二次2022.0401 224502   新酒吧位于PERIOD_M15 为了美元兑加元在同一时刻第二次2022.0401 224502   新酒吧位于PERIOD_M15 为了美元兑瑞郎在同一时刻第二次



附件下载

📎 newbarevent.mqh (3.59 KB)

📎 newbareventexample.mq5 (2.58 KB)

Source: MQL5 #39899

🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录