Ichimoku Kinko Hyo Strategie


Erstellungsdatum: 2023-10-13 16:48:22 zuletzt geändert: 2023-10-13 16:48:22
Kopie: 0 Klicks: 764
1
konzentrieren Sie sich auf
1617
Anhänger

Überblick

Die Gleichgewichtsstrategie verwendet die Idee der Durchschnittslinie, die Beziehung zwischen der Durchschnittslinie und dem Preis, um die Richtung des Trends zu bestimmen. Sie gehört zur Trendverfolgungsstrategie. Wenn der Preis die Durchschnittslinie überschreitet, machen Sie mehr, wenn er untergeht, machen Sie eine Lücke und folgen Sie dem Trend.

Ursprüngliche Analyse

Die Strategie basiert hauptsächlich auf dem Konzept der Einschnittlinie, wobei die Kernanwendungdonchian()Die Funktion berechnet den Mittelwert der Höchst- und Tiefstpreise innerhalb eines bestimmten Zeitraums als Mittelwertlinie. Dann wird beurteilt, ob der Preis diese Mittelwertlinie überschreitet, was zu einem Handelssignal führt.

Die Strategie beginnt mit der BerechnungTenDurchschnittslinie der PeriodeTS, als Referenzlinie. Wenn der Preis die Mittellinie überschreitet, wird er als eintrend betrachtet und erzeugt ein Mehrwertsignal. Wenn der Preis die Mittellinie unterschreitet, wird der Trend als umgekehrt betrachtet und erzeugt ein Shorting-Signal.

Außerdem berechnet die StrategieKijDurchschnittswert der PeriodeKSundTSDie Verbindung von Leitungen erzeugt Filterbedingungen, um falsche Signale zu vermeiden.TSAuf der InternetseiteKSDas ist die einzige Möglichkeit, die wir haben, um die Funktion zu aktivieren.

Der Code zeichnet auch eine Wolkenkarte aus, um die Positionsbeziehungen der Wolkenkarte zu bestimmen, um die Richtung der Trends zu bestimmen.ChikouDie Beurteilung der Beziehung zwischen dem Preis und der Linie dient als zusätzliche Voraussetzung.

Analyse der Stärken

  • Die Methode ist einfach und verständlich.
  • In Kombination mit Cloud-Diagrammen erhöht sich die Entscheidungsgrundlage und die Genauigkeit
  • ErhöhungChikouLeitung als Hilfsbedingung zur weiteren Filterung von Signalen
  • Flexible Anpassung an unterschiedliche Parameter-Linienkombinationen

Risikoanalyse

  • Mittellinienstrategien sind parametersensibel, wobei unterschiedliche Periodenparameter unterschiedlich wirken
  • Nur durchschnittlich verfolgt, Trends und Bandbreiten nicht erkannt, Gefahr von Verlusten
  • Unmöglichkeit, die Bilanzierungszyklen zu verarbeiten, leicht zu falschen Signalen
  • Cloud Map-Unterstützung ist unbeständig und kann zu Irrtümern führen

Es kann in Betracht gezogen werden, Trendindikatoren wie MACD-Beschlüsse zu kombinieren, um ein Signal zu erzeugen; Einheitliche Linear-Multi-Combinations-Systeme zu verwenden, um die Stabilität zu verbessern; oder die Risikokontrolle durch eine Stop-Loss-Strategie hinzuzufügen.

Optimierungsrichtung

  • Zunehmende Dynamik in der Index-Palette zur Beurteilung von Trends
  • Erwägen Sie ein Mehrwertsteuersystem, wie z. B. eine Mehrwertsteuer-Gold-Kreuzung
  • Erhöhung der Kanäle und der Schwankungsraten, um den Ausgleichsbereich zu beurteilen
  • Optimierung der Parameter und Suche nach der optimalen Zykluskombination
  • Ein Stop-Loss-Strategie, um einzelne Verluste zu kontrollieren

Zusammenfassen

Die Gleichgewichtsstrategie ist insgesamt relativ einfach und direkt, eignet sich für Anfänger, um die Tendenz durch die Gleichgewichtslinie zu verstehen. Gleichzeitig kann auch eine Kombination aus mehreren Indikatoren durchgeführt werden, um die Systemwirkung zu verbessern. Die Wirksamkeit dieser Strategie muss jedoch noch verifiziert und ständig optimiert werden.

Strategiequellcode
/*backtest
start: 2023-01-01 00:00:00
end: 2023-10-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy(title="Ichimoku Crypto Breakout", shorttitle="Ichimoku Breakout", overlay=true)

Ten = input(18, minval=1, title="Tenkan")
Kij = input(52, minval=1, title="Kijun")
LeadSpan = input(104, minval=1, title="Senkou B")
Displace = input(52, minval=1, title="Senkou A")
SpanOffset = input(52, minval=1, title="Span Offset")

sts = input(true, title="Show Tenkan")
sks = input(true, title="Show Kijun")
ssa = input(true, title="Show Span A")
ssb = input(true, title="Show Span B")

source = close

//Script for Ichimoku Indicator
donchian(len) => avg(lowest(len), highest(len))
TS = donchian(Ten)
KS = donchian(Kij)
SpanA = avg(TS, KS)
SpanB = donchian(LeadSpan)

CloudTop = max(TS, KS)

Chikou = source[Displace]
SpanAA = avg(TS, KS)[SpanOffset]
SpanBB = donchian(LeadSpan)[SpanOffset]

//Kumo Breakout (Long)
SpanA_Top = SpanAA >= SpanBB ? 1 : 0
SpanB_Top = SpanBB >= SpanAA ? 1 : 0

SpanA_Top2 = SpanA >= SpanB ? 1 : 0
SpanB_Top2 = SpanB >= SpanA ? 1 : 0

SpanA1 = SpanA_Top2 ? SpanA : na
SpanA2 = SpanA_Top2 ? SpanB : na

SpanB1 = SpanB_Top2 ? SpanA : na
SpanB2 = SpanB_Top2 ? SpanB : na

//plot for Tenkan and Kijun (Current Timeframe)
p1= plot(sts and TS ? TS : na, title="Tenkan", linewidth = 2, color = gray)
p2 = plot(sks and KS ? KS : na, title="Kijun", linewidth = 2, color = black)
p5 = plot(close, title="Chikou", linewidth = 2, offset=-Displace, color = orange)

//Plot for Kumo Cloud (Dynamic Color)
p3 = plot(ssa and SpanA ? SpanA : na, title="SpanA", linewidth=2, offset=Displace, color=green)
p4 = plot(ssb and SpanB ? SpanB : na, title="SpanB", linewidth=2, offset=Displace, color=red)

p8 = plot(ssa and SpanA1 ? SpanA1 : na, title="Span A1 above", style=linebr, linewidth=1, offset=Displace, color=green)
p9 = plot(ssa and SpanA2 ? SpanA2 : na, title="Span A2 above", style=linebr, linewidth=1, offset=Displace, color=green)
p10 = plot(ssb and SpanB1 ? SpanB1 : na, title="Span B1 above", style=linebr, linewidth=1, offset=Displace, color=red)
p11 = plot(ssb and SpanB2 ? SpanB2 : na, title="Span B2 above", style=linebr, linewidth=1, offset=Displace, color=red)

fill(p8, p9, color = lime, transp=70, title="Kumo Cloud Up")
fill (p10, p11, color=red, transp=70, title="Kumo Cloud Down")

LongSpan = (SpanA_Top and source[1] < SpanAA[1] and source > SpanAA) or (SpanB_Top and source[1] < SpanBB[1] and source > SpanBB) ? 1 : 0
cupSpan = LongSpan  == 1 ? LongSpan : 0

//Kumo Breakout (Long)
//plotarrow(cupSpan, title="Kumo Breakout Long", colorup=green, maxheight=50)

//Kumo Breakout (Long) Alerts
Long_Breakout = (SpanA_Top ==1 and crossover(source, SpanAA)) or (SpanB_Top ==1 and crossover(source, SpanBB))
//Long_Breakout = ((SpanA_Top ==1 and crossover(KS, SpanAA)) or (SpanB_Top ==1 and crossover(KS, SpanBB))) and TS >= KS
//alertcondition(Long_Breakout, title="Kumo Breakout Long", message="Kumo Long")

//Kumo Breakout (Short)
ShortSpan = (SpanB_Top and source[1] > SpanAA[1] and source < SpanAA) or (SpanA_Top and source[1] > SpanBB[1] and source < SpanBB) ? 1 : 0
cdnSpan = ShortSpan == 1 ? ShortSpan : 0

//Kumo Breakout (Short)
//plotarrow(cdnSpan*-1, title="Kumo Breakout Short", colordown=red, maxheight=50)

//Kumo Breakout (Short) Alerts
Short_Breakout = (SpanA_Top ==1 and crossunder(source, SpanBB)) or (SpanB_Top ==1 and crossunder(source, SpanAA))
//alertcondition(Short_Breakout, title="Kumo Breakout Short", message="Kumo Short")

//Kumo Twist
Kumo_Twist_Long = SpanA[1] < SpanB[1] and SpanA > SpanB ? 1 : 0
Kumo_Twist_Short = SpanA[1] > SpanB[1] and SpanA < SpanB ? 1 : 0

cupD = Kumo_Twist_Long == 1 ? Kumo_Twist_Long : 0
cdnD = Kumo_Twist_Short == 1 ? Kumo_Twist_Short : 0

//Kumo Twist (Long/Short)
//plotarrow(cupD, title="Kumo Twist Long", colorup=green, maxheight=50)
//plotarrow(cdnD*-1, title="Kumo Twist Short", colordown=red, maxheight=50)

//Kumo Twist (Long/Short) Alerts
KumoTwistLong_Cross = crossover(SpanA, SpanB)
//alertcondition(KumoTwistLong_Cross, title="Kumo Twist Long", message="Kumo Twist Long")
KumoTwistShort_Cross = crossunder(SpanA, SpanB)
//alertcondition(KumoTwistShort_Cross, title="Kumo Twist Short", message="Kumo Twist Short")

//Kumo Twist (Long/Short) - Bar Color
BarColor = Kumo_Twist_Long ? green : Kumo_Twist_Short ? red : na
barcolor(BarColor)

//Chikou above/below Price
Chikou_Above = close > Chikou
Chikou_Below = close < Chikou

//Kumo Twist (Long/Short) - Plot Character on location of Chikou to Price & Price to Kumo
//plotchar(Kumo_Twist_Long and Chikou_Above, title="Kumo Twist Long and Chikou above Price", char="A", location=location.abovebar, color=green)
//plotchar(Kumo_Twist_Long and Chikou_Below, title="Kumo Twist Long and Chikou below Price", char="B", location=location.abovebar, color=red)
//plotchar(Kumo_Twist_Short and Chikou_Above, title="Kumo Twist Short and Chikou above Price", char="A", location=location.belowbar, color=green)
//plotchar(Kumo_Twist_Short and Chikou_Below, title="Kumo Twist Short and Chikou below Price", char="B", location=location.belowbar, color=red)

//Base and Conversion Line Cross
//long = cross(TS, KS) and TS>KS

long = (cross(TS, SpanA) or cross(TS, SpanB)) and TS>SpanA and TS>SpanB and TS>=KS
short = cross(TS, KS) and KS >= TS

strategy.entry("long", strategy.long, when=Long_Breakout)
strategy.entry("short", strategy.short, when=Short_Breakout)
//strategy.exit("bracket", when=short)