Stopp unter dem Tiefpunkt der vorherigen Kerze
24 Antworten
slowbutsure
vor 10 Jahren #112031
Hallo
Kann mir jemand helfen, wie ich EA Wizard anweisen kann, einen Stop-Loss unterhalb des Tiefpunkts der zweiten Kerze zu setzen?
Danke
Mark Fric
vor 10 Jahren #124111
Hallo,
Das Problem liegt in der Tat in den Pips und den sie umgebenden Funktionen.
Sie haben definiert
PipDistance = (Open[1] - Close[1])
und dann haben Sie in Bedingung (nicht genau die gleiche Weise, aber die gleiche Wirkung):
IF (PipDistance > 15)
Dies wird niemals der Fall sein, da PipDistance in "echten" Pips angegeben wird.
Open[1] ist zum Beispiel 1,6234, Close[1] könnte 1,6111 sein.
Also PipDistance = 1,6234 - 1,6111 = 0,0123, und 0,0123 wird nie größer als 15 sein.
Es gibt zwei Möglichkeiten, die beide richtig sind:
1, verwenden Sie die Funktion ConvertToPips() für PipDistance, zum Beispiel
IF ConvertToPips(PipDistance) > 15
dies wird funktionieren, weil die Funktion den "echten" Pips-Wert 0,0123 in 123 Pips umwandelt, also 123 > 15 vergleicht
2. Verwenden Sie die Funktion ConvertToRealPips() für die rechte Seite des Vergleichs, Beispiel:
IF PipDistance > ConvertToRealPips(15)
funktioniert auch das, denn in diesem Fall werden 15 Pips in einen "echten" Pips-Wert umgewandelt, der 0,0015 beträgt. Also wird es 0.0123 > 0.0015 vergleichen
Ich hoffe, es ist jetzt klar, wie es mit Pips und Preisen funktioniert.
.
Mark
StrategyQuant Architekt
slowbutsure
vor 10 Jahren #124115
Ich bin nur ein bisschen verwirrt damit. Könnten Sie die Datei, die ich hochgeladen habe, korrigieren und dann werde ich sehen, was Sie getan haben.
Danke
Mark Fric
vor 10 Jahren #124117
Hallo,
Ich poste eine korrigierte Strategie, aber Sie sollten versuchen, meine Erklärung im vorherigen Beitrag zu verstehen, sonst können Sie das Programm nicht benutzen.
Mark
StrategyQuant Architekt
slowbutsure
vor 10 Jahren #124120
Danke, ich möchte es verstehen. Allerdings gibt die Version, die Sie gegeben haben, immer noch keine Trades ein.
slowbutsure
vor 10 Jahren #124121
In der ersten Regel haben Sie in Pips konvertieren, und in der zweiten in echte Pips konvertieren. Könnte das das Problem sein?
slowbutsure
vor 10 Jahren #124144
Mark, ich fahre bald weg und würde das wirklich gerne vorher machen, wenn Sie Zeit haben, zu antworten.
Mark Fric
vor 10 Jahren #124174
Hallo,
in der Strategie habe ich nicht auf Logik geprüft, sondern nur darauf, wie Sie die Pips-Werte verwenden.
Ich habe mehrere Probleme in der Strategie gefunden:
1. Problem mit Variablentypen - Ich habe die Funktion ConvertToPips der Variablen PipDistance zugewiesen, da sie vom Typ int war, kann sie die Preisdifferenz nicht speichern, die dezimal ist.
2. Sie hatten dort eine Bedingung High[0] > High[0], die nie wahr ist, ich habe sie gelöscht.
3. Sie hatten auch PipDistance = Open[1] - Close[1], aber in der IF-Bedingung Sie es nur, wenn Close[1] > Open[1], so dass diese Differenz ist immer negative Zahl, die nie größer als 15 sein würde.
Also habe ich die Reihenfolge bei der Subtraktion in PipDistance = Close[1] - Open[1] geändert.
Mark
StrategyQuant Architekt
Manteltaucher
vor 9 Jahren #124699
Ich versuche, etwas Ähnliches zu tun, aber ich wende einen Puffer auf den Einstiegskurs an, anstatt einen Stoploss zu setzen.
Das Beispiel zeigt, wie man mit einer Variablen arbeitet, und ich kann sehen, wie man dies mit einer Stop- oder Limit-Order macht, aber ich möchte es so codieren, dass die Strategie bei (sagen wir) dem letzten Hoch + 1 Pip einsteigt. Dies wird wahrscheinlich zu nah an der Spanne sein, um eine Stop-Order zu platzieren, so dass ich eine Möglichkeit brauche, um zu sagen, dass ich am Markt einsteige, wenn der Preis das letzte Hoch + 1 Pip erreicht.
Ich kann nicht sehen, wie man dies im THEN-Bereich mit einer Marktorder macht, also nehme ich an, dass es eine IF-Anweisung sein muss.
Ich bin sicher, dass es ganz einfach ist, aber ich würde mich freuen, wenn Sie mir die richtige Richtung weisen könnten.
Vielen Dank!
Mark Fric
vor 9 Jahren #124732
Hallo,
siehe das beigefügte Beispiel. Wenn Sie am Markt einsteigen möchten, müssen Sie eine Bedingung erstellen, die prüft, ob der Preis das letzte Hoch + 1 Pip erreicht hat.
Mark
StrategyQuant Architekt