Ritardare l'allarme di alcuni secondi - pagina 3

 
GumRai:

Qual è il punto?

Perché no? Non c'è niente di sbagliato nell'usare Time[0] per rilevare una nuova barra.

Il mio codice è ok. Vuole 3 secondi dopo l'inizio della barra.

A volte wnen la storia si aggiorna Time[0] non funziona.

https://forum.mql4.com/ru/65066/page6#1016370

(rus)

 
omissamf:
Ciao ragazzi, siete grandi !!!
Non so come ringraziarvi per la vostra collaborazione.
Il codice postato eevviill funziona molto bene, è quello che intendevo.
Il codice GumRai invece fa repaint e il segnale ogni volta che l' RSI attraversa i livelli 30/70.
Inserisco il codice funzionante secondo i suggerimenti di eevviill, sperando che possa servire ancora.

Grazie di tutto, Massimo.


Con piacere.
 
Ciao eevviill, solo una curiosità: cosa intendevi con:
P.S. Non usare il Tempo [0], usa le Barre?
È possibile cambiare il coodice che ha postato GumRai?
è solo una mia curiosità, perché sto cercando di capire e studiare il linguaggio
.
Grazie, Max.
 
eevviill: P.S. Non usare Time[0], usa Bars
Non usare le barre, possono cambiare in un refresh (nuova cronologia scaricata.) Non usare il volume (puoi perdere i tick) Usa sempre il tempo.
 
omissamf:
Ciao eevviill, solo una curiosità: cosa intendevi con:
P.S. Non usare Time [0], usa Bars?
È possibile cambiare il coodice che ha postato GumRai?
è solo una mia curiosità, perché sto cercando di capire e studiare il linguaggio
.
Grazie, Max.

Nel mio codice Bars. Potete controllare.

Per rilevare una nuova barra usa solo Bars.

 
WHRoeder:
Non usare le barre, possono cambiare con un refresh (nuova cronologia scaricata.) Non usare il volume (puoi perdere i tick) Usa sempre il tempo.

E? I bar rimangono gli stessi?

Ti sbagli.

 
omissamf:
Il codice GumRai invece fa repainting e il segnale ogni volta che l' RSI attraversa i livelli 30/70.


Ti riferisci a questo esempio che ho postato?

   static datetime BarStart=0;
   static bool check=false;
   if(BarStart!=Time[0])
     {
      BarStart=Time[0];
      check=true;
     }
   if(check && TimeCurrent()>=Time[0]+3)
     {
      check=false;
      //Check Condition
     }

Non credo che questo causerà alcuna riverniciatura o segnali aggiuntivi

Deve essere il tuo codice. Forse hai messo il codice per controllare le condizioni e gli avvisi al di fuori del

   if(check && TimeCurrent()>=Time[0]+3)
     {
      check=false;
      //Check Condition
     }

blocco.

 
eevviill:

E? I bar rimangono gli stessi?

Vi sbagliate.

Se viene ricevuta una nuova storia, le barre cambiano. Tuttavia questo non indica all'EA che si è formata una nuova barra.

 
WHRoeder:

Se viene ricevuta una nuova storia, le barre cambiano. Tuttavia questo non indica all'EA che si è formata una nuova barra.



Se la storia del grafico viene aggiornata e il numero di barre aumenta, allora le barre non cambiano ????

 

Ho modificato gli ultimi 2 post. Per favore smettete di bisticciare, non si ottiene nulla.

Continuerò a usare Time[0] per rilevare una nuova barra perché non ho mai avuto problemi con questo.

Ad essere onesti, non so cosa succede quando Bars raggiunge il massimo nella storia, quindi non userò Bars. Se eevviil preferisce usare Bars, dipende da lui. WHRoeder è un collaboratore estremamente esperto e prezioso di questo forum e tutto ciò che dice non dovrebbe essere ignorato.