예스스탁
예스스탁 답변
2024-07-15 15:58:32
안녕하세요
예스스탁입니다.
Input : af(0.02), maxAF(0.2);
var : T(0),B(0),S(0),tx(0),hh(0),ll(0),box(0);
var1 = CSar(af,maxAF);
plot1(var1, "CSAR",IFF(c>var1,Red,Blue));
if CrossUp(C,var1) Then
{
T = 1;
B = var1;
HH = H;
if abs(S-LL) < 0.9 Then
Text_Delete(tx);
tx = Text_New(sDate,sTime,HH,NumToStr(abs(HH-B),2));
Text_SetColor(tx,Red);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,2);
Text_SetBold(tx,1);
box = Box_New(sDate,sTime,B,NextBarSdate,NextBarStime,HH);
}
if CrossDown(C,var1) Then
{
T = -1;
S = var1;
LL = L;
if abs(B-HH) < 0.9 Then
Text_Delete(tx);
tx = Text_New(sDate,sTime,LL,NumToStr(abs(LL-S),2));
Text_SetColor(tx,Blue);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,2);
Text_SetBold(tx,1);
box = Box_New(sDate,sTime,S,NextBarSdate,NextBarStime,LL);
}
Else
{
if T == 1 Then
{
if H > HH Then
HH = H;
Text_SetString(tx,NumToStr(abs(HH-B),2));
Text_SetLocation(tx,sDate,sTime,HH);
Box_SetEnd(box,NextBarSdate,NextBarStime,hh);
if HH < B+0.5 Then
Box_SetColor(box,Orange);
Else if hh >= B+0.5 and HH < B+1.0 Then
Box_SetColor(box,Magenta);
Else
Box_SetColor(box,Red);
Box_SetFill(box,true);
}
if T == -1 Then
{
if L < LL Then
LL = L;
Text_SetString(tx,NumToStr(abs(LL-S),2));
Text_SetLocation(tx,sDate,sTime,LL);
Box_SetEnd(box,NextBarSdate,NextBarStime,ll);
if ll > S-0.5 Then
Box_SetColor(box,Yellow);
Else if ll <= S-0.5 and ll > S-1.0 Then
Box_SetColor(box,Cyan);
Else
Box_SetColor(box,Blue);
Box_SetFill(box,true);
}
}
즐거운 하루되세요
> 고성 님이 쓴 글입니다.
> 제목 : 파라볼릭 박스
> Input : af(0.02), maxAF(0.2);
var : T(0),B(0),S(0),tx(0),hh(0),ll(0);
var1 = CSar(af,maxAF);
plot1(var1, "CSAR",IFF(c>var1,Red,Blue));
if CrossUp(C,var1) Then
{
T = 1;
B = var1;
HH = H;
Condition1 = False;
if Condition1 == False and HH >= B+0.8 Then
{
Condition1 = true;
tx = Text_New(sDate,sTime,HH,NumToStr(abs(HH-B),2));
Text_SetColor(tx,Red);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,2);
Text_SetBold(tx,1);
}
}
if CrossDown(C,var1) Then
{
T = -1;
S = var1;
LL = L;
Condition2 = False;
if Condition2 == False and LL <= S-0.9 Then
{
Condition2 = true;
tx = Text_New(sDate,sTime,LL,NumToStr(abs(LL-S),2));
Text_SetColor(tx,Blue);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,2);
Text_SetBold(tx,1);
}
}
Else
{
if T == 1 Then
{
if H > HH Then
HH = H;
if Condition1 == False and HH >= B+0.8 Then
{
Condition1 = true;
tx = Text_New(sDate,sTime,HH,NumToStr(abs(HH-B),2));
Text_SetColor(tx,Red);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,2);
Text_SetBold(tx,1);
}
if Condition1 == true Then
{
Text_SetString(tx,NumToStr(abs(HH-B),2));
Text_SetLocation(tx,sDate,sTime,HH);
}
}
if T == -1 Then
{
if L < LL Then
LL = L;
if Condition2 == False and LL <= S-0.9 Then
{
Condition2 = true;
tx = Text_New(sDate,sTime,LL,NumToStr(abs(LL-S),2));
Text_SetColor(tx,Blue);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,2);
Text_SetBold(tx,1);
}
if Condition2 == true Then
{
Text_SetString(tx,NumToStr(abs(LL-S),2));
Text_SetLocation(tx,sDate,sTime,LL);
}
}
}
1. 0.9 이상만 표시되는 것을,전환즉시부터 0.9 이하여도 표시하다가 재전환되면 0.9 이상만 저장으로 수정.
상승 하락의 크기별 삭제가 별도로 설정되는 것을, 일괄적으로 설정하여 수식이 많이 간소화된다면 상승 하락 구분없이(동일하게 0.9 이하 삭제) 일괄 변경으로 수정.
2.파라볼릭 상승 하락 크기별 박스 추가.
하락 파라볼릭이 생기면 파라볼릭 상단부터 박스 시작하여,
파라볼릭 하락선 말고(늦음), 파라볼릭 내 봉 최저가 선을 따라 하단까지 박스.
0.5 이하는 a색, 0.5~1은 b색, 1 이상은 c색으로 박스 크기별 색상 구별. 감사합니다.