예스스탁
예스스탁 답변
2020-02-05 11:12:17
안녕하세요
예스스탁입니다.
선의 굵기가 굵으면 점선으로 지정해도 해당 사이가 붙게 됩니다.
굵기는 모두 0으로 지정했습니다. 조절해 보시기 바랍니다.
1 월봉
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if bdate > bdate[1]+30 Then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
}
}
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
2 주봉
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if DayOfWeek(bdate) < DayOfWeek(bdate[1]) Then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
}
}
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
3 일봉
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if bdate > bdate[1] Then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
}
}
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
4 다른분봉
input : ntime(30);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(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%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
}
}
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
}
5. 항셍 월봉
input : ntime(101500);
var : D1(0),D2(0);
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if (sdate != sdate[1] and stime >= ntime) or
(sdate == sdate[1] and stime >= ntime and stime[1] < ntime) then
{
var1 = sdate;
var2 = var1[1];
if var1 > var2+30 Then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
}
6. 항셍 주봉
input : ntime(101500);
var : D1(0),D2(0);
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if (sdate != sdate[1] and stime >= ntime) or
(sdate == sdate[1] and stime >= ntime and stime[1] < ntime) then
{
var1 = sdate;
var2 = var1[1];
if dayofweek(var1) < DayOfWeek(var2) Then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
}
7. 항셍 일봉
input : ntime(101500);
var : D1(0),D2(0);
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if (sdate != sdate[1] and stime >= ntime) or
(sdate == sdate[1] and stime >= ntime and stime[1] < ntime) then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
}
8. 항셍 다른분봉
input : ntime(30);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : OO(0),HH(0),LL(0),DD(0),TT(0);
var : TL1(0),TL2(0),TL3(0),TL4(0);
if (sdate != sdate[1] and stime >= 101500) or
(sdate == sdate[1] and stime >= 101500 and stime[1] < 101500) 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%ntime;
if D1 != D1[1] or
(D1 == D1[1] and ntime > 1 and TF < TF[1]) or
(D1 == D1[1] and ntime > 1 and TM >= TM[1]+ntime) or
(D1 == D1[1] and ntime == 1 and TM > TM[1]) Then
{
OO = O;
HH = H;
LL = L;
DD = sdate;
TT = stime;
TL1 = TL_New(DD,TT,HH,DD,TT,LL);
TL2 = TL_New(DD,TT,HH,DD,TT,HH);
TL3 = TL_New(DD,TT,LL,DD,TT,LL);
TL4 = TL_New(DD,TT,HH,DD,TT,LL);
}
else
{
if OO > 0 then
{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
TL_SetBegin(TL1,DD,TT,HH);
TL_SetEnd(TL1,DD,TT,LL);
TL_SetBegin(TL2,DD,TT,HH);
TL_SetEnd(TL2,sdate,stime,HH);
TL_SetBegin(TL3,DD,TT,LL);
TL_SetEnd(TL3,sdate,stime,LL);
TL_SetBegin(TL4,sdate,stime,HH);
TL_SetEnd(TL4,sdate,stime,LL);
}
}
If OO <= C Then
{
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else
{
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
TL_SetSize(TL1,0); //좌측세로선 굵기
TL_SetSize(TL2,0); //상단가로선 굵기
TL_SetSize(TL3,0); //하측가로선 굵기
TL_SetSize(TL4,0); //우측세로선 굵기
TL_SetStyle(TL1,3); //좌측세로선 점선
TL_SetStyle(TL4,3); //우측세로선 점선
}
즐거운 하루되세요
> 삼족오 님이 쓴 글입니다.
> 제목 : 문의드립니다
> Input:분봉(5);
Var:OO(0),HH(0),LL(0),TL1(0),TL2(0),TL3(0),TL4(0);
Value1 = 분봉/BarInterval;
Value2 = DayIndex()%Value1;
If Value2 == 0 Then {
OO = O;
HH = H;
LL = L;
}
Else {
HH = Max(HH,H);
LL = Min(LL,L);
}
If Value2 == Value1 - 1 or time==iff(CodeCategory()<3,150000,151500) then {
TL1 = TL_New(Date[Value2],sTime[Value2],LL,Date[Value2],sTime[Value2],HH);
TL2 = TL_New(Date[Value2],sTime[Value2],HH,Date,sTime,HH);
TL3 = TL_New(Date[Value2],sTime[Value2],LL,Date,sTime,LL);
TL4 = TL_New(Date,sTime,LL,Date,sTime,HH);
If OO <= C Then {
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else {
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
}
TL_SetSize(TL1,1);
TL_SetSize(TL2,1);
TL_SetSize(TL3,1);
TL_SetSize(TL4,1);
=============================================
위 수식을 응용해서요..
월봉을 주봉에 표현하고
주봉을 일봉에 표현하고
일봉을 360분봉에 표현하고
360분봉을 30분에 표현하고
30분을 5분에 표현하고
5분을 1분에 표현하게 변경 부탁드립니다...
해외선물 기준입니다... 시작시간을 고려하여 잘 부탁드리구요
사각형이 표현될때 좌측과 우측은 실선으로 부탁드립니다
그리고 항생지수는 기타 해외선물과 시간이 다르니 수식을 따로 부탁드립니다