
Diese Strategie kombiniert zwei technische Indikatoren, den Moving Average und den Relativ Strong Index (RSI), um saisonale, periodische Merkmale zu erfassen und somit ein Handelssignal zu erzeugen. Der Vorteil der Strategie besteht darin, dass saisonale Verhaltensweisen sehr klar identifiziert werden können, aber es besteht auch das Risiko, von falschen Signalen irregeführt zu werden. Die Einstellungen der Parameter können durch Anpassung weiter optimiert werden, um die Effektivität der Strategie zu verbessern.
Diese Strategie berechnet zunächst einen Moving Average für einen bestimmten Zeitraum n, um die mittelfristige Trendrichtung der Preise zu erfassen. Dann berechnet man den RSI-Indikator für diesen Moving Average, um zu beurteilen, ob man sich derzeit überkauft oder überverkauft befindet. Der RSI beurteilt die aktuelle Marktstimmung durch die Berechnung des Verhältnisses zwischen den Anstiegen und den Rückgängen innerhalb eines bestimmten Zeitraums.
Wenn der RSI unterhalb des Kurses ein Verkaufssignal erzeugt, das bedeutet, dass der Kurs überkauft ist, kann er gekauft werden. Darüber hinaus hat die Strategie einen Monats- und Datumsbereich, der nur zwischen bestimmten Monaten und Daten gehandelt wird, um saisonale Merkmale zu erfassen.
Es besteht die Gefahr, von falschen Signalen in die Irre geführt zu werden. Ein Trendwechsel, der beispielsweise durch außersaisonale Überraschungen ausgelöst wird, kann zu einem unangemessenen Handelssignal führen. Die Lösung besteht darin, den Datumsbereich des Monats anzupassen, um das Risiko möglicher Ereignisse zu vermeiden.
Wenn ein Trendwechsel eintritt, kann es zu Abweichungen zwischen dem Moving Average und dem RSI kommen, was zu einer Inkonsistenz der Handelssignale führt. Die Lösung besteht darin, die Moving Average-Parameter entsprechend anzupassen, um die Perioden zu verkürzen, um einen Trendwechsel schneller zu erfassen.
Die voraussichtliche Monatsdatumsrange kann von der Zeit abweichen, in der die tatsächlichen Jahreszeiten auftreten. Die Lösung besteht darin, die Parameter für die Saisonrange anhand historischer Daten zu testen, um sie genauer zu bestimmen.
Die Lösung besteht darin, einen breiteren Spannungsbereich einzurichten, um nicht von kleinen Schwankungen getäuscht zu werden.
Es können weitere Hilfsindikatoren eingeführt werden, z. B. der STOCH, um strengere Filterbedingungen einzurichten und falsche Signale zu reduzieren.
Es können mehr verschiedene Kombinationen von Parametern getestet werden, um optimale Parameter zu finden, um die Effektivität der Strategie zu verbessern. Zum Beispiel die Anpassung der Moving Average-Periode, die Auf- und Abwärtsparameter des RSI usw.
Die schrittweise Optimierungsmethode kann die Parameterräume automatisch durchsuchen, um die optimale Kombination von Parametern zu finden.
Es ist möglich, mehr historische Daten zu sammeln, um Strategien mit Hilfe von Machine Learning zu trainieren und zu optimieren.
Es kann in Betracht gezogen werden, eine Stop-Loss-Strategie einzuführen und die Geldverwaltung zu optimieren.
Die Strategie nutzt die Kombination aus Moving Averages und RSI-Indikatoren mit saisonalen Faktoren, um ein vollständigeres Trend- und Überkauf-Überverkauf-Erkennungssystem zu bilden. Der Vorteil der Strategie besteht darin, dass die saisonale Entwicklung eindeutig identifiziert und diese Handelsmöglichkeiten erfasst werden können. Es besteht ein gewisses Risiko, dass es fehlgeleitet wird, aber die Strategie kann durch Parameteranpassung, Einführung von Hilfsindikatoren und Methoden des maschinellen Lernens optimiert werden.
/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title = " RSI of MA Strategy ",shorttitle="MARSI Strategy",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,commission_type=strategy.commission.percent,commission_value=0.1,initial_capital=1)
lengthofma = input(15,minval=1,title="Length of MA")
len = input(14, minval=1, title="Length")
upperband = input(70,minval=1,title='Upper Band for RSI')
lowerband = input(30,minval=1,title="Lower Band for RSI")
src=sma(close,lengthofma)
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi, color=purple)
band1 = hline(upperband)
band0 = hline(lowerband)
fill(band1, band0, color=purple, transp=90)
longCond = crossover(rsi,lowerband)
shortCond = crossunder(rsi,upperband)
monthfrom =input(1)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)
if ( longCond )
strategy.entry("LONG", strategy.long, stop=close, oca_name="TREND", comment="LONG")
else
strategy.cancel(id="LONG")
if ( shortCond )
strategy.entry("SHORT", strategy.short,stop=close, oca_name="TREND", comment="SHORT")
else
strategy.cancel(id="SHORT")