HA Xấu đảo thị trường

Tác giả:ChaoZhang, Ngày: 2022-05-09 14:07:28
Tags:EMA

Chào mọi người. Tôi hy vọng tất cả các bạn đang làm rất tốt. Đã rất lâu kể từ khi tôi đăng kịch bản đầu tiên của mình ở đây, và tôi đã nhận được rất nhiều phản hồi từ đó.

Vì vậy, tôi nghĩ rằng tôi nên chia sẻ kịch bản này với tất cả mọi người, và bất cứ ai có thể thấy nó hữu ích.

Đây là cách tôi làm việc: Kịch bản cố gắng xác định hướng tổng thể của thị trường, sử dụng nến Heiken Ashi mịn. Hệ thống màu sắc (sử dụng màu sáng và tối) là một nỗ lực để phát hiện điều kiện thị trường mạnh và thị trường yếu.

Tôi đã xem xét sử dụng độ nghiêng của biểu đồ chỉ số như một bộ lọc cho các điều kiện thị trường khác nhau. biểu đồ tương đối phẳng trong thị trường phẳng. Tuy nhiên, tôi chưa làm gì về điều đó. Có lẽ một lần khác.

Tôi hy vọng bạn thấy điều này hữu ích. Nếu bạn tìm thấy cách sử dụng điều này, vui lòng chia sẻ nó với cộng đồng trong phần bình luận.

LƯU Ý: Đây không phải là lời khuyên tài chính. Bạn sẽ phải nghiên cứu và tìm ra cách áp dụng chỉ số này cho phong cách và chiến lược giao dịch của mình.

Nhân tiện, tôi sẽ sử dụng tên CEREBR cho bất kỳ kịch bản tiếp theo nào tôi phát hành từ bây giờ.

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)


Có liên quan

Thêm nữa