커뮤니티

관리자님 수식 만들어 주셔서 너무 감사합니다.. 궁금한점 있어서 추가 질문합니다.

프로필 이미지
멋정이
2026-09-07 15:14:51
95
글번호 233536
답변완료

첨부 이미지

1번 질문

제가 뭔하는 건 어느 시작점 캔들부터 3개의 캔들을 기준으로

1  2 3

    1  2  3

         1  2  3

              1  2  3

숫자로 표현하면 이렇게 캔들이  중복을 시켰을때

도지캔들 상관없이 2번 캔들 중간에 공간이 생기면 표시를 원하는 겁니다.


var : B(0);


if L > H[2] Then

{

B = box_new(sDate[2],sTime[2],H[2],sDate,sTime,L);

Box_SetColor(B,Blue);

Box_SetFill(B,true);

}


if H < L[2] Then

{

B = box_new(sDate[2],sTime[2],L[2],sDate,sTime,H);

Box_SetColor(B,Red);

Box_SetFill(B,true);

}


해결해 주셔서 감사합니다.


추가질문 입니다.


질문1

숫자로 표현하면 이렇게 캔들이  중복을 시켰을때


도지캔들 상관없이 2번 캔들 중간에 공간이 생겨서 표시가 된 상태에서


1번 캔들 종가 와 2번캔들 시가 사이에 갭이 있다면


2번 캔들 종가 와 3번캔들 시가 사이에 갭이 있다면


갭 까지 확장에서 표현이 가능할까요?


질문2


숫자로 표현하면 이렇게 캔들이  중복을 시켰을때


도지캔들 상관없이 2번 캔들 중간에 공간이 없는 상태에서


1번 캔들 종가 와 2번캔들 시가 사이에 갭이 있다면


2번 캔들 종가 와 3번캔들 시가 사이에 갭이 있다면


갭 표시가 가능할까요?


질문3


표시된 박스가 5개 캔들 우측 옆으로 확장이 가능할까요?



만약 수식을 통합해서 했을때 복잡하거나 오류가 나면 따로 따로 해주셔도 됩니다...


진심으로 감사합니다.





지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2026-09-08 09:24:34

안녕하세요 예스스탁입니다. 1번 캔들 종가 와 2번캔들 시가 사이에 갭이 있다면 2번 캔들 종가 와 3번캔들 시가 사이에 갭이 있다면 문의하신 위 내용이면 현재봉과 전봉을 비교해서 전봉종과와 현재봉시가가 갭이 있으면 그리는 것과 같습니다 input : n(5); var : i(0); Array : B1[100](0),B2[100](0); Array : i1[100](0),i2[100](0); if L > H[2] Then { For i = 99 DownTo 1 { B1[i]= B1[i-1]; i1[i]= i1[i-1]; } B1[0] = box_new(sDate[2],sTime[2],H[2],sDate,sTime,L); I1[0] = Index; Box_SetColor(B1[0],Blue); Box_SetFill(B1[0],true); } if H < L[2] Then { For i = 99 DownTo 1 { B1[i]= B1[i-1]; i1[i]= i1[i-1]; } B1[0] = box_new(sDate[2],sTime[2],L[2],sDate,sTime,H); I1[0] = Index; Box_SetColor(B1[0],Red); Box_SetFill(B1[0],true); } #상승갭 if O > C[1] Then { For i = 99 DownTo 1 { B2[i]= B2[i-1]; i2[i]= i2[i-1]; } B2[0] = box_new(sDate[1],sTime[1],C[1],sDate,sTime,O); I2[0] = Index; Box_SetColor(B2[0],Cyan); Box_SetFill(B2[0],true); } #하락갭 if O < C[1] Then { For i = 99 DownTo 1 { B2[i]= B2[i-1]; i2[i]= i2[i-1]; } B2[0] = box_new(sDate[1],sTime[1],C[1],sDate,sTime,O); I2[0] = Index; Box_SetColor(B2[0],Magenta); Box_SetFill(B2[0],true); } For i = 0 to 99 { if i1[i] > 0 and Index <= i1[i]+n Then { Box_SetEnd(B1[i],sDate,sTime,Box_GetEndVal(B1[i])); } if i2[i] > 0 and Index <= i2[i]+n Then { Box_SetEnd(B2[i],sDate,sTime,Box_GetEndVal(B2[i])); } } 즐거운 하루되세요