Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1727

 
Ivan Butko #:

Merci.

J'ai écrit Print("Bar count on the 'EURUSD,M1' is ",iBars("EURUSD",PERIOD_M1)) ;, tiré de la documentation. J'ai imprimé le nombre 1001 dans le journal.))) Bien que l'historique soit chargé, le maximum est de plus de 1000000 barres dans les paramètres.

Veuillez me conseiller sur la façon de résoudre le problème.

Télécharger l'article

2021.11.08 11:02:11.919 !Print_Magic EURUSD,M30: Bar count on the 'EURUSD,M1' is 73589
 
MakarFX #:
télécharger l'histoire.

Chargé, au complet. Je suis allé dans les archives, il y a 8.000.000 de barres de minutes
Et le journal dit

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


 
Ivan Butko #:

Chargé, au complet. Je suis allé dans les archives, il y a 8.000.000 de barres de minutes
Et le journal dit

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


 
Ivan Butko #:

Merci.

J'ai écrit Print("Bar count on the 'EURUSD,M1' is ",iBars("EURUSD",PERIOD_M1)) ;, je l'ai pris dans la documentation. Le terminal a enregistré le nombre 1001.) Bien que l'historique soit chargé, le maximum est de plus de 1000000 barres dans les paramètres.

Veuillez me conseiller sur la façon de résoudre le problème.

dans le testeur toujours 1000 bars au départ (ou moins).

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

Ce code montre le signal sur la 10ème bougie, mais j'ai besoin de vérifier le signal sur chaque bougie de 1 à N.

 
Snajper007 #:

Ce code montre le signal sur la 10ème bougie, mais j'ai besoin de vérifier le signal sur chaque bougie de 1 à N.

Non, ce code vérifie 10 chandeliers et montre lequel était le signal.
 
MakarFX #:
Non, ce code vérifie 10 chandeliers et indique celui sur lequel le signal a été émis.
Dans la pratique, il n'apparaît que lorsque la bougie de signal devient la 10ème.
 
Snajper007 #:
Dans la pratique, il n'apparaît que lorsque la bougie de signal devient la 10ème.
Code studio
 
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, voici une capture d'écran Dès que la bougie de signal est devenue la 10ème, la valeur était supérieure à zéro. Et avant cela, il était égal à zéro.