HA Kebiasan Pasar

Penulis:ChaoZhang, Tanggal: 2022-05-09 14:07:28
Tag:EMA

Halo semua. Saya harap Anda semua baik-baik saja. Sudah lama sejak saya memposting naskah pertama saya di sini, dan saya mendapat banyak tanggapan dari itu.

Jadi, saya pikir saya harus berbagi skrip ini juga kepada semua orang, dan siapa pun yang mungkin menemukannya berguna.

Berikut ini adalah cara saya bekerja: Skrip ini mencoba menentukan arah keseluruhan pasar, menggunakan lilin Heiken Ashi yang halus. Sistem pewarnaan (menggunakan warna terang dan gelap) adalah upaya untuk mendeteksi kondisi pasar yang kuat dan lemah. Ada juga osilator dalam skrip, tetapi untuk saat ini tidak digambarkan. Kredit ke @jackvmk, saya menggunakan bagian dari kode skrip terbuka dalam indikator ini.

Saya telah mempertimbangkan untuk menggunakan kemiringan grafik indikator sebagai filter untuk kondisi pasar yang bervariasi. grafiknya relatif rata di pasar flat . Namun, saya belum melakukan apa pun tentang itu. Mungkin lain kali.

Jika Anda menemukan cara untuk menggunakannya, silakan bagikan dengan komunitas di bagian komentar.

CATATAN: Ini TIDAK SEBAGAI PERANASAN FINANSIAL. Anda harus melakukan studi Anda dan menemukan cara untuk menerapkan indikator ini pada gaya dan strategi perdagangan Anda.

Ngomong-ngomong, saya akan menggunakan nama CEREBR untuk setiap naskah berikutnya yang saya rilis mulai sekarang.

backtest

img


/*backtest
start: 2022-04-08 00:00:00
end: 2022-05-07 23:59:00
period: 10m
basePeriod: 1m
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/
// © Professeur_X

//@version=5

indicator(title='HA Market Bias', shorttitle='HA Market Bias', overlay=true)

tf(_res, _exp, gaps_on) =>
    gaps_on == 0 ? request.security(syminfo.tickerid, _res, _exp) : gaps_on == true ? request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_on, barmerge.lookahead_off) : request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_off, barmerge.lookahead_off)

ha_htf = ''
show_ha = input.bool(true, "Show HA Plot/ Market Bias", group="HA Market Bias")
ha_len = input(100, 'Period', group="HA Market Bias")
ha_len2 = input(100, 'Smoothing', group="HA Market Bias")

// Calculations {
o = ta.ema(open, ha_len)
c = ta.ema(close, ha_len)
h = ta.ema(high, ha_len)
l = ta.ema(low, ha_len)

haclose = tf(ha_htf, (o + h + l + c) / 4, 0)
xhaopen = tf(ha_htf, (o + c) / 2, 0)
haopen = na(xhaopen[1]) ? (o + c) / 2 : (xhaopen[1] + haclose[1]) / 2
hahigh = math.max(h, math.max(haopen, haclose))
halow = math.min(l, math.min(haopen, haclose))


o2 = tf(ha_htf, ta.ema(haopen, ha_len2), 0)
c2 = tf(ha_htf, ta.ema(haclose, ha_len2), 0)
h2 = tf(ha_htf, ta.ema(hahigh, ha_len2), 0)
l2 = tf(ha_htf, ta.ema(halow, ha_len2), 0)

ha_avg = (h2 + l2) / 2
// }
    
// Oscillator {
osc_len = input.int(7, "Oscillator Period", group="HA Market Bias")

osc_bias = 100 *(c2 - o2)
osc_smooth = ta.ema(osc_bias, osc_len)

sigcolor = 
  (osc_bias > 0) and (osc_bias >= osc_smooth) ? color.new(color.lime, 35) : 
  (osc_bias > 0) and (osc_bias < osc_smooth) ? color.new(color.lime, 75) : 
  (osc_bias < 0) and (osc_bias <= osc_smooth) ? color.new(color.red, 35) : 
  (osc_bias < 0) and (osc_bias > osc_smooth) ? color.new(color.red, 75) :
  na
// }

// Plots {
p_h = plot(h2, "Bias High", display=display.none, editable=false)
p_l = plot(l2, "Bias Low", display=display.none, editable=false)
p_avg = plot(ha_avg, "Bias Avergae", display=display.none, editable=false)



col = o2 > c2 ? color.red : color.lime

if o2 > c2
    strategy.entry("Enter Long", strategy.long)
else if o2 < c2
    strategy.entry("Enter Short", strategy.short)


Berkaitan

Lebih banyak