Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1340
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
Und die Liste der 22 Instrumente funktioniert einwandfrei. Es dauert etwa 5 Minuten. Es ist allerdings seltsam. Es verbringt die meiste Zeit damit, Handles in das Array zu schreiben. Profiling-Ergebnisse
Frage: Warum ist es so zeitaufwendig, 5 Werte von einem Handle in ein Array zu kopieren, während das Kopieren 132 Mal für 22 Instrumente in der Liste erfolgt, d.h. für 273 Instrumente müsste ich 1632 Mal kopieren, und das mit dem Laden der Historie für alle Instrumente auf der Festplatte.
über die Erstellung und Löschung von Handles,
es funktioniert, bin ich in den richtigen Weg interessiert, ich hoffe, die Entwickler werden mir sagen.
Das ist genau das, was ich tue, sehen Sie sich den Code oben, es gibt auch Fragen))
Es stellte sich also heraus, dass das Drehbuch
funktioniert einwandfrei, und die Abarbeitung der Liste von 22 Werkzeugen dauert etwa 5 Minuten. Die meiste Zeit verbringt das Programm jedoch mit dem Schreiben des Handles in das Array. Profiling-Ergebnis
Frage: Warum ist es so zeitaufwendig, 5 Werte von einem Handle in ein Array zu kopieren, während das Kopieren für 22 Werkzeuge aus der Liste 132 Mal durchgeführt wird, d.h. 273 Werkzeuge müssten 1632 Mal kopiert werden, noch dazu mit History Loading für alle Werkzeuge auf meiner Festplatte.
Wenn ich mich nicht täusche.
Es scheint normal zu funktionieren, wenn die Angebote heruntergeladen wurden, wird es nicht langsamer. Der erste Start ist sehr lang, offenbar lädt er die Zitate herunter.
Der Zweck des Skripts ist es, jedes Instrument von Market Watch auf Zeitrahmen von 1min bis 4H durchzugehen
Wenn ich so etwas machen würde, würde ich ein Array erstellen und vergangene Daten darin speichern und die aktuellen Daten aktualisieren. Dies würde schwere Zyklen und CopyBuffer vermeiden. Alles würde fliegen.
Wenn ich mich nicht täusche.
Es scheint gut zu funktionieren, wenn die Angebote heruntergeladen werden, wird es nicht langsamer. Der erste Start dauert sehr lange, ich vermute, er lädt die Zitate herunter.
Ich frage mich nur, warum ich die Handles nicht lösche, bevor ich das Programm beende, oder ob sie automatisch gelöscht werden, nachdem das Programm beendet ist, aber der Speicher wird laut Taskmanager nicht freigegeben.
Wenn ich so etwas machen würde, würde ich ein Array erstellen und vergangene Daten darin speichern und die aktuellen Daten aktualisieren. Dies würde schwere Schleifen und CopyBuffer vermeiden. Alles würde fliegen.
Danke, ich werde auch darüber nachdenken)
Danke für Ihr Feedback und Ihre Version, ich werde damit experimentieren)! Ich verstehe nur nicht, warum Sie die Handles nicht löschen, bevor Sie das Programm beenden? Oder werden sie am Ende des Programms automatisch gelöscht, obwohl der Arbeitsspeicher nicht freigegeben wird, dem Taskmanager nach zu urteilen.
Ich habe irgendwo gelesen, dass Indikator-Handles nach einer gewissen Zeitspanne nach Beendigung des Skripts automatisch gelöscht werden. Aber es ist nicht genau.
Hallo
das Terminal verfügt über ein Werkzeug zur linearen Regression
es gibt Skripte, die denselben Kanal mit grafischen Objekten zeichnen
Aber nur die Mittellinie wird richtig gezeichnet, die Abweichungslinien werden in einem falschen Abstand von der Mittellinie gezeichnet
Wenn Sie die richtige Formel für die Berechnung der Abweichung kennen, sollte sie wie im Terminal aussehen
oder vielleicht gibt es eine fertige Lösung
DANKESCHÖN
Hallo!
Können Sie mir bitte sagen, warum die OrderSend-Funktion für Kryptowährungen beim Testen mit AMarkets Broker nicht funktioniert. Ich konnte in den Vorschriften kein Verbot des Handels mit Kryptowährungen finden. Oder habe ich vielleicht Fehler in meinem Code? GetLastError gibt Fehler 4756