Die Ressourcen sind geladen. Beförderung...

Handelssystem für mehrjährige Preisniveaus-Trend-Breakthroughs auf der Grundlage der wichtigsten Preisniveaus

Schriftsteller:ChaoZhang, Datum: 2025-01-06 16:06:30
Tags:HoDEinheitPMHPMLPDHPDL- Nein.RSIATRADX

img

Übersicht

Diese Strategie ist ein Breakout-Handelssystem, das auf mehreren Schlüsselpreisniveaus basiert. Es verfolgt hauptsächlich sechs kritische Preisniveaus: High of Day (HOD), Low of Day (LOD), Premarket High (PMH), Premarket Low (PML), Previous Day High (PDH) und Previous Day Low (PDL). Das System erzeugt Handelssignale durch Preisbreaks dieser Niveaus und führt Trades automatisch basierend auf Preis-Crossovers aus.

Strategieprinzipien

Die Kernlogik umfasst mehrere Schlüsselkomponenten:

  1. Berechnung der zentralen Preisniveaus: Mit der Funktion request.security werden Preisdaten aus verschiedenen Zeiträumen für die Berechnung von sechs zentralen Preisniveaus ermittelt.
  2. Eintrittsbedingungen: Eröffnet Long-Positionen, wenn der Preis über PMH oder PDH bricht; eröffnet Short-Positionen, wenn der Preis unter PML oder PDL bricht.
  3. Ausgangsbedingungen: Schließt Long-Positionen, wenn der Preis die HOD erreicht; schließt Short-Positionen, wenn der Preis die LOD erreicht.
  4. Visuelle Darstellung: Die Preise werden mit verschiedenen farbigen horizontalen Linien markiert - weiß für HOD, lila für LOD, orange für PDH, blau für PDL, grün für PMH und rot für PML.

Strategische Vorteile

  1. Mehrdimensionale Preisreferenz: Überwacht die wichtigsten Preisniveaus über mehrere Zeiträume hinweg für eine umfassende Marktanalyse.
  2. Klarer Breakout-Logik: Erzeugt Handelssignale, die auf Preisbreakouts mit expliziten Handelsregeln basieren.
  3. Hohe Automatisierung: Berechnet automatisch Preisniveaus und führt Trades aus, wodurch manuelles Eingreifen verringert wird.
  4. Starke Visualisierung: Zeigt die Preisniveaus durch verschiedene farbige horizontale Linien für eine intuitive Analyse an.
  5. Hohe Anpassungsfähigkeit: Anwendbar auf verschiedene Handelsinstrumente und Zeitabschnitte.

Strategische Risiken

  1. Risiko eines falschen Ausbruchs: Der Markt kann falsche Ausbrüche erzeugen, die zu falschen Signalen führen.
  2. Abhängigkeit von Volatilität: Die Strategie kann in Umgebungen mit geringer Volatilität unterdurchschnittlich erfolgreich sein.
  3. Unzureichende Risikokontrolle: Es fehlen dynamische Stop-Loss- und Gewinnnahme-Mechanismen.
  4. Abhängigkeit vom Marktumfeld: Kann zu häufigen Geschäften in unterschiedlichen Märkten führen.
  5. Auswirkung von Schwankungen: Auf weniger liquiden Märkten kann es zu erheblichen Schwankungen kommen.

Strategieoptimierungsrichtlinien

  1. Hinzufügen von Filtern für technische Indikatoren:
  • Die RSI für die Überkauf-/Überverkaufsfilterung werden berücksichtigt.
  • Verwendung von ATR für dynamische Stop-Loss-Platzierungen
  • Integration von ADX zur Bestätigung der Trendstärke
  1. Verbesserung des Risikomanagements:
  • Einführung dynamischer Stop-Loss-Mechanismen
  • Hinzufügen von Trailing Stop Funktionalität
  • Schaffung eines maßgeschneiderten Gewinnsystems
  1. Optimieren Sie die Signalbestätigung:
  • Volumenbestätigung hinzufügen
  • Einbeziehung einer mehrzeitlichen Trendbestätigung
  • Einrichtung eines Signalverzögerungsbestätigungsmechanismus

Zusammenfassung

Diese Strategie erfasst Marktchancen durch Überwachung und Nutzung mehrerer Schlüsselpreisniveaus, verfügt über klare Logik und hohe Automatisierung. Sie birgt jedoch auch bestimmte Risiken, die durch technische Indikatorfilter und verbesserte Risikomanagementmechanismen angegangen werden müssen. Der Hauptvorteil der Strategie liegt in ihrem mehrdimensionalen Preisreferenzsystem, das eine bessere Erfassung des Markttrends ermöglicht, aber die praktische Anwendung erfordert spezifische Parameteranpassungen basierend auf verschiedenen Marktbedingungen.


/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 1h
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/
// © tradingbauhaus

//@version=6
strategy("HOD/LOD/PMH/PML/PDH/PDL Strategy by tradingbauhaus ", shorttitle="HOD/LOD Strategy", overlay=true)

// Daily high and low
dailyhigh = request.security(syminfo.tickerid, 'D', high)
dailylow = request.security(syminfo.tickerid, 'D', low)

// Previous day high and low
var float previousdayhigh = na
var float previousdaylow = na
high1 = request.security(syminfo.tickerid, 'D', high[1])
low1 = request.security(syminfo.tickerid, 'D', low[1])
high0 = request.security(syminfo.tickerid, 'D', high[0])
low0 = request.security(syminfo.tickerid, 'D', low[0])

// Yesterday high and low
if (hour == 9 and minute > 30) or hour > 10
    previousdayhigh := high1
    previousdaylow := low1
else
    previousdayhigh := high0
    previousdaylow := low0

// Premarket high and low
t = time("1440", "0000-0930") // 1440 is the number of minutes in a whole day.
is_first = na(t[1]) and not na(t) or t[1] < t
ending_hour = 9
ending_minute = 30

var float pm_high = na
var float pm_low = na

if is_first and barstate.isnew and ((hour < ending_hour or hour >= 16) or (hour == ending_hour and minute < ending_minute))
    pm_high := high
    pm_low := low
else 
    pm_high := pm_high[1]
    pm_low := pm_low[1]

if high > pm_high and ((hour < ending_hour or hour >= 16) or (hour == ending_hour and minute < ending_minute))
    pm_high := high
    
if low < pm_low and ((hour < ending_hour or hour >= 16) or (hour == ending_hour and minute < ending_minute))
    pm_low := low

// Plotting levels
plot(dailyhigh, style=plot.style_line, title="Daily high", color=color.white, linewidth=1, trackprice=true)
plot(dailylow, style=plot.style_line, title="Daily low", color=color.purple, linewidth=1, trackprice=true)
plot(previousdayhigh, style=plot.style_line, title="Previous Day high", color=color.orange, linewidth=1, trackprice=true)
plot(previousdaylow, style=plot.style_line, title="Previous Day low", color=color.blue, linewidth=1, trackprice=true)
plot(pm_high, style=plot.style_line, title="Premarket high", color=color.green, linewidth=1, trackprice=true)
plot(pm_low, style=plot.style_line, title="Premarket low", color=color.red, linewidth=1, trackprice=true)

// Strategy logic
// Long entry: Price crosses above PMH or PDH
if (ta.crossover(close, pm_high) or ta.crossover(close, previousdayhigh)) and strategy.opentrades == 0
    strategy.entry("Long", strategy.long)

// Short entry: Price crosses below PML or PDL
if (ta.crossunder(close, pm_low) or ta.crossunder(close, previousdaylow)) and strategy.opentrades == 0
    strategy.entry("Short", strategy.short)

// Exit long: Price reaches HOD
if strategy.position_size > 0 and ta.crossover(close, dailyhigh)
    strategy.close("Long")

// Exit short: Price reaches LOD
if strategy.position_size < 0 and ta.crossunder(close, dailylow)
    strategy.close("Short")

Verwandt

Mehr