예스스탁
예스스탁 답변
2020-05-29 13:13:44
안녕하세요
예스스탁입니다.
input : 소숫점자리(2),r1(1.618),r2(2.0);
var : xClose(0),xOpen(0),xHigh(0),xLow(0),t(0),cnt(0),h1(0),l1(0);
var : HH(0),HD(0),HT(0);
var : LL(0),LD(0),LT(0);
Array : TL[10](0),TX[10](0),TL1[10](0),tl2[10](0),TX2[10](0);
Array : TL3[10](0),TL4[10](0),TX3[10](0),TX4[10](0);
if index == 0 then
{
xOpen = open;
xClose = (O+H+L+C)/4;
xHigh = MaxList( high, xOpen, xClose);
xLow = MinList( low, xOpen,xClose);
}
else
{
xClose = (O+H+L+C)/4;
xOpen = (xOpen [1] + xClose [1])/2 ;
xHigh = MaxList(High, xOpen, xClose) ;
xLow = MinList(Low, xOpen, xClose) ;
}
if xClose > xOpen then
{
T = 1;
if T != T[1] Then
{
HH = H;
HD = sdate;
HT = stime;
h1 = hh[1];
if LL > 0 then
{
TL[0] = TL_New(LD,LT,LL,HD,HT,HH);
TL1[0] = TL_New(LD,LT,LL,LD,LT,LL);
TL2[0] = TL_New(LD,LT,LL+(h1-l1),LD,LT,LL+(h1-l1));
TL3[0] = TL_New(LD,LT,LL+(h1-l1)*r1,LD,LT,LL+(h1-l1)*r1);
TL4[0] = TL_New(LD,LT,LL+(h1-l1)*r1,LD,LT,LL+(h1-l1)*r2);
TX[0] = Text_New(HD,HT,HH,NumToStr(HH,소숫점자리)+"("+NumToStr(HH-LL,소숫점자리)+")");
TX2[0] = Text_New(HD,HT,ll+(H1-L1),NumToStr(ll+(h1-l1),소숫점자리));
TX3[0] = Text_New(HD,HT,ll+(H1-L1)*r1,NumToStr(ll+(h1-l1)*r1,소숫점자리));
TX4[0] = Text_New(HD,HT,ll+(H1-L1)*r2,NumToStr(ll+(h1-l1)*r2,소숫점자리));
tL_setcolor(tl1[0],BLUE);
tL_setcolor(tl2[0],yellow);
tL_setcolor(tl3[0],yellow);
tL_setcolor(tl4[0],yellow);
Text_SetStyle(TX[0],2,1);
Text_SetStyle(TX2[0],2,1);
Text_SetStyle(TX3[0],2,1);
Text_SetStyle(TX4[0],2,1);
Text_SetColor(TX2[0],yellow);
Text_SetColor(TX3[0],yellow);
Text_SetColor(TX4[0],yellow);
for cnt = 1 to 9
{
TL[cnt] = TL[cnt-1][1];
TX[cnt] = TX[cnt-1][1];
TL1[cnt] = TL1[cnt-1][1];
TL2[cnt] = TL2[cnt-1][1];
TL3[cnt] = TL3[cnt-1][1];
TL4[cnt] = TL4[cnt-1][1];
TX2[cnt] = TX2[cnt-1][1];
TX3[cnt] = TX3[cnt-1][1];
TX4[cnt] = TX4[cnt-1][1];
}
//TL_Delete(TL[4]);
//Text_Delete(TL[4]);
}
}
PlotPaintBar(Xhigh,Xlow,Xopen,Xclose,"강조",red);
}
else if xClose < xOpen then
{
T = -1;
if T != T[1] Then
{
LL = H;
LD = sdate;
LT = stime;
l1 = ll[1];
if HH > 0 then
{
TL[0] = TL_New(HD,HT,HH,LD,LT,LL);
TL1[0] = TL_New(HD,HT,HH,HD,HT,HH);
TL2[0] = TL_New(HD,HT,HH-(h1-l1),HD,HT,HH-(h1-L1));
TL3[0] = TL_New(HD,HT,HH-(h1-l1)*r1,HD,HT,HH-(h1-L1)*r1);
TL4[0] = TL_New(HD,HT,HH-(h1-l1)*r2,HD,HT,HH-(h1-L1)*r2);
TX[0] = Text_New(LD,LT,LL,NumToStr(LL,소숫점자리)+"("+NumToStr(LL-HH,소숫점자리)+")");
TX2[0] = Text_New(LD,LT,hh-(H1-L1),NumToStr(HH-(H1-L1),소숫점자리));
TX3[0] = Text_New(LD,LT,hh-(H1-L1)*r1,NumToStr(HH-(H1-L1)*r1,소숫점자리));
TX4[0] = Text_New(LD,LT,hh-(H1-L1)*r2,NumToStr(HH-(H1-L1)*r2,소숫점자리));
tL_setcolor(tl1[0],RED);
tL_setcolor(tl2[0],cyan);
tL_setcolor(tl3[0],cyan);
tL_setcolor(tl4[0],cyan);
Text_SetStyle(TX[0],2,0);
Text_SetStyle(TX2[0],2,0);
Text_SetStyle(TX3[0],2,0);
Text_SetStyle(TX4[0],2,0);
Text_SetColor(TX2[0],cyan);
Text_SetColor(TX3[0],cyan);
Text_SetColor(TX4[0],cyan);
for cnt = 1 to 9
{
TL[cnt] = TL[cnt-1][1];
TX[cnt] = TX[cnt-1][1];
TL1[cnt] = TL1[cnt-1][1];
TL2[cnt] = TL2[cnt-1][1];
TL3[cnt] = TL3[cnt-1][1];
TL4[cnt] = TL4[cnt-1][1];
TX2[cnt] = TX2[cnt-1][1];
TX3[cnt] = TX3[cnt-1][1];
TX4[cnt] = TX4[cnt-1][1];
}
//TL_Delete(TL[4]);
//Text_Delete(TL[4]);
}
}
PlotPaintBar(Xhigh,Xlow,Xopen,Xclose,"강조",blue);
}
else
PlotPaintBar(Xhigh,Xlow,Xopen,Xclose,"강조",GREEN);
if T == 1 then
{
if H > HH Then
{
HH = H;
HD = sdate;
HT = stime;
if LL > 0 Then
{
TL_SetEnd(TL[0],HD,HT,HH);
Text_SetLocation(TX[0],sdate,stime,HH);
Text_SetString(TX[0],NumToStr(HH,소숫점자리)+"("+NumToStr(HH-LL,소숫점자리)+")");
}
}
TL_SetBegin(TL1[0],LD,LT,LL);
TL_SetEnd(TL1[0],sdate,stime,LL);
TL_SetBegin(TL2[0],LD,LT,LL+(H1-L1));
TL_SetEnd(TL2[0],sdate,stime,LL+(H1-L1));
TL_SetBegin(TL3[0],LD,LT,LL+(H1-L1)*r1);
TL_SetEnd(TL3[0],sdate,stime,LL+(H1-L1)*r1);
TL_SetBegin(TL4[0],LD,LT,LL+(H1-L1)*r2);
TL_SetEnd(TL4[0],sdate,stime,LL+(H1-L1)*r2);
Text_SetString(TX2[0],NumToStr(LL+(H1-L1),소숫점자리));
}
if T == -1 then
{
if L < LL Then
{
LL = L;
LD = sdate;
LT = stime;
if HH > 0 Then
{
TL_SetEnd(TL[0],LD,LT,LL);
Text_SetLocation(TX[0],sdate,stime,LL);
Text_SetString(TX[0],NumToStr(LL,소숫점자리)+"("+NumToStr(LL-HH,소숫점자리)+")");
}
}
TL_SetBegin(TL1[0],HD,HT,HH);
TL_SetEnd(TL1[0],sdate,stime,HH);
TL_SetBegin(TL2[0],hD,hT,hh-(H1-L1));
TL_SetEnd(TL2[0],sdate,stime,HH-(H1-L1));
TL_SetBegin(TL3[0],hD,hT,hh-(H1-L1)*r1);
TL_SetEnd(TL3[0],sdate,stime,HH-(H1-L1)*r1);
TL_SetBegin(TL4[0],hD,hT,hh-(H1-L1)*r2);
TL_SetEnd(TL4[0],sdate,stime,HH-(H1-L1)*r2);
Text_SetString(TX2[0],NumToStr(HH-(H1-L1),소숫점자리));
Text_SetString(TX3[0],NumToStr(HH-(H1-L1)*r1,소숫점자리));
Text_SetString(TX4[0],NumToStr(HH-(H1-L1)*r2,소숫점자리));
}
var : col(0);
if t == 1 and hh > h1 Then
col = red;
if t == -1 and ll < l1 Then
col = blue;
TL_SetSize(TL[0],3);
TL_SetColor(tl[0],col);
TL_SetSize(TL1[0],3);
TL_SetSize(TL2[0],3);
TL_SetSize(TL3[0],3);
TL_SetSize(TL4[0],3);
즐거운 하루되세요
> 레전드 님이 쓴 글입니다.
> 제목 : 문의
> 고점 저점에서 올라갔든 폭만큼 오르거나 내리거나 햇습니다, 이것을 그폭의 1.618배 그리고 2배만큼을 추가해서 나오도록 부탁드립니다,올라갓을때 폭에 나타났든 색깔은 올라갔을때 같게 해주시고 내려갈때 폭도 같은 색깔로 부탁드립니다 그리고 외부변수로 해서 그폭의 변동을 변수로해서 고칠수 있도록 부탁드립니다. 수식은 아래식으로 참조햇습니다.
input : 소숫점자리(2);
var : xClose(0),xOpen(0),xHigh(0),xLow(0),t(0),cnt(0),h1(0),l1(0);
var : HH(0),HD(0),HT(0);
var : LL(0),LD(0),LT(0);
Array : TL[10](0),TX[10](0),TL1[10](0),tl2[10](0),TX2[10](0);
if index == 0 then
{
xOpen = open;
xClose = (O+H+L+C)/4;
xHigh = MaxList( high, xOpen, xClose);
xLow = MinList( low, xOpen,xClose);
}
else
{
xClose = (O+H+L+C)/4;
xOpen = (xOpen [1] + xClose [1])/2 ;
xHigh = MaxList(High, xOpen, xClose) ;
xLow = MinList(Low, xOpen, xClose) ;
}
if xClose > xOpen then
{
T = 1;
if T != T[1] Then
{
HH = H;
HD = sdate;
HT = stime;
h1 = hh[1];
if LL > 0 then
{
TL[0] = TL_New(LD,LT,LL,HD,HT,HH);
TL1[0] = TL_New(LD,LT,LL,LD,LT,LL);
TL2[0] = TL_New(LD,LT,LL+(h1-l1),LD,LT,LL+(h1-l1));
TX[0] = Text_New(HD,HT,HH,NumToStr(HH,소숫점자리)+"("+NumToStr(HH-LL,소숫점자리)+")");
TX2[0] = Text_New(HD,HT,ll+(H1-L1),NumToStr(ll+(h1-l1),소숫점자리));
tL_setcolor(tl1[0],BLUE);
tL_setcolor(tl2[0],yellow);
Text_SetStyle(TX[0],2,1);
Text_SetStyle(TX2[0],2,1);
Text_SetColor(TX2[0],yellow);
for cnt = 1 to 9
{
TL[cnt] = TL[cnt-1][1];
TX[cnt] = TX[cnt-1][1];
TL1[cnt] = TL1[cnt-1][1];
}
//TL_Delete(TL[4]);
//Text_Delete(TL[4]);
}
}
PlotPaintBar(Xhigh,Xlow,Xopen,Xclose,"강조",red);
}
else if xClose < xOpen then
{
T = -1;
if T != T[1] Then
{
LL = H;
LD = sdate;
LT = stime;
l1 = ll[1];
if HH > 0 then
{
TL[0] = TL_New(HD,HT,HH,LD,LT,LL);
TL1[0] = TL_New(HD,HT,HH,HD,HT,HH);
TL2[0] = TL_New(HD,HT,HH-(h1-l1),HD,HT,HH-(h1-L1));
TX[0] = Text_New(LD,LT,LL,NumToStr(LL,소숫점자리)+"("+NumToStr(LL-HH,소숫점자리)+")");
TX2[0] = Text_New(LD,LT,hh-(H1-L1),NumToStr(HH-(H1-L1),소숫점자리));
tL_setcolor(tl1[0],RED);
tL_setcolor(tl2[0],cyan);
Text_SetStyle(TX[0],2,0);
Text_SetStyle(TX2[0],2,0);
Text_SetColor(TX2[0],cyan);
for cnt = 1 to 9
{
TL[cnt] = TL[cnt-1][1];
TX[cnt] = TX[cnt-1][1];
TL1[cnt] = TL1[cnt-1][1];
}
//TL_Delete(TL[4]);
//Text_Delete(TL[4]);
}
}
PlotPaintBar(Xhigh,Xlow,Xopen,Xclose,"강조",blue);
}
else
PlotPaintBar(Xhigh,Xlow,Xopen,Xclose,"강조",GREEN);
if T == 1 then
{
if H > HH Then
{
HH = H;
HD = sdate;
HT = stime;
if LL > 0 Then
{
TL_SetEnd(TL[0],HD,HT,HH);
Text_SetLocation(TX[0],sdate,stime,HH);
Text_SetString(TX[0],NumToStr(HH,소숫점자리)+"("+NumToStr(HH-LL,소숫점자리)+")");
}
}
TL_SetBegin(TL1[0],LD,LT,LL);
TL_SetEnd(TL1[0],sdate,stime,LL);
TL_SetBegin(TL2[0],LD,LT,LL+(H1-L1));
TL_SetEnd(TL2[0],sdate,stime,LL+(H1-L1));
Text_SetString(TX2[0],NumToStr(LL+(H1-L1),소숫점자리));
}
if T == -1 then
{
if L < LL Then
{
LL = L;
LD = sdate;
LT = stime;
if HH > 0 Then
{
TL_SetEnd(TL[0],LD,LT,LL);
Text_SetLocation(TX[0],sdate,stime,LL);
Text_SetString(TX[0],NumToStr(LL,소숫점자리)+"("+NumToStr(LL-HH,소숫점자리)+")");
}
}
TL_SetBegin(TL1[0],HD,HT,HH);
TL_SetEnd(TL1[0],sdate,stime,HH);
TL_SetBegin(TL2[0],hD,hT,hh-(H1-L1));
TL_SetEnd(TL2[0],sdate,stime,HH-(H1-L1));
Text_SetString(TX2[0],NumToStr(HH-(H1-L1),소숫점자리));
}
var : col(0);
if t == 1 and hh > h1 Then
col = red;
if t == -1 and ll < l1 Then
col = blue;
TL_SetSize(TL[0],3);
TL_SetColor(tl[0],col);
TL_SetSize(TL1[0],3);
TL_SetSize(TL2[0],3);