Ichimoku Kinko Hyo Long dan Strategi Pendek


Tarikh penciptaan: 2023-12-28 12:12:51 Akhirnya diubah suai: 2023-12-28 12:12:51
Salin: 0 Bilangan klik: 664
1
fokus pada
1623
Pengikut

Ichimoku Kinko Hyo Long dan Strategi Pendek

Gambaran keseluruhan

Strategi ini telah diperbaiki berdasarkan sistem perdagangan keseimbangan pertama. Gagasan utama adalah untuk mengidentifikasi peluang perdagangan garis pendek dan berlainan, yang digabungkan dengan indikator teori garis rata keseimbangan pertama dan peraturan pengurusan wang.

Prinsip Strategi

Strategi menggunakan sistem keseimbangan pandangan pertama klasik sebagai rujukan asas. Komponen utama termasuk:

Garis peralihan: Garis pertengahan.

Garis penanda: Garis jangka panjang. Ia mencerminkan trend jangka panjang.

Baris terdahulu: Baris ramalan masa depan.

Garis ketinggalan: Garis masa lalu.

Berdasarkan ini, strategi ini telah diperbaiki seperti berikut:

  1. Parameter masa dipilih mengikut teori kuasa ganjil, menjadikannya lebih sesuai dengan undang-undang pasaran.

  2. Menambah peraturan pengurusan wang, termasuk berhenti, hentikan, saiz kedudukan, dan lain-lain, untuk mengawal risiko perdagangan.

  3. Kaedah ini boleh disesuaikan untuk menguji strategi secara menyeluruh.

Khususnya, syarat kemasukan berbilang kepala merangkumi penembusan garis rujukan di bawah garis rujukan, garisan ketinggalan di atas harga, harga di atas grafik awan, grafik awan meramalkan pasaran lembu masa depan, dan lain-lain.

Peraturan pengurusan wang memerlukan stop loss 30% dan stop loss 5%; stop loss apabila stop loss kosong melebihi ATR 3 kali ganda dari garis putaran.

Analisis kelebihan

Kelebihan strategi ini yang menggabungkan indeks garis rata dan pengurusan wang adalah:

  1. Sistem keseimbangan pada pandangan pertama mencerminkan trend jangka pendek dan jangka panjang, entry/exit adalah wajar.

  2. Parameter pengoptimuman teori kuasa ganjil, sesuai dengan undang-undang statistik pasaran.

  3. Peraturan pengurusan wang mengawal kerugian tunggal dengan berkesan, memastikan keuntungan lebih besar daripada kerugian.

  4. Julat pengesan boleh disesuaikan, ujian lebih menyeluruh.

Secara keseluruhannya, strategi ini mengambil kira trend, pilihan parameter, kawalan risiko dan banyak lagi faktor, dapat mengenal pasti peluang yang lebih pendek, mengawal risiko perdagangan, dan mempunyai kegunaan yang kuat.

Analisis risiko

Risiko utama dari strategi ini ialah:

  1. Sistem keseimbangan mata pertama mudah ditipu oleh penembusan palsu, menyebabkan kemasukan yang tidak perlu. Ia boleh digabungkan dengan lebih banyak isyarat penapisan indikator.

  2. Peraturan hentian kerugian yang tetap mudah ditarik dan boleh diperkenalkan dengan hentian kerugian yang dinamik.

  3. Data pengembalian tidak lengkap dan mungkin menganggarkan terlalu tinggi keberkesanan strategi. Perlu lebih banyak masa dan pengembalian lebih banyak pasaran.

  4. Strategi ini lebih sesuai untuk pasaran trend, di mana pasaran boleh menjadi kurang baik. Anda boleh mengoptimumkan syarat masuk untuk mengenal pasti trend.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Menambah penapisan penunjuk untuk meningkatkan kualiti kemasukan. Penunjuk penilaian tambahan seperti MACD, KDJ dan sebagainya.

  2. Hentian Hentian Dinamis. Contohnya, Hentian Hentian N kali ATR untuk menembusi garis purata, Hentian Hentian Hentian untuk menembusi tahap sokongan.

  3. Ujian semula pelbagai varieti. Ujian semula strategi pada lebih banyak pasaran dan data yang lebih lama.

  4. Membezakan trend dan menyusun pasaran. Mengoptimumkan mekanisme kemasukan supaya dapat disesuaikan dengan keadaan yang berbeza.

ringkaskan

Strategi ini mengambil kira pelbagai faktor seperti trend, pengurusan wang, dan lain-lain, menggunakan indikator keseimbangan pertama untuk mengenal pasti peluang perdagangan berganda yang pendek; dan menggunakan peraturan kawalan risiko untuk mengawal kerugian tunggal. Ia adalah peningkatan yang besar berbanding sistem keseimbangan pertama. Dengan pengoptimuman lanjut, strategi ini dijangka menjadi strategi short multiple yang sangat praktikal.

Kod sumber strategi
/*backtest
start: 2023-11-27 00:00:00
end: 2023-12-27 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// Author Obarut
//@version=5
strategy("İchimoku Strategy With MM Short-Long",overlay=true,process_orders_on_close=true)

//Ichimoku Inputs
ts_period = input.int(8, minval=1, title="Tenkan-Sen Period")
ks_period = input.int(16, minval=1, title="Kijun-Sen Period")
ssb_period = input.int(24, minval=1, title="Senkou-Span B Period")
cs_offset = input.int(16, minval=1, title="Chikou-Span Offset")
ss_offset = input.int(8, minval=1, title="Senkou-Span Offset")
long_entry = input(true, title="Long Entry")
short_entry = input(true, title="Short Entry")

// Back Testing Period Inputs

fromday = input.int(defval=1,title="Start Date",minval=1,maxval=31) 
frommonth = input.int(defval=1,title="Start Month",minval=1,maxval=12)
fromyear = input.int(defval=1980,title="Start Year",minval=1800, maxval=2100)
today = input.int(defval=1,title="En Date",minval=1,maxval=31)
tomonth = input.int(defval=1,title="End Month",minval=1,maxval=12)
toyear =input.int(defval=2100,title="End Year",minval=1800,maxval=2200)
start=timestamp(fromyear,frommonth,fromday,00,00)
finish=timestamp(toyear,tomonth,today,00,00)
timewindow= time>=start and time<=finish

//Ichimoku Componenets Calculation Function
middle(len) => math.avg(ta.lowest(len), ta.highest(len))

// Ichimoku Components

tenkan = middle(ts_period)
kijun = middle(ks_period)
senkouA = math.avg(tenkan, kijun)
senkouB = middle(ssb_period)
//Senkou Span Lines slopes
slopetenkan=(tenkan-tenkan[2])/tenkan
slopekijun= (kijun-kijun[2])/kijun
//Avarage True Range 
atr = ta.atr(14)
//Senkou Span Lines
ss_above = math.max(senkouA[ss_offset-1], senkouB[ss_offset-1])
ss_below = math.min(senkouA[ss_offset-1], senkouB[ss_offset-1])

// Price Distance From Tenkan
distance = close - tenkan

// Price Distance from Kijun
distancek = close - kijun

// Entry/Exit Signals

tk_cross_kijun_bull = tenkan >= kijun//Tenkan Sen is greater than or equal to  Kijun Sen
tk_cross_kijun_bear = tenkan <= kijun//Tenkan Sen is smaller than or equal to Kijun Sen
cs_cross_bull = close > high[cs_offset-1]//Chikou is above the price
cs_cross_bear = close < close[cs_offset-1]//Chikou is below the price
price_above_kumo = close > ss_above//Price is above the Kumo cloud
pbsenkA = close < ss_above // Price is below the Senkou Span which is higher
pasenkB = close > ss_below// Price is above the Senkou span which is lower
price_below_kumo = close < ss_below // Price is below Kumo cloud
future_kumo_bull = senkouA > senkouB and (ta.roc(senkouA,3)>0) and (ta.roc(senkouB,3)>=0) // Future Kumo cloud is bullish
pbtenkan=close<tenkan
tkbelowkij=tenkan<kijun
future_kumo_bear = senkouA < senkouB//Future Kumo cloud is bearish
// Price Distance From Tenken
disbull = distance < 2*atr
//Price Distance From Kijun
disbullk = distancek < 3*atr
//Price Above Tenkan Condition
patk = close > tenkan
// Kijun Above Senkou Span Condition
kjasenkA = kijun > ss_above
// Price Below Kijun Condition
pbkijun = close < kijun
//Consolidation Tenkan and Kijun are inside Kumo cloud
kijuninsidekumo= kijun<ss_above and kijun>ss_below
tenkaninsidekumo= tenkan<ss_above and tenkan>ss_below
consolidation=kijuninsidekumo and tenkaninsidekumo

//Bullish Entry Condition

bullish= tk_cross_kijun_bull and cs_cross_bull and price_above_kumo and future_kumo_bull and disbull and patk 
     and not consolidation
//Bullish exit
bearish=tk_cross_kijun_bear and pbsenkA and cs_cross_bear  and future_kumo_bear
      or price_below_kumo     
// Bearish Entry Condition

bearish2=tk_cross_kijun_bear and pbtenkan and tkbelowkij and tkbelowkij and cs_cross_bear and future_kumo_bear

if(bullish and timewindow and long_entry )
    strategy.entry("Long Entry", strategy.long)


if(bearish2 and timewindow and short_entry)
    strategy.entry("Short Entry",strategy.short)
// Bearish Condition



lastentryprice = strategy.opentrades.entry_price(strategy.opentrades - 1)

// Take Profit or Stop Loss in Bearish

exit1= (close-tenkan)>3*atr and slopetenkan<=0
exit2= (close-lastentryprice)>5*atr and close<(tenkan-0.04*atr)

if(bearish and timewindow and not short_entry or exit1 or exit2  or (close>1.30*lastentryprice  ) or (close< 0.95*lastentryprice))
    strategy.close("Long Entry")
if(bullish and timewindow and not long_entry)
    strategy.close("Short Entry")
if(time>finish)
    strategy.close_all("time up")

plot(tenkan, color=#0496ff, title="Tenkan-Sen")
plot(kijun, color=#991515, title="Kijun-Sen")
plot(close, offset=-cs_offset+1, color=#2e640e, title="Chikou-Span")
sa=plot(senkouA, offset=ss_offset-1, color=color.rgb(17, 122, 21), title="Senkou-Span A")
sb=plot(senkouB, offset=ss_offset-1, color=color.rgb(88, 8, 8), title="Senkou-Span B")
fill(sa, sb, color = senkouA > senkouB ? color.rgb(198, 234, 198) : color.rgb(208, 153, 153), title="Cloud color")