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

 
Nikolai Semko:

Dopo MT5 la sensazione di MT4 è semplicemente terribile.

Nikolay, c'è una domanda sull'operazione OnCalculate in MT5.

Quando si avvia l'indicatore, OnCalculate è chiamato una volta dopo OnInit? O l'indicatore aspetta il tick?

 
MakarFX:

Puoi spiegare in un linguaggio semplice qual è la differenza tra queste funzioni?

Visivamente non sembra esserci alcuna differenza. Eccetto l'incomprensibile: || Order_Type ==-1
 
MakarFX:

Potresti spiegare in un linguaggio semplice qual è la differenza tra queste funzioni?

Se chiamiamo la prima funzione con il parametro -1, essa restituirà il numero di tutti gli ordini nel terminale dal simbolo corrente (indipendentemente dal loro tipo).

La seconda funzione restituisce solo il numero di ordini il cui tipo le viene passato come parametro.

 
MakarFX:

Per favore, ditemi in un linguaggio semplice qual è la differenza tra queste funzioni?

Niente, ma userei la seconda, ma con inserimento:||Order_Type==-1

Aleksei Stepanenko:
Non sembra esserci alcuna differenza a livello visivo. Eccetto incomprensibile: || Order_Type ==-1.

Se impostiamo -1 nel parametro, prenderemo in considerazione Buy e Sell, il che è abbastanza logico perché la funzione sia universale

 
Vitaly Muzichenko:

Se impostiamo -1 nel parametro, prendiamo in considerazione Buy e Sell, il che è abbastanza logico per la versatilità della funzione

Ahhhh, capisco, grazie.

 
Vitaly Muzichenko:

Nessuna, ma userei la seconda, ma con inserimento:||Order_Type==-1

Se impostiamo -1 nel parametro, prendiamo in considerazione Buy e Sell, il che ha senso per la versatilità della funzione

Grazie, ho capito!

 
Aleksei Stepanenko:

Nikolay, c'è una domanda su OnCalculate in MT5.

Quando l'indicatore parte, OnCalculate viene chiamato una volta dopo OnInit? O l'indicatore aspetta il tick?

Dopo che OnInit è stato chiamato una volta, dopo aver aspettato il tick. Altrimenti il primo ciclo principale di generazione dell'indicatore non avverrebbe in uscita, quando prevCalculated=0.
Potete sempre controllare la sequenza delle chiamate tramite stampa.
Stampa("1");
Stampa("2");
...
 
Nikolai Semko:
Dopo OnInit viene chiamato una volta, dopo di che aspetta il tick.
...

Grazie, ho uno strano indicatore, che funziona su un quattro senza problemi. Sulle coppie dove non c'è un segno di spunta non ha disegnato.

Anche se, stampa OnCalculate all'inizio. Forse il grafico deve essere aggiornato? ChartRedraw? Perché disegna solo quando arriva una zecca.
File:
Mike.mq5  17 kb
 
Aleksei Stepanenko:

Grazie, il mio indicatore, che funziona su quattro senza problemi, si è comportato stranamente. Sulle coppie dove non c'è un segno di spunta non ha disegnato.

Consiglio di usare attivamente il debug regolare. Se non sapete come lavorare con esso, dovete imparare urgentemente, non c'è niente di difficile. È un modo più veloce per trovare errori e risposte alle domande.
 
Nikolai Semko:
Vi suggerisco di usare attivamente il debug regolare.

Sai, proprio come tu hai una sensazione terribile su MT4, sto cercando di usare MT5 con una sensazione di rifiuto interno, e sta bollendo dentro , quindi non c'è tempo per il debug

Motivazione: