Strategi Williams Double Exponential Moving Average dan Ichimoku Kinko Hyo


Tanggal Pembuatan: 2024-02-18 16:20:12 Akhirnya memodifikasi: 2024-02-18 16:20:12
menyalin: 1 Jumlah klik: 559
1
fokus pada
1617
Pengikut

Strategi Williams Double Exponential Moving Average dan Ichimoku Kinko Hyo

Ringkasan

Strategi ini menggabungkan dua indikator teknis, William Binary Moving Average dan First Equilibrium Chart, untuk memanfaatkan keunggulan masing-masing dan meningkatkan akurasi keputusan perdagangan. Di antaranya, William Binary Moving Average dapat sepenuhnya mencerminkan tren perubahan harga, sedangkan First Equilibrium Chart dapat menilai perubahan tren lebih awal.

Prinsip

William binomial bergerak rata-rata terdiri dari garis cepat dan lambat. Rumus untuk menghitung garis cepat adalah: 2 (n/2 siklus berimbang bergerak rata-rata), rumus untuk menghitung garis lambat adalah: n siklus berimbang bergerak rata-rata. Ketika garis cepat dari arah bawah menembus garis lambat, untuk sinyal beli; ketika dari arah atas turun, untuk sinyal jual.

Grafik keseimbangan pertama terdiri dari empat komponen: garis pertukaran, garis dasar, garis terdepan, dan grafik awan. Di antaranya, garis pertukaran dan garis dasar yang bersilang emas adalah sinyal beli, dan garis mati adalah sinyal jual.

Strategi ini menggabungkan keunggulan dua indikator, yang pertama dinilai sebagai sinyal William, dan yang kedua dinilai sebagai konfirmasi indikator grafik keseimbangan pertama, yang dapat secara efektif menyaring sinyal palsu, meningkatkan akurasi keputusan.

Keunggulan

  1. Rata-rata bergerak William biner sangat sensitif terhadap arah tren yang lebih kuat.
  2. Pada awalnya, grafik keseimbangan menunjukkan bahwa trend akan berbalik.
  3. Kombinasi dua indikator ini saling memverifikasi dan mengurangi sinyal palsu.
  4. Dengan parameter optimasi, dapat beradaptasi dengan berbagai siklus dan varietas.

Risiko dan optimasi

  1. Pasar non-trending dapat menghasilkan sinyal yang sering. Parameter dapat disesuaikan dengan baik, memfilter beberapa sinyal.
  2. Dalam proses persilangan jalur cepat dan lambat, akan ada beberapa keterlambatan. Perhitungan dapat dikombinasikan dengan peta awan, untuk menghindari kehilangan titik jual beli terbaik.
  3. Disarankan untuk digunakan dalam kombinasi dengan indikator tren atau indikator fluktuasi untuk menghindari sinyal palsu lebih lanjut.

Meringkaskan

Strategi ini memanfaatkan indikator William untuk menentukan arah tren dan grafik keseimbangan awal untuk melihat kebalik, yang dapat meningkatkan akurasi keputusan perdagangan secara signifikan. Dengan penyesuaian parameter dan kombinasi indikator lain, strategi optimasi berkelanjutan dapat lebih disesuaikan dengan perubahan pasar.

Kode Sumber Strategi
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

strategy("Hull MA-X + Ichimoku Kinko Hyo", shorttitle="Hi", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=1000, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)

keh=input(title="Double HullMA",defval=12, minval=1)
n2ma=2*wma(close,round(keh/2))
nma=wma(close,keh)
diff=n2ma-nma
sqn=round(sqrt(keh))
n2ma1=2*wma(close[1],round(keh/2))
nma1=wma(close[1],keh)
diff1=n2ma1-nma1
sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
b=n1>n2?lime:red
c=n1>n2?green:red
d=n1>n2?red:green

TenkanSenPeriods = input(9, minval=1, title="Tenkan Sen Periods")
KijunSenPeriods = input(24, minval=1, title="Kijun Sen Periods")
SenkouSpanBPeriods = input(51, minval=1, title="Senkou Span B Periods")
displacement = input(24, minval=1, title="Displacement")
donchian(len) => avg(lowest(len), highest(len))
TenkanSen = donchian(TenkanSenPeriods)
KijunSen = donchian(KijunSenPeriods)
SenkouSpanA = avg(TenkanSen, KijunSen)
SenkouSpanB = donchian(SenkouSpanBPeriods)
SenkouSpanH = max(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1])
SenkouSpanL = min(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1])
ChikouSpan = close[displacement-1]

Hullfast=plot(n1,color=c)
Hullslow=plot(n2,color=c)
plot(cross(n1, n2) ? n1:na, style = circles, color=b, linewidth = 4)
plot(cross(n1, n2) ? n1:na, style = line, color=d, linewidth = 3)
plot(TenkanSen, color=blue, title="Tenkan Sen", linewidth = 2)
plot(KijunSen, color=maroon, title="Kijun Sen", linewidth = 3)
plot(close, offset = -displacement, color=orange, title="Chikou Span", linewidth = 2)
sa=plot (SenkouSpanA, offset = displacement, color=green,  title="Senkou Span A", linewidth = 2)
sb=plot (SenkouSpanB, offset = displacement, color=red,  title="Senkou Span B", linewidth = 3)
fill(sa, sb, color = SenkouSpanA > SenkouSpanB ? green : red)

longCondition = n1>n2 and close>n2 and close>ChikouSpan and close>SenkouSpanH and (TenkanSen>KijunSen or close>KijunSen)
if (longCondition)
    strategy.entry("Long",strategy.long)

shortCondition = n1<n2 and close<n2 and close<ChikouSpan and close<SenkouSpanL and (TenkanSen<KijunSen or close<KijunSen)
if (shortCondition)
    strategy.entry("Short",strategy.short)

closelong = n1<n2 and close<n2 and (TenkanSen<KijunSen or close<TenkanSen or close<KijunSen or close<SenkouSpanL)
if (closelong)
    strategy.close("Long")

closeshort = n1>n2 and close>n2 and (TenkanSen>KijunSen or close>TenkanSen or close>KijunSen or close>SenkouSpanH)
if (closeshort)
    strategy.close("Short")