
Die Strategie basiert hauptsächlich auf dem Camelia-Kanal und der Moving Average, um die Marktdurchbrüche zu beurteilen und so den Trend zu verfolgen. Die Strategie ist relativ einfach, aber sehr praktisch.
Berechnen Sie die Unterstützungs- und Widerstandslinien des Camaleira-Kanals, einschließlich der Linien H4, L4 und so weiter.
Beurteilen Sie, ob der Preis die Kanallinie durchbrochen hat. Zum Beispiel durchbrochen der H4-Linie über dem Schlusskurs und der Öffnungspreis ist unter der H4-Linie, um einen Bruch zu erkennen.
Ein brechendes Signal wird durch die Einbeziehung von Moving Average-Urteilen weiter bestätigt. Ein EMA unterhalb des Schlusskurses bezeichnet beispielsweise einen mehrköpfigen Bruch.
Eintritt in mehrköpfige Positionen, Einstellung von Stop-Loss- und Stop-Stop-Bedingungen, wie z. B. Festlegung von Stop-Loss-Punkten, sowie die Art und Weise, wie Stop-Loss verfolgt wird.
Die gleiche Logik gilt auch für die Leerköpfe.
Das ist die Hauptentscheidungslogik der Strategie, die relativ einfach, intuitiv und leicht zu verstehen und umzusetzen ist. Durch die dynamische Verfolgung von Stop-Loss kann ein fortlaufender Gewinn erzielt werden, bis der Trend umgekehrt ist.
Diese Strategie hat folgende Vorteile:
Auf der Grundlage der Camalella-Kanäle können potenzielle Unterstützungen und Widerstände genau lokalisiert werden.
In Kombination mit einer einheitlichen Filterung kann man effektiv unterscheiden, ob ein Signal durchbrochen wurde oder nicht.
Mit einem Stop-Loss-Tracking-System können Sie kontinuierlich profitieren, ohne Rückschlüsse zu machen.
Die Strategie-Signale sind einfach, klar und leicht zu beurteilen.
Die Parameter müssen nicht häufig angepasst werden, sondern werden automatisch für die festgelegten Parameter gehandelt.
Die Strategie birgt auch folgende Risiken:
Der Camaleira-Kanal ist nicht in der Lage, den Trend umzukehren, was zu einer Vergrößerung der Verluste führen könnte.
Unvernünftige Einstellungen für die Verfolgung von Stop-Loss-Punkten können zu einem vorzeitigen Stoppen oder einer Vergrößerung der Verluste führen.
Das Durchbruchsignal kann durch eine falsche Durchbruchmeldung ausgelöst werden.
Es gab mehrere falsche Durchbrüche in den stark bewegten Märkten.
Die Strategie kann auch in folgenden Bereichen optimiert werden:
Erhöhung der Kompositfilterwerte, Verbesserung der Durchbruchgenauigkeit. KDJ, MACD usw. können berücksichtigt werden.
Optimierung von Stop-Loss-Strategien, wie die Einführung von dynamischen Stop-Loss-Strategien und die Kombination von ATR-Indikatoren.
Optimierung der Parameter der verschiedenen Sorten zur Steigerung der Stabilität
Es ist wichtig, dass man sich über die großen Zyklen informiert und dass man nicht nachteilig handelt.
Die Analyse des Tages, kombiniert mit der Analyse des Fokus, ist die beste Lösung.
Entwicklung von Programmen zur automatischen Optimierung von Parametern in Echtzeit.
Es wurde eine Arbitrage-Strategie für mehrere Sorten erweitert, um die Preisunterschiede auszunutzen.
Die Strategie ist übersichtlich und praktisch und ist typisch für die Breakout-Tracking-Strategie. Durch die Beurteilung des potenziellen Resistenzwerts durch den Camelia-Kanal und die Kombination mit einer linearen Filterung wird die Breakout-Richtung bestimmt. Die Stop-Loss-Methode ist auch relativ vernünftig.
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
//Created by CristianD
strategy(title="CamarillaStrategyV1", shorttitle="CD_Camarilla_StrategyV1", overlay=true)
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,8)
//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 and open < dtime_h4 and EMA < close
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit ("Exit Long","Long", trail_points = 140,trail_offset = 1, loss =170)
//trail_points = 40, trail_offset = 3, loss =70 and
shortCondition = close <dtime_l4 and open >dtime_l4 and EMA > close
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit ("Exit Short","Short", trail_points = 110,trail_offset = 1, loss =120)