新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1727

 
Ivan Butko #:

谢谢你。

我写了Print("Bar count on the 'EURUSD,M1' is ",iBars("EURUSD",PERIOD_M1));, 取自文档我在日志中打印了数字1001))))。虽然加载了历史记录,但在设置中最大超过了1000000条。

,请告知如何解决这个问题

下载故事

2021.11.08 11:02:11.919 !Print_Magic EURUSD,M30: Bar count on the 'EURUSD,M1' is 73589
 
MakarFX #:
下载历史。

满载,满载而归。进入档案室,有8,000,000个分钟条
,而日志说

EURUSD,M1: Bar count on the 'EURUSD,М1' is 1001


 
Ivan Butko #:

满载,满载而归。进入档案室,有8,000,000个分钟条
,而日志说

EURUSD,M1: Bar count on the 'EURUSD,М1' is 1001


 
Ivan Butko #:

谢谢你。

我写了Print("Bar count on the 'EURUSD,M1' is ",iBars("EURUSD",PERIOD_M1));,从文档中摘录终端记录的数字是1001)。虽然加载了历史记录,但在设置中最大超过了1000000条。

,请告知如何解决这个问题

在测试器中,开始时总是1000条(或更少)。

 
MakarFX #
int n=10;
   datetime bar_sig;
   for(int i=n;i>=0;i--)
     {
      if(iCustom(NULL,0,"Твой индикатор",0,n)=="Сигнал")
         bar_sig=time[n];
     }

这段代码显示了第10根蜡烛的信号,但我需要检查从1到N每根蜡烛的信号。

 
Snajper007 #:

这段代码显示了第10根蜡烛的信号,但我需要检查从1到N每根蜡烛的信号。

不,这段代码检查10个蜡烛图并显示哪一个是信号。
 
MakarFX #:
不,这段代码检查了10个蜡烛图,并显示了哪一个信号。
在实践中,它只显示当信号蜡烛成为第10根时。
 
Snajper007 #:
在实践中,它只显示当信号蜡烛成为第10根时。
工作室代码
 
int n=10;
   datetime bar_sig_buy, bar_sig_sell;

   for(int i=n;i>=0;i--)
     {
     // для покупок
   double a1 = iCustom(NULL, 0, "FL11", 4, n);
   // для продаж 
   double a2 = iCustom(NULL, 0, "FL11", 5, n);


      if(a1 > 0)
         bar_sig_buy=Time[n];
         
      if(a2 > 0)
        bar_sig_sell = Time[n];
     Comment("bar_sig_sell = " + DoubleToString(bar_sig_sell)+ "\n" +
     "bar_sig_buy = " + DoubleToString(bar_sig_buy));

     }
 

MakarFX,这里是一个截图 只要信号蜡烛成为第10个,价值就大于零。而在这之前,它等于零。

原因: