Skripte: ThirdPartyTicks - Seite 7

 
traveller00:

2. In der Funktion ToCustomSymbol wird nicht geprüft, ob das Symbol bereits existiert. Um ehrlich zu sein, habe ich nicht überprüft, was passieren wird, ich bin nicht ins Detail gegangen. Aber für mich selbst habe ich die Prüfung angedockt, so dass, wenn ich fortfahre, nicht wieder alle Dateien nach alten, bestehenden Symbolen durchsucht werden.

Das ist extra so gemacht. Das Archiv wird jeden Tag mit neuen Daten aktualisiert, d.h. auch wenn ein Symbol vorhanden ist, muss es wieder aufgefüllt werden.

Leider schaffe ich es noch nicht, das Auffüllen nicht von Grund auf zu machen. Ich habe noch nicht entschieden, wie ich es richtig machen soll, denn das Skript hat Filter usw. eingebaut.


Aber dieser Umstand bereitet keine besonderen Probleme, so dass diese Aufgabe auf der Prioritätenliste ganz hinten steht.

 
fxsaber:

gezielt eine Abhilfe geschaffen. Seitdem keine Bremsen.

Ich habe nicht bemerkt, warum es das Verzeichnis nicht mehr bei jedem Symbol analysieren kann. Vielleicht haben sie noch kein Update veröffentlicht. Aber wenn sich sonst niemand beschwert, es bei Ihnen funktioniert und ich es zum Laufen gebracht habe, dann ist das in Ordnung.

fxsaber:

Das ist absichtlich so gemacht. Das Archiv wird jeden Tag mit neuen Daten aktualisiert, d. h. selbst wenn ein Symbol bereits vorhanden ist, muss es wieder aufgefüllt werden.

Das hatte ich schon vermutet. Ich verstehe, was Sie meinen, ok.

 
traveller00:

Ich habe nicht verstanden, warum das Verzeichnis nicht bei jedem Zeichen neu analysiert werden kann.

Im Skript wird der Massenstart durch die Aufgabe

sinput string symbol = "AllSymbols"; // Symbol (NULL - aktuell, "AlleSymbole" - Alle)


Vielleicht haben Sie es anders gemacht, so dass es bei jedem Symbol überprüft wurde.

 
Ja, alles ist korrekt, AllSymbols ist gefüllt. Die Funktion CreateAllSymbols(false, iMinPips) wird aufgerufen; darin wird die Funktion ThirdPartyTicks[i].ToCustomSymbol(Sync, wobei Sync in den Skriptparametern auf true gesetzt ist. Und in der Update-Funktion wird this.FilesOffline.Refresh() für jedes Symbol aufgerufen, wodurch der gesamte Ordner analysiert wird.
 

Aus irgendeinem Grund habe ich einen Array-Überlauf.


Woran könnte das liegen?

 
Vasiliy Pushkaryov:

Aus irgendeinem Grund bekam ich einen Array-Überlauf.

Woran könnte das liegen?

Es war nicht genug Speicher vorhanden. In der Registerkarte Terminalprotokoll sollte ein Systemeintrag darüber vorhanden sein.

Um sofort zu verstehen, wenn so etwas passiert, schreiben Sie diese Zeile an den Anfang des Skripts.

#include <fxsaber\HistoryTicks\ArrayResize.mqh> // https://www.mql5.com/de/code/20298
 
fxsaber:

Es war nicht genug Speicher vorhanden. In der Registerkarte Terminalprotokoll sollte ein entsprechender Systemeintrag vorhanden sein.

Um sofort zu verstehen, wenn so etwas passiert, schreiben Sie diese Zeile an den Anfang des Skripts.

Richtig. Ich habe etwas Platz auf der Festplatte freigemacht und es hat funktioniert. Ich danke Ihnen.
 

Es schreibt einen Haufen Fehler.

Die Dunkelheit des Irrtums

 
BillionerClub:

Es schreibt einen Haufen Fehler.


Überprüfen Sie Ihre Website auf Sabotage und Viren, jemand ist ständig kauen Daten.

 
BillionerClub:

Es schreibt einen Haufen Fehler.

Leider kann ich den Code nicht aktualisieren, die KB runzelt die Stirn.