Dynamischer Stoploss / Trailingstop
Forums › ProRealTime Deutsch forum › ProOrder Support › Dynamischer Stoploss / Trailingstop
- This topic has 15 replies, 2 voices, and was last updated 4 years ago by robertogozzi.
-
-
11/16/2019 at 10:35 AM #112909
Hallo,
eine Frage hätte ich noch, komme nicht ganz klar.
Wenn ich einen dynamischen Stoploss programmieren will, auf Basis eines EMA oder vom ATR… wie schreibe ich das?
Also zum Beispiel:ifshortonmarket stoploss 20 Punkte über EMA50
iflongonmarket Stoploss 20 Punkte unter EMA50
ATR Stop sollte doch so funktionieren:
set stop ptrailing ATR*x
wie macht man sowas bei einem EMA?
11/16/2019 at 11:47 AM #112913Ema50 (wie jedes MA) ist ein Preis, ein Durchschnitt der Preise, SET STOP LOSS erfordert eine Distanz, die in Preis ausgedrückt wird (wie ATR), SET STOP pLOSS erfordert eine Differenz, die in Pips ausgedrückt wird, es ist dasselbe für Instrumente wie DAX, während es ist Nicht dasselbe gilt für Währungen, bei denen die ATR mit PIPSIZE multipliziert werden müsste, damit letztere korrekt funktionieren.
Da Sie eine Differenz benötigen, ist eine Subtraktion erforderlich. Sie wissen, zu welchem Preis Sie eingegeben haben (oder zu welchem Preis Sie bei ausstehenden Bestellungen eingeben möchten), sodass Sie Ema50 davon abziehen können:
1MyStopLoss = abs(EntryPrice - Ema50)Jetzt behält die Variable MyStopLoss die Differenz zwischen zwei Preisen und kann mit LOSS verwendet werden:
1SET STOP LOSS MyStopLossWenn Sie pLOSS bevorzugen, müssen Sie schreiben:
1SET STOP pLOSS MyStopLoss * pipsize11/16/2019 at 12:09 PM #11291611/16/2019 at 12:47 PM #112921könnte ich Ihnen vielleicht eins meiner Systeme zuschicken und Sie sagen mir Ihre Einschätzung dazu?
11/16/2019 at 1:01 PM #112922Ja, du kannst es hier posten. Ich werde es mir nach dem Wochenende ansehen.
11/17/2019 at 8:17 PM #112977Hier ein Code von mir mit einer recht guten Performance auf den Dax. Eine Art Scalper durch Ausbruch. Vielleicht hast Du eine Meinung dazu oder einen Vorschlag zur Verbesserung. Ich nutze mehrer Abwandlungen dieses Systems bis jetzt erfolgreich im Livehandel.
Das wäre super.
1234567891011121314151617181920212223242526272829303132333435363738394041// Festlegen der Code-ParameterDEFPARAM CumulateOrders = False // Kumulieren von Positionen deaktiviert// Verhindert das Platzieren von neuen Ordern zum Markteintritt oder Vergrößern von Positionen vor einer bestimmten UhrzeitnoEntryBeforeTime = 090000timeEnterBefore = time >= noEntryBeforeTime// Verhindert das Platzieren von neuen Ordern zum Markteintritt oder Vergrößern von Positionen nach einer bestimmten UhrzeitnoEntryAfterTime = 120000timeEnterAfter = time < noEntryAfterTime// Verhindert das Trading an bestimmten WochentagendaysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0// Bedingungen zum Einstieg in Long-Positionenindicator1 = DIplus[14](close)c1 = (indicator1 CROSSES OVER 30)indicator2 = SuperTrend[3,10]c2 = (close > indicator2)indicator3 = RSI[14](close)c3 = (indicator3 CROSSES OVER 70)IF (c1 AND c2 AND c3) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THENBUY 1 CONTRACT AT MARKETENDIF// Bedingungen zum Einstieg in Short-Positionenindicator4 = SuperTrend[3,10]c4 = (close < indicator4)indicator5 = DIminus[14](close)c5 = (indicator5 CROSSES OVER 30)indicator6 = RSI[14](close)c6 = (indicator6 CROSSES UNDER 30)IF (c4 AND c5 AND c6) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THENSELLSHORT 1 CONTRACT AT MARKETENDIF// Stops und TargetsSET STOP pLOSS 90SET TARGET pPROFIT 1611/17/2019 at 8:46 PM #112979Bitte verwenden Sie nicht das @ -Zeichen, da es die empfangenen E-Mail-Nachrichten verdoppelt.
Es sollte selten und nur dann verwendet werden, wenn Sie sich auf jemanden unter den vielen beziehen müssen. Dies ist nicht der Fall.
Ich werde morgen einen Blick auf Ihren Code werfen.11/18/2019 at 10:35 AM #11300311/18/2019 at 1:05 PM #113015Ich persönlich bevorzuge es, dass mein Zielgewinn größer ist als mein Stop-Loss. Deshalb habe ich Ihre beiden letzten Zeilen durch Folgendes ersetzt:
12SET STOP pLOSS 70 //90SET TARGET pPROFIT 15 //16dann habe ich Nicolas ‘Trailing Stop-Code am Ende (nach den beiden vorhergehenden Zeilen) hinzugefügt ( https://www.prorealcode.com/blog/trading/complete-trailing-stop-code-function/ ):
1234567891011121314151617181920212223242526272829303132333435//************************************************************************//trailing stop functiontrailingstart = 10 //10 trailing will start @trailinstart points profittrailingstep = 10 //10 trailing step to move the "stoploss"//reset the stoploss valueIF NOT ONMARKET THENnewSL=0ENDIF//manage long positionsIF LONGONMARKET THEN//first move (breakeven)IF newSL=0 AND close-tradeprice(1)>=trailingstart*pipsize THENnewSL = tradeprice(1)+trailingstep*pipsizeENDIF//next movesIF newSL>0 AND close-newSL>=trailingstep*pipsize THENnewSL = newSL+trailingstep*pipsizeENDIFENDIF//manage short positionsIF SHORTONMARKET THEN//first move (breakeven)IF newSL=0 AND tradeprice(1)-close>=trailingstart*pipsize THENnewSL = tradeprice(1)-trailingstep*pipsizeENDIF//next movesIF newSL>0 AND newSL-close>=trailingstep*pipsize THENnewSL = newSL-trailingstep*pipsizeENDIFENDIF//stop order to exit the positionsIF newSL>0 THENSELL AT newSL STOPEXITSHORT AT newSL STOPENDIFund führen Sie es von einem 1-Minuten-DAX-Chart mit 100K-Balken aus.
Ich habe TP, SL und Trailing Stop optimiert. Sie können Ihre eigenen Tests machen und “walk forward”.
Wenn Sie der Meinung sind, dass es in Ordnung ist, können Sie es 6-12 Monate lang auf Ihrem Demokonto ausführen, bevor Sie entscheiden, ob es sich lohnt, es zu behalten oder in den Papierkorb zu werfen. Viel Spaß beim Handeln!
11/18/2019 at 1:17 PM #113020Super, danke für Ihre Arbeit.
Natürlich sieht man jetzt das der Scalper auf den Uptrend der letzten Wochen zugeschnitten ist. Indem ich die Periodenlänge vom RSI anpasse, würden jetzt in der momentanen Schiebezone vom DAX und des zu erwartenden Downtrends die Ergebnisse weiter verbessert werden können.
Macht das Sinn? Oder sollte man so einen Code lieber allgemein halten und ihn nicht ständig der Marktlage angleichen?11/18/2019 at 1:33 PM #113025Normalerweise passe ich es regelmäßig an, es hängt von deiner TF ab. Auf einem 1-Minuten-Chart optimiere ich meinen Code normalerweise etwa einmal im Monat oder alle zwei Wochen neu. Bei einem höheren TF können Sie dies etwa alle zwei Monate tun.
11/18/2019 at 1:34 PM #113027Es ist immer eine persönliche Entscheidung, hauptsächlich basierend auf Erfahrung und Tests.
11/18/2019 at 3:08 PM #11303511/18/2019 at 3:50 PM #113039Alle Werte, meiner Meinung nach.
11/21/2019 at 10:21 AM #113290 -
AuthorPosts
Find exclusive trading pro-tools on