Un errore di divisione per zero è apparso in un indicatore - pagina 7

 
Aleksey Vyazmikin:

Potrei pensarci, grazie. Ma il problema globale è un'altra cosa.... Il problema è che non è stabile.

In alternativa, il problema potrebbe essere osservato all'inizio della barra delle ore. Quando la barra si è appena aperta, c'è solo un valore del minuto al suo interno.start_index sarebbe uguale astop_index

 
Sergey Savinkin:

In alternativa, il problema potrebbe essere osservato all'inizio di una barra oraria. Quando la barra si è appena aperta, c'è solo un valore del minuto al suo interno.start_index sarebbe uguale astop_index

No, succede casualmente, in momenti diversi. Il problema non dovrebbe essere legato al codice, ha funzionato correttamente per molto tempo su diversi strumenti e in diverse modalità. Penso che sia qualche funzione integrata che si è rotta dopo un altro aggiornamento...

 

if(PeriodSeconds(_Period)!=0)limit=(int)(stop_time-start_time)/PeriodSeconds(_Period);

 
Renat Akhtyamov:

if(PeriodSeconds(_Period)!=0)limit=(int)(stop_time-start_time)/PeriodSeconds(_Period);

E quando questa condizione non dovrebbe apparire, in quale caso?

 
Aleksey Vyazmikin:

E quando questa condizione non dovrebbe apparire, in quale caso?

else

stampa il tempo o scrive il timestamp nel globale

lascerà una traccia, è lì che scoprirete il problema
 

Qualcuno è riuscito a ottenere un errore di divisione pari a zero? Stampa?

Ho appena iniziato 1 grafico, ho aspettato un'ora, nessun errore, ho cambiato il profilo in un profilo di lavoro e sono iniziati gli errori. Ecco perché mi sono chiesto se non è più profondo di così.

 
Renat Akhtyamov:

else

stampare il tempo o scrivere gli indicatori di tempo nel globale

lascerà una traccia, è lì che troverete il problema.

La traccia è comunque lì, ma a cosa serve - non viene riprodotta nel profiling o nel tester.

 
Aleksey Vyazmikin:

Qualcuno è riuscito a ottenere un errore di divisione pari a zero? Stampa?

Ho appena iniziato 1 grafico, ho aspettato un'ora, nessun errore, ho cambiato il profilo in un profilo di lavoro e sono iniziati gli errori. Ecco perché mi sono chiesto se la questione non sia ancora più profonda.

Forse devo salvare di nuovo il modello da un grafico funzionante?

il vento non gela, il disco rigido si sta sgretolando?

 
Renat Akhtyamov:

forse hai bisogno di salvare di nuovo il modello dal grafico di lavoro?

Il vento non si blocca, il disco rigido si sta sgretolando?

A cosa serve salvare il modello? Quando ho cambiato il profilo c'erano dozzine di indicatori diversi che venivano elaborati. A questo punto il terminale si blocca, ma poi torna normale.

Non ho un problema qui, non è un problema con l'hard SSD. Ho suggerito un problema con MT5 in termini di elaborazione di indicatori in streaming.

 

Supponiamo di avere

2018.07.04 22:46:13.566 IndDrafter_Test (Si-9.18,M1)    i=638 start_time - 2018.04.28 23:38 stop_time - 2018.04.28 23:38
2018.07.04 22:46:13.566 IndDrafter_Test (Si-9.18,M1)    start_index=26430 stop_index=26430
2018.07.04 22:46:13.566 IndDrafter_Test (Si-9.18,M1)    TimeFrames=3600

Sappiamo chestart_time dovrebbe essere2018.04.28 23:00

Quindi si scopre che il tempo è sbagliato qui?

datetime start_time=rates[i].time;