【问题标题】:Creating a for loop in MQL4 that counts the bars在 MQL4 中创建一个计算柱数的 for 循环
【发布时间】:2021-03-21 17:16:21
【问题描述】:

所以我正在尝试创建一个计算 4 条的 for 循环。每个看跌柱都是负数,每个看涨柱都是正数。所以所有 4 个柱的总和应该给我一个大于、小于或等于 0 的数字。我需要查看当前的价格走势。进入交易需要此信息。我想要的是在交易结束后,for 循环从该柱开始计数。因为我遇到的问题是程序在交易结束后开始计算 5 根柱线并给出错误信号。如何使程序从新栏向前计数?

for(int i = 5; i>0; i--){
  if(Open[i]>Close[i]){
     z = z - 1;
  }
  else if(Open[i]<Close[i]){
     z = z + 1;
  }
  else{
     z = z;
  }

}

【问题讨论】:

    标签: for-loop mql4


    【解决方案1】:

    如果您想从当前柱倒数 5 个柱,包括当前柱,那么您将使用以下代码(注意,不需要 z=z 语句,它没有任何作用)。您必须创建一个函数来返回最后关闭交易的柱数。

    if(lastTradeClosed()==0)
    {
       for(int i=0; i<=4; i++)
       {
          if(Open[i]>Close[i]) z--;
          else if(Open[i]<Close[i]) z++;
       }
    }
    

    【讨论】:

    • 感谢您的回复,我想要实现的是在交易结束时让 ea 重新开始计数。例如,如果它刚刚结束交易。它会再次倒数五小节。它将当前柱作为计数的第一个柱。我希望我清楚地提出了我的问题。
    • 我已根据您的评论进一步编辑了我的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-19
    • 1970-01-01
    • 1970-01-01
    • 2016-04-28
    • 1970-01-01
    • 1970-01-01
    • 2020-05-20
    相关资源
    最近更新 更多