Mehrere prozentuale Take-Profit-Exit-Strategien
Übersicht
Diese Strategie implementiert die Funktion, mehrere prozentuale Take-Profit-Exits zu setzen. Die Strategie bewertet zunächst Long/Short-Bedingungen und eröffnet Long- oder Short-Positionen. Anschließend wird mit einer benutzerdefinierten Funktion percentAsPoints der Prozentsatz in Preis-Punkte umgewandelt. Das Programm richtet gemäß den festgelegten Take-Profit-Prozentsätzen von 1 %, 2 %, 3 % und 4 % vier Exits ein und fügt gleichzeitig einen generischen Stop-Loss-Exit von 2 % hinzu. So wird die Wirkung mehrerer prozentualer Take-Profit-Exits erzielt.
Strategieprinzip
Die Strategie nutzt hauptsächlich den Long/Short-Crossover des SMA (Simple Moving Average) zur Eröffnung von Positionen. Konkret wird eine Long-Position eröffnet, wenn der schnelle SMA(14) den langsamen SMA(28) von oben kreuzt (Crossover); eine Short-Position wird eröffnet, wenn der schnelle SMA(14) den langsamen SMA(28) von unten kreuzt (Crossunder).
Nun stellt sich die Frage: Wie setzt man mehrere prozentuale Take-Profit-Exits? Hier kommt die benutzerdefinierte Funktion percentAsPoints zum Einsatz, die einen Prozentsatz in Preis-Punkte umwandelt. Die Logik der Funktion lautet:
percentAsPoints(pcnt) =>
strategy.position_size != 0 ? round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
Wenn die Positionsgröße ungleich Null ist, wird der Prozentsatz multipliziert mit dem durchschnittlichen Einstiegspreis der Position und dividiert durch den minimalen Tick (syminfo.mintick), um die Anzahl der Preis-Punkte zu erhalten. Wenn die Position Null ist, wird na zurückgegeben.
Mit dieser Funktion können wir Prozentsätze leicht in Punkte umrechnen. Anschließend richtet das Programm vier Exits mit den festgelegten Take-Profit-Prozentsätzen von 1 %, 2 %, 3 % und 4 % ein:
lossPnt = percentAsPoints(2)
strategy.exit("x1", qty_percent = 25, profit = percentAsPoints(1), loss = lossPnt)
strategy.exit("x2", qty_percent = 25, profit = percentAsPoints(2), loss = lossPnt)
strategy.exit("x3", qty_percent = 25, profit = percentAsPoints(3), loss = lossPnt)
strategy.exit("x4", profit = percentAsPoints(4), loss = lossPnt)
Alle Exits verwenden gleichzeitig einen generischen 2-%-Stop-Loss. Dadurch wird die Wirkung mehrerer prozentualer Take-Profit-Exits erzielt.
Vorteilsanalyse
Diese Strategie mit mehreren prozentualen Take-Profit-Exits bietet folgende Vorteile:
-
Sie ermöglicht eine schrittweise Gewinnmitnahme und vermeidet, dass größere Gewinnchancen verpasst werden. In der Regel sind die Gewinnmitnahmen in den späteren Stufen größer, aber auch risikoreicher; diese Strategie kann Risiko und Ertrag ausgleichen.
-
Die abschnittweise Gewinnmitnahme kann das eingesetzte Kapital zurückführen und das Risiko senken. Wird beispielsweise eine Tranche von 25 % festgelegt, kann bei Erreichen eines Gewinns von 1 % bereits ein Viertel des ursprünglichen Kapitaleinsatzes zurückgeholt werden; die verbleibende Position wird dann mit Gewinn betrieben.
-
Sie verhindert Verluste durch extreme Marktbewegungen; der 2-%-Stop-Loss schützt vor großen Verlusten in außergewöhnlichen Situationen.
-
Der Code ist einfach und klar realisiert, leicht verständlich und erleichtert Anpassungen und Optimierungen. Die benutzerdefinierte Funktion wandelt Prozentsätze in Punkte um, und mit wenigen Codezeilen können mehrere Take-Profit-Exits gesetzt werden.
Risikoanalyse
Diese Strategie birgt auch einige Risiken:
-
Prozentuale Take-Profit-Exits können zu Seitwärtsbewegungen führen, bei denen der Preis um die Take-Profit-Niveaus oszilliert. Dadurch können Take-Profit und Stop-Loss häufig ausgelöst werden, was die Anzahl der Trades und die Transaktionskosten erhöht.
-
Die abschnittweise Gewinnmitnahme erhöht die Anzahl der Trades und damit auch die Transaktionskosten. Bei zu hohen Gebühren kann dies einen Teil der Gewinne wieder zunichtemachen.
-
Eine ungeeignete Wahl der Take-Profit-Niveaus kann die Rendite beeinträchtigen. Zu konservative Einstellungen führen zu unbefriedigenden Ergebnissen, zu aggressive erhöhen das Risiko.
-
Feste prozentuale Take-Profit-Exits berücksichtigen weder die Marktvolatilität noch den Trend. In Seitwärtsmärkten sollte die Gewinnmitnahme enger gesetzt werden, in Trendmärkten weiter.
Optimierungsmöglichkeiten
Unter Berücksichtigung der genannten Risiken kann die Strategie in folgenden Bereichen optimiert werden:
-
Optimierung der Take-Profit-Strategie, sodass sie sich automatisch an die Marktvolatilität und den Trend anpasst, z. B. durch einen ATR-basierten Take-Profit: In Seitwärtsmärkten enger, in Trendmärkten weiter.
-
Optimierung der Aufteilung und der Höhe der einzelnen Gewinnmitnahmen, um eine optimale Kombination von Risiko und Ertrag zu erzielen. Integration einer Parameteroptimierung zur Ermittlung der optimalen Werte.
-
Reduzierung der Anzahl der Gewinnmitnahmen, um übermäßige Handelsaktivität zu vermeiden, z. B. durch Einführung eines Preispuffers, sodass nur bei Überschreiten einer bestimmten Schwelle ein Exit ausgelöst wird.
-
Berücksichtigung der Transaktionskosten: Keine Gewinnmitnahme, wenn der erwartete Gewinn die Kosten nicht übersteigt, oder Optimierung der Take-Profit-Niveaus unter Berücksichtigung der Gebühren.
-
Verwendung von Limit-Orders für die Gewinnmitnahme (Orderbuch-basiert), um ein Abwandern des Take-Profit-Preises zu vermeiden (Priority nach Preis und Tiefe).
Zusammenfassung
Diese Strategie realisiert die Funktion mehrerer prozentualer Take-Profit-Exits mit vier Niveaus (1 %, 2 %, 3 % und 4 %). Sie ermöglicht eine schrittweise Gewinnmitnahme und verwendet gleichzeitig einen 2-%-Stop-Loss, um große Verluste in Ausnahmesituationen zu vermeiden. Diese Strategie kann Risiko und Ertrag ausgleichen und verhindert, dass größere Gewinnchancen verpasst werden. Allerdings birgt sie auch Risiken, wie die Neigung zu Seitwärtsbewegungen und eine erhöhte Handelsfrequenz. Diese Empfehlungen sind es wert, in die Strategie einbezogen zu werden, um sie so zu optimieren, dass sie auf verschiedenen Märkten stabil funktioniert.
- 1

