Kann mir jemand schreiben wie ich im MQL5 eingeben kann, dass der nächste Trade erst erfolgen soll, wenn ein Signalwechsel stattfindet.
Bsp1: Es kommt vor, dass wenn ich einen EA erstmalig verwende, er sofort in die Richtung einsteigt, wo er gerade sein Signal bekommt. Ich möchte aber erst einsteigen, wenn zum ersten mal das Signal (kaufen oder verkaufen) wechselt, also wenn ein Signalwechsel von kaufen auf verkaufen oder von verkaufen auf kaufen wechselt.
Bsp2: Es kommt vor, dass wenn ein Stopp ausgeführt wird, dass sofort wieder ein Trade in die selbe Richtung eröffnet wird, weil im Speicher immer noch das selbe Signal ist, wie der ausgestoppte Trade ausgelöst wurde. Ich möchte aber, dass wenn ein Stopp ausgelöst wurde, der nächste Trade erst wieder eröffnet wird, wenn sich das Signal (kaufen oder verkaufen) wechselt, also wenn ein Signalwechsel von kaufen auf verkaufen oder von verkaufen auf kaufen wechselt.
Teilen Sie mir einfach die Zeilen mit, welche ich einfügen muss und wo ich es einfügen muss. Ich denke bei Bsp1 wo anders als bei Bsp2, da Bsp1 nur beim ersten Start, bei Bsp2 nach jeder ausgestoppten Position erforderlich.
Vielen Dank für Ihre Hilfe.
Kein Gewähr für korrekten Code (ist PseudoCode einfach runtergeschrieben, so als Idee...)
int NO_Signal =0;
int BUY_Signal =1;
int SELL_Signal =-1;
int gCurrentSignal ;
Ich würde in der Initphase (also beim Starten des EA) den leeren Signalstatus setze, z.B. als
gCurrentSignal = NO_Signal;
.
Dann im OnTick Teil "einfach" prüfen:
if (gCurrentSignal != GetCurrentSignal())
{
int currentSignal = GetCurrentSignal();
if (gCurrentSignal == NO_Signal)
{
gCurrentSignal=currentSignal ;
} else {
gCurrentSignal=currentSignal ;
if (gCurrentSignal == BUY_Signal)
{
// DoBuy
} else {
// DoSell
}
}
}
Hallo Manfred,
einfach Zeilen mitteilen geht leider nicht so einfach.
Da kann man nicht mehr erwarten als ein Hinweis, wie z.B. globale Variablen nutzen, oder Uwe mit einem Pseudo-Code.
Bei der Nutzung von globalen bzw. statischen Variablen kannst Du den erstmaligen bzw. momentanen Status des EAs festhalten um danach entsprechend zu reagieren.
Gruß
Hanns.

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Kann mir jemand schreiben wie ich im MQL5 eingeben kann, dass der nächste Trade erst erfolgen soll, wenn ein Signalwechsel stattfindet.
Bsp1: Es kommt vor, dass wenn ich einen EA erstmalig verwende, er sofort in die Richtung einsteigt, wo er gerade sein Signal bekommt. Ich möchte aber erst einsteigen, wenn zum ersten mal das Signal (kaufen oder verkaufen) wechselt, also wenn ein Signalwechsel von kaufen auf verkaufen oder von verkaufen auf kaufen wechselt.
Bsp2: Es kommt vor, dass wenn ein Stopp ausgeführt wird, dass sofort wieder ein Trade in die selbe Richtung eröffnet wird, weil im Speicher immer noch das selbe Signal ist, wie der ausgestoppte Trade ausgelöst wurde. Ich möchte aber, dass wenn ein Stopp ausgelöst wurde, der nächste Trade erst wieder eröffnet wird, wenn sich das Signal (kaufen oder verkaufen) wechselt, also wenn ein Signalwechsel von kaufen auf verkaufen oder von verkaufen auf kaufen wechselt.
Teilen Sie mir einfach die Zeilen mit, welche ich einfügen muss und wo ich es einfügen muss. Ich denke bei Bsp1 wo anders als bei Bsp2, da Bsp1 nur beim ersten Start, bei Bsp2 nach jeder ausgestoppten Position erforderlich.
Vielen Dank für Ihre Hilfe.