Archivio delle versioni MT. - pagina 5

 
Roman:

Questa non è una stampella, ma una pratica raccomandata dagli sviluppatori.
Ho trovato questa funzione nella descrizione del ciclo while

Mi è venuto in mente un pensiero: se questa funzione termina correttamente l'esecuzione del programma, perché non usarla per TesterStop()?
È un peccato che non funzioni per TesterStop(), lo sapremo ora.
Ma è giusto chiedere agli sviluppatori se la funzioneIsStopped() deve funzionare per la funzione TesterStop()?
Forse è un bug?

Ma la cosa principale è che abbiamo trovato una soluzione al problema.

Non ho detto che non funziona. Ho detto che TesterStop() richiede che il test sia già in esecuzione da qualche tempo. )))

Forse dopo questo funzionerà anche...
 
Сергей Таболин:

Non ho detto che non funziona. Ho detto che TesterStop() richiede che il test sia già in esecuzione da qualche tempo. )))

Forse dopo questo funzionerà anche...

Ora ce l'ho.

 
Сергей Таболин:

Capisco tutto e non ho bisogno di stampelle. E ho dovuto cercare una stampella qui leggere per cosa.

È possibile. Ma non ricordo che nessuno si sia lamentato di questo.

Posso avere una spiegazione?

//+------------------------------------------------------------------+
double OnTester()
{
   if(tester_stop) return(нужное вам значение);

   остальной код
}

Qual è il resto del codice? Cosa sta eseguendo questo codice?

 
Alexey Viktorov:

Posso spiegare?

Il resto del codice, cos'è? Cosa viene eseguito in questo codice?

Personalmente, ho un calcolo della stabilità di crescita del bilancio in corso. ))) Come ho detto prima, ho intenzione di aprire una discussione su questo argomento.

E in generale, tutto può essere contato lì.

 
Roman:

Questa non è una stampella, ma una pratica raccomandata dagli sviluppatori.
Ho trovato questa funzione nella descrizione del ciclo while

Ecco perché ho avuto un'idea: se questa funzione controllail fatto della terminazione forzata del programma, perché non usarla per TesterStop().
È un peccato che non funzioni per TesterStop(), lo sapremo ora.
Ma è giusto chiedere agli sviluppatori se la funzioneIsStopped() deve funzionare per la funzione TesterStop()?
Forse è un bug?

Ma soprattutto, è stata trovata una soluzione al problema.

Questa funzione è destinata a terminare tali cicli. La terminazione forzata di un programma è la chiusura di una finestra di Expert Advisor o la chiusura del terminale stesso. Se iniziate un ciclo infinito senza controllare la funzione IsStopped(), il ciclo che rimane in memoria continuerà a funzionare. Il valore restituito da IsStopped() permette di interrompere il ciclo quando il terminale è chiuso. In altri casi è inutile, per quanto ho capito.

 
Сергей Таболин:

Personalmente, ho il calcolo della stabilità della crescita del bilancio in corso. ))) Come ho detto prima, ho intenzione di aprire una discussione su questo argomento.

E in generale, lì si può calcolare qualsiasi cosa.

Ma il valore restituito da OnTester viene elaborato da qualche parte, vero?

Si può leggere qualsiasi cosa, ma come e dove usare il valore calcolato è un'altra questione.

 
Alexey Viktorov:

Ma il valore restituito da OnTester viene elaborato da qualche parte, vero?

Si può leggere qualsiasi cosa, ma come e dove usare il valore calcolato è un'altra questione.

È usato come risultato dell'ottimizzazione...


 
Сергей Таболин:

Questo è usato come risultato dell'ottimizzazione...


Questo non è un uso, è una visualizzazione del risultato dell'ottimizzazione.

 
Alexey Viktorov:

Non è l'uso, è la visualizzazione del risultato dell'ottimizzazione.

OnTester() calcola questo risultato. E l'uso... Lo uso per valutare l'ottimizzazione...

 
Сергей Таболин:

OnTester() calcola questo risultato. E l'uso... Lo uso per valutare l'ottimizzazione...

Ma a giudicare da questo pezzo di codice

//+------------------------------------------------------------------+
double OnTester()
{
   if(tester_stop) return(нужное вам значение);

   остальной код
}
il valore restituito da questa funzione deve essere elaborato in qualche modo. A cosa serve restituire "meno molti nove" se non c'è alcuna reazione ad esso nel codice successivo?
Motivazione: