
Die Strategie basiert auf dem klassischen Commodity Channel Index (CCI) und wird nur mit mehreren Köpfen durchgeführt. Wenn der CCI-Indikator auf einem sehr niedrigen Niveau (CCI <-150 oder Benutzerdefinierte Schwellenwerte) liegt und die Stärke wieder erreicht wird (CCI> CCI der Vorwurzel K-Linie) und gleichzeitig die Preisintensitätsschwelle selbst gefiltert wird (d. h. der K-Linie, die ein Signal sendet, muss ein Schlusskurs über einem bestimmten Bereich des Eröffnungspreises sein - festgelegt auf 0,25%), wird das System in den Markt gebracht.
Diese Strategie wird verwendet, um eine hohe Gewinnrate (über 50%) zu erzielen, anstatt die gesamte Länge des Trendfangens zu verfolgen. Daher ist sie für Trader geeignet, die potenzielle Verluste nicht ertragen können.
Die Funktionen ta.sma() und ta.dev() werden verwendet, um die CCI-Indikatoren und ihre Bandbreiten zu erstellen.
Wählen Sie mit Input den Startdatum des Handels und stellen Sie die Rückmeldungsfenster ein.
Einstiegsvoraussetzungen: Unter CCI durchbrechen Sie die Tieflinie und beginnen Sie zu steigen, während Sie verlangen, dass der Abschlusspreis der Signal-K-Linie 0,25% über dem Eröffnungspreis liegt.
Die Spieler müssen sich nach dem ersten Schritt auf die Linie setzen und den Ball aus dem Spiel werfen.
Ausgangskondition 2: Überschreiten der Stop-Loss-Linie, Verlust aus dem Spiel.
Die Strategie besteht darin, die Eintrittszeiten nach der Stärke der CCI-Indikatoren zu wählen und gleichzeitig das Risiko der Verlustkontrolle zu nutzen.
Diese Strategie hat folgende Vorteile:
Der CCI-Indikator identifiziert Überkäufe und Überverkäufe und nutzt so die Chancen für eine Umkehrung.
Es ist nur möglich, in mehrere Richtungen zu fahren, um das Risiko von Fehlbewegungen zu vermeiden.
Die Preise werden mit Hilfe von Preiseffekten gefiltert, um sicherzustellen, dass die Preise bei der Eintrittszeit eine Unterstützung bilden.
Schadensbegrenzungsmechanismen zur Kontrolle von Einzelschäden und zur effektiven Verwaltung von Geldern.
Die Retrieval-Parameter sind flexibel und können die Eingangsfilterbedingungen anpassen.
Die Gewinnquote ist höher und eignet sich für Investoren, die auf die Vermögensverwaltung achten.
Die Strategie ist klar, der Code ist einfach zu verstehen.
Die Strategie birgt einige Risiken:
Wenn man nur mehrere Richtungen macht, kann man leicht die kurze Linie übersehen.
CCI-Parameter sind nicht korrekt eingestellt, was zu einer Auslöschung führen kann.
Die Stop-Loss-Einstellungen sind zu locker, um die Verluste wirksam zu kontrollieren.
Die Vermögenswerte der Banken sind zu hoch, die Stop-Loss-Regelung wurde durchbrochen und die Verluste wurden höher.
Eine zu hohe Transaktionsfrequenz führt zu Kostenbelastungen.
Entsprechende Risikomanagementmaßnahmen:
Optimieren Sie die CCI-Parameter und suchen Sie nach dem optimalen Wert.
Anpassung der Stop-Loss-Marge, um ein Gleichgewicht zwischen Risiko und der Wahrscheinlichkeit zu finden, dass die Stop-Loss-Marge überschritten wird.
Die Eintrittsfrequenz wird unter Berücksichtigung der Transaktionskosten kontrolliert.
Es ist wichtig, dass der Handel in einer einseitigen Richtung vermieden wird, in Kombination mit Trends und Zonen.
Diese Strategie kann in folgenden Bereichen optimiert werden:
Die Verwendung von dynamischen Stop-Losses, die Stop-Loss-Distanz wird entsprechend der Marktschwankungen angepasst.
In Kombination mit MACD und anderen Indikatoren vermeidet man eine zu lockere Stop-Loss-Strategie.
Es gibt viele Möglichkeiten, um zu verkaufen, aber es gibt auch Möglichkeiten, um zu verkaufen, wenn der Index überhitzt ist.
Berücksichtigen Sie die Kosten der Transaktion und legen Sie die Mindeststop-Distanz fest.
Die Optimierungsparameter werden in Kombination mit dem strategischen Zeitrahmen zur Suche nach der optimalen Kombination verwendet.
Automatische Optimierung der Parameter mittels maschineller Lernmethoden.
Das Modul zur Vermögensverwaltung wurde hinzugefügt und die Positionen wurden dynamisch angepasst.
Insgesamt nutzt die Strategie die Überkauf-Überverkauf-Charakteristik des CCI-Indikators, um bei der Bildung von Unterstützungswerten mehr zu tun und durch Stop-Loss-Risiken einen hohen Gewinn zu erzielen. Der Vorteil der Strategie liegt in der einfachen und einfachen Bedienung und der Risikokontrolle.
/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title='CCI High Performance long only', overlay=false )
src = input(close)
length = input.int(20, title='Period', minval=1)
lossp = input.float(8, title='Stop Loss percentage', minval=0.5, step=0.5)
scart = input.float(0.25, title='Close of the signal bar higher than Open %', minval = 0)
upperline = input.int(150, title='Upper Band', minval=0, step=10)
lowline = input.int(-150, title='Low Band', maxval=0, step=10)
// construction of CCI (not on close but in totalprice) and of bands
ma = ta.sma(src, length)
cci = (src - ma) / (0.015 * ta.dev(src, length))
plot(cci, 'CCI', color=color.new(#996A15, 0))
band1 = hline(upperline, 'Upper Band', color=#C0C0C0, linestyle=hline.style_dashed)
band0 = hline(lowline, 'Lower Band', color=#C0C0C0, linestyle=hline.style_dashed)
fill(band1, band0, color=color.new(#9C6E1B, 90), title='Background')
// === INPUT BACKTEST RANGE ===
fromMonth = input.int(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromDay = input.int(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromYear = input.int(defval = 2016, title = "From Year", minval = 1970)
thruMonth = input.int(defval = 1, title = "Thru Month", minval = 1, maxval = 12)
thruDay = input.int(defval = 1, title = "Thru Day", minval = 1, maxval = 31)
thruYear = input.int(defval = 2112, title = "Thru Year", minval = 1970)
// === FUNCTION EXAMPLE limit for backtest ===
start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window
window() => time >= start and time <= finish ? true : false // create function "within window of time"
//ENTRY CONDITIONS
// strategy: enter when CCI is under the low line and starts increasing. The filter is that the signal candle should mark a close higher than a x-percent
// (0.25%) of the open
// Exit when either when it reaches the target of a prices highest than high level of CCI or fixed stop loss (in percentage)
scart_level = open * (1+scart/100)
entryl = cci[1] < lowline[1] and cci > cci[1] and close > scart_level and window()
exit1 = cci> upperline
strategy.entry('Long', strategy.long, when=entryl)
strategy.close('Long', when=exit1, comment='target')
// money management (only stop loss)
losspel = strategy.position_avg_price * (1 - lossp / 100)
fixed_stop_long = close < losspel
strategy.close('Long', when=fixed_stop_long, comment='Stop Loss')