Strategie für kombinierte Kerzenmuster mehrerer Modelle


Erstellungsdatum: 2023-10-17 15:53:06 zuletzt geändert: 2023-10-17 15:53:06
Kopie: 0 Klicks: 671
1
konzentrieren Sie sich auf
1617
Anhänger

Strategie für kombinierte Kerzenmuster mehrerer Modelle

Überblick

Diese Strategie wird durch die Kombination von mehreren Kettenformmodellen für den Handel mit Aktien angewendet. Sie kombiniert das Packet-Line-Modell, das Empty-Heart-Cell-Modell und das Cross-Star-Modell, um Handelsmöglichkeiten unter verschiedenen Marktbedingungen zu erfassen.

Grundsätze

Die Kernlogik dieser Strategie besteht darin, mehrere Regeln für die Ermittlung von Antennenform zu erstellen, die dann zu einem Handelssignal kombiniert werden.

Zunächst definiert es einige grundlegende Variablen, um die Eigenschaften der Wicklung zu beschreiben, wie die Größe der Wicklungseinheit body, den Open- und den Close-Preis.

Es definiert dann 3 Tradingbar-Typen, basierend auf der Beziehung zwischen dem Schlusskurs und dem Eröffnungskurs des Kurses: 1 für den Kurs, -1 für den Kurs und 0 für den Kurs.

Auf dieser Grundlage wurden drei Regeln für die Beurteilung der Form der Zwiebel entwickelt:

  1. Engulfing Pattern: Die aktuelle K-Leitung umschließt die vorherige K-Leitung und erzeugt ein Kauf- oder Verkaufssignal.

  2. Harami-Pattern: Die oberste K-Leitung umschließt die aktuelle K-Leitung und erzeugt ein Kauf- oder Verkaufssignal.

  3. Harami Cross Pattern: Kombination aus einem leeren Kreuz und einem Kreuz, die ein Kauf- oder Verkaufssignal erzeugen.

Diese Antennenform-Regeln ermöglichen die Ermittlung von Kauf- und Verkaufszeiten. Zusätzliche Bedingungen, wie z. B. die Begrenzung der Handelszeiträume, werden verwendet, um unzulässige Handelssignale zu filtern.

Im Handel wird zuerst die Position beurteilt, und wenn sie sich gegen die Richtung des Signals richtet, wird die Position gelöscht, und dann wird die Position in der Richtung des Signals eröffnet.

Vorteile

  • Eine einzelne Form kann von bestimmten Marktumständen stark beeinflusst werden. Eine Kombination von Formen kann die Stabilität verbessern.

  • Gleichrichtung der Formenbestätigung, Zusammenfassung der Beurteilungen, Vermeidung von Fehleinschätzungen. Verschiedene Formenmodelle beurteilen die Trends aus verschiedenen Blickwinkeln und können die Signale gegenseitig verifizieren.

  • Die Parameter sind anpassbar und anpassungsfähig. Benutzer können verschiedene Formenmodelle frei kombinieren, Parameter wie den Handelszeitbereich anpassen und flexibel auf Marktveränderungen reagieren.

  • Eine gute Trading-Logik. In Kombination mit Positionsentscheidung und Stop-Loss-Exit-Logik kann das Risiko effektiv kontrolliert werden.

Die Gefahr

  • Die Kombination von mehreren Parametern erhöht die Komplexität. Die Kombinationsübereinstimmung der einzelnen Parameter muss getestet werden, und eine falsche Kombination von Parametern kann die Wirksamkeit beeinträchtigen.

  • Die Einstellung der shape-Parameter ist erfahrungsabhängig. Die Einstellung von shape-Parametern, wie z. B. die Größe der Entität, muss erfahrungsgemäß angepasst werden.

  • Die Risiken einer einseitigen Positionierung. Nur ein Über- oder ein Leerlauf kann den Gewinnspielraum einschränken. Sie können durch die Einstellung von Parametern gleichzeitig mehr Leerläufe machen.

  • Es ist möglich, dass die Trendwende verpasst wird. Diese Strategie basiert auf der Gestaltsauszeichnung und kann keine Trendwende effektiv beurteilen. Die Zeit kann in Kombination mit anderen Indikatoren beurteilt werden.

Optimierung

  • Erhöhung der Stop-Loss-Strategie, um die Risiken einer einseitigen Haltung zu verringern.

  • In Kombination mit anderen technischen Indikatoren, um die Richtung der großen Trends zu bestimmen und einen Abwärtstrend zu vermeiden.

  • Test der Parameterpräferenzen verschiedener Sorten und Erstellung von Formbildern, die für verschiedene Sorten geeignet sind.

  • Zugabe von Machine-Learning-Algorithmen zur Unterstützung von Parameteroptimierung und Gestalterkennung durch KI.

Zusammenfassen

Die Strategie nutzt die Vorzüge verschiedener Kettenformate, um ein relativ stabiles und zuverlässiges Short-Line-Handelssystem zu bauen. Einige Parameter-Sets und Risikokontrollen müssen jedoch weiter optimiert werden, um sich an kompliziertere Marktumgebungen anzupassen. Insgesamt ist die Strategie sinnvoll und bietet eine breite Perspektive für eine intelligente Optimierung auf der Grundlage ausreichender Erfahrungen und Daten, unter anderem durch maschinelles Lernen.

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

//Noro
//2018

//@version=3
strategy(title = "Noro's CandleModels Tests", shorttitle = "CandleModels tests", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")

eng = input(true, defval = true, title = "Model Engulfing")
har = input(true, defval = true, title = "Model Harami")
harc = input(true, defval = true, title = "Model Harami Cross")

fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
rev = input(false, defval = false, title = "Reversive trading")

//Body
body = abs(close - open)
abody = sma(body, 10)

//MinMax Bars
min = min(close, open)
max = max(close, open)

//Signals
bar = close > open ? 1 : close < open ? -1 : 0
doji = body < abody / 10
up1 = eng and bar == 1 and bar[1] == -1 and min <= min[1] and max >= max[1]
dn1 = eng and bar == -1 and bar[1] == 1 and min <= min[1] and max >= max[1]
up2 = har and bar == 1 and bar[1] == -1 and min >= min[1] and max <= max[1]
dn2 = har and bar == -1 and bar[1] == 1 and min >= min[1] and max <= max[1]
up3 = harc and doji and bar[1] == -1 and low >= min[1] and high <= max[1]
dn3 = harc and doji and bar[1] == 1 and low >= min[1] and high <= max[1]
exit = ((strategy.position_size > 0 and bar == 1) or (strategy.position_size < 0 and bar == -1)) and body > abody / 2 and rev == false

//Trading
if up1 or up2 or up3
    if strategy.position_size < 0
        strategy.close_all()
        
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

if dn1 or dn2 or dn3
    if strategy.position_size > 0
        strategy.close_all()
        
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
    strategy.close_all()