Wie programmiert man? - Seite 131

 

EA-Variablenwerte gehen beim Schließen von MT4 verloren

Hallo an alle,

Ich habe eine Reihe von Lösungen für meine Frage gesucht und ausprobiert, kann aber keine finden, die funktioniert.

Ich programmiere einen EA und die Trades werden über ihre Ticketnummern abgewickelt. Die Ticketnummern werden in einer int-Variablen gespeichert. Dies läuft gut in Strategy Tester oder auf einer kontinuierlichen ununterbrochenen MT4, aber wenn Sie MT4 schließen, ofcourse die Tickets verloren gehen und wenn MT4 neu geladen wird, die Ticket-Nummern verloren gegangen sind, damit der EA nicht weiß, welche Trades sind derzeit offen und beginnt, neue zu öffnen. Selbst wenn die ausstehenden oder offenen Aufträge bereits gehandelt werden.

Ich hoffe, das macht Sinn.

Ich habe es mit statischen Variablen versucht, und ich weiß, dass es globale Variablen gibt, aber ich würde es vorziehen, sie nicht zu verwenden, da jede Ticketnummer und Variable individuell für den Chart TF und das Symbol sein soll, auf dem der EA läuft.

Hat jemand eine einfache Lösung. Ich weiß, dass man die Ticketnummern wahrscheinlich in eine Datei exportieren könnte, die der EA dann öffnen und lesen kann, aber das scheint ein langer Weg zu sein. Eine nicht ganz so saubere Methode, die ich derzeit teste, ist, beim Programmstart die Funktion SELECT_BY_POS zu verwenden und nach jedem Handel mit der gleichen Magic-Nummer zu suchen, aber das erlaubt nicht die volle Funktionalität des EA, da ich manchmal 2 Käufe gleichzeitig ausführe und es schwierig ist, zu erkennen, welcher welcher ist.

Danke für jede Antwort.

 
mach_one_man:
Hallo an alle,

Ich habe eine Reihe von Lösungen für meine Frage gesucht und ausprobiert, kann aber keine finden, die funktionieren.

Ich programmiere einen EA und die Trades werden über ihre Ticketnummern abgewickelt. Die Ticketnummern werden in einer int-Variablen gespeichert. Dies läuft gut in Strategy Tester oder auf einer kontinuierlichen ununterbrochenen MT4, aber wenn Sie MT4 schließen, ofcourse die Tickets verloren gehen und wenn MT4 neu geladen wird, die Ticket-Nummern verloren gegangen sind, damit der EA nicht weiß, welche Trades sind derzeit offen und beginnt, neue zu öffnen. Selbst wenn die ausstehenden oder offenen Aufträge bereits gehandelt werden.

Ich hoffe, das macht Sinn.

Ich habe es mit statischen Variablen versucht, und ich weiß, dass es globale Variablen gibt, aber ich würde es vorziehen, sie nicht zu verwenden, da jede Ticketnummer und Variable individuell für den Chart TF und das Symbol sein soll, auf dem der EA läuft.

Hat jemand eine einfache Lösung. Ich weiß, dass man die Ticketnummern wahrscheinlich in eine Datei exportieren könnte, die der EA dann öffnen und lesen kann, aber das scheint ein langer Weg zu sein. Eine nicht ganz so saubere Methode, die ich derzeit teste, ist, beim Programmstart die Funktion SELECT_BY_POS zu verwenden und nach jedem Handel mit der gleichen Magic-Nummer zu suchen, aber das erlaubt nicht die volle Funktionalität des EA, da ich manchmal 2 Käufe gleichzeitig ausführe und es schwierig ist, zu erkennen, welcher welcher ist.

danke für alle Antworten.

Versuchen Sie anstelle von Ticketnummern, Ihre Aufträge mit Magic Numbers zu verfolgen. Das ist die beste Methode, die ich gefunden habe.

 
FerruFx:
So modifizieren:

if(Show_Settings) subPrintDetails(); sonst Comment("");

FerruFx

Vielen Dank!!! Ich werde es Sonntag Abend testen. Ich weiß Ihre Hilfe wirklich zu schätzen! Ich wünsche Ihnen ein schönes Wochenende!

Dave

 

EA-Änderung

Hallo

wäre sehr dankbar, wenn mir jemand weiterhelfen könnte. Es gibt diesen EA, den ich von einem anderen FX-Forum bekommen habe. Es sieht toll aus, aber würde es zu schätzen wissen, wenn jemand helfen kann, einige Modifikationen an ihm zu machen.

Ich habe versucht, die wenig ich denke, ich weiß, aber es hält mir Fehler von unbalancierten Klammern e.t.c

Der EA öffnet 5 Lots und nimmt den Gewinn von 1 Lot jeweils bei einem bestimmten inkrementellen Wert (sagen wir 50 Punkte/Pips). Er schließt also jedes Mal 1 Lot, wenn der Gewinn um eine bestimmte Zahl steigt, und lässt schließlich das fünfte/letzte Lot laufen, bis ein entgegengesetztes Signal auftritt.

Modifikationen:

Ich möchte, dass es nur 3 Lots öffnet,

jeweils 1 Lot schließen, wenn der Gewinn um eine bestimmte Anzahl von Pips steigt

Nachdem die ersten beiden Take-Profit-Punkte erreicht wurden, sollte für den dritten ein Trailing-Stop verwendet werden.

Illustration:

3 Lots

Inkrementeller TP-Punkt= 40 Pips

1. Lot TP = 40, Stoploss auf BE verschoben

2. Lot TP= 80

3. Lot = Trailing-Stop aktiviert

Alles andere ist bereits im EA enthalten, aber ich muss nur die Lotgröße ändern und einen Trailing-Stop hinzufügen.

Danke

Dateien:
stoch_ac.txt  7 kb
 
Dave137:
Vielen Dank!! Ich werde es am Sonntagabend testen. Ich weiß Ihre Hilfe wirklich zu schätzen! Ein schönes Wochenende! Dave

Gern geschehen, Dave. Genießen Sie Ihren Sonntag!

FerruFx

 

Zeichnen einer Linie und eines Auf-/Abwärtspfeils auf einer Kerze

Ich versuche, einen sehr einfachen Indikator zu programmieren, um eine Linie und einen Auf-/Abwärtspfeil auf einer Kerze zu zeichnen.

Ich kann nicht herausfinden, wie man diese Stil, Index, zeichnen usw. verwenden.

Ich habe eine sehr einfache if-Anweisung innerhalb von Start(), was muss ich also noch vor Start() und innerhalb von Start()'s if hinzufügen, um eine Linie, einen Aufwärtspfeil und einen Abwärtspfeil zu zeichnen?

Danke!

 
MoreYummy:
Ich versuche, einen sehr einfachen Indikator zu programmieren, der eine Linie und einen Auf-/Abwärtspfeil auf einer Kerze zeichnet.

Ich kann nicht herausfinden, wie man diese Stile, Indizes, Zeichnungen usw. verwendet.

Ich habe eine sehr einfache if-Anweisung innerhalb von Start(), was muss ich also noch vor Start() und innerhalb von Start()'s if hinzufügen, um eine Linie, einen Pfeil nach oben und einen Pfeil nach unten zu zeichnen?

Danke!

Bevor Sie versuchen, mit einigen Bedingungen in der Start() -Funktion zu zeichnen, müssen Sie die buffers[] setzen/initialisieren.

Das Programmieren eines Indikators ist keine einfache Aufgabe. Möglicherweise müssen Sie einige Grundlagen der MQL-Codierung lernen.

Ich wünsche Ihnen alles Gute bei Ihrem Lernprozess.

FerruFx

 

Hilfe

Hallo, liebe Programmierer,

Ich habe einen EA, der mit EURUSD handelt, wenn ich ihn an den EURUSD-Chart anhänge. Die Frage ist, wie kann ich mehrere Paare handeln, ohne dass ich meinen EA an mehrere Charts anhängen muss?

Etwas wie dies?

string pairs = "GBPUSD;EURUSD;USDCHF;USDJPY;USDCAD;GBPJPY;EURJPY;GBPCHF;EURAUD;EURCHF;EURGBP;AUDUSD;CHFJPY";

Vielen Dank im Voraus,

LF

 

Haben Sie Ihren Code, um bestimmte Paar zu handeln, wenn Sie Ihre Bestellung senden, ist es sehr einfach, rechts in der Dokumentation.

 

Verwenden Sie ein Array anstelle einer Zeichenkette und führen Sie eine Schleife durch das Array durch, indem Sie bei jeder Iteration eine Reihenfolge für jedes Paar festlegen. Wenn Sie noch nie mit Arrays gearbeitet haben, schauen Sie einfach in der Hilfedatei nach. Sie sind ziemlich einfach.

Viel Glück!

Lux

Grund der Beschwerde: