Mehrzeitraum-Fair-Value-Gap-Durchbruchsstrategie basierend auf historischen Backtests

FVG BOS HTF RR SL
Erstellungsdatum: 2025-01-17 14:45:10 zuletzt geändert: 2025-01-17 14:45:10
Kopie: 0 Klicks: 454
1
konzentrieren Sie sich auf
1617
Anhänger

Mehrzeitraum-Fair-Value-Gap-Durchbruchsstrategie basierend auf historischen Backtests

Strategieübersicht

Die Strategie ist ein umfassendes Handelssystem, das mehrere Zeitrahmenanalysen, Fair-Value-Gaps (FVG) und Breakout of Structure (BOS) kombiniert. Es identifiziert potenzielle Handelseinstiege, indem es Ausbrüche in der Preisstruktur in höheren Zeiträumen erkennt und gleichzeitig nach Fair-Value-Lücken sucht, die sich in niedrigeren Zeiträumen bilden können. Die Strategie integriert außerdem ein Risikomanagementsystem, einschließlich der automatischen Festlegung von Stop-Loss- und Gewinnzielen.

Strategieprinzip

Die Kernlogik der Strategie basiert auf drei Hauptsäulen: Erstens, die Verwendung längerer Zeitrahmen (standardmäßig 1 Stunde oder mehr) zur Identifizierung von Ausbrüchen in der Preisstruktur (BOS), die den grundlegenden Rahmen für die Handelsrichtung bieten. Zweitens: Suchen Sie in kürzeren Zeiträumen nach einem Fair Value Gap (FVG). Die Bildung eines FVG weist darauf hin, dass in diesem Bereich ein potenzielles Ungleichgewicht zwischen Angebot und Nachfrage auf dem Markt besteht. Schließlich werden diese beiden Bedingungen mit der aktuellen Preisposition kombiniert, um bei einer günstigen Preisposition ein Handelssignal auszulösen. Das System verwaltet das Risiko jedes Handels durch das Risiko-Ertrags-Verhältnis und den Stop-Loss-Faktor.

Strategische Vorteile

  1. Mehrdimensionale Analyse: Durch die kombinierte Analyse mehrerer Zeiträume wird die Zuverlässigkeit von Handelssignalen verbessert.
  2. Perfektes Risikomanagement: Integrierte Einstellung des Risiko-Rendite-Verhältnisses und Stop-Loss-Kontrollmechanismus sorgen dafür, dass bei jeder Transaktion eine klare Risikokontrolle besteht.
  3. Visuelles Feedback: Die Strategie bietet klares visuelles Feedback, einschließlich der Anzeige der FVG-Box und der Markierung potenzieller Handelsmöglichkeiten.
  4. Starke Anpassungsfähigkeit: Durch Parameteranpassung kann sich die Strategie an unterschiedliche Marktbedingungen und Handelsstile anpassen.

Strategisches Risiko

  1. Risiko eines falschen Ausbruchs: Es kann zu einem falschen Ausbruch auf dem Markt kommen, der falsche Handelssignale zur Folge hat. Die Lösung besteht darin, einen Signalbestätigungsmechanismus hinzuzufügen.
  2. Signalverzögerung: Aufgrund der Verwendung von Daten mit einem größeren Zeitrahmen kann es zu einer Signalverzögerung kommen. Es wird empfohlen, eine Bestätigung in Kombination mit anderen technischen Indikatoren durchzuführen.
  3. Marktvolatilitätsrisiko: Während Zeiten hoher Volatilität ist die FVG-Formation möglicherweise nicht stabil genug. Dies kann durch eine Anpassung der Beobachtungslänge des FVG berücksichtigt werden.

Richtung der Strategieoptimierung

  1. Signalfilterung: Ein Lautstärkebestätigungsmechanismus kann hinzugefügt werden, um das Signal nur zu bestätigen, wenn die Lautstärke dies unterstützt.
  2. Dynamische Parameter: Das Risiko-Rendite-Verhältnis und der Stop-Loss-Faktor können entsprechend der Marktvolatilität dynamisch angepasst werden.
  3. Trendfilterung: Fügen Sie Trendbeurteilungsindikatoren hinzu und öffnen Sie Positionen nur in der Trendrichtung.
  4. Zeitfilter: Fügen Sie Filter für den Handelszeitraum hinzu, um den Handel während ungünstiger Marktzeiten zu vermeiden.

Zusammenfassen

Die Strategie baut ein komplettes Handelssystem auf, indem sie die Analyse mehrerer Zeiträume, Durchbrüche in der Preisstruktur und Fair-Value-Lücken kombiniert. Seine Vorteile liegen in seinen mehrdimensionalen Analysemethoden und seinem perfekten Risikomanagementmechanismus, Händler müssen jedoch immer noch eine entsprechende Parameteroptimierung und Risikokontrolle basierend auf den tatsächlichen Marktbedingungen durchführen. Die nachfolgende Optimierung kann mit der Signalbestätigung, der dynamischen Parameteranpassung und der Filterung des Marktumfelds beginnen, um die Stabilität und Zuverlässigkeit der Strategie weiter zu verbessern.

Strategiequellcode
/*backtest
start: 2024-01-17 00:00:00
end: 2025-01-15 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy("ICT Strategy with Historical Backtest", overlay=true)

// === Настройки ===
tf = input.timeframe("60", title="Higher Timeframe (1H or above)")  // Таймфрейм для анализа BOS
fvg_length = input(3, title="FVG Lookback Length")                   // Длина для поиска FVG
risk_reward = input(2, title="Risk-Reward Ratio")                    // Риск-вознаграждение
show_fvg_boxes = input(true, title="Show FVG Boxes")                 // Показывать FVG
stop_loss_factor = input.float(1.0, title="Stop Loss Factor")         // Множитель для стоп-лосса

// === Переменные для анализа ===
var float bos_high = na
var float bos_low = na

// Получаем данные с более старшего таймфрейма
htf_high = request.security(syminfo.tickerid, tf, high)
htf_low = request.security(syminfo.tickerid, tf, low)
htf_close = request.security(syminfo.tickerid, tf, close)

// Определение BOS (Break of Structure) на старшем таймфрейме
bos_up = ta.highest(htf_high, fvg_length) > ta.highest(htf_high[1], fvg_length)
bos_down = ta.lowest(htf_low, fvg_length) < ta.lowest(htf_low[1], fvg_length)

// Обновляем уровни BOS
if (bos_up)
    bos_high := ta.highest(htf_high, fvg_length)
if (bos_down)
    bos_low := ta.lowest(htf_low, fvg_length)

// === Определение FVG (Fair Value Gap) ===
fvg_up = low > high[1] and low[1] > high[2]
fvg_down = high < low[1] and high[1] < low[2]

// Визуализация FVG (Fair Value Gap)
// if (show_fvg_boxes)
//     if (fvg_up)
//         box.new(left=bar_index[1], top=high[1], right=bar_index, bottom=low, bgcolor=color.new(color.green, 90), border_color=color.green)
//     if (fvg_down)
//         box.new(left=bar_index[1], top=high, right=bar_index, bottom=low[1], bgcolor=color.new(color.red, 90), border_color=color.red)

// === Логика сделок ===
// Условия для входа в Лонг
long_condition = bos_up and fvg_up and close < bos_high
if (long_condition)
    strategy.entry("Long", strategy.long, stop=low * stop_loss_factor, limit=low + (high - low) * risk_reward)

// Условия для входа в Шорт
short_condition = bos_down and fvg_down and close > bos_low
if (short_condition)
    strategy.entry("Short", strategy.short, stop=high * stop_loss_factor, limit=high - (high - low) * risk_reward)

// === Надписи для прогнозируемых сделок ===
if (long_condition)
    label.new(bar_index, low, text="Potential Long", color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small)

if (short_condition)
    label.new(bar_index, high, text="Potential Short", color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small)