Die Ressourcen sind geladen. Beförderung...

Pivot Point Breakout-Strategie

Schriftsteller:ChaoZhang, Datum: 2023-09-27 16:35:26
Tags:

Übersicht

Die Pivot Point Breakout Strategie ist eine Trend-Folge-Strategie, bei der Aktien gekauft werden, wenn der Preis über den jüngsten Widerstandsstand bricht und verkauft wird, wenn der Preis unter die jüngste Unterstützung bricht, um Trendveränderungen zu erfassen.

Strategie Logik

Die Strategie berechnet die mittleren Punkte des höchsten Preises und des niedrigsten Preises über einen Zeitraum als die jüngsten Widerstands- und Unterstützungslinien.

Insbesondere berechnet es den mittleren Punkt des höchsten Preises über die letzten N1-Tage als Widerstandslinie und den mittleren Punkt des niedrigsten Preises über die N2-Tage als Unterstützungslinie. Auf der langen Seite wird ein Kaufsignal ausgelöst, wenn der heutige höchste Preis über die jüngste Widerstandslinie bricht. Auf der kurzen Seite wird ein Verkaufssignal ausgelöst, wenn der heutige niedrigste Preis unter die jüngste Unterstützungslinie bricht. Anleger können N1 und N2 anpassen, um die Sensibilität der Strategie anzupassen.

Die Strategie ist einfach und unkompliziert, erfordert keine Marktvorhersage, sondern verfolgt nur Pivot Point Breakouts, um Trends zu erfassen.

Analyse der Vorteile

  • Einfach und einfach zu bedienen, für alle Anleger geeignet

Die Strategie ist sehr einfach und intuitiv, erfordert keine Prognosekenntnisse, sondern nur das Verfolgen von Drehpunktbrüchen. Dies senkt die Schwierigkeit des Betriebs und macht sie für Anleger aller Ebenen geeignet.

  • Wirksam erfasst Trendänderungen und passt Positionen entsprechend an

Die Strategie kann rechtzeitig reagieren, wenn sich der Trend ändert und Positionen anpassen, um nicht gefangen zu werden.

  • Anpassbare Parameter zur Anpassung der Strategieflexibilität

Anleger können die Anzahl der Tage anpassen, um nach links und rechts zu schauen, was die Empfindlichkeit der Strategie anpasst.

  • Einfach mit anderen Strategien für Vielseitigkeit zu kombinieren

Die Strategie bietet hauptsächlich Trendverfolgung und kann leicht mit anderen Zeitstrategien kombiniert werden, um die Gesamtrendite zu verbessern.

Risikoanalyse

  • Mögliche Nachlaufwirkung

Die Strategie benötigt eine gewisse Datenerfassung, um Trendveränderungen zu erkennen, die zu bestimmten Verzögerungen in den Signalen führen können.

  • Risiko falscher Ausbrüche

Die Märkte können kurzfristige falsche Ausbrüche von Drehpunkten haben.

  • Größere Abzüge

Die Strategie folgt vollständig Trends und hat somit relativ hohe Abzugsrisiken. Anleger müssen ihre eigene Risikotoleranz berücksichtigen. Sie können auch Positionsgrößen verringern, um Abzüge zu reduzieren.

  • Notwendigkeit, die Häufigkeit des Handels zu kontrollieren

Überempfindliche Parameter können zu einer übermäßigen Handelsfrequenz führen. Die Parameter müssen ordnungsgemäß angepasst werden, um die Anzahl der Trades zu kontrollieren. Eine minimale Haltezeit kann auch zur Verringerung der Frequenz beitragen.

Optimierungsrichtlinien

  • Optimieren Sie die Einstellung der Parameter

Kann die N-Tage für Höchst- und Tiefstwerte zurückprüfen und optimieren, um langfristig den besten Parametermix zu finden. Kann auch dynamisch Parameter anpassen, die auf Marktbedingungen basieren, und empfindlichere Einstellungen verwenden, wenn der Trend stark ist.

  • Erhöhen Sie die Ausbruchstärke.

Eine stärkere Dynamik bei einem Ausbruch bedeutet eine höhere Wahrscheinlichkeit einer echten Trendänderung.

  • Hinzufügen anderer Indikatoren als Filter

Kann andere technische Indikatoren wie RSI, KD usw. hinzufügen. Wenn der Ausbruch mit Indikatordivergenzen übereinstimmt, sind Signale effektiver. Vermeiden Sie es, sich ausschließlich auf Ausbrüche zu verlassen.

  • Verbesserung der Positionsgröße

Kann die Größe der Positionen dynamisch basierend auf den Marktbedingungen, um das Risiko zu kontrollieren. Absicherungen können gestoppt werden, um große Verluste zu vermeiden. Kann auch die Größe basierend auf der Stärke der laufenden Trends anpassen.

Schlussfolgerung

Die Pivot Point Breakout-Strategie erfasst Trends einfach durch Pivot Point Breaks, geeignet für eine breite Palette von Anlegern. Ihre Vorteile sind Einfachheit und effektive Erfassung von Trendänderungen, aber sie hat auch einige Verzögerungsprobleme, Whipsaw-Risiken und große Drawdowns. Parameter-Tuning, Hinzufügen von Filtern und Verbesserung der Positionsgröße können die Stabilität der Strategie verbessern. Insgesamt eignet sie sich für Anleger, die einen einfachen Trend folgen möchten, aber Risiken müssen richtig verwaltet werden.


/*backtest
start: 2023-08-27 00:00:00
end: 2023-09-26 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © EduardoMattje

//@version=5
strategy("Pivot Point Breakout", "PPB", true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, process_orders_on_close=true)

// Constants

var L_PIVOT_HIGH = "Pivot high"
var L_PIVOT_LOW = "Pivot low"

var LEFT = "Left"
var RIGHT = "Right"

var BOTH = "Both"
var LONG = "Long"
var SHORT = "Short"

var DATES = "Date selection"
var DATES_TOOLTIP = "Change it to limit the trades for the given time interval.\n\nLeave it to disable this behaviour."

// Inputs

var orderDirection = input.string(LONG, "Order direction", options=[BOTH, LONG, SHORT])

var leftHigh = input.int(3, LEFT, minval=0, inline=L_PIVOT_HIGH, group=L_PIVOT_HIGH)
var rightHigh = input.int(3, RIGHT, minval=0, inline=L_PIVOT_HIGH, group=L_PIVOT_HIGH)

var leftLow = input.int(3, LEFT, minval=0, inline=L_PIVOT_LOW, group=L_PIVOT_LOW)
var rightLow = input.int(3, RIGHT, minval=0, inline=L_PIVOT_LOW, group=L_PIVOT_LOW)

var startDate = input(0, "Starting date", group=DATES)
var endDate = input(0, "Final date", group=DATES)

//

var float lastHigh = na
var float lastLow = na

lowPivot = ta.pivotlow(leftLow, rightLow)
highPivot = ta.pivothigh(leftHigh, rightHigh)

f_updateLevels(pivot_) => 
    var float pastLevel = na
    
    if not na(pivot_)
        pastLevel := pivot_
    
    pastLevel
    
lastLow := f_updateLevels(lowPivot)
lastHigh := f_updateLevels(highPivot)

// Validates the time interval

validTrade =  true

// Orders

if high > lastHigh
    strategy.entry("Long", strategy.long, when=orderDirection != SHORT and validTrade)
    strategy.close("Short", when=orderDirection == SHORT)
if low < lastLow
    strategy.entry("Short", strategy.short, when=orderDirection != LONG and validTrade)
    strategy.close("Long", when=orderDirection == LONG)
    
// Plots

plot(lastLow, "Last pivot low", color.red, offset=1)
plot(lastHigh, "Last pivot high", color.teal, offset=1)

plotshape(lowPivot, "Pivot low", location=location.belowbar, color=color.red, offset=-rightLow)
plotshape(highPivot, "Pivot high", color=color.teal, offset=-rightHigh)


Mehr