
Die Strategie ist eine auf der Breakout-Theorie basierende lang- und kurzfristige quantitative Handelsstrategie. Sie beurteilt, ob ein Bruch aufgetreten ist, indem sie den höchsten Schlusskurs der letzten 100 Handelstage berechnet. Wenn der Schlusskurs des letzten Tages den höchsten Schlusskurs der vorherigen 100 Tage übersteigt, wird ein Kaufsignal ausgegeben.
Die Kernlogik der Strategie basiert auf der Technischen Analyse und der Breakout-Theorie. Die Breakout-Theorie besagt, dass ein Marktwechsel eintritt, wenn der Preis die Höchst- oder Tiefpunkte der vorherigen Zeit überschreitet und möglicherweise in einen neuen Auf- oder Abwärtstrend eintritt.
Insbesondere wird die Strategie durch Aufruf der integrierten Pine Script-Funktionta.highest(), berechnen Sie den höchsten Schlusskurs der letzten 100 Bars. Vergleichen Sie dann, ob der Schlusskurs der aktuellen K-Linie höher ist als der höchste Schlusskurs. Wenn der Schlusskurs den 100-Tage-Höchstschlusskurs überschreitet, wird ein Kaufsignal erzeugt.
Sobald die Strategie in die Mehrpositionen eingegeben ist, wird eine Stop-Loss-Plating-Bedingung festgelegt. Durch Aufrufta.barssince()Die Funktion erfasst die Anzahl der Barren, die nach dem Überschreiten der Anzahl der Barren überschritten werden. Wenn die Anzahl der Barren 25 überschreitet, wird die Stop-Loss-Gleichstellung erzwungen.
Die Logik der Strategie kann folgendermaßen zusammengefasst werden:
Der größte Vorteil dieser Strategie besteht darin, die Wendepunkte der Preisentwicklung zu erfassen, was zu einer höheren Erfolgsrate der nachfolgenden Transaktionen führt. Zusätzlich kann die Einstellung der Stop-Loss-Logik auch die Einzelschäden wirksam kontrollieren.
Die konkreten Vorteile sind:
1. Kurzfristige Geschäfte mit höherer Erfolgsrate
Die Breakout-Theorie besagt, dass der Preis, nachdem er die kritische Preiszone überschritten hat, einen neuen Trend darstellt. Die Strategie wurde auf dieser Theorie basierend entwickelt und hat daher eine höhere Wahrscheinlichkeit, den Zeitpunkt der Preisumkehr zu erfassen und einen Kursverlauf zu erzielen.
2. Risiken sind kontrollierbar und es gibt eine Stop-Loss-Mechanismus
Die Strategie bietet einen Ausfall von 25 Handelstagen, um einzelne Verluste in Grenzen zu halten, große Verluste zu vermeiden und das Gesamtrisiko zu kontrollieren.
3. geeignet für die langfristige Halterung
Die Default-Holdingzeit der Strategie beträgt 25 Handelstage, was etwa 1 Monat entspricht. Dies ist eine relativ geeignete Haltungsdauer für eine mittlere und lange Linie Strategie, die nicht zu kurz ist, um Whipsaw zu verursachen, und die zu lange Haltungsdauer erhöht das Risiko nicht.
4. Wenige Parameter, leicht zu optimieren
Die wichtigsten Parameter dieser Strategie sind nur die Durchbruch-Fenster-Periode und die Haltedauer. Die Parameter sind weniger leicht zu testen und zu optimieren, um die optimalen Parameter zu finden, und die Betriebskosten sind niedrig.
5. Wechselbar zwischen mehreren Sorten
Die Strategie verwendet keine spezifischen Indikatoren für eine bestimmte Sorte, sondern ihre Handelslogik ist für mehrere Sorten wie Aktienindizes, Devisen, Waren und Kryptowährungen anwendbar und kann je nach Marktlage zwischen verschiedenen Sorten wechseln, um die Anpassungsfähigkeit der Strategie zu erhöhen.
Obwohl diese Strategie die oben genannten Vorteile hat, ist sie in der Praxis mit Risiken behaftet, die sich hauptsächlich in folgenden Punkten manifestieren:
1. Die Gefahr, eingekettet zu werden
Die Strategie hat keine bewegliche Stop-Loss- oder Tracking-Stop-Mechanismen. Wenn ein eingehender Trend nicht entsteht oder ein Breakout tatsächlich nur ein falscher Breakout ist, kann es leicht zu einem Stop-Loss-Punkt gebracht werden. Dies ist der größte Risikopunkt der Strategie.
2. Parameter, die möglicherweise optimiert werden müssen
Die Standardparameter sind nicht unbedingt optimal, und es kann notwendig sein, die Parameterkonfiguration zu finden, die für die jeweilige Sorte und die Marktumgebung geeignet ist, und zwar durch eine Optimierungsmethode, die die Strategie anpasst und verfolgt.
3. Effektivität und Marktrelevanz
Die Strategie ist übermäßig auf Trends angewiesen, schlechte Performance in der Bilanz und schlechte Anpassungsfähigkeit an unterschiedliche Marktumgebungen. Wenn es sich um einen schwankenden Markt handelt, wird häufig ein Stop-Loss ausgelöst oder ausgelöst, und die Verluste können instabil sein.
Um die Strategie in der Praxis zu stabilisieren, können Optimierungen und Verbesserungen in folgenden Bereichen vorgenommen werden:
1. Erhöhung der mobilen Stop-Loss-Mechanismen
Ein Tracking-Stopp-Logik, ein tracking-Stopp-Logik, ein tracking-Stopp-Logik, ein tracking-Stopp-Logik, ein tracking-Stopp-Logik, ein tracking-Stopp-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik, ein tracking-Logik
2. Anpassung der Parameter an die Marktbedingungen
Eine Liste von Bandbreiten oder Werten kann für die beiden wichtigsten Parameter der Strategie eingestellt werden (Breakout-Fenster und Haltedauer), wobei die Werte der Parameter dynamisch entsprechend der relativen Stärke des Marktes eingestellt werden (z. B. durch Berechnung der Verwendung des ATR-Indikators), um die Parameter weiter zu optimieren.
3. Zusammenfassung der Trend-Regel
Die Risiken, die bei unklaren Trends oder falschen Durchbrüchen eingehalten werden, werden minimiert. Sie können die Ergebnisse einer vorherigen Trendanalyse (z. B. visuelle Beurteilung oder quantitative Analyse) kombinieren, um dann, wenn die Analyse einen klareren Trend feststellt, an einem Handel teilzunehmen.
4. Verschiedene Sorten und Marktumgebungen
Optimierung von Strategieparametern und -regeln für die Testung in verschiedenen Varianten (z. B. Aktienindizes, Waren, Devisen und Kryptowährungen) und für verschiedene Handelsbereiche (z. B. Sonnenlinie, 60 Minuten usw.), Anpassung an ein breiteres Marktumfeld und Stabilität.
Der Durchbruch Stop Loss Reversal Strategie ist einfach zu bedienen, die Beurteilung der Trends und die Fähigkeit, zu greifen, ist stark, kann effektiv zu konfigurieren, mehr freie Positionen, dauerhafte profitabel. Wir haben es durch eine Code-Analyse, die Strategie zu identifizieren, die Stärken und Risiken, und gibt Empfehlungen, die weitere Steigerung der Strategie Stabilität und Praxis. Nach der Optimierung und Verbesserung, glauben, dass die Strategie kann ein hervorragendes Grundmodell für quantitative Investitionen werden.
/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © All_Verklempt
//@version=5
strategy("Breakout Strategy", overlay=true)
// Input variable for breakout period
breakoutPeriod = input.int(100, title="Breakout Period", minval=1)
// Calculate the highest close of the past breakout period
highestClose = ta.highest(close, breakoutPeriod)
// Input variables for start and end dates
startYear = input.int(2022, title="Start Year", minval=1900)
startMonth = input.int(1, title="Start Month", minval=1, maxval=12)
startDay = input.int(1, title="Start Day", minval=1, maxval=31)
endYear = input.int(2023, title="End Year", minval=1900)
endMonth = input.int(12, title="End Month", minval=1, maxval=12)
endDay = input.int(31, title="End Day", minval=1, maxval=31)
// Convert start and end dates to timestamp
startDate = timestamp(startYear, startMonth, startDay, 00, 00)
endDate = timestamp(endYear, endMonth, endDay, 23, 59)
// Entry condition: Breakout and higher close within the specified date range
enterLong = close > highestClose[1] and close > close[1]
// Exit condition: Close the long position after twenty-five bars
exitLong = ta.barssince(enterLong) >= 25
// Strategy logic
if (enterLong)
strategy.entry("Long", strategy.long)
if (exitLong)
strategy.close("Long")