Camarilla Pivot Breakout-Strategie

Schriftsteller:ChaoZhang, Datum: 2024-01-04 16:17:06
Tags:

img

Übersicht

Die Camarilla Pivot Breakout Strategie ist eine quantitative Handelsstrategie, die Camarilla-Pivot-Levels für Ein- und Ausstiege verwendet. Diese Strategie stützt sich auf traditionelle technische Analyse-Unterstützungs- und Widerstandstheorien, kombiniert Camarilla-mathematische Formeln, um Pivot-Punkte in verschiedenen Zeitrahmen zu berechnen, und setzt Breakouts dieser Schlüssellevel als Bedingungen für Handelsöffnungen und -schließungen fest, um überschüssige Renditen zu erzielen.

Strategie Logik

Die Kernlogik dieser Strategie ist: Berechnung der H4 und L4, zwei wichtige Unterstützungs- und Widerstandsniveaus, aus der Camarilla-Formel im täglichen Zeitrahmen; Erzeugung von Handelssignalen, wenn der Preis diese beiden Niveaus durchbricht.

Insbesondere berechnet die Strategie zunächst den Mittelpunkt der höchsten, niedrigsten und schließenden Preise der aktuellen Bar als Drehpunkt. Dann berechnet sie die Preisspanne. Basierend auf der Bandbreite können verschiedene Camarilla-Levels gezeichnet werden, darunter H4, H3, H2, H1 und L1, L2, L3, L4. Unter ihnen ist H4 der erste Widerstand und L4 die erste Unterstützung.

Für Handelssignale löst die Strategie, wenn der Schlusskurs über das Niveau H4 bricht, ein Long-Signal aus; wenn der Schlusskurs unter L4 bricht, löst sie ein Short-Signal aus.

Die Hauptlogik ist also: Camarilla-Level-Breakouts zu verwenden, um die Marktstruktur zu bestimmen und Handelssignale zu erhalten.

Analyse der Vorteile

Diese Camarilla-Ausbruchstrategie hat mehrere wichtige Stärken:

  1. Auf der Grundlage bewährter traditioneller technischer Theorien, stabiler Backtests

Die Camarilla-Analyse verwendet klassische Unterstützungs-/Widerstandskonzepte, die den Test der Zeit bestanden haben und die Robustheit der Strategie für alle Produkte und Zeitrahmen gewährleisten.

  1. Einfache Parameter, einfache Ausführung

Im Vergleich zu Maschinellen Lernmodellen sind die Camarilla-Regeln einfach mit wenigen einstellbaren Metriken, leicht zu verstehen und im Live-Handel, insbesondere für Anfänger, auszuführen.

  1. Klares Ausbruchssignal, einfache Codierung

Die Überwachung von H4/L4 Breakouts übersetzt sich direkt in Handelseinträge. Das Strategiesignal ist klar und der Code ist einfach. Dies ermöglicht eine schnelle Prototyping von Ideen bis zum Live-Handel.

  1. Anwendbar für den Hoch- und Niederfrequenzhandel

Die Camarilla-Strategie funktioniert sowohl für den Hochfrequenz- (Sekunden-, Minute-Bars) als auch für den Niedrigfrequenz- (täglich, wöchentlich) Handel.

Risikoanalyse

Eine solche einfache Ausbruchstrategie hat jedoch einige inhärente Schwächen:

  1. Risiko eines falschen Ausbruchs

Der Preis kann nach dem Ausbruch nicht trenden und sich stattdessen umkehren.

  1. Ein paar Ausbruchchancen verpasst

Die Überwachung nur der Schlusskurs kann dazu führen, dass potenzielle Ausbrüche in früheren Balkenperioden vermisst werden.

  1. Gewinnpotenzial könnte begrenzt sein

Verglichen mit ausgeklügelteren Modellen kann die alleinige Abhängigkeit von Camarilla die Gewinnmarge und die Amplitude begrenzen.

Daher sind Risikomanagement über Stop-Loss, Optimierung der Einstiegslogik und Anpassung der Positionsgrößen erforderlich, um die Robustheit einer solchen einfachen Ausbruchmethode zu gewährleisten.

Optimierungsrichtlinien

Um diese Camarilla-Ausbruchstrategie weiter zu optimieren, können wir uns auf Folgendes konzentrieren:

  1. Einbeziehung zusätzlicher Kennzahlen zur Erkennung eines echten Ausbruchs

Kombination von Volumen, gleitenden Durchschnitten usw., um die Echtheit des Ausbruchs zu messen und falsche Signale zu vermeiden.

  1. Optimieren Sie die Logik des Ausbruchs

Zum Beispiel, die Ausbruchgröße durch Backtests zu entspannen, um schöne Punkte zu finden, oder mehr Regeln hinzuzufügen, basierend auf den Jahreszeiten.

  1. Optimierung der Stop-Loss-Strategien

Verringern Sie den Stop-Loss-Bereich und vermeiden Sie vorzeitige Stopps oder alternative Strata wie Trailing Stop Loss.

  1. Dynamische Anpassung von Positionsgrößen und Hebelwirkung

Anpassung von Positionen und Hebelwirkungsparametern an sich ändernde Marktregime.

  1. Einbeziehung fortschrittlicherer Maschinelles Lernen

Verwenden Sie LSTM- und RNN-Modelle, um Ausbruchwahrscheinlichkeiten vorherzusagen und die Intelligenz zu verbessern.

Zusammenfassung

Die Camarilla Pivot Breakout Strategie ist eine einfache und direkte quantitative Handelsstrategie, die einfach zu implementieren ist. Sie nutzt ausgereifte technische Analyse-Tools und erzeugt Handelssignale, indem sie Breaks von wichtigen Unterstützungs- und Widerstandsniveaus erfasst. Diese Art von Strategie hat den Vorteil von Stabilität und Zuverlässigkeit.


/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
//Created by CristianD
strategy(title="CamarillaStrategy", shorttitle="CD_Camarilla_Strategy", overlay=true) 
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,3)

//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, 'D', pivot[1]) 
dtime_h6 = request.security(syminfo.tickerid, 'D', h6[1]) 
dtime_h5 = request.security(syminfo.tickerid, 'D', h5[1]) 
dtime_h4 = request.security(syminfo.tickerid, 'D', h4[1]) 
dtime_h3 = request.security(syminfo.tickerid, 'D', h3[1]) 
dtime_h2 = request.security(syminfo.tickerid, 'D', h2[1]) 
dtime_h1 = request.security(syminfo.tickerid, 'D', h1[1]) 
dtime_l1 = request.security(syminfo.tickerid, 'D', l1[1]) 
dtime_l2 = request.security(syminfo.tickerid, 'D', l2[1]) 
dtime_l3 = request.security(syminfo.tickerid, 'D', l3[1]) 
dtime_l4 = request.security(syminfo.tickerid, 'D', l4[1]) 
dtime_l5 = request.security(syminfo.tickerid, 'D', l5[1]) 
dtime_l6 = request.security(syminfo.tickerid, 'D', l6[1]) 

//offs_daily = 0
//plot(sd and dtime_pivot ? dtime_pivot : na, title="Daily Pivot",color=dcolor, linewidth=2)
//plot(sd and dtime_h6 ? dtime_h6 : na, title="Daily H6", color=dcolor2, linewidth=2)
//plot(sd and dtime_h5 ? dtime_h5 : na, title="Daily H5",color=dcolor2, linewidth=2)
//plot(sd and dtime_h4 ? dtime_h4 : na, title="Daily H4",color=dcolor2, linewidth=2)
//plot(sd and dtime_h3 ? dtime_h3 : na, title="Daily H3",color=dcolor1, linewidth=3)
//plot(sd and dtime_h2 ? dtime_h2 : na, title="Daily H2",color=dcolor2, linewidth=2)
//plot(sd and dtime_h1 ? dtime_h1 : na, title="Daily H1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l1 ? dtime_l1 : na, title="Daily L1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l2 ? dtime_l2 : na, title="Daily L2",color=dcolor2, linewidth=2)
//plot(sd and dtime_l3 ? dtime_l3 : na, title="Daily L3",color=dcolor1, linewidth=3)
//plot(sd and dtime_l4 ? dtime_l4 : na, title="Daily L4",color=dcolor2, linewidth=2)
//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_h4
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)
    


shortCondition = close <dtime_l4
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)
    


Mehr