KDJ RSI Crossover Kauf-Verkaufssignalstrategie

Schriftsteller:ChaoZhang, Datum: 2023-11-27 10:57:16
Tags:

img

Übersicht

Diese Strategie kombiniert den KDJ-Indikator und den RSI-Indikator, um den Zeitpunkt von Käufen und Verkäufen zu bestimmen.

Strategieprinzip

Die Strategie verwendet die Überschneidung des KDJ-Indikators und des RSI-Indikators, um den Zeitpunkt von Käufen und Verkäufen zu beurteilen.

Wenn die J-Linie der KDJ von unten nach oben über die K-Linie kreuzt, wird sie als Kaufsignal betrachtet. Und wenn die J-Linie von oben nach unten unter die K-Linie kreuzt, ist es ein Verkaufssignal. Dies bedeutet, zu kaufen, wenn die Aktie von überverkauft zu überkauft und zu verkaufen, wenn sie von übergekauft zu überverkauft wird.

Gleichzeitig enthält die Strategie den RSI-Indikator, um die Stärke der Signale zu beurteilen. RSI unter 30 ist überverkauft und RSI über 70 ist überkauft. Wenn der KDJ ein Kaufsignal ausgibt, erhöht der RSI-Indikator die Zuverlässigkeit des Kaufsignals, wenn der RSI-Indikator auch überverkauft zeigt. Umgekehrt erhöht er die Zuverlässigkeit des Kaufsignals, wenn der KDJ ein Verkaufssignal ausgibt, wenn der RSI auch überkauft zeigt.

Zusammenfassend lässt sich sagen, dass diese Strategie in folgenden Situationen Handelssignale erzeugt:

Kaufsignale:

  1. KDJs J-Linie kreuzt über K-Linie UND RSI(6) < RSI(12)
  2. KDJs J-Linie kreuzt über K-Linie UND RSI(6) kreuzt über RSI(24)
  3. Der RSI(6) überschreitet den RSI(24) UND den RSI(6) < 40

Verkaufssignale:

  1. KDJs J-Linie kreuzt unterhalb der K-Linie UND RSI(6) > RSI(12)
  2. KDJs J-Linie kreuzt unterhalb der K-Linie UND RSI(6) kreuzt unterhalb der RSI(24)
  3. Der RSI(6) liegt unter dem RSI(24) UND der RSI(6) > 60

Vorteile

  1. Die Kombination des KDJ-Indikators und des RSI-Indikators macht die Handelssignale zuverlässiger.

  2. Der KDJ-Indikator beurteilt den überkauften/überverkauften Zustand, während der RSI-Indikator die Stärke beurteilt.

  3. Mehrfache Kauf-/Verkaufsbedingungen vermeiden, dass aus Gründen eines einzigen Indikators Chancen verpasst werden.

  4. Die RSI-Parameter sind auf 6, 12 und 24 Perioden festgelegt, die für verschiedene Zyklusstufen geeignet sind, was die Strategie vielseitiger macht.

Risikoanalyse

  1. Sowohl der KDJ- als auch der RSI-Indikator können falsche Signale geben, was zu unnötigen Trades führt.

  2. Die vielfältigen Handelsbedingungen erhöhen die Komplexität der Strategieoperationen und erfordern eine sorgfältige Überprüfung.

  3. Die Strategie muss in verschiedenen Märkten getestet und optimiert werden, und die Parameter müssen angepasst werden.

Verbesserungsrichtlinien

  1. Testen Sie, indem Sie andere Indikatoren wie Bollinger Bands hinzufügen, um die Handelssignale zu stärken.

  2. Optimierung der Parameter von KDJ und RSI, um sie auf verschiedene Zyklusstufen anzupassen.

  3. Steigern Sie die Standards für Stop-Loss, um Risiken zu kontrollieren.

  4. Fügen Sie automatische Stop-Loss-Mechanismen hinzu, um den Stop-Loss bei Preisumkehr zu erreichen.

Schlussfolgerung

Diese Strategie kombiniert die Vorteile des KDJ-Indikators und des RSI-Indikators, indem sie die Überschneidung der beiden Indikatoren verwendet, um den Zeitpunkt von Käufen und Verkäufen zu bestimmen, was die Genauigkeit der Handelssignale verbessert. Die Verwendung von RSI-Indikatoren mit verschiedenen Parametern macht die Strategie auch vielseitiger. Diese Strategie vermeidet effektiv das Risiko falscher Signale, die mit einem einzigen Indikator auftreten können. Durch die Verbesserung der Parameter, das Hinzufügen von Hilfsindikatoren, Stop-Loss-Mechanismen usw. kann die Leistung dieser Strategie weiter verbessert werden.


/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 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/
// © innocentChart76064

//@version=5
strategy(title = "buy/sell KDJ RSI", overlay=true)

//Define KDJ parameter
kdj_length = input(9, title = "KDJ length")
signal = input(3,title="signal")

// Calculate KDJ values
bcwsma(s,l,m) => 
    _bcwsma = float(na)
    _s = s
    _l = l
    _m = m
    _bcwsma := (_m*_s+(_l-_m)*nz(_bcwsma[1]))/_l
    _bcwsma

c = close
h = ta.highest(high, kdj_length)
l = ta.lowest(low,kdj_length)
RSV = 100*((c-l)/(h-l))
kdj_k = bcwsma(RSV, signal, 1)
kdj_d = bcwsma(kdj_k, signal, 1)
kdj_j = 3 * kdj_k-2 * kdj_d

//Define RSI parameter 
rsi_length_1 = input(6)
rsi_length_2 = input(12)
rsi_length_3 = input(24)
price = close 

//Calculate RSI values
rsi_1 = ta.rsi(price, rsi_length_1)
rsi_2 = ta.rsi(price, rsi_length_2)
rsi_3 = ta.rsi(price, rsi_length_3)

// Trading conditions
longCondition = ta.crossover(kdj_j,kdj_k) and rsi_1 > rsi_2 or ta.crossover(kdj_j,kdj_k) and ta.crossover(rsi_1,rsi_3) or ta.crossover(rsi_1,rsi_3) and rsi_1<40
shortCondition = ta.crossunder(kdj_j,kdj_k) and rsi_1 < rsi_2 or ta.crossunder(kdj_j,kdj_k) and ta.crossunder(rsi_1,rsi_3) or ta.crossunder(rsi_1,rsi_3) and rsi_1>60
// Enter long trade
strategy.entry("Long", strategy.long, when=longCondition)

// Enter short trade
strategy.entry("Short", strategy.short, when=shortCondition)


Mehr