Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1727

 
Ivan Butko #:

Grazie.

Ho scritto Print("Bar count on the 'EURUSD,M1' is ",iBars("EURUSD",PERIOD_M1));, preso dalla documentazione. Ho stampato il numero 1001 nel registro))) Anche se la storia è caricata, il massimo è più di 1000000 barre nelle impostazioni.

Per favore consigliate come risolvere il problema

Scarica la storia

2021.11.08 11:02:11.919 !Print_Magic EURUSD,M30: Bar count on the 'EURUSD,M1' is 73589
 
MakarFX #:
scaricare la storia.

Caricato, in pieno. Sono andato nell'archivio, ci sono 8.000.000 di barre di minuti
E il registro dice

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


 
Ivan Butko #:

Caricato, in pieno. Sono andato nell'archivio, ci sono 8.000.000 di barre di minuti
E il registro dice

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


 
Ivan Butko #:

Grazie.

Ho scritto Print("Bar count on the 'EURUSD,M1' is ",iBars("EURUSD",PERIOD_M1));, preso dalla documentazione. Il terminale ha registrato il numero 1001). Anche se la storia è caricata, il massimo è più di 1000000 barre nelle impostazioni.

Per favore consigliate come risolvere il problema

nel tester sempre 1000 bar all'inizio (o meno).

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

Questo codice mostra il segnale sulla decima candela, ma ho bisogno di controllare il segnale su ogni candela da 1 a N.

 
Snajper007 #:

Questo codice mostra il segnale sulla decima candela, ma ho bisogno di controllare il segnale su ogni candela da 1 a N.

No, questo codice controlla 10 candele e mostra quale era il segnale
 
MakarFX #:
No, questo codice controlla 10 candele e mostra su quale era il segnale
In pratica mostra solo quando la candela del segnale diventa la decima.
 
Snajper007 #:
In pratica mostra solo quando la candela del segnale diventa la decima.
Codice 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, ecco uno screenshot Non appena la candela del segnale è diventata la decima, il valore era maggiore di zero. E prima era uguale a zero.