CCI-Null-Überschreitungs-Trend nach Strategie

Schriftsteller:ChaoZhang, Datum: 2023-09-28 16:00:36
Tags:

Übersicht

Diese Strategie verwendet die Null-Kreuzungen des CCI-Indikators als Ein- und Ausstiegssignale, um die Trendrichtung zu erfassen.

Strategie Logik

  • Für den CCI-Indikator werden 20 Perioden verwendet.
  • Wenn der CCI über 0 liegt, gehen Sie mit einem Stop-Loss bei -100 lang.
  • Wenn der CCI unter 0 fällt, gehen Sie mit einem Stop-Loss bei 100 kurz.
  • Aussteigen, wenn die CCI wieder Null überschreitet.

Die Kernlogik besteht darin, die Null-Kreuzungen des CCI als Signale von Trendänderungen zu erfassen. Wenn der CCI von negativer zu positiver Zone geht, zeigt er an, dass sich die Preise aus der Überverkaufszone bewegt haben und einen Aufwärtstrend starten können. Wenn der CCI von positiver zu negativer Zone geht, zeigt er an, dass sich die Preise aus der Überkaufe bewegt haben und einen Abwärtstrend beginnen können. Die Strategie tritt auf die Kreuzungen ein und setzt einen angemessenen Stop-Loss fest, um das Risiko zu kontrollieren.

Analyse der Vorteile

  • Die Verwendung von CCI-Nullkreuzungen zur Bestimmung der Trendrichtung ist eine klassische Anwendung des Indikators.
  • Eine geeignete CCI-Länge filtert Lärm aus und erfasst wichtige Trendwechselpunkte.
  • Nur ein Eintrag pro Trend, mit Stops, reduziert den Überhandel, konzentriert die Mittel für große Gewinne.
  • Die CCI-Parameter und die Stoppdistanz sind für eine bessere Universalität optimiert.

Risikoanalyse

  • CCI kann falsche Kreuzungssignale geben und unnötige Verluste verursachen.
  • Eine unzulässige Stoppverlustdistanz kann zu breit oder zu eng sein.
  • Eine falsche CCI-Länge kann nützliche kurzfristige Möglichkeiten ausschließen.
  • Es besteht ein Risiko einer Zeitverzögerung, da die CCI möglicherweise hinter der tatsächlichen Trendbildung zurückbleibt und zu einem späten Eintritt führt.

Lösungen:

  • Hinzufügen anderer Indikatoren zur Bestätigung, Vermeidung falscher CCI-Überfahrten.
  • Dynamische Anpassung der Stoppdistanz.
  • Optimieren Sie die CCI-Länge, um die Trends über Zeiträume hinweg zu erfassen.
  • Die Eintrittsregeln sind entspannter, es gibt keine strengen Anforderungen an die Null-Überfahrt.

Optimierungsrichtlinien

Die Strategie kann in folgenden Bereichen weiter optimiert werden:

  1. Optimieren Sie die CCI-Parameterlänge, um die beste Einstellung zu finden. Testen Sie verschiedene Längen und bewerten Sie die Rentabilität und Gewinnrate.

  2. Hinzufügen anderer Indikatoren wie KDJ, MACD zur Bestätigung, vermeiden Sie falsche CCI-Signale.

  3. Dynamische Anpassung der Stop-Loss-Distanz basierend auf der Marktvolatilität. Engere Stops bedeuten zeitnahe Stops, können aber zu empfindlich sein. Breitere Stops erlauben Trends zu halten, erhöhen jedoch den Verlust, wenn sie gestoppt werden.

  4. Beginnen Sie mit der Skalierung, wenn die CCI sich der Null-Kreuzung nähert, anstatt auf das genaue Kreuz zu warten.

  5. Neue Ausstiege, wenn sich der Trend umkehrt, wie zum Beispiel, wenn der Preis einen bestimmten Prozentsatz zurückzieht.

Schlussfolgerung

Diese Strategie verwendet CCI-Null-Kreuzungen, um die Trendrichtung zu bestimmen und mit angemessenen Stop-Loss-Kreuzungen einzutreten, um Trends effektiv zu verfolgen. Weitere Optimierungen bei Bestätigung, Parameter-Tuning, Einstiegsregeln und Ausgängen können sie zu einer stabilen Trend-Folge-Strategie machen. Händler können eine angemessene Stopp-Distanz, Haltezeit basierend auf Risikopräferenz und Gewinn mit dieser Strategie annehmen.


/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("CCI Level Zero Strategy (by Marcoweb) v1.0", shorttitle="CCI_L_Z_Strat_v1.0", overlay=true)

///////////// CCI
CCIlength = input(20, minval=1, title="CCI Period Length") 
CCIoverSold = -100
CCIoverBought = 100
CCIzeroLine = 0
CCI = cci(hlc3, CCIlength)
price = hlc3
vcci = cci(price, CCIlength)

source = close
buyEntry = crossover(source, CCIzeroLine)
sellEntry = crossunder(source, CCIzeroLine)
plot(CCI, color=black,title="CCI")
p1 = plot(CCIoverSold, color=blue,title="-100")
p2 = plot(CCIoverBought, color=red,title="100")
p3 = plot(CCIzeroLine, color=orange,title="0")


///////////// CCI 0Trend v1.0 Strategy 
if (not na(vcci))

    if (crossover(CCI, CCIzeroLine))
        strategy.entry("CCI_L", strategy.long, stop=CCIoverSold,  comment="CCI_L")
    else
        strategy.cancel(id="CCI_L")
        
    if (crossunder(CCI, CCIzeroLine))
        strategy.entry("CCI_S", strategy.short, stop=CCIoverBought,  comment="CCI_S")
    else
        strategy.cancel(id="CCI_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Mehr