커뮤니티

수식문의

프로필 이미지
ksks
2026-04-25 22:38:12
104
글번호 231774
답변완료

아래 조건을 만족하는 검색식이 가능할까요?

A=supertrend(period, multiplier);

B=eavg(c,200);

(period 14, multiplier 3)


Crossup(A, B) &&

C>A &&

1봉전~20봉전 A<B


종목검색
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2026-04-27 12:36:28

안녕하세요 예스스탁입니다. input : period(14),multiplier(3); var : src(0), alpha(0),ATRV(0),upperBand(0),lowerBand(0),direction(0),A(C),B(0); if CurrentBar > 1 Then { src = (H+L)/2; alpha = 1 / period ; ATRV = IFf(IsNan(ATRV[1]) == true, ma(TrueRange,period) , alpha * TrueRange + (1 - alpha) * IFf(isnan(ATRV[1])==true,0,ATRV[1])); upperBand = src + multiplier * AtrV; lowerBand = src - multiplier * AtrV; if lowerBand > lowerBand[1] or close[1] < lowerBand[1] Then lowerBand = lowerBand; Else lowerBand = lowerBand[1]; if upperBand < upperBand[1] or close[1] > upperBand[1] Then upperBand = upperBand; Else upperBand = upperBand[1]; if C > UpperBand Then direction = 1; if C < LowerBand Then direction = -1; if direction == 1 Then A = lowerband; Else A = upperband; } B = Ema(C,200); if CrossUp(A,B) and C > A and CountIf(A<B,20)[1] == 20 Then Find(1); 즐거운 하루되세요
프로필 이미지

ksks

2026-04-27 13:17:56

죄송합니다만,

위 수식에 "당일 시가와 200지수선의 괴리가 20%이하"
(시가 10,000원, 200지수선 8,000원)를
추가하고 싶습니다.
도와주세요.
프로필 이미지

예스스탁 예스스탁 답변

2026-04-27 13:20:58

안녕하세요 예스스탁입니다. input : period(14),multiplier(3); var : src(0), alpha(0),ATRV(0),upperBand(0),lowerBand(0),direction(0),A(C),B(0); if CurrentBar > 1 Then { src = (H+L)/2; alpha = 1 / period ; ATRV = IFf(IsNan(ATRV[1]) == true, ma(TrueRange,period) , alpha * TrueRange + (1 - alpha) * IFf(isnan(ATRV[1])==true,0,ATRV[1])); upperBand = src + multiplier * AtrV; lowerBand = src - multiplier * AtrV; if lowerBand > lowerBand[1] or close[1] < lowerBand[1] Then lowerBand = lowerBand; Else lowerBand = lowerBand[1]; if upperBand < upperBand[1] or close[1] > upperBand[1] Then upperBand = upperBand; Else upperBand = upperBand[1]; if C > UpperBand Then direction = 1; if C < LowerBand Then direction = -1; if direction == 1 Then A = lowerband; Else A = upperband; } B = Ema(C,200); if CrossUp(A,B) and C > A and CountIf(A<B,20)[1] == 20 and O <= B*1.20 and O >= B*0.80 Then Find(1); 즐거운 하루되세요