Die Strategie basiert auf einfachen Moving Averages (SMA) und relativ starken RSI-Indikatoren (RSI), die durch eine eingestellte Einstiegssignallinie über den RSI-Wert und bei einem Schlusskurs unter dem SMA gebrochen werden, um einen Stop-Loss zu verfolgen oder den RSI erneut auszusetzen, um einen Stop-Loss auszulösen. Die Strategie kombiniert Trend-Folgen und Überkauf-Überverkauf-Indikatoren, um Kurzlinie-Umkehrmöglichkeiten zu erfassen.
Die Verwendung von SMA (SMA der 200-Zyklen) zur Bestimmung der Richtung des großen Trends, wenn die Preise unterhalb der SMA liegen, bietet eine Überhöhungsmöglichkeit.
Der RSI (Zyklus 14) wird verwendet, um Überkauf-Überverkauf zu beurteilen. Wenn der RSI 51 überschreitet, zeigt dies, dass die Macht des Verkäufers erhöht ist, und es ist möglich, aufzugreifen.
Nach dem Aufschlag der Position mit dem niedrigsten Schlusskurs als Tracking-Stopp. Wenn der RSI über 54 oder über 32 geht, wird der Stopp beendet.
Es gibt drei Arten von Stop Loss: Preis Stop, RSI Stop und Gewinn Stop.
In Kombination mit Trendfollowing und Überkauf-Überverkauf-Indikatoren kann die Genauigkeit des Einstiegs verbessert werden.
Die Verfolgung von Stop-Losses schützt die Gewinne von Preisschwankungen in Echtzeit und verhindert, dass die Stop-Losses zu steif sind.
Die zweiseitige Triggerung des RSI kann Gewinne sichern und Verluste durch Überreibungen verhindern.
Ein einfacher Indikator mit festen Parametern, geeignet für mittelschnelle Bedienungen und leicht zu beherrschen.
Die Einstellungen für SMA- und RSI-Parameter sind möglicherweise nicht für alle Sorten und Perioden geeignet und müssen optimiert werden.
Die tatsächlichen Gewinne und Verluste werden ohne Berücksichtigung der Transaktionskosten wie Gleitpunkte und Gebühren beeinträchtigt.
Ohne die Einbeziehung anderer Faktoren wie Handelsvolumen und Marktstrukturen können die Signale unzuverlässig sein.
Wenn Sie sich zu sehr auf die Indikatoren verlassen und die Preisentwicklung selbst ignorieren, können Sie den Wendepunkt verpassen.
Die Stop-Loss-Methode ist relativ starr und kann nicht mit massiven Marktveränderungen umgehen.
Testen und Optimieren von SMA-Zyklen und RSI-Parametern, um die optimale Kombination von Parametern zu finden.
Erwägen Sie die Einbeziehung von Volumenindikatoren, um eine geringe Anzahl falscher Durchbrüche zu vermeiden.
Eine Kombination aus anderen Indikatoren wie MACD, Brin-Band usw. kann getestet werden.
Zunehmender Einsatz von Machine Learning-Algorithmen, die auf historische Daten ausgerichtet sind, um die Signalgenauigkeit zu verbessern.
Optimierung der Stop-Loss-Methode, um sie flexibler und anpassungsfähiger zu machen.
Die Einführung eines Risikomanagements zur Kontrolle von Einzelschäden.
Die Strategie integriert die Vorzüge der beiden Indikatoren SMA und RSI und filtert dabei einige von den Lärm-Trading-Gelegenheiten aus. Die einfache Handelslogik ist einfach umzusetzen, muss aber immer noch an Parametern und Regeln getestet und optimiert werden, um langfristig stabil zu funktionieren. Darüber hinaus ist es auch erforscht, Kombinationen mit anderen Indikatoren oder Algorithmen zu erforschen, um die Strategie weiter zu stabilisieren.
/*backtest
start: 2022-10-01 00:00:00
end: 2023-10-07 00:00:00
period: 2d
basePeriod: 1d
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/
// © abdllhatn
//@version=5
// strategy("Alpha Short SMA and RSI Strategy", overlay=true, initial_capital=10000, default_qty_value=100)
// Inputs
sma_length = input(200, title="SMA Length")
rsi_length = input(14, title="RSI Length")
rsi_entry = input(51, title="RSI Entry Level")
rsi_stop = input(54, title="RSI Stop Level")
rsi_take_profit = input(32, title="RSI Take Profit Level")
// Indicators
sma_value = ta.sma(close, sma_length)
rsi_value = ta.rsi(close, rsi_length)
var float trailingStop = na
var float lastLow = na
// Conditions
shortCondition = ta.crossover(rsi_value, rsi_entry) and close < sma_value
if (shortCondition)
strategy.entry("Sell", strategy.short)
trailingStop := na
lastLow := na
if (strategy.position_size < 0)
if (na(lastLow) or close < lastLow)
lastLow := close
trailingStop := close
if not na(trailingStop) and close > trailingStop
strategy.close("Sell")
if (rsi_value >= rsi_stop)
strategy.close("Sell")
if (rsi_value <= rsi_take_profit)
strategy.close("Sell")
// Plot
plot(sma_value, color=color.red, linewidth=2)