Strategi mengikuti tren Ichimoku Kinko Hyo


Tanggal Pembuatan: 2023-12-26 16:13:42 Akhirnya memodifikasi: 2023-12-26 16:13:42
menyalin: 1 Jumlah klik: 678
1
fokus pada
1621
Pengikut

Strategi mengikuti tren Ichimoku Kinko Hyo

Ringkasan

Strategi keseimbangan pertama adalah strategi pelacakan tren yang menentukan arah tren dengan menghitung garis rata-rata dan menggabungkan indikator Ichimoku Kinko Hyo untuk mencapai perdagangan pelacakan tren berisiko rendah.

Prinsip Strategi

Strategi ini terutama didasarkan pada indikator Ichimoku Kinko Hyo untuk menentukan arah tren. Ichimoku Kinko Hyo, juga dikenal sebagai rantai keseimbangan pertama, terdiri dari garis konversi ((Tenkan-sen), garis acuan ((Kijun-sen), garis terdepan ((Senkou Span A) dan garis konfirmasi ((Senkou Span B), membentuk daerah keseimbangan antara depan dan belakang, yang disebut rantai awan awan.

Strategi ini menggabungkan hubungan antara harga dan garis rata-rata untuk menentukan arah tren. Ini menghasilkan sinyal beli ketika harga naik melewati garis acuan dan garis konversi; Ini menghasilkan sinyal jual ketika harga turun dan menembus zona awan. Dengan kombinasi ini, Anda dapat secara efektif menyaring penipuan dan mengunci arah tren.

Analisis Keunggulan

  • Menggunakan indikator Ichimoku Kinko Hyo untuk menilai tren dan menghindari tertipu oleh terobosan palsu di pasar yang bergoyang
  • Parameter garis rata-rata dapat disesuaikan dan dioptimalkan untuk siklus yang berbeda
  • Pengertian hubungan linier dapat digunakan untuk mengidentifikasi arah tren.
  • Menggunakan Cloud Band Judgment untuk Melakukan Trending Tracking Trading dengan Risiko Rendah

Analisis risiko

  • Sinyal-sinyal yang salah dalam peristiwa gempa bumi
  • Setting parameter yang tidak tepat dapat menyebabkan sinyal perdagangan yang terlalu sering atau tidak tepat waktu
  • Mengidentifikasi arah tren dan parameter yang harus disesuaikan

Arah optimasi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Optimalkan parameter Ichimoku untuk lebih banyak siklus waktu
  2. Meningkatkan strategi stop loss untuk mengendalikan kerugian tunggal
  3. Mengidentifikasi tren kuat dan lemah dengan indikator lain untuk menghindari kebocoran.
  4. Tingkatkan kondisi untuk membuka posisi, hindari posisi dalam situasi ekstrem

Meringkaskan

Secara keseluruhan, strategi keseimbangan sekilas dapat menentukan arah tren melalui indikator Ichimoku Kinko Hyo, dapat mengunci tren secara efektif, dan bekerja dengan penilaian hubungan linier untuk menghasilkan sinyal perdagangan, untuk mencapai perdagangan yang mengikuti tren dengan risiko rendah. Strategi ini dapat disesuaikan dan dioptimalkan dengan parameter untuk menyesuaikan dengan lingkungan pasar yang berbeda, dan layak untuk penelitian dan penggunaan investor lebih lanjut.

Kode Sumber Strategi
/*backtest
start: 2022-12-19 00:00:00
end: 2023-12-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
// Credit for the initial code to nathanhoffer - I simply added the ability to select a time period
//
strategy("Cloud Breakout", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.0)

/////////////// Component Code Start ///////////////
testStartYear = input(2016, "Backtest Start Year") 
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay, 0, 0)

testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(31, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay, 0, 0)

testPeriod() => true

Ten = input(18, minval=1, title="Tenkan")
Kij = input(60, minval=1, title="Kijun")
LeadSpan = input(30, 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")
sc = input(true, title="Show Chikou")

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(sc and KS ? KS : na, title="Chikou", linewidth = 2, color = orange)
p5 = plot(sc and Displace ? close: na, 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

Long_Breakout = (SpanA_Top ==1 and crossover(source, SpanAA)) or (SpanB_Top ==1 and crossover(source, SpanBB))

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

Short_Breakout = (SpanA_Top ==1 and crossunder(source, SpanBB)) or (SpanB_Top ==1 and crossunder(source, SpanAA))

//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

Chikou_Above = close > Chikou
Chikou_Below = close < Chikou

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

if testPeriod()
    strategy.entry("long", strategy.long, when=Long_Breakout)
    strategy.entry("short", strategy.short, when=Short_Breakout)