Volatilitätsstandardabweichung DEV Handelsstrategie basierend auf dem Relative Strength Index RSI und dem gleitenden Durchschnitt SMA

RSI SMA DEV
Erstellungsdatum: 2024-05-28 10:57:06 zuletzt geändert: 2024-05-28 10:57:06
Kopie: 1 Klicks: 626
1
konzentrieren Sie sich auf
1617
Anhänger

Volatilitätsstandardabweichung DEV Handelsstrategie basierend auf dem Relative Strength Index RSI und dem gleitenden Durchschnitt SMA

Überblick

Die Pine Script-Strategie basiert auf dem relativ starken Index RSI und der Standarddifferenz DEV der Preisfluktuation, um den Einstiegspunkt zu beurteilen, indem sie den Preis mit dem oberen und unteren Kurs verglichen wird. Die RSI wird als Hilfsfilter verwendet, um ein Positionseingangssignal zu erzeugen, wenn der Preis den oberen und unteren Kurs erreicht und der RSI die Überkauf-Überverkauf-Bereich erreicht.

Strategieprinzip

  1. Der Preis wird berechnet aus dem gleitenden Durchschnitts-SMA und der Standarddifferenz DEV innerhalb der letzten 6 Perioden.
  2. Das ist die Mitte der Achse mit SMA + ThresholdEntry.*DEV ist auf der Bahn, SMA-thresholdEntry*DEV ist unterwegs, um einen Fluktuationskanal zu errichten.
  3. Der RSI-Indikator für die Schließung der letzten rsiLength-Zyklen wird ebenfalls berechnet.
  4. Ein Oversold-Signal wird erzeugt, wenn der Preis nach oben über die Unterbahn geht und der RSI kleiner ist als der Oversold-Wert.
  5. Wenn der Preis eine Abwärtsbrüche aufweist und der RSI größer ist als die Überkaufschwelle rsiOverbought, wird ein Leerstandssignal erzeugt.
  6. Mit SMA als Mittel-Achse, SMA+thresholdExit*DEV ist auf der Bahn, SMA-thresholdExit*Der DEV ist unterwegs, um einen weiteren, schmaleren Ausgang zu bauen.
  7. Bei Überlagerungen wird der Überlagerungsgeld ausgezahlt, wenn der Preis nach unten bricht oder der RSI größer ist als die Überkaufgrenze.
  8. Bei einer leeren Position wird die Position gelöscht, wenn der Preis nach oben aus der Bahn gerät oder der RSI kleiner als der Überverkaufsschnitt ist.

Analyse der Stärken

  1. Mit Hilfe von Preisbewegungen und Dynamikindikatoren kann man falsche Signale effektiv filtern.
  2. Durch die dynamische Anpassung der Kanalbreite an die Volatilität kann die Strategie an unterschiedliche Marktbedingungen angepasst werden.
  3. Es gibt zwei Arten von Kanälen, die zu Beginn eines Kurswechsels einen Verlust verhindern, einen Rückzug kontrollieren und nach der Entwicklung des Trends einen Gewinn erzielen können.
  4. Die Code-Logik und die Parameter-Einstellungen sind klar, leicht zu verstehen und zu optimieren.

Risikoanalyse

  1. Wenn der Markt weiterhin einseitig ist, kann die Strategie zu früh zum Stillstand kommen und den Trendgewinn verpassen.
  2. Die Einstellung der Parameter hat einen großen Einfluss auf die Leistung der Strategie, wobei die Optimierung der Parameter für verschiedene Sorten und Perioden erforderlich ist.
  3. Die Strategie hat einen größeren Vorteil in den Schaukel- und Trendmärkten. Wenn die langfristigen Trends plötzlich umgekehrt werden, kann die Strategie zu einem größeren Rückzug führen.
  4. Die festgelegte Parameter-Einstellung kann außer Kraft gesetzt werden, wenn sich die Asset-Volatilität des Index stark ändert.

Optimierungsrichtung

  1. Es kann versucht werden, Trends zu bestimmen, indem man Indikatoren einführt, wie z. B. die langfristige mittlere Kreuzung, ADX, etc., um Trends und Schwankungen zu unterscheiden und verschiedene Parameter einzustellen.
  2. Berücksichtigen Sie die Verwendung von flexibleren Volatilitätsindikatoren wie ATR, um die Kanalbreite der Volatilität dynamisch anzupassen.
  3. Bevor Sie eine Position eröffnen, sollten Sie die Kursentwicklung untersuchen, um festzustellen, ob sie sich in einem klaren Trend befindet.
  4. Die verschiedenen Parameterkombinationen können durch genetische Algorithmen, Netzsuche und andere Methoden optimiert werden, um die optimale Parameterstellung zu finden.
  5. Berücksichtigen Sie die Verwendung verschiedener Parameter-Sätze für die Mehrkopf- und die Leerkopf-Positionen, um die Risikogruppe zu steuern.

Zusammenfassen

Die Strategie, die durch die Kombination von Volatilitätskanal und relativ starken Index, in Bezug auf die RSI-Indikator, während der Preis-Wochel, um die Position zu eröffnen, kann besser zu erfassen, die phasische Trend, die Zeit zu stoppen und zu gewinnen. Die Strategie ist jedoch die Performance der Parameter-Setting ist empfindlich, die für verschiedene Marktumgebung und das Ziel der Vermögenswerte optimiert werden müssen, während die Einführung von anderen Indikatoren zu berücksichtigen, um die Markttrends zu unterstützen, um die Vorteile der Strategie zu nutzen.

Strategiequellcode
/*backtest
start: 2024-05-20 00:00:00
end: 2024-05-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"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/
// © tmalvao

//@version=5
strategy("Estratégia de Desvio Padrão com RSI", overlay=true, margin_long=100, margin_short=100)

// Parâmetros
length = input.int(20, title="Período do Desvio Padrão")
thresholdEntry = input.float(1.5, title="Limite de Entrada")
thresholdExit = input.float(0.5, title="Limite de Saída")
rsiLength = input.int(14, title="Período do RSI")
rsiOverbought = input.int(70, title="RSI Overbought")
rsiOversold = input.int(30, title="RSI Oversold")

// Cálculo do Desvio Padrão
price = close
stdDev = ta.stdev(price, length)

// Média Móvel Simples
sma = ta.sma(price, length)

// Limites baseados no Desvio Padrão
upperLimit = sma + thresholdEntry * stdDev
lowerLimit = sma - thresholdEntry * stdDev
exitUpperLimit = sma + thresholdExit * stdDev
exitLowerLimit = sma - thresholdExit * stdDev

// Cálculo do RSI
rsi = ta.rsi(price, rsiLength)

// Condições de Entrada com RSI
longCondition = ta.crossover(price, lowerLimit) and rsi < rsiOversold
shortCondition = ta.crossunder(price, upperLimit) and rsi > rsiOverbought

// Condições de Saída com RSI
exitLongCondition = ta.crossunder(price, exitLowerLimit) or rsi > rsiOverbought
exitShortCondition = ta.crossover(price, exitUpperLimit) or rsi < rsiOversold

// Plotar Linhas
plot(upperLimit, color=color.red, title="Limite Superior")
plot(lowerLimit, color=color.green, title="Limite Inferior")
plot(exitUpperLimit, color=color.orange, title="Limite de Saída Superior")
plot(exitLowerLimit, color=color.blue, title="Limite de Saída Inferior")
plot(sma, color=color.gray, title="SMA")
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(rsi, title="RSI", color=color.purple)

// Estratégia de Trade
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

if (exitLongCondition)
    strategy.close("Long")

if (exitShortCondition)
    strategy.close("Short")