Eine trendfolgende Breakout-Pullback-Strategie


Erstellungsdatum: 2024-02-01 14:37:02 zuletzt geändert: 2024-02-01 14:37:02
Kopie: 6 Klicks: 741
1
konzentrieren Sie sich auf
1617
Anhänger

Eine trendfolgende Breakout-Pullback-Strategie

Überblick

Eine Breakout-Rückholungsstrategie ist eine Trendverfolgungsstrategie. Ihr Grundprinzip besteht darin, bei einem Höchst- oder Mindestpreis der vorherigen K-Linie einen zusätzlichen Short-Trade zu tätigen, um nach dem Setzen eines Stop-Loss-Stopps den Gewinn weiterzuführen.

Strategieprinzip

Die Strategie bestimmt den Einstiegszeitpunkt hauptsächlich durch die Beurteilung, ob der Preis den Höchst- oder Mindestpreis der vorherigen K-Linie durchbricht. Die spezifische Logik ist:

Wenn der Höchstwert der aktuellen K-Linie höher ist als der Höchstwert der vorherigen K-Linie, wird ein Mehrwertsignal ausgegeben.

Wenn der Mindestpreis der aktuellen K-Linie niedriger ist als der Mindestpreis der vorherigen K-Linie, wird ein Leerlaufsignal ausgegeben.

Eintritt sofort nach dem Empfang des Signals für eine zusätzliche Freigabe. Nach dem Eintritt wird der Stop-Loss auf 50 Punkte und der Stop-Loss auf 100 Punkte festgelegt.

Aktive Ausstieg, wenn der Verlust größer ist als die Anzahl der Stop-Loss-Punkte oder der Gewinn größer als die Anzahl der Stop-Block-Punkte.

Analyse der Stärken

Diese bahnbrechende Rückrufstrategie hat folgende Vorteile:

  1. Die Logik ist einfach und leicht umzusetzen.
  2. Das ist eine gute Gelegenheit, um den Beginn eines Trends zu erfassen und rechtzeitig einzutreten.
  3. Die Einstellung von Stop Loss erlaubt es den Gewinnern, weiterzumachen und einen vorzeitigen Ausstieg zu vermeiden.
  4. Die Rücknahme und Risikokontrolle sind stärker.

Risikoanalyse

Die Strategie birgt auch einige Risiken:

  1. Das Durchbruchsignal könnte ein falscher Durchbruch sein, der zu einem falschen Einstieg führt.
  2. Es ist leicht zu übersehen, wenn es darum geht, die Konsolidierung der Stadt zusammenzufassen.
  3. Es ist notwendig, die Stop-Loss-Punkte vernünftigerweise einzustellen, um das Risiko zu kontrollieren.

Optimierungsrichtung

Die Strategie kann in folgenden Bereichen weiter optimiert werden:

  1. Erhöhung der Effektivität von Preis-Breakthroughs und Vermeidung von False-Breakthroughs. Beispielsweise können Kennzahlen-Filter und Transaktionsmengen-Verifizierung hinzugefügt werden.

  2. Trendbeurteilungsmechanismen werden hinzugefügt, um die Gefahr einer Blockade zu vermeiden, die durch die Bilanzierung des Marktes entsteht. Trendindikatoren wie beispielsweise Moving Averages können hinzugefügt werden.

  3. Optimierung von Stop-Loss-Strategien wie Tracking-Stops, Post-Profit-Stops, um die Gewinnmaximierung zu fördern.

  4. Optimierung der Parameter, um die optimale Anzahl von Stop-Loss-Punkten zu finden

Zusammenfassen

Die Breakthrough-Return-Strategie ist in der Regel einfach in der Logik, einfach zu implementieren, kann Trendbeginn, Rückzug und Risikokontrolle effektiv erfassen. Durch weitere Optimierung kann sie zu einer sehr praktischen quantitativen Strategie werden.

Strategiequellcode
/*backtest
start: 2023-01-25 00:00:00
end: 2024-01-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Breakout Strategy", shorttitle="BS", overlay=true)

// Input for take profit and stop loss in pips
tp_pips = input(50, title="Take Profit (in pips)")
sl_pips = input(100, title="Stop Loss (in pips)")

// Calculate take profit and stop loss levels in points
tp_level = tp_pips * syminfo.mintick
sl_level = sl_pips * syminfo.mintick

// Function to check if a breakout has occurred
breakout(high_or_low) =>
    high_or_low > request.security(syminfo.tickerid, "D", high[1]) ? true : false

// Buy condition
buy_condition = breakout(high)
strategy.entry("Buy", strategy.long, when=buy_condition)

// Sell condition
sell_condition = breakout(low)
strategy.entry("Sell", strategy.short, when=sell_condition)

// Take profit and stop loss conditions for Buy
tp_buy_condition = strategy.position_avg_price + tp_level
sl_buy_condition = strategy.position_avg_price - sl_level
strategy.exit("Take Profit/Close Buy", from_entry="Buy", profit=tp_buy_condition, loss=sl_buy_condition)

// Take profit and stop loss conditions for Sell
tp_sell_condition = strategy.position_avg_price - tp_level
sl_sell_condition = strategy.position_avg_price + sl_level
strategy.exit("Take Profit/Close Sell", from_entry="Sell", profit=tp_sell_condition, loss=sl_sell_condition)