Momentum Breakout Camarilla Unterstützungsstrategie

Schriftsteller:ChaoZhang, Datum: 2023-12-06
Tags:

img

Übersicht

Dies ist eine Breakout-Handelsstrategie, die Dynamikindikatoren und wichtige Unterstützungsniveaus kombiniert.

Strategie Logik

Die Kernlogik der Strategie lautet: Wenn der Preis in der Nähe des zentralen Camarilla-Unterstützungsniveaus ist und dieses Niveau effektiv durchbricht, wird ein Kaufsignal generiert; wenn der Preis auf das zentralen Camarilla-Widerstandsniveau steigt, wird ein Verkaufssignal generiert.

Insbesondere verwendet die Strategie die Camarilla-Unterstützungsstufe L3 als Bestätigungsstufe für das Kaufsignal. Wenn der Preis unter L3 und unter dem Mittelpunkt von L3 und L2 liegt, wird die Kaufbedingung ausgelöst. Dies zeigt an, dass der Preis nahe der kritischen Unterstützung ist und wahrscheinlich zurückschlägt. Um falsche Ausbrüche auszufiltern, setzt die Strategie auch die Einstiegskriterien fest, dass der Schlusskurs größer sein muss als der Eröffnungskurs.

Die Stop-Loss-Methode der Strategie besteht darin, ein dynamisches Stop-Loss-Level festzulegen. Wenn der Preis den Mittelpunkt der Camarilla-Widerstandsniveaus H1 und H2 überschreitet, wird der Stop-Loss-Verkauf ausgelöst. Dieses dynamische Stop-Loss-Level kann den Stop-Loss basierend auf der Marktvolatilität verfolgen.

Analyse der Vorteile

Dies ist eine zuverlässige Strategie, die Trends und Unterstützungsniveaus kombiniert.

  1. Verwendung von Camarilla-Key-Levels, die sich als wichtig erwiesen haben.
  2. Nur lange gehen, wenn die EMA bullisch ist und nur kurz gehen, wenn die EMA bärisch ist.
  3. Eine dynamische Stop-Loss-Strategie passt den Stop-Level anhand der Marktvolatilität mit einer hohen Fehlertoleranz an.

Risikoanalyse

Die Strategie birgt auch einige Risiken:

  1. Die Camarilla-Levels können ausfallen, und diese Schlüsselniveaus gelten möglicherweise nicht mehr, wenn sich die Marktstruktur ändert.
  2. Ein Stop-Loss ist zu aggressiv, weil kleine Stops vorzeitig getroffen werden können.
  3. Bei irreführenden Pullbacks in Abwärtstrends können Kaufsignale mit Verlustrisiko erscheinen.

Die Gegenmaßnahmen sind: Anpassung der Camarilla-Parameter an den aktuellen Marktvolatilitätsbereich; angemessene Erweiterung des Stop-Loss-Bereichs, um einen vorzeitigen Stop-Out zu verhindern; nur kurz, wenn es sich um einen Abwärtstrend handelt, um eine lange Falle zu vermeiden.

Optimierungsrichtlinien

Weitere Optimierungsrichtungen für diese Strategie sind:

  1. Zusätzliche Filterbedingungen wie Volumen- oder Elastizitätsindikatoren werden hinzugefügt, um einen falschen Eintritt in die Richtung zu vermeiden.
  2. Optimierung der Camarilla-Parameter, um die Unterstützungs-/Widerstandsniveaus besser in den aktuellen Schwankungsbereich zu integrieren.
  3. Versuche verschiedene gleitende Durchschnittsparameter, um die beste Parameterkombination zu finden.
  4. Die Aggressivität der Stopps anhand der Eigenschaften der verschiedenen Produkte anpassen.

Schlussfolgerung

Diese Strategie nutzt umfassend mehrere Dimensionen wie Trend, Unterstützungsniveau, Ausbruch, um Einstiegs- und Stoppregeln zu formulieren. Es ist eine relativ robuste Ausbruchshandelsstrategie. Es kombiniert die Verifizierungseffizienz wichtiger Camarilla-Levels und das Trendbeurteil von Momentumindikatoren. Dies zielt darauf ab, Trendhandelsmöglichkeiten in Hochwahrscheinlichkeitsbereichen zu erfassen. Inzwischen sind dynamische Stopps eingestellt, um Risiken zu kontrollieren. Diese Strategie kann unsere Strategiebibliothek durch eine effektive Trend-Ausbruchstrategie erhöhen.


/*backtest
start: 2023-11-05 00:00:00
end: 2023-11-28 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
//Created by CristianD
strategy(title="CamarillaStrategyVhaouri", shorttitle="CD_Camarilla_StrategyV1", overlay=true) 
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,8)
hh ="X"
//Camarilla
pivot = (high + low + close ) / 3.0 
range = high - low
h5 = (high/low) * close 
h4 = close + (high - low) * 1.1 / 2.0
h3 = close + (high - low) * 1.1 / 4.0
h2 = close + (high - low) * 1.1 / 6.0
h1 = close + (high - low) * 1.1 / 12.0
l1 = close - (high - low) * 1.1 / 12.0
l2 = close - (high - low) * 1.1 / 6.0
l3 = close - (high - low) * 1.1 / 4.0
l4 = close - (high - low) * 1.1 / 2.0
h6 = h5 + 1.168 * (h5 - h4) 
l5 = close - (h5 - close)
l6 = close - (h6 - close)

// Daily line breaks
//sopen = request.security(syminfo.tickerid, "D", open [1])
//shigh = request.security(syminfo.tickerid, "D", high [1])
//slow = request.security(syminfo.tickerid, "D", low [1])
//sclose = request.security(syminfo.tickerid, "D", close [1])
//
// Color
//dcolor=sopen != sopen[1] ? na : black
//dcolor1=sopen != sopen[1] ? na : red
//dcolor2=sopen != sopen[1] ? na : green

//Daily Pivots 
dtime_pivot = request.security(syminfo.tickerid, 'W', pivot[1]) 
dtime_h6 = request.security(syminfo.tickerid, 'W', h6[1]) 
dtime_h5 = request.security(syminfo.tickerid, 'W', h5[1]) 
dtime_h4 = request.security(syminfo.tickerid, 'W', h4[1]) 
dtime_h3 = request.security(syminfo.tickerid, 'W', h3[1]) 
dtime_h2 = request.security(syminfo.tickerid, 'W', h2[1]) 
dtime_h1 = request.security(syminfo.tickerid, 'W', h1[1]) 
dtime_l1 = request.security(syminfo.tickerid, 'W', l1[1]) 
dtime_l2 = request.security(syminfo.tickerid, 'W', l2[1]) 
dtime_l3 = request.security(syminfo.tickerid, 'W', l3[1]) 
dtime_l4 = request.security(syminfo.tickerid, 'W', l4[1]) 
dtime_l5 = request.security(syminfo.tickerid, 'W', l5[1]) 
dtime_l6 = request.security(syminfo.tickerid, 'W', l6[1]) 

men = (dtime_l1-dtime_l2)/7
//plot(sd and dtime_l5 ? dtime_l5 : na, title="Daily L5",color=dcolor2, linewidth=2)
//plot(sd and dtime_l6 ? dtime_l6 : na, title="Daily L6",color=dcolor2, linewidth=2)

longCondition = close <=dtime_l3 and close  <= (dtime_l3-men)//close >dtime_h4 and open < dtime_h4 and EMA < close
if (longCondition)
    strategy.entry("Long12", strategy.long)
    strategy.exit ("Exit Long","Longl2") 
if (high >= (dtime_h1-men))
    strategy.entry("Short", strategy.short)
    strategy.exit ("Exit Short","Short")
  

    


Mehr