예스스탁
예스스탁 답변
2025-07-17 14:08:30
안녕하세요
예스스탁입니다.
돌파는 각 박스의 상단/하단을 종가로 돌파로 작성해 드립니다.
돌파되지 않고 다음 박스가 생긴다면 해당 박스는 남게 됩니다.
input : ratio(3);
var : 조건up(False),조건dn(False);
var : box1(0),box2(0);
var : TL1(0),TL2(0);
var : uph(0),upl(0),upm(0);
var : dnh(0),dnl(0),dnm(0);
조건up = L>H[2]*(1+ratio/100)&& L<H[1] && L[1]<=H[2];
조건dn = L[2]>H *(1+ratio/100)&& L[2]<=H[1] && L[1]<H ;
if upm > 0 and (c > uph or c < upL) Then
{
Box_Delete(box1);
#TL_Delete(TL1);
upm = 0;
}
if upm > 0 Then
{
box_SetEnd(box1,NextBarSdate,NextBarStime,upl);
TL_SetEnd(TL1,NextBarSdate,NextBarStime,upm);
}
if 조건up == true Then
{
TL_New(sDate,sTime,0,sDate,sTime,999999999);
uph = H;
upl = L;
upm = (uph+upl)/2;
box1 = Box_New(sDate,sTime,uph,NextBarSdate,NextBarStime,upl);
Box_SetColor(box1,Red);
Box_SetFill(box1,true);
TL1 = TL_New(sDate,stime,upm,NextBarSdate,NextBarStime,upm);
TL_SetColor(TL1,Red);
TL_SetStyle(TL1,3);
}
if dnm > 0 and (c > dnh or c < dnl) Then
{
Box_Delete(box2);
#TL_Delete(TL2);
dnm = 0;
}
if dnm > 0 Then
{
box_SetEnd(box2,NextBarSdate,NextBarStime,dnl);
TL_SetEnd(TL2,NextBarSdate,NextBarStime,dnm);
}
if 조건dn == true Then
{
dnh = H;
dnl = L;
dnm = (dnh+dnl)/2;
box2 = Box_New(sDate,sTime,dnh,NextBarSdate,NextBarStime,dnl);
Box_SetColor(box2,Blue);
Box_SetFill(box2,true);
TL2 = TL_New(sDate,stime,dnm,NextBarSdate,NextBarStime,dnm);
TL_SetColor(TL2,Blue);
TL_SetStyle(TL2,3);
Condition2 = true;
}
즐거운 하루되세요
> 파생돌이 님이 쓴 글입니다.
> 제목 : 부탁드립니다
> 수고하십니다
input : ratio(3);
조건up = L>H[2]*(1+ratio/100)&& L<H[1] && L[1]<=H[2];
조건dn = L[2]>H *(1+ratio/100)&& L[2]<=H[1] && L[1]<H ;
조건up 박스중심 점선
조건dn 박스중심 점선
현재가가 조건up 박스돌파시 박스선 삭제
현재가가 조건dn 박스돌파시 박스선 삭제
(box_new)함수를 사용하여 수식부탁드립니다.