
Diese Strategie führt einen langen und kurzen Zwei-Wege-Handel im Goldhandel durch eine Kombination aus einem Moving Average, einem relativ starken RSI und einer Abnahme-Form. Die Kreuzung der 21-Tage-, 50-Tage- und 200-Tage-Linien wird als primäres Handelssignal verwendet, wobei der RSI und die Abnahme-Form die Filtersignale unterstützen, um den Markteintritt weiter zu optimieren.
Die Strategie basiert hauptsächlich auf den folgenden Aspekten:
Die Gold-/Death-Fork-Anzeige der 21- und der 200-Tage-Linie dient als Hauptindikator für die Trendwende. Es ist ein bullish Signal, wenn die 21-Tage-Linie die 200-Tage-Linie überschreitet, und ein bearish Signal, wenn die 21-Tage-Linie die 200-Tage-Linie überschreitet.
Setzen Sie die Überkauf- und Überverkauf-Linien des RSI-Indikators, die überkauft werden, wenn der RSI über 70 liegt, und überverkauft werden, wenn der RSI unter 30 liegt. Bei bullish Signalen sollte der RSI in der Nicht-Überkauf-Zone sein, und bei bearish Signalen sollte der RSI in der Nicht-Überverkauf-Zone sein, um zu vermeiden, dass der Höchststand gekauft und der Tiefstand verkauft wird.
Beim Ausstieg eines Beobachtungssignals wird eine Beobachtungs-Candle angezeigt, um eine Trendwende zu bestätigen.
Wenn diese drei Bedingungen gleichzeitig erfüllt sind, wird ein Handelssignal erzeugt und ein Auftrag erteilt, wodurch ein strengeres Set von Filtern gebildet wird.
Der größte Vorteil dieser Strategie besteht darin, dass die Verwendung von mehreren Parametern und Indikatoren für eine umfassende Beurteilung, besser zu filtern Fehlsignale, die unnötige Stop-Loss zu reduzieren. Die konkreten Vorteile zeigen sich in den folgenden Aspekten:
Die Moving Average-Strategie hat eine gewisse Stabilität.
Die RSI-Indikator-Einstellungen vermeiden die Kaufhöhe und den Verkaufsschwellen.
Die Aufnahme von Engulf-Formen bestätigt die Zuverlässigkeit der Trendwende weiter.
Die Stop-Loss-Marge ist gering und die Risiken können wirksam kontrolliert werden.
Obwohl diese Strategie gut ist, was die Signalfilterung und die Risikokontrolle betrifft, gibt es Schwächen und Risiken bei jeder Strategie.
Die Parameter-Einstellungen sind kompliziert und erfordern möglicherweise eine große Anzahl von Tests, um die optimale Kombination von Parametern zu finden.
Die Eintrittszeichen sind sehr streng und man kann einige gute Chancen verpassen.
In extremen Situationen gibt es eine gewisse Verzögerung.
Die langfristige Stabilität des Betriebs muss noch überprüft werden.
Wir können diese Risiken verbessern und optimieren, indem wir Parameter anpassen, die Code-Logik optimieren und andere Indikatoren kombinieren.
Die Strategie ist gut auf mehreren Kennzahlen ausgerichtet, aber es gibt noch Optimierungsmöglichkeiten. Die wichtigsten Optimierungsmöglichkeiten sind:
Anpassung der Parameter zur Suche nach der optimalen Kombination. Es ist möglich, die Auswirkungen verschiedener Parameter auf die Ergebnisse zu vergleichen, indem mehr historische Daten zurückgegriffen werden, um eine bessere Parameter-Setzung zu finden.
In Kombination mit anderen Indikatoren unterstützt. Indikatoren wie MACD, KD und andere können auch helfen, die Zeit der Trendwende zu bestimmen. Die richtige Einführung anderer Indikatoren kann zu einem stärkeren Indikatorsystem führen.
Optimierung und Optimierung der Stop-Loss-Mechanismen. Die vorhandenen Stop-Loss-Magniten sind klein, so dass weitere Tests mit Stop-Loss-Magniten durchgeführt werden können, um unnötige Positionswechsel zu reduzieren.
Daten über längere Zeiträume zu testen, um die langfristige Wirksamkeit der Strategie zu überprüfen. Die Stabilität der Strategie wird durch mehrjährige Rückmeldungen und Marktergebnisse überprüft.
Die Strategie verwendet mehrere technische Analyse-Tools wie beispielsweise Moving Averages, RSI-Indikatoren und Absorptionsformen, um langfristige und wechselseitige Operationen im Goldhandel durchzuführen. Durch die Einstellung von Parametern und die Signalfilterung wird ein strengeres Strategie-System gebildet, das das Risiko bis zu einem gewissen Grad kontrolliert.
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Gold Trading with Simons Strategy", overlay=true)
// Parameters
length21 = input(21, minval=1, title="Length for 21 MA")
length50 = input(50, minval=1, title="Length for 50 MA")
length200 = input(200, minval=1, title="Length for 200 MA")
rsiLength = input(14, minval=1, title="RSI Length")
rsiOverbought = input(70, title="RSI Overbought Level")
rsiOversold = input(30, title="RSI Oversold Level")
takeProfitPercent = input(4, title="Take Profit %")
stopLossPercent = input(1, title="Stop Loss %")
// Moving Averages
ma21 = sma(close, length21)
ma50 = sma(close, length50)
ma200 = sma(close, length200)
// RSI
rsi = rsi(close, rsiLength)
// Engulfing Pattern
isBullishCandle(c) => close[c] > open[c]
isBearishCandle(c) => close[c] < open[c]
bearishEngulfing = isBullishCandle(1) and isBearishCandle(0) and close < open[1] and open > close[1]
bullishEngulfing = isBearishCandle(1) and isBullishCandle(0) and close > open[1] and open < close[1]
// Calculate Take Profit and Stop Loss Levels
takeProfitLevel(entryPrice) => entryPrice * (1 + takeProfitPercent / 100)
stopLossLevel(entryPrice) => entryPrice * (1 - stopLossPercent / 100)
// Entry Conditions
longCondition = crossover(ma21, ma200) and close > ma21 and close > ma50 and rsi < rsiOverbought and bullishEngulfing
shortCondition = crossunder(ma21, ma200) and close < ma21 and close < ma50 and rsi > rsiOversold and bearishEngulfing
// Entry
if (longCondition)
entryPrice = close
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit", "Long", limit=takeProfitLevel(entryPrice))
strategy.exit("Stop Loss", "Long", stop=stopLossLevel(entryPrice))
if (shortCondition)
entryPrice = close
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit", "Short", limit=takeProfitLevel(entryPrice))
strategy.exit("Stop Loss", "Short", stop=stopLossLevel(entryPrice))
// Plotting
plot(ma21, color=color.blue, title="21 MA")
plot(ma50, color=color.orange, title="50 MA")
plot(ma200, color=color.red, title="200 MA")
hline(rsiOverbought, "RSI Overbought", color=color.green)
hline(rsiOversold, "RSI Oversold", color=color.red)
plot(rsi, "RSI", color=color.purple)