Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 622
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Un'altra domanda, come faccio a controllare l'integrità della storia durante l'inizializzazione in MT4? Ho il sospetto che al momento dell'inizializzazione la storia venga scambiata, il che influisce sul precalcolo...
Controlla il numero di barre rates_total. Se rates_total > prev_calculated+1 - significa che più di 1 barra è stata scambiata e quindi la storia è stata scambiata.
E la frequenza di controllo è di una volta al secondo, e dopo una lunga pausa continua l'inizializzazione, giusto?
In generale, come mi è stato detto recentemente in SD, negli indicatori è meglio fare a meno del timer.
Basta aggiungere la condizione: if( prev_calculated <= 0 || rates_total > prev_calculated+1 ) come condizione di primo avvio e ricalcolo completo dell'indicatore. Se lo fate in OnCalculate(), non ci saranno problemi.
In generale, come mi è stato detto recentemente in SD, è meglio fare a meno del timer negli indicatori.
Basta aggiungere la condizione: if( prev_calculated <= 0 || rates_total > prev_calculated+1 ) come condizione di primo avvio e ricalcolo completo dell'indicatore. Se lo fate in OnCalculate(), non ci saranno problemi.
Voglio avere un calcolo corretto della classe del tipo di indicatore nel mio Expert Advisor.
Se permettiamo 10 000 barre per grafico, e le abbiamo, allora Bars non restituirà più di 10000 anche se c'è una nuova barra. Allora come faccio a sapere se c'è una nuova barra quando viene caricata la cronologia?
Bene, ho bisogno che la classe del tipo di indicatore sia calcolata correttamente nel mio EA.
Quindi sono confuso, se 10000 barre per grafico sono permesse e lo sono, allora Bars non restituirà più di 10000 anche se appaiono nuove barre. Allora come faccio a sapere se c'è una nuova barra quando si carica la storia?
Perché no? Sì, lo farà. E Bars() e rates_total aumenteranno. Controlla il numero in OnCalculate().
Il numero di barre impostato nel terminale non influisce sul numero di barre del tester (un po' meno di 100000).
Perché no? Lo farà. Sia Bars() che rates_total aumenteranno. Controlla il numero in OnCalculate().
Il numero di barre impostato nel terminale non ha influenzato il numero di barre nel tester (poco meno di 100000).