커뮤니티

문의드립니다.

프로필 이미지
만복이
2026-04-06 06:49:31
59
글번호 231433
답변완료

아래는 틱봉차트에서 30분봉의 시가고가저가종가의 캔들을 나타내달라는것을 해주셨는건데,


이제 차트에 60분봉이나 30분봉캔들을 열어놓고 그안에 이중으로 겹쳐서 일봉의 시가고가저가종가의 캔들을 나타내는 것을 표현해주실수 있는가요?


========================================================================================


안녕하세요

예스스탁입니다.


틱봉에서 분봉의 값은 정확히 계산할 수 없습니다.

랭귀지는 봉의 시고저종만 이용이 가능하데

분봉의 시고저종이 봉 중간에 있을 경우 해당 값을 추출하지 못합니다.

아래식은 타분봉 봉을 그리는 내용인데

틱봉에서는 근사값이라고 보셔야 합니다.


input : 분(30);

var : S1(0),D1(0),TM(0),TF(0);

var : OO(0),HH(0),LL(0),CC(0),ii(0);

var : TL1(0),TL2(0),box(0);


if Bdate != Bdate[1] Then

{

S1 = TimeToMinutes(stime);

D1 = sdate;

}


if D1 > 0 then

{

if sdate == D1 Then

TM = TimeToMinutes(stime)-S1;

Else

TM = TimeToMinutes(stime)+1440-S1;

TF = TM%분;

if Bdate != Bdate[1] or

(Bdate == Bdate[1] and 분 > 1 and TF < TF[1]) or

(Bdate == Bdate[1] and 분 > 1 and TM >= TM[1]+분) or

(Bdate == Bdate[1] and 분 == 1 and TM > TM[1]) Then

{

OO = O;

HH = H;

LL = L;

ii = 0;


TL1 = TL_New(sDate,sTime,max(C,O),sDate,sTime,HH);

TL2 = TL_New(sDate,sTime,min(C,O),sDate,sTime,LL);

box = box_new(sDate,sTime,OO,NextBarSdate,NextBarStime,C);

}


ii = ii +1;

if H > HH Then

HH = H;

if L < LL Then

LL = L;

CC = C;


TL_SetBegin(TL1,sDate[int(ii/2)],sTime[int(ii/2)],max(CC,OO));

TL_SetBegin(TL2,sDate[int(ii/2)],sTime[int(ii/2)],min(CC,OO));

TL_SetEnd(TL1,sDate[int(ii/2)],sTime[int(ii/2)],HH);

TL_SetEnd(TL2,sDate[int(ii/2)],sTime[int(ii/2)],LL);


Box_SetEnd(box,sDate,Stime,CC);


Box_SetColor(Box,IFF(CC>OO,Red,IFf(CC<OO,Blue,Green)));

Box_SetSize(Box,1);


TL_SetSize(TL1,1);

TL_SetSize(TL2,1);

TL_SetColor(TL1,IFF(CC>OO,Red,IFf(CC<OO,Blue,Green)));

TL_SetColor(TL2,IFF(CC>OO,Red,IFf(CC<OO,Blue,Green)));

TL_SetDrawMode(TL1,0);

TL_SetDrawMode(TL2,0);

}




즐거운 하루되세요


지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2026-04-06 16:58:04

안녕하세요 예스스탁입니다. var : OO(0),HH(0),LL(0),CC(0),ii(0); var : TL1(0),TL2(0),box(0); if Bdate != Bdate[1] Then { OO = O; HH = H; LL = L; TL1 = TL_New(sDate,sTime,max(C,O),sDate,sTime,HH); TL2 = TL_New(sDate,sTime,min(C,O),sDate,sTime,LL); box = box_new(sDate,sTime,OO,NextBarSdate,NextBarStime,C); ii = 0; } if OO > 0 then { ii = ii +1; if H > HH Then HH = H; if L < LL Then LL = L; CC = C; TL_SetBegin(TL1,sDate[int(ii/2)],sTime[int(ii/2)],max(CC,OO)); TL_SetBegin(TL2,sDate[int(ii/2)],sTime[int(ii/2)],min(CC,OO)); TL_SetEnd(TL1,sDate[int(ii/2)],sTime[int(ii/2)],HH); TL_SetEnd(TL2,sDate[int(ii/2)],sTime[int(ii/2)],LL); Box_SetEnd(box,sDate,Stime,CC); Box_SetColor(Box,IFF(CC>OO,Red,IFf(CC<OO,Blue,Green))); Box_SetSize(Box,1); TL_SetSize(TL1,1); TL_SetSize(TL2,1); TL_SetColor(TL1,IFF(CC>OO,Red,IFf(CC<OO,Blue,Green))); TL_SetColor(TL2,IFF(CC>OO,Red,IFf(CC<OO,Blue,Green))); TL_SetDrawMode(TL1,0); TL_SetDrawMode(TL2,0); } 즐거운 하루되세요