VWAP Volatilitätsumkehrstrategie Long- und Short-Breakout-System auf dem Standardabweichungskanal

VWAP SD SMA ATR RSI
Erstellungsdatum: 2025-02-20 09:33:31 zuletzt geändert: 2025-02-20 09:33:31
Kopie: 1 Klicks: 469
2
konzentrieren Sie sich auf
319
Anhänger

VWAP Volatilitätsumkehrstrategie Long- und Short-Breakout-System auf dem Standardabweichungskanal VWAP Volatilitätsumkehrstrategie Long- und Short-Breakout-System auf dem Standardabweichungskanal

Überblick

Die Strategie ist ein Handelssystem, basierend auf VWAP (Value-Weighted Average Price) und Standard Differential Channels, das den Handel durch die Identifizierung von Preisumkehrformen an den Grenzen der Kanäle durchführt. Die Strategie kombiniert die Handelsideologie von Dynamik und Mean Return, um Handelschancen zu erfassen, wenn der Preis einen wichtigen technischen Punkt durchbricht.

Strategieprinzip

Der Kern der Strategie besteht darin, mit VWAP als Preiszentrum einen Auf- und Abwärtstransfer zu erstellen, der die Standarddifferenz von 20 Zyklen nutzt. Suchen Sie nach Mehr-Chancen in der Nähe der unteren Bahn und nach Leer-Chancen in der Nähe der oberen Bahn.

  • Mehrfache Konditionierung: Der Preis bildet eine bullish-reversed Form in der unteren Bahn und bricht anschließend den vorherigen Yang-Linie-Hoch
  • Leerlauf: Preis bildet eine Abwärtsform auf der Oberfläche und bricht anschließend ein vorangegangenes Negativtief
  • Stopp-Einstellungen: Ziel VWAP und Oberbahn, Ziel Unterbahn
  • Stop-Loss-Einstellungen: Überschreiten mit Rückwärts-Sonnenwert-Tiefpunkt, Kaufen mit Rückwärts-Sonnenwert-Hochpunkt

Strategische Vorteile

  1. Die Kombination von Trend-Tracking und Reversal-Trading bietet die Möglichkeit, eine Fortsetzung des Trends zu erfassen, aber auch die Möglichkeit, eine Reversal-Chance zu ergreifen.
  2. Mit VWAP als zentralen Indikator wird die tatsächliche Nachfrage und Versorgung des Marktes besser reflektiert
  3. Mit der Batch-Stop-Methode können Sie mit unterschiedlichen Preisen profitieren
  4. Die Stop-Loss-Einstellungen sind vernünftig und ermöglichen eine effektive Risikokontrolle.
  5. Strategie-Logik ist klar, Parameter-Einstellungen sind einfach, leicht zu verstehen und auszuführen

Strategisches Risiko

  1. In stark schwankenden Märkten können häufige Stop-Losses ausgelöst werden
  2. Die Horizontale Ordnungsphase kann zu viele Falschsignale erzeugen.
  3. VWAP-berechneter Zeitzyklus ist empfindlicher
  4. Standard-Differenz-Kanalbreiten sind möglicherweise nicht für alle Marktbedingungen geeignet
  5. Vielleicht verpasst man einige wichtige Trendchancen

Richtung der Strategieoptimierung

  1. Einführung von Verkehrsfiltern zur Verbesserung der Signalqualität
  2. Erhöhung der Trendbestätigungskennzahlen, wie beispielsweise der Moving Average
  3. Dynamische Anpassung der Standarddeviation-Zyklen an unterschiedliche Marktbedingungen
  4. Optimierung der Schrumpfquote und Verbesserung der Gesamterlöse
  5. Zeitfilter, um nicht zu ungünstigen Zeiten zu handeln
  6. Erwägen Sie die Erhöhung der Volatilitätsindikatoren und Optimierung der Positionsverwaltung

Zusammenfassen

Es handelt sich um ein vollständiges Handelssystem, das VWAP, Standard Differential Channels und Preisformeln kombiniert. Die Strategie wird gehandelt, indem sie nach Rückwärtssignalen bei wichtigen Preisen sucht, und das Risiko wird mit Stop-Losses und vernünftigen Stop-Losses verwaltet. Obwohl es einige Einschränkungen gibt, kann die Strategie durch die empfohlene Optimierungsrichtung die Stabilität und Profitabilität der Strategie weiter verbessern.

Strategiequellcode
/*backtest
start: 2025-01-20 00:00:00
end: 2025-02-19 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/

//@version=6  
strategy("VRS Strategy", overlay=true)  

// Calculate VWAP  
vwapValue = ta.vwap(close)  

// Calculate standard deviation for the bands  
stdDev = ta.stdev(close, 20) // 20-period standard deviation for bands  
upperBand = vwapValue + stdDev  
lowerBand = vwapValue - stdDev  

// Plot VWAP and its bands  
plot(vwapValue, color=color.blue, title="VWAP", linewidth=2)  
plot(upperBand, color=color.new(color.green, 0), title="Upper Band", linewidth=2)  
plot(lowerBand, color=color.new(color.red, 0), title="Lower Band", linewidth=2)  

// Signal Conditions  
var float previousGreenCandleHigh = na  
var float previousGreenCandleLow = na  
var float previousRedCandleLow = na  

// Detect bearish candle close below lower band  
bearishCloseBelowLower = close[1] < lowerBand and close[1] < open[1]  

// Detect bullish reversal candle after a bearish close below lower band  
bullishCandle = close > open and low < lowerBand // Ensure it's near the lower band  
candleReversalCondition = bearishCloseBelowLower and bullishCandle  

if (candleReversalCondition)  
    previousGreenCandleHigh := high[1]  // Capture the high of the previous green candle  
    previousGreenCandleLow := low[1]     // Capture the low of the previous green candle  
    previousRedCandleLow := na            // Reset previous red candle low  

// Buy entry condition: next candle breaks the high of the previous green candle  
buyEntryCondition = not na(previousGreenCandleHigh) and close > previousGreenCandleHigh  

if (buyEntryCondition)  
    // Set stop loss below the previous green candle  
    stopLoss = previousGreenCandleLow   
    risk = close - stopLoss // Calculate risk for position sizing  

    // Target Levels  
    target1 = vwapValue // Target 1 is at VWAP  
    target2 = upperBand  // Target 2 is at the upper band  

    // Ensure we only enter the trade near the lower band  
    if (close < lowerBand)  
        strategy.entry("Buy", strategy.long)  
        
        // Set exit conditions based on targets  
        strategy.exit("Take Profit 1", from_entry="Buy", limit=target1)  
        strategy.exit("Take Profit 2", from_entry="Buy", limit=target2)  
        strategy.exit("Stop Loss", from_entry="Buy", stop=stopLoss)  

// Sell signal condition: Wait for a bearish candle near the upper band  
bearishCandle = close < open and high > upperBand // A bearish candle should be formed near the upper band  
sellSignalCondition = bearishCandle  

if (sellSignalCondition)  
    previousRedCandleLow := low[1] // Capture the low of the current bearish candle  

    // Sell entry condition: next candle breaks the low of the previous bearish candle  
    sellEntryCondition = not na(previousRedCandleLow) and close < previousRedCandleLow  

    if (sellEntryCondition)  
        // Set stop loss above the previous bearish candle  
        stopLossSell = previousRedCandleLow + (high[1] - previousRedCandleLow) // Set stop loss above the bearish candle  
        targetSell = lowerBand // Target for sell is at the lower band  

        // Ensure we only enter the trade near the upper band  
        if (close > upperBand)  
            strategy.entry("Sell", strategy.short)  
            
            // Set exit conditions for sell  
            strategy.exit("Take Profit Sell", from_entry="Sell", limit=targetSell)  
            strategy.exit("Stop Loss Sell", from_entry="Sell", stop=stopLossSell)  

// Reset previous values when a trade occurs  
if (strategy.position_size > 0)  
    previousGreenCandleHigh := na  
    previousGreenCandleLow := na  
    previousRedCandleLow := na