커뮤니티

문의 드립니다

프로필 이미지
zmfha
2026-03-11 15:28:14
83
글번호 231047
답변완료

안녕하세요.


현재 A패턴에서 생성되는 수평선(A선)을 기준으로

재테스트(Re-test) 표시를 만들고 싶습니다.


단순히 가격이 A선 근처에 접근할 때 표시하는 것이 아니라


A선 생성

→ 가격이 일정 거리 이상 이탈

→ 다시 A선에 재접근


이 구조일 때만 재테스트 표시를 하고 싶습니다.


예스랭귀지에서 특정 가격(lvl) 기준으로


1. 가격이 일정 거리 이상 이탈했는지 기록하고

2. 이후 다시 해당 가격에 접근할 때


첫 재접근만 표시하는 구조를 구현하려면


보통 어떤 방식으로 상태를 관리하는 것이 좋을지

예시 구조나 권장 방식이 있는지 궁금합니다.


예)

flag 변수 사용

distance 체크

cross 조건 등


간단한 예제 형태라도 알려주시면 큰 도움이 될 것 같습니다.


감사합니다.

지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2026-03-11 17:07:42

안녕하세요 예스스탁입니다. 아래식 참고하시기 바랍니다. A선은 임의로 지정한 값입니다. input : 최소이탈틱(20),근접틱(5); var : A(0),T(0),diff(0),hdiff(0),retest(False),tx(0); var1 = ma(C,5); var2 = ma(C,20); //이평골드 if CrossUp(var1,Var2) Then { A = highest(H,5); //A선 (골드기준 5개봉 최고가) T = 1; } //종가가 A선을 상향돌파하면 Hdiff, retest 초기화 if T == 1 and CrossUp(C,A) Then { T = 2; Hdiff = 0; retest = False; } if T == 2 and retest == False Then { //종가가 A선을 돌파한 이후에 차이값의 최고값 계산 diff = C-A; if diff > hdiff Then { hdiff = diff; } //최고 차이값이 최소이탈틱이상이고 현재차이가 근접틱이내이면 출력 if hdiff >= PriceScale*최소이탈틱 and diff <= PriceScale*근접틱 Then { retest = true; //조건만족하면 retest는 false로 만들어 최초만 표시되게 함 tx = Text_New(sDate,sTime,h,"retest"); Text_SetStyle(tx,2,1); } } 즐거운 하루되세요