Quantitative Handelsstrategie, die den doppelten gleitenden Durchschnitt und den RSI-Indikator kombiniert


Erstellungsdatum: 2023-11-21 12:09:50 zuletzt geändert: 2023-11-21 12:09:50
Kopie: 0 Klicks: 669
1
konzentrieren Sie sich auf
1617
Anhänger

Quantitative Handelsstrategie, die den doppelten gleitenden Durchschnitt und den RSI-Indikator kombiniert

Überblick

Diese Strategie verwendet die Kombination von Doppel-Even-Line-Crossing und RSI-Indikatoren, um die Richtung des Trends zu erkennen und überkaufen und überverkaufen, wenn die Kaufbedingungen erfüllt sind und die Verkaufbedingungen erfüllt sind. Die Strategie zielt darauf ab, die Even-Line-Crossing zu nutzen, um die Richtung des Trends zu bestimmen, während der RSI-Indikator verwendet wird, um zu vermeiden, dass der Markt an der Spitze überkauft wird und der Markt am Boden leer ist, um bessere Gewinne zu erzielen.

Strategieprinzip

Wenn ein schneller 9-Zyklus-Mittelwert eine langsame 50-Zyklus-Mittelwertlinie durchquert, ist dies ein typisches Mehrkopfsignal. Wenn der RSI gleichzeitig 5 Punkte größer als der vorherige Zyklus und kleiner als 70 ist, ist dies ein guter Zeitpunkt, um zu überkaufen, wenn der RSI in der Region vor dem Überkauf ist.

Wenn die schnelle 9-Zyklus-Durchschnittslinie unterhalb der langsamen 50-Zyklus-Durchschnittslinie durchschritten wird, bedeutet dies, dass man sich in einem leeren Markt befindet und eine Off-Position benötigt.

Analyse der Stärken

  • Vermeiden Sie, dass Sie durch falsche Durchbrüche in die Irre geführt werden
  • RSI-Indikatoren vermeiden Fehlentscheidungen bei Marktwendepunkten
  • Flexible Anpassung der Mittellinienphase an verschiedene Sorten und Zeitdimensionen
  • Kontrollierbare Stop-Loss-Strategien

Risikoanalyse

  • Durchschnittliche Kreuzungen bei der Entscheidungsfindung sind manchmal ineffizient und können zu Verlusten führen
  • Die falsche Einstellung der RSI-Parameter kann dazu führen, dass die beste Einstiegszeit verpasst wird
  • Es ist wichtig, sich darauf zu konzentrieren, ob der Umsatz die Preise stützt.
  • Unvernünftige Verhaltensweisen bei Ereignissen erfordern eine manuelle Intervention

Optimierungsrichtung

  • Optimierung der RSI-Parameter für optimale Ergebnisse
  • Vermeidung von Falschsignalen in Kombination mit einem Volumenindikator
  • Optimale Durchschnittsparameter für Tests in verschiedenen Sorten und Zeitdimensionen
  • Entspannung der Stop-Loss-Marge und Vermeidung von Einbußen

Zusammenfassen

Diese Strategie kann durch die Beurteilung der Richtung der doppelten Mittellinien-Kreuzung und die Vermeidung von Auf- und Abwärtsverfolgung eine stabile Ertragslage erzielen. Sie muss jedoch auf die Lagerung der Mittellinien-Kreuzungssignale und die Anpassung der RSI-Parameter achten und sich auf die Beziehung zwischen Preis und Handelsvolumen konzentrieren. Durch kontinuierliches Testen und Optimieren wird diese Strategie voraussichtlich bessere Ergebnisse erzielen.

Strategiequellcode
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © joshuajcoop01

//@version=5
strategy("Bitpanda Coinrule Template",
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2020, 1, 1, 0, 0)
notInTrade = strategy.position_size <= 0


// RSI
length = input(14)
vrsi = ta.rsi(close, length)

// Moving  Averages for Buy Condition
buyFastEMA = ta.ema(close, 9)
buySlowEMA = ta.ema(close, 50)
buyCondition1 = ta.crossover(buyFastEMA, buySlowEMA)


increase = 5
if ((vrsi > vrsi[1]+increase) and buyCondition1 and vrsi < 70 and timePeriod)
    strategy.entry("Long", strategy.long)


// Moving  Averages for Sell Condition
sellFastEMA = ta.ema(close, 9)
sellSlowEMA = ta.ema(close, 50)
plot(request.security(syminfo.tickerid, "60", sellFastEMA), color = color.blue)
plot(request.security(syminfo.tickerid, "60", sellSlowEMA), color = color.green)


condition = ta.crossover(sellSlowEMA, sellFastEMA)
//sellCondition1 = request.security(syminfo.tickerid, "60", condition)

strategy.close('Long', when = condition and timePeriod)