예스스탁
예스스탁 답변
2023-01-11 10:49:16
안녕하세요.
예스스탁 입니다.
이전 수식의 Sell 시그널이 발생한 지점까지 파란색 추세선으로,
Buy 시그널이 발생한 지점까지는 빨간색으로 표현했습니다.
즐거운 하루 보내세요.
input:length(12);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),Text1(0),process(0),T(0), TL2(0);
Array:HH[10,2](0),LL[10,2](0);
process = 0;
If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then
{
If LL[1,1] > L Then process = -1;
If HH[1,1] < H Then process = 1;
}
Else If Highest(H,length) == H and lastHiVal <> H Then process = 1;
Else If Lowest(L,length) == L and lastLoVal <> L Then process = -1;
If process == 1 Then
{
T = 1;
lastHiVal = H;
If HH[1,2] < LL[1,2] Then
{
For j = 10 DownTo 2
{
HH[j,1] = HH[j-1,1];
HH[j,2] = HH[j-1,2];
}
}
If HH[1,2] < LL[1,2] or HH[1,1] < H Then
{
HH[1,1] = H;
HH[1,2] = Index;
sBar = Index - LL[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
if LL[1,1] > 0 Then
{
TL1 = TL_New(sDate[sBar],sTime[sBar],LL[1,1],sDate[eBar],sTime[eBar],HH[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,Gray);
#Text1 = Text_New(sDate[eBar],sTime[eBar],HH[1,1],NewLine+NumToStr(HH[1,1],2));
#Text_SetStyle(Text1, 2, 1);
}
Else
{
Text_Delete(text1);
Text1 = Text_New(sDate[eBar],sTime[eBar],HH[1,1],NewLine+NumToStr(HH[1,1],2));
Text_SetStyle(Text1, 2, 1);
}
Text_SetStyle(Text1, 2, 1);
}
}
If process == -1 Then
{
T = -1;
lastLoVal = L;
If LL[1,2] < HH[1,2] Then
{
For j = 10 DownTo 2
{
LL[j,1] = LL[j-1,1];
LL[j,2] = LL[j-1,2];
}
}
If LL[1,2] < HH[1,2] or LL[1,1] > L Then
{
LL[1,1] = L;
LL[1,2] = Index;
sBar = Index - HH[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
if HH[1,1] > 0 Then
{
TL1 = TL_New(sDate[sBar],sTime[sBar],HH[1,1],sDate[eBar],sTime[eBar],LL[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,Gray);
#Text1 = Text_New(sDate[eBar],sTime[eBar],LL[1,1],NumToStr(LL[1,1],2));
#Text_SetStyle(Text1, 2, 0);
}
Else
{
Text_Delete(text1);
Text1 = Text_New(sDate[eBar],sTime[eBar],LL[1,1],NumToStr(LL[1,1],2));
Text_SetStyle(Text1, 2, 0);
}
}
}
if T == -1 Then
{
if T != T[1] Then
Condition1 = False;
if Condition1 == False and
HH[1,1] < HH[2,1] and HH[2,1] > HH[3,1] and HH[1,1] > HH[3,1] and
LL[2,1] > LL[3,1] and
C < LL[3,1] Then
{
#TL2 = TL_NEW(sdate[Index-HH[3,2]],sTime[Index-HH[3,2]],HH[3,1],sDate[Index-HH[1,2]],sTime[Index-HH[1,2]],HH[1,1]);
#TL_SetSize(TL2,1);
#TL_SetColor(TL2,Gray);
TL2 = TL_NEW(sdate[Index-LL[3,2]],sTime[Index-LL[3,2]],LL[3,1],sDate,sTime,LL[3,1]);
TL_SetSize(TL2,1);
TL_SetColor(TL2,Blue);
#TL2 = TL_NEW(sDatE,sTimE,0,sDatE,sTimE,999999);
#TL_SetColor(TL2,Blue);
Condition1 = true;
#Sell();
}
}
if T == 1 Then
{
if T != T[1] Then
Condition2 = False;
if Condition2 == False and
LL[1,1] > LL[2,1] and LL[2,1] < LL[3,1] and LL[1,1] < LL[3,1] and
HH[2,1] < HH[3,1] and
C > HH[3,1] Then
{
TL2 = TL_NEW(sdate[Index-HH[3,2]],sTime[Index-HH[3,2]],HH[3,1],sDate,sTime,HH[3,1]);
TL_SetSize(TL2,1);
TL_SetColor(TL2,Red);
#TL2 = TL_NEW(sdate[Index-LL[3,2]],sTime[Index-LL[3,2]],LL[3,1],sDate[Index-LL[1,2]],sTime[Index-LL[1,2]],LL[1,1]);
#TL_SetSize(TL1,1);
#TL_SetColor(TL1,Gray);
#TL2 = TL_NEW(sDatE,sTimE,0,sDatE,sTimE,999999);
#TL_SetColor(TL1,Red);
Condition2 = true;
#Buy();
}
}
> 용각산 님이 쓴 글입니다.
> 제목 : 지표 수정
> 80270번 수정부탁드립니다
화살표을 삭제하시고 라인선으로 변경부탁드립니다
수고하세요