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
Meine Damen und Herren!
Bitte beantworten Sie eine Frage.
Wie und wo im Code sollten Sie externe Variablen benennen?
Aus dem obigen Beispiel geht das nicht eindeutig hervor.
Wie kann ich erreichen, dass externe Variablen in den Einstellungen der Anwendung nicht als AT_1...AT_32 entpersonalisiert werden, weil man sich nicht merken kann, wofür die einzelnen Zahlen stehen?
Die Werte der externen Variablen für Strategien werden (ebenso wie die Werte der externen Variablen) in den Einstellungen des Expert Advisors festgelegt.
Sie können die Namen der externen Variablen im Expert Advisor nicht ändern, da sie im Code des Expert Advisors AG_exp.ex4 geschrieben werden.
Die Namen der externen Variablen aus dem Expert Advisor werden über das Array Instrument an die angehängte Datei der Strategie übergeben.
Die Namen der lokalen Variablen in der Strategie, die den externen Variablen im Expert Advisor entsprechen, können in der Strategie geändert werden.
Dies ist in diesem Beispiel der Fall:
Sie können Ihre eigenen Namen angeben, wenn Sie dies wünschen.
Anstelle von AT[i] können Sie beispielsweise Alfa, Beta usw. angeben.
Array Instrument [][][]: http://autograf.dp.ua/Pages/2/26/267/2676.htm
Strategien in AG_AT(): http://autograf.dp.ua/Pages/2/26/267/26711/26711_1.htm
Strategien zur Befestigung: http://autograf.dp.ua/Pages/2/26/267/26711/26711_2.htm
Beispiele für Kodierungsstrategien:
http://autograf.dp.ua/Pages/2/26/267/26712/26712_1.htm
и http://autograf.dp.ua/Pages/2/26/267/26712/26712_2.htm
Jetzt verstehe ich. Ohne jegliche Programmiererfahrung verstehe ich das nicht auf Anhieb. Ich danke Ihnen.
Если программно, то можно воспользоваться функцией ObjectDelete() или ObjectsDeleteAll().
Und wo sollte ich sie in meiner Strategie unterbringen? Oder werden die Objekte jedes Mal, wenn die benutzerdefinierte Funktion aufgerufen wird, erstellt und gelöscht?
Jetzt verstehe ich. Ohne jegliche Programmiererfahrung verstehe ich das nicht auf Anhieb. Ich danke Ihnen.
Und wo sollte ich sie in meiner Strategie unterbringen? Oder werden die Objekte bei jedem Aufruf der Benutzerfunktion erstellt und gelöscht?
Sie muss nicht in einer Benutzerfunktion oder in einer Strategie vorgeschrieben sein.
Erstellen Sie ein einfaches separates Skript. Nachdem Sie die Strategie ausgeschaltet haben, werfen Sie sie ins Fenster, dann werden alle unnötigen Dinge gelöscht.
(in AG 5 werden wir eine Art Deinit in der Strategie vornehmen müssen; aber die Lösung wird von den Möglichkeiten von MQL5 abhängen)
Danke für den guten Rat. Nur du überschätzt mich. Ich habe mich noch nicht mit Skripten beschäftigt, aber ich werde in diese Richtung gehen. Wenn möglich, geben Sie mir bitte einen Link zu einem Analogon.
Ich habe mich bisher nur mit dem Indikator vertraut gemacht.
Ich habe TD_Points&Line_mgtd1.1.mq4 von Vladislav Goshkov (VG) als Analogie genommen, log.mq4 Copyright © 2006, komposter zur Berichterstellung hinzugefügt und mehr als 2 000 Zeilen meines Indikators erhalten.
Ich habe seinen Plan gemacht. Sie umfasst etwa 500 Zeilen. Ich werde es vielleicht zerschneiden, aber für den Moment ist es in Ordnung.
Nach Symbol
// --- // ---
sind die ausgeschnittenen Stellen.
Im Moment habe ich die Struktur im Kopf, ich möchte also die gewünschte Funktionalität erreichen. Dann werden wir alles nach den Regeln durchkämmen (die Kosten der Qualität sind geometrisch progressiv).
Nun, es gibt keine Zeile 521 im SRC: "Text ist größer als erlaubt". Wir müssen die Datei anhängen
In dieser Phase müssen Sie sich mit den speziellen Funktionen und Anwendungsarten vertraut machen.
Am besten nehmen Sie das MQL4-Lehrbuch zur Hand und lesen es von Anfang an, eins nach dem anderen. Wenn Sie Fragen haben, stellen Sie sie, ich werde versuchen, sie zu beantworten.
In dieser Phase müssen Sie sich mit den speziellen Funktionen und Anwendungsarten vertraut machen.
Am besten nehmen Sie das MQL4-Lehrbuch zur Hand und lesen es von Anfang an, eins nach dem anderen. Wenn Sie Fragen haben, stellen Sie sie, ich werde versuchen, sie zu beantworten.
Ihr Handbuch ist mein Nachschlagewerk. Ich habe es heruntergeladen und ausgedruckt und verwende es ständig.
Es entstehen Fragen, wenn ich nicht verstehe, was ich lese, oder wenn bestimmte Themen nicht behandelt werden.
Es gibt zwei Beispiele für das Schreiben von Daten in eine externe Datei oder das Lesen aus einer Nachrichtendatei, und dies ist ein Aufruf der Funktion Start(). Mehr als einen Monat lang habe ich herumprobiert, bis Andrey Khatimlianskii (Komposter) ein Beispiel gefunden hat, das genau das macht, was ich brauche. Nämlich: init() - Bildung des Tabellenkopfes des Berichts (ca. 30 Spalten), start() - Bildung der Zeile mit den Parametern für jede Transaktion der Sitzung, deinit() - Bildung des Ergebnisses der Sitzung. Ich habe drei Arten von Berichten erstellt (Tabelle mit Parametern für jede Transaktion, Spalte mit Sitzungssummen und Tabelle mit Sitzungssummen) und kann sie in verschiedenen Konfigurationen für die Weiterverarbeitung in Excel verwenden. Übrigens , in deinit() ObjectsDeleteAll(). Aber das war später, aber ich hatte von Anfang an einen Haufen von Diagrammen gemacht, damit ich alles im Tester und im wirklichen Leben sehen und analysieren konnte. Es ist sehr hilfreich bei der Programmierung, denn MQL-4 hat keinen Debugger, und auf diese Weise ist es möglich, auf dem Chart zu sehen, welche Linien (Eröffnungs- und Schließungsbedingungen, Ziele, Handelslinien) das Programm konstruiert und wie es das tut. Daher ist es notwendig, den Expert Advisor anzuschließen, um die Möglichkeit des nicht-virtuellen Handels zu erhalten, sowie die Möglichkeit, die Testergebnisdaten mit der Möglichkeit der automatischen Optimierung zu nutzen. Und das alles, ohne die bisherige Funktionalität des Indikators zu verlieren.
Leider, 495 Seiten des Tutorials, 180 Seiten des AutoGraf-4-Handbuchs, 370 Seiten MetaEditor, MT-Hilfe, ist es unmöglich, alles zu zeigen, und das Leben ist nicht genug, um das Forum zu lesen. Aber das ist nur zum Spaß.
Auf habe ich ein Code-Schema von Strategie-Funktionen (basierend auf Indikator-Algorithmus) gemacht, und ich bin nicht sicher, wo und wie man Skript für ObjectsDeleteAll()setzen ? >> Bitte sehen Sie sich das hier an:
Strategie-Funktionscode-Diagramm (basierend auf dem Indikator-Algorithmus)
Aber genau Ich habe eine Strategie Funktion Code-Schema (basierend auf Indikator-Algorithmus) und ich weiß nicht, wo und wie man Skript für ObjectsDeleteAll()einfügen ? Habe ich die Handelsfunktionen richtig eingegeben (sie sind mit "zzzzzzzz" hervorgehoben)? Bitte sehen Sie sich das Material an:
Ich glaube, Sie sind etwas voreilig.
Beim Programmieren kann man nicht nach Gefühl vorgehen.
Sie dürfen in Ihrem eigenen Code nichts verwenden, was ein Programmierer nicht ganz oder gar nicht versteht.
Auf diese Weise wird nichts erledigt.
Die Programmierung erfordert, vielleicht mehr als jede andere Tätigkeit, in ihrem Wesen völlige Klarheit und vollständige Selbstdarstellung.
Beginnen Sie mit dem Schreiben von elementarem Code. Gehen Sie erst dann zu komplexeren Aufgaben über, wenn Sie jeden Buchstaben Ihres Codes vollständig erklärt haben.
--
Im Lehrbuch finden Sie Beispiele für einfache und einfache Expert Advisors.
In der Einführung in die Programmierung wurde bereits eine Klassifizierung der Anwendungsprogramme vorgenommen (Merkmale und Unterschiede zwischen Expert Advisors, Skripten und Indikatoren).
Ein Skript kann nicht in einen Expert Advisor "eingesteckt" werden. Dies ist ein separates, unabhängiges Programm.
Auf den ersten Blick kann ich sagen, dass Ihr Code schlecht formatiert ist.
Außerdem könnten die meisten Blöcke als Funktionen gestaltet werden. Das wäre klarer (sonst können Sie Ihren eigenen Code in ein paar Monaten nicht mehr lesen)
Sie haben völlig Recht. Ich stimme mit Ihnen in allen Punkten überein. Danke, dass Sie sich die Zeit genommen haben, konstruktive Kritik zu üben!
Mit "einbinden" meine ich, Code zu schreiben, der die Skript-Operation mit AG_AT() oder seiner Funktion, die die Strategie implementiert, verknüpft.
Im Tutorial enthält das Beispiel eines einfachen Expert Advisors start(), während im regulären Expert Advisor alle speziellen Funktionen vorhanden sind. Es gibt keine Probleme, aber wie man so schön sagt, "der Appetit kommt mit dem Essen".
Die Frage ist, wie man all die großartigen Funktionenvon AutoGraf-4 nutzen kann. Was sollte ich tun?