Schritt für Schritt Aufbau einer Strategie für den gleitenden Durchschnitt

Schriftsteller:ChaoZhang, Datum: 26.09.2023
Tags:

Übersicht

Die Level by Level Build Up Moving Average Strategy ist eine Handelsstrategie, die auf RENKO-Charts basiert. Sie verwendet gleitende Durchschnittsindikatoren, um den Preis und die Überschreitungen zwischen gleitenden Durchschnitten verschiedener Zeitrahmen als Handelssignale zu glätten.

Strategie Logik

Die Kernlogik dieser Strategie umfaßt:

  1. Verwenden Sie Eingabe, um RENKO-Zeitrahmen und ATR-Periode auszuwählen

  2. Berechnen Sie den RENKO-Preis und die Farbe. Drehen Sie nach oben, wenn der Preis über den vorherigen RENKO-Preis plus den aktuellen ATR fällt. Drehen Sie nach unten, wenn der Preis unter den vorherigen RENKO-Preis minus den aktuellen ATR fällt.

  3. Verwenden Sie zwei Ganzzahlen BUY und SELL, um aktuelle Long- und Short-Positionen aufzuzeichnen.

  4. Wenn es keine Short-Position gibt, geht man Long. Wenn es keine Long-Position gibt, gehen Sie kurz, wenn es schon lang ist, schließen Sie die Long-Position.

  5. RENKO-Diagramm mit Grafik.

Mit dieser Logik kann die Strategie Long oder Short eröffnen, wenn der Preis das vorherige Niveau durchbricht, und Positionen schließen, wenn der Preis umkehrt.

Analyse der Vorteile

Diese Strategie hat folgende Vorteile:

  1. RENKO filtert Lärm und identifiziert Trends RENKO kann effektiv Preislärm filtern und signifikante Trends identifizieren.

  2. Bewegliche Durchschnittsquerschnitte erzeugen Handelssignale Crossovers zwischen gleitenden Durchschnitten verschiedener Zeitrahmen können zuverlässige Handelssignale liefern und falsche Signale aus Lärm vermeiden.

  3. Dynamische Haltestellen mit ATR Die Verwendung von ATR zur dynamischen Einstellung von Stop-Loss kann Stops aufgrund der aktuellen Volatilität vernünftiger machen und Stops, die zu breit oder zu eng sind, vermeiden.

  4. Kombination von Trend und gleitendem Durchschnitt Die Kombination von Trend- und gleitenden Durchschnittsindikatoren nutzt die Stärken beider - Trends mit RENKO zu erfassen und gleichzeitig zuverlässige Signale mit gleitenden Durchschnitten zu gewährleisten.

Risikoanalyse

Die Strategie birgt auch einige Risiken:

  1. Falsche Tendenzbestimmung Die Art und Weise, wie RENKO Trends bestimmt, kann zu unnötigen Longs oder Shorts führen.

  2. Falsche Signale von gleitenden Durchschnittsquerschnitten
    Es können falsche Signale von gleitenden Durchschnitts-Kreuzungen auftreten, was zu unnötigen Trades führt.

  3. Unzulässige ATR-Parameter Eine falsche Einstellung der ATR-Periode kann auch zu zu breiten oder zu engen Stopps führen.

  4. Whipsaw-Märkte In seitlichen oder starken Whipsaw-Märkten kann RENKO viele unnötige Trades generieren und Kapital einnehmen.

Optimierungsrichtlinien

Die Strategie kann in folgenden Aspekten optimiert werden:

  1. Optimierung der RENKO- und ATR-Parameter
    Passen Sie diese Parameter an, um falsche RENKO-Signale zu minimieren und Trends besser zu erkennen.

  2. Hinzufügen von gleitenden Durchschnitts-Crossover-Filtern Fügen Sie mehr gleitende Durchschnitte hinzu und verlangen Sie, dass die meisten von ihnen sich ausrichten, bevor Sie Signale erzeugen, um falsche Signale zu filtern.

  3. Hinzufügen anderer Indikatorfilter Zum Beispiel, Volumen hinzufügen, um nur Trades, wenn Volumen bestätigt Preis, um Fallen zu vermeiden.

  4. Verbesserung der Stop-Loss-Strategie Finden Sie heraus, wie Sie Trend-basierte Stopps verwenden, anstatt einfach ATR zu verfolgen, um logischere Stopps zu erhalten.

  5. Optimieren Sie das Geldmanagement Untersuchen Sie die optimale Kapitalzuweisung im Rahmen dieser Strategie, um die Rendite zu maximieren und gleichzeitig die Risiken zu kontrollieren.

Schlussfolgerung

Insgesamt ist dies eine Strategie, die es wert ist, in Live-Märkten optimiert und getestet zu werden. Die Kernidee der Verwendung von RENKO für Trend- und gleitende Durchschnitts-Crossovers als gefilterte Signale ist gut. Mit dynamischen ATR-Stopps kann es zu einem soliden Trendfolgensystem werden. Der nächste Schritt besteht darin, es weiterhin auf der Grundlage der bekannten Risiken zu optimieren, um Parameter und Leistung zu verbessern.


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

//@version=4
strategy("Renko Level Strategy 2", shorttitle="RLS2", overlay=true, pyramiding=2, currency=currency.USD, default_qty_value=50, initial_capital=2000, default_qty_type=strategy.percent_of_equity) 

TF = input(title='TimeFrame', type=input.resolution, defval="D")
ATRlength = input(title="ATR length", type=input.integer, defval=14, minval=2, maxval=100)

HIGH = security(syminfo.tickerid, TF, high)
LOW = security(syminfo.tickerid, TF, low)
CLOSE = security(syminfo.tickerid, TF, close)
ATR = security(syminfo.tickerid, TF, atr(ATRlength))

float RENKO = na
color COLOR = na
int BUY = na
int SELL = na
bool UP = na
bool DN = na

RENKO := na(RENKO[1]) ? close : RENKO[1]
COLOR := na(COLOR[1]) ? color.white : COLOR[1]
BUY := na(BUY[1]) ? 0 : BUY[1]
SELL := na(SELL[1]) ? 0 : SELL[1]
UP := false
DN := false

if(close > RENKO[1]+ATR[1])
    UP := true
    RENKO := close
    COLOR := color.lime
    SELL := 0
    BUY := BUY+1

if(close < RENKO[1]-ATR[1])
    DN := true
    RENKO := close
    COLOR := color.red
    BUY := 0
    SELL := SELL+1
    

if(BUY[1]==1 and BUY==2)
    strategy.entry("long", strategy.long)//, limit = RENKODN)

if(DN)
    strategy.cancel_all()
    strategy.close_all(comment = "close")


plot(RENKO, style=plot.style_line, linewidth=2, color=COLOR)

Mehr