在不同时段和图表时间范围内返回的函数值存在问题

时间:2019-05-08 21:00:33

标签: mql4 metatrader4 mql mql5 metatrader5

我需要做这样的事

if ( iAO( Symbol(),PERIOD_M1, 0) <= iAO( Symbol(), PERIOD_M5, 0) )

{

....

}

但是当我的图表时间范围为M1时,iAO(Symbol(),PERIOD_M5,0)不起作用(始终返回0)。

能否在M1中获得该函数的实际返回值?


更新

我发现问题出在不同时间段,与小节号有关。像这样的东西:

int BM1 = iBars(NULL,PERIOD_M1);

其中

int BM5 = BM1/5;

int BM5 = iBars(NULL,PERIOD_BM5);

因此,如果我执行此操作,那么如果我处于时间范围M1,那么它确实可以工作。

int i, n=0, Counted_bars;   

Counted_bars=IndicatorCounted();  

i=Bars-Counted_bars-1;



   while(i>=0)                     

   { 

        if (  iAO( Symbol(),PERIOD_M1, i) <= iAO( Symbol(), PERIOD_M5, i/5)  )

        {

...

        }

i--;

}

但是它仅在我对指示器进行编程时有效。它在EA交易中不起作用。 ??有什么主意吗?

0 个答案:

没有答案