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

 
Aleksey Vyazmikin:
In generale, il profiling sui dati storici non mostra errori.

In generale, quando limit=0 - stampa al log, in stampa - tutti i componenti da cui è formata la variabile limite.

 
Alexey Kozitsyn:

In generale, quando limit=0 - stampa al log, in stampa - tutti i componenti da cui è formata la variabile limite.

Oggi c'è qualcosa che mi incasina.

codice

         if (limit==0)
         {
         limit=2;
         Print("start_time - ",TimeToString(start_time,TIME_DATE|TIME_MINUTES)," stop_time - ",TimeToString(stop_time,TIME_DATE|TIME_MINUTES));
         Print("start_index=",start_index, " stop_index=",stop_index);
         }


nella stampante.

FO      0       12:14:11.719    IndDrafter (BR Splice,M15)      start_time - 2018.07.04 10:00 stop_time - 2018.07.05 00:00
KL      0       12:14:12.072    IndDrafter (BR Splice,M15)      start_time - 2018.07.04 10:00 stop_time - 2018.07.05 00:00
QQ      0       12:14:12.072    IndDrafter (BR Splice,M15)      start_time - 2018.07.04 10:00 stop_time - 2018.07.05 00:00
GF      0       12:14:12.872    IndDrafter (BR Splice,M15)      start_time - 2018.07.04 10:00 stop_time - 2018.07.05 00:00

E dov'è la stampa constart_index?

 
Aleksey Vyazmikin:

Oggi ho un po' di problemi.

codice


nella stampante.

Dov'è la stampa constart_index?

O è nei log, o la stampa non esce affatto da questa parte del codice.

 
Sergey Savinkin:

O nei log, o le stampe non derivano affatto da quella parte di codice.

Così ho aperto il file di log e c'è solo una linea. Stampe da qui - l'ho scritto io stesso, e se commentate la prima stampa, non si stampa più.

 
Aleksey Vyazmikin:

Oggi ho un po' di problemi.

codice


nella stampante.

Dov'è la stampa con lostart_index?

 
Vladimir Karputov:

Che cosa ha a che fare questo con l'ottimizzazione, il log dal terminale ...\MQL5\Logs

Ho cancellato il registro per oggi - sto aspettando i nuovi dati. Forse quella stampa era davvero con il codice sbagliato.
 
Aleksey Vyazmikin:

Oggi ho un po' di problemi.

codice


nella stampante.

Dov'è la stampante con lostart_index?

Allora rimangono 2 versioni:

1. Poltergeist, magia nera, macchinazioni di nemici stregoni.

2. questa è la versione sbagliata dell'indicatore. Forse stai scrivendo in una copia e c'è un indicatore diverso sul grafico.

 
Aleksey Vyazmikin:

Cosa ha a che fare questo con l'ottimizzazione, il log dal terminale ...\MQL5\Logs

Se la mia memoria non mi inganna, il terminale: Toolbox - Experts tab soffoca con la forza i troppo zelanti che MOLTO spesso sparano stampe al diario.

 
Sergey Savinkin:

Questo lascia due versioni:

1. Poltergeist, magia nera, macchinazioni di stregoni.

2. questa è la versione sbagliata dell'indicatore. Forse stai scrivendo in una copia e c'è un altro indicatore sul grafico.

La prima opzione sembra più probabile, soprattutto se si considera che può essere la causa della seconda... :)

 

Cestino totale - ha ottenuto di nuovo l'errore di divisione per zero

2018.07.04 13:29:05.377 IndDrafter (Si-9.18,M15)        zero divide in 'IndDrafter.mq5' (479,56)

Codice da ME come immagine - forse sono cieco ma non capisco cosa sta succedendo

L'errore è ancora sulla stessa linea.

double d1=(delta_price_high-center_line_point)/(limit/2);
Il file è lo stesso, poiché la linea di errore si è spostata a causa dell'aggiunta di codice per la stampa.
Motivazione: