Die Ressourcen sind geladen. Beförderung...

N Konzekutive Höhere Schließt Ausbruchstrategie

Schriftsteller:ChaoZhang, Datum: 2023-12-08 10:50:54
Tags:

img

Übersicht

Die Kernlogik dieser Strategie besteht darin, festzustellen, ob der Schlusskurs von N aufeinanderfolgenden Kerzen weiter steigt. Wenn ja, gehen Sie lang; andernfalls schließen Sie die Position. Dies kann den Aufwärtstrend des Aktienkurses erfassen und Gewinn erzielen.

Strategieprinzip

Der Kernindikator dieser Strategie ist der nCounter. Er vergleicht den Schlusskurs und den Eröffnungskurs der aktuellen Kerze, um zu beurteilen, ob der Preis steigt.

Insbesondere wenn close[1]>=open[1], fügt nCounter 1 hinzu, was einen Anstieg anzeigt; wenn close[1]

Wenn nCounter>=nLength, Ausgangssignal C1=1; andernfalls C1=0. Hier nLength ist die Anzahl der aufeinanderfolgenden aufsteigenden Kerzen, die wir definiert haben, um ein Signal zu erzeugen.

Nach Empfang des C1=1-Signals, wenn keine aktuelle Position vorhanden ist, gehen Sie lang; wenn Sie bereits in der langen Position sind, halten Sie an.

Wenn der Preis um einen bestimmten Prozentsatz unter den Einstiegspreis fällt, tritt der Stop-Loss aus der Position aus; steigt er um einen bestimmten Prozentsatz über den Einstiegspreis, wird der Gewinn erzielt.

Analyse der Vorteile

Dies ist ein typischer Trend nach einer Strategie mit folgenden Stärken:

  1. Es kann die Aufwärtstrendchancen des Aktienpreises nutzen, geeignet als lange Strategie
  2. N aufeinanderfolgende Steigerungen als Einstiegssignal können einen falschen Ausbruch effektiv filtern und unnötige Trades reduzieren
  3. Die Einstellung von Stop-Loss und Take-Profit kann das Abwärtsrisiko begrenzen und die Gewinne sichern
  4. Die Logik ist einfach und klar, leicht zu verstehen und zu ändern
  5. Handelsfrequenz kann durch Anpassung des nLength-Parameters gesteuert werden

Risikoanalyse

Diese Strategie birgt einige Risiken, hauptsächlich in folgenden Bereichen:

  1. Wenn sich der Aufwärtstrend umkehrt, kann das Versagen, den Verlust rechtzeitig zu stoppen, zu großen Verlusten führen.
  2. Wenn nLength-Set zu groß ist, können gute Einstiegsmöglichkeiten verpasst werden
  3. Es berücksichtigt nicht das Marktumfeld.
  4. Die Verwendung einheitlicher Parameter ohne Anpassung an unterschiedliche Bestandseigenschaften gilt möglicherweise nicht für einige Bestände

Um diese Risiken zu reduzieren, können wir strengere Stop-Losss festlegen, nLength optimieren, Marktbedingungen-Regeln hinzufügen oder Testparameter separat für verschiedene Aktien verwenden.

Optimierungsrichtlinien

Unter Berücksichtigung der oben genannten Risiken können wir die Strategie aus folgenden Aspekten optimieren:

  1. Sie können den Stop-Loss-Punkt entsprechend anhand der Preisänderung anpassen, um das Verlustrisiko zu reduzieren
  2. Optimieren Sie den nLength-Parameter. Testen Sie jeweils für verschiedene Arten von Aktien, um geeignete Parameterwerte zu finden
  3. Hinzufügen des Marktumfeldes Urteil. Zum Beispiel Pause Handel, wenn der Markt abstürzt, um zusätzliche Verluste auf dem Bärenmarkt zu vermeiden
  4. Zum Beispiel erfordern erweiterte Volumen während des Aufwärtstrends, um die Gültigkeit des Ausbruchs zu gewährleisten
  5. Setzen Sie Drawdown-Kontrolle wie maximal zulässige Verlustprozentsatz, maximal aufeinanderfolgende Verlustzeiten usw. zum Verlust stoppen automatisch die Kontrolle des Gesamtverlusts

Schlussfolgerung

Diese Strategie erfasst den Aufwärtstrend, indem sie N aufeinanderfolgende aufsteigende Kerzen erkennt. Sie kann effektiv dem Trend folgen. Die Vorteile sind einfache Logik, flexible Parameter-Tuning, Filterung falscher Ausbrüche. Es gibt aber auch einige Risiken. Sie muss Module wie Stop-Loss, Parameteroptimierung, Umweltbeurteilung hinzufügen, um zu verbessern. Insgesamt bietet diese Strategie ein wertvolles Basismodell für den quantitativen Handel. Sie kann nach kontinuierlicher Verbesserung zu einem leistungsstarken Handelswerkzeug werden.


/*backtest
start: 2023-01-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 05/02/2020
// Evaluates for n number of consecutive higher closes. Returns a value 
// of 1 when the condition is true or 0 when false.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="N Bars Up", shorttitle="NBU Backtest", overlay = false) 
nLength = input(4, minval=1)
input_takeprofit = input(20, title="Take Profit pip", step=0.01)
input_stoploss = input(10, title="Stop Loss pip", step=0.01)
nCounter = 0
nCounter := iff(close[1] >= open[1], nz(nCounter[1],0)+1,
             iff(close[1] < open[1], 0, nCounter))
C1 = iff(nCounter >= nLength, 1, 0)
posprice = 0.0
pos = 0
barcolor(nz(pos[1], 0) == -1 ? color.red: nz(pos[1], 0) == 1 ? color.green : color.blue ) 
posprice := iff(C1== 1, close, nz(posprice[1], 0)) 
pos := iff(posprice > 0, 1, 0)
if (pos == 0) 
    strategy.close_all()
if (pos == 1)
    strategy.entry("Long", strategy.long)
posprice := iff(low <= posprice - input_stoploss and posprice > 0, 0 ,  nz(posprice, 0))
posprice := iff(high >= posprice + input_takeprofit and posprice > 0, 0 ,  nz(posprice, 0))
plot(C1, title='NBU', color=color.green)

Mehr