커뮤니티

조건검색 문의

프로필 이미지
사공하늘
2025-11-03 09:10:44
135
글번호 227573
답변완료

//@version=5

indicator("ZLMA 상승 신호", overlay=true)

// Inputs

length = input(15, title="Length")

// Colors

up = color.black

dn = color.blue

// Calculations

a = ta.atr(200)

emaValue = ta.ema(close, length)

correction = close + (close - emaValue)

zlma = ta.ema(correction, length)

// Signals

signalUp = ta.crossover(zlma, emaValue)

signalDn = ta.crossunder(zlma, emaValue)

// 박스 및 레벨 설정

var box box1 = na

var float top = na

var float btm = na

var float var3 = na

var label tx = na

var label tx1 = na

if signalUp

top := zlma

btm := zlma - a

box1 := box.new(bar_index, top, bar_index + 1, btm, bgcolor=color.new(up, 70), border_color=up)

var3 := (top + btm) / 2

tx := label.new(bar_index + 1, var3, str.tostring(close), style=label.style_label_center, textcolor=color.white, color=up)

else if signalDn

top := zlma + a

btm := zlma

box1 := box.new(bar_index, top, bar_index + 1, btm, bgcolor=color.new(dn, 70), border_color=dn)

var3 := (top + btm) / 2

tx := label.new(bar_index + 1, var3, str.tostring(close), style=label.style_label_center, textcolor=color.white, color=dn)

else

box.set_right(box1, bar_index)

label.set_xy(tx, bar_index, var3)

// 상승 신호만 표시 (▲)

if ta.crossover(low, top) and emaValue < zlma

tx1 := label.new(bar_index - 1, low[1], "▲", style=label.style_label_up, color=up, textcolor=color.white)



일봉상 위 화살표 신호가 나오는 종목에 대해서 검출 할 수 있도록 해주시면 감사드리겠습니다 (__)

검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-11-03 14:08:44

안녕하세요 예스스탁입니다. input : length(15); var : alpha(0),a(0),emaValue(0),correction(0),zlma(0); var : signalUp(False),signalDn(False),box(0); var : top(Nan),btm(Nan),var3(Nan); alpha = 1 / length ; a= IFf(IsNan(a[1]) == true, ma(TrueRange,length) , alpha * TrueRange + (1 - alpha) * IFf(isnan(a[1])==true,0,a[1])); emaValue = ema(close, length); correction = close + (close - emaValue); zlma = ema(correction, length); signalUp = CrossUp(zlma, emaValue); signalDn = CrossDown(zlma, emaValue); if signalUp Then { top = zlma; btm = zlma - a; var3 = (top + btm)/2; } else if signalDn then { top = zlma + a; btm = zlma; var3 = (top + btm) / 2; } if CrossUp(low, top) and emaValue < zlma Then Find(1); 즐거운 하루되세요