【问题标题】:How to find close of a candle and store its value in EA?如何找到蜡烛的收盘价并将其值存储在 EA 中?
【发布时间】:2017-05-14 18:35:38
【问题描述】:

我是 mql4 的新手,对基础知识感到困惑。我想准备退出策略。以下是条件。如果是买入交易,我们必须卖出以平仓:

  1. 蜡烛应该在超级趋势下方收盘。
  2. 下一根蜡烛线应切入前一根蜡烛线的低点。

下面是我准备的部分代码。

i=1;
if (Close[i]<st)
{
    low=close[1];
    a=checkt1();
    if (a==True)
    {
        OrderClose()
     }
}
else if(Close[i]>st)
    {
    return(EMPTY_VALUE);
    }

bool check1t()
{
    if (Ask<a && Bid<a)
        {
        CloseOrder();
        }
return True
}

这里的 close 值不断变化,因为我已将其设置为 close[1]。是否有任何功能或任何方式可以存储仅削减了超级趋势的蜡烛的收盘价?并且不占用任何其他值?

【问题讨论】:

    标签: mql4


    【解决方案1】:

    因此您需要检查前一根蜡烛线是否低于前一根蜡烛线,以及该蜡烛线之前收盘价是否低于指标。

    `void Check4closeBuy(){
       double low1 = iLow(_Symbol,0,1), low2 = iLow(_Symbol,0,2), 
       close2 = iClose(_Symbol,0,2), ind2 = iCustom(_Symbol,0,ind_name,***,buffer,2);
    
       if (ind2>close2 && low2>low1){
          //close here
       }
    }`
    

    关于比较双打 - 因为它们是双打而不是整数,所以最好比较低于半记号或类似的差异,但需要小心。 所以在基本情况下:double1>double2 -> double1-double2&gt;Point/2 但这取决于您的指标,它可以有 _Digits 或更多(就像不同的 MA 可能在点后有更多数字,然后只有 5 个)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-22
      • 2021-06-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多