![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
schrieb einen EA, führte eine Optimierung durch, siehe.... und aus... Ich habe den Eindruck, dass https://www.mql5.com/ru/docs/series Copy... arbeiten langsam.
Ich optimiere schnell. Ich habe keine Beschwerden. In letzter Zeit beginnt die Optimierung jedoch nicht sofort, sondern bleibt stehen (man hört, dass die Festplatte hart arbeitet). Ich muss ständig von einem Access Point zum anderen springen. Erst dann beginnt die Optimierung zu funktionieren.
und aus... Ich habe den Eindruck, dasshttps://www.mql5.com/ru/docs/seriesCopy... arbeitet langsam.
Es ist nicht ganz klar, was Sie damit meinen.
Erklären Sie das genauer.
Ich optimiere schnell. Ich habe keine Beschwerden. In letzter Zeit beginnt die Optimierung jedoch nicht sofort, sondern bleibt stehen (man hört, dass die Festplatte hart arbeitet). Ich muss ständig von einem Access Point zum anderen springen. Erst dann beginnt die Optimierung zu funktionieren.
Würden Sie die Situation, wenn möglich, genauer beschreiben? Wie lange müssen Sie warten? Was wird (wenn überhaupt) in das Logbuch geschrieben?
Ich wählte ein paar Parameter aus, klickte auf den Test... Am Morgen zählte ich die Anzahl der Läufe und wie viele noch übrig waren... berechnete, dass es noch 50 Tage bis zum Ende der Optimierung waren... mein Computer hat 4 Kerne + 2 Kernagenten... Ich brauche diese Optimierung nicht, also habe ich sie ausgeschaltet...
Es ist nicht ganz klar, was Sie meinen.
Erklären Sie das genauer.
Zum Beispiel:
Wenn Sie die letzten 50000 Werte abfragen und die Zeit zum Lesen aus der Datei messen, beträgt der Unterschied ~0%~30%. 50000 Werte und messen Sie die Zeit, um in eine Datei zu schreiben, dann messen Sie die Zeit, um aus der Datei zu lesen, dann ist der Unterschied ~0%~30% zugunsten der ersteren.
Hier ist ein Beispiel:
dann beträgt der Unterschied ~0%~30% zugunsten der ersteren.
Es liest also schneller aus der Datei?
Warum einen Wert auf einmal kopieren, wenn man 50.000 auf einmal kopieren kann (wenn man so viele hat)?
Es liest also schneller aus der Datei?
Warum einen Wert auf einmal kopieren, wenn man 50.000 auf einmal kopieren kann (wenn man so viele hat)?
Aus der Datei ist langsamer. Warum also ein solcher Unterschied zwischen "sofort 50000" und dem letzten Aufruf?
Warum gibt es also einen solchen Unterschied zwischen "sofort 50.000" und dem letzten Aufruf?
Die Arithmetik ist einfach (die Zahlen sind ungefähr, aber die Größenordnung ist wichtig).
Zugriff auf ein Array-Element ~ 5 CPU-Zyklen.
Der Funktionsaufruf dauert ~100 Taktzyklen.
Dies macht den Unterschied aus, dass ein einziger Funktionsaufruf zum Abrufen der benötigten Datenmenge in Bezug auf die Ausführungsgeschwindigkeit günstiger ist.
Die Diskussion scheint sich mit den Besonderheiten des Codes eines bestimmten EA zu befassen. Aber ich habe festgestellt, dass fast die gesamte Zeit für Vorbereitungsarbeiten aufgewendet wird (mehr als 90 %), egal welcher EA optimiert wird. Und so geht es bei jedem Durchlauf (Durchlauf im Protokoll) mit neuen Eingabeparametern, die optimiert werden. Egal, wie gut Sie Ihren Code optimieren, Sie werden nur ein paar Prozent mehr Leistung erhalten.
Analexvd: Bitte lesen Sie den ersten und dritten Beitrag dieses Threads: Ich habe sie ausführlich mit Beispielen und Protokollen beschrieben.
Könnte ein Prüfer die Vorarbeiten nur einmal während der Optimierung durchführen und dann den Expert Advisor anhand der Eingabedaten berechnen, wäre die Optimierungszeit mindestens um eine Größenordnung kürzer. Dann könnten wir über den Code des Expert Advisors selbst sprechen.