Bei einem Indikator trat ein Fehler bei der Division durch Null auf - Seite 7

 
Aleksey Vyazmikin:

Ich werde darüber nachdenken, danke. Aber das globale Problem ist ein anderes.... Das Problem ist, dass es nicht stabil ist.

Alternativ kann das Problem auch zu Beginn des Stundenbalkens beobachtet werden. Wenn der Balken zum ersten Mal geöffnet wird, gibt es nur einen Minutenwert darin.start_index wäre gleichstop_index

 
Sergey Savinkin:

Alternativ könnte das Problem auch zu Beginn eines stündlichen Taktes beobachtet werden. Wenn der Balken gerade geöffnet wurde, gibt es nur einen Minutenwert darin.start_index wäre gleichstop_index

Nein, es passiert zufällig, zu verschiedenen Zeitpunkten. Das Problem sollte nicht mit dem Code zusammenhängen, denn er hat lange Zeit auf verschiedenen Geräten und in verschiedenen Modi korrekt funktioniert. Ich denke, es ist eine eingebaute Funktion, die nach einem anderen Update nicht mehr funktioniert...

 

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);

Und wann wird dieser Zustand voraussichtlich nicht eintreten, in welchem Fall?

 
Aleksey Vyazmikin:

Und wann wird dieser Zustand voraussichtlich nicht eintreten, in welchem Fall?

sonst

Zeit drucken oder Zeitstempel in global schreiben

hinterlässt eine Spur, so finden Sie das Problem heraus
 

Ist es jemandem gelungen, überhaupt einen Divisionsfehler von Null zu erhalten? Drucken?

Ich habe gerade 1 Diagramm gestartet, eine Stunde gewartet, kein Fehler, das Profil in ein Arbeitsprofil geändert und die Fehler begannen. Deshalb habe ich mich gefragt, ob die Sache nicht tiefer liegt.

 
Renat Akhtyamov:

sonst

Zeit ausdrucken oder Zeitstempel in Global schreiben

eine Spur hinterlässt, werden Sie das Problem finden.

Der Trace ist zwar vorhanden, aber was nützt er - er wird weder bei der Profilerstellung noch im Tester reproduziert.

 
Aleksey Vyazmikin:

Ist es jemandem gelungen, überhaupt einen Divisionsfehler von Null zu erhalten? Drucken?

Ich habe gerade 1 Diagramm gestartet, eine Stunde gewartet, kein Fehler, dann das Profil auf ein funktionierendes Profil geändert und die Fehler begannen. Deshalb habe ich mich gefragt, ob die Sache noch tiefer liegt?

Vielleicht muss ich die Vorlage von einem funktionierenden Diagramm erneut speichern?

friert der Wind nicht ein, bröckelt die Festplatte?

 
Renat Akhtyamov:

Vielleicht müssen Sie die Vorlage aus der Arbeitskarte erneut speichern?

Der Wind friert nicht ein, ist die Festplatte kaputt?

Wozu soll die Vorlage gespeichert werden? Als ich das Profil änderte, wurden Dutzende von verschiedenen Indikatoren verarbeitet. An diesem Punkt hängt sich das Terminal auf, kehrt dann aber in den Normalzustand zurück.

Ich habe hier kein Problem, es ist kein Problem mit der harten SSD. Ich habe ein Problem mit MT5 in Bezug auf die Verarbeitung von Streaming-Indikatoren vorgeschlagen.

 

Angenommen, wir haben

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

Wir wissen, dassstart_time2018.04.28 23:00sein sollte.

Es stellt sich also heraus, dass die Zeit hier falsch ist?

datetime start_time=rates[i].time;