Diese Strategie verbessert den klassischen RSI-Indikator, indem sie Kauf- und Verkaufswarnlinien festlegt. Wenn der RSI-Indikator die Warnlinien durchbricht, werden entsprechende Kauf- oder Verkaufsoperationen durchgeführt. Gleichzeitig bietet die Strategie auch die Fähigkeit, lange und kurze Positionen zu wechseln.
Diese Strategie löst Kauf- und Verkaufssignale über das Histogramm des RSI-Indikators aus.
(1) Berechnet der Wert des RSI-Indikators:
RSIMain = (rsi(xPrice, RSIPeriod) - 50) * RSIHistoModify
wobei xPrice die Preisreihe, RSIPeriod der Parameter zur Berechnung des RSI und RSIHistoModify ein Skalierungsfaktor für den RSI-Wert sind.
(2) Setzen Sie die Kaufwarnlinie BuyAlertLevel und die Verkaufwarnlinie SellAlertLevel. Wenn der RSI-Indikator über der Kaufwarnlinie ist, ist es ein Kaufsignal. Wenn er unter der Verkaufwarnlinie ist, ist es ein Verkaufsignal.
(3) Zeichnen Sie das Histogramm des RSI-Indikators auf, um Kauf- und Verkaufssignale zu visualisieren.
(4) Positionspositionen festlegen. Wenn ein Signal ausgelöst wird, setzen Sie die Positionen auf 1 (long) oder -1 (short).
(5) Bestimmung der Eintrittsrichtung und des Preises auf der Grundlage des Werts des Pos.
(1) Verbessert die Verwendung des RSI-Indikators und zeigt Kauf- und Verkaufssignale deutlicher an.
(2) Anpassbare Parameter zur Anpassung des RSI-Indikators und der Warnlinien an die verschiedenen Märkte.
(3) Intuitive Anzeige von Kauf- und Verkaufssignalen Histogramm.
(4) Fähigkeit zur Wahl zwischen positiven oder umgekehrten Handelsgeschäften.
(5) Die Strategieidee ist einfach und klar, leicht zu verstehen und zu ändern.
(1) Anfällig für die Erzeugung falscher Signale.
(2) Keine Berücksichtigung von Stop-Loss, mit dem Risiko großer Verluste.
(3) Auch eine falsche Einstellung der Parameter kann zu einem Ausfall führen.
(1) Kombination mit anderen Indikatoren, um falsche Signale auszufiltern, z. B. bei der Berücksichtigung von Handelsvolumenüberschreitungen.
(2) Einrichtung von Stop-Loss-Mechanismen.
(3) Parameteroptimierung zur Ermittlung optimaler Parameter.
(4) Überlegen Sie eine Kombination mit maschinellem Lernen, um automatisch mit Hilfe von Algorithmen optimale Parameter zu finden.
Diese Strategie drückt Kauf- und Verkaufssignale klarer und intuitiver aus, indem sie die Verwendung des RSI-Indikators verbessert und Kauf- und Verkaufswarnlinien festlegt. Sie ist im Vergleich zum ursprünglichen RSI-Indikator praktischer. Es gibt jedoch auch bestimmte Risiken. Weitere Optimierungen sind erforderlich, z. B. die Kombination anderer technischer Indikatoren und Stop Loss, um Risiken zu reduzieren. Die Strategieidee ist einfach und eignet sich für Anfänger im quantitativen Handel zum Lernen und Üben.
/*backtest start: 2022-12-22 00:00:00 end: 2023-12-28 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 22/12/2016 // This simple indicator modified RSI // You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect... // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="RSI HistoAlert Strategy") RSIPeriod = input(13, minval=1) BuyAlertLevel = input(-10) SellAlertLevel = input(10) RSIHistoModify = input(1.5) reverse = input(false, title="Trade reverse") hline(0, color=purple, linestyle=line) hline(BuyAlertLevel, color=green) hline(SellAlertLevel, color=red) xPrice = close RSIMain = (rsi(xPrice, RSIPeriod) - 50) * RSIHistoModify rsiHcolor = iff(RSIMain >= 0 , green, iff(RSIMain < 0, red, black)) pos = iff(RSIMain > BuyAlertLevel, 1, iff(RSIMain < SellAlertLevel, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(RSIMain, color=blue, title="RSI HistoAlert") plot(RSIMain, color=rsiHcolor, title="Histogram", style = histogram, linewidth = 1)