예스스탁
예스스탁 답변
2024-03-25 14:43:48
안녕하세요
예스스탁입니다.
올리신 그림과 같이 박스의 첫봉에 신호는 가능하지 않습니다.
봉을 N개로 구분해서 마지막봉까지 진행되어야
박스의 최종 중간값이 이평보다 큰지 작은지 판단이 됩니다.
색상이 바뀌는 N개봉 구간의 마지막봉에 신호가 표시되게 작성해 드립니다.
input : N(10);
var : ii(0),TF(0),TL(0),Box1(0),Box2(0),cnt(0);
var : h5(0),l5(0),m5(0),clr(0),clr1(0);
Array : HH[10](0),LL[10](0);
if Bdate != Bdate[1] Then
ii = 0;
Else
ii = ii +1;
TF = ii%N;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and TF < TF[1] and TF > -1) Then
{
var1 = O;
Var2 = H;
Var3 = L;
var11 = var1[1];
Var4 = (Var2+Var3)/2;
Var41 = Var4[1];
For cnt = 9 downto 1
{
HH[cnt] = HH[cnt-1];
LL[cnt] = LL[cnt-1];
}
hh[0] = Var2;
ll[0] = Var3;
h5 = 0;
l5 = 0;
For cnt = 1 to 5
{
if h5 == 0 or (h5 > 0 and hh[cnt] > h5) Then
h5 = hh[cnt];
if l5 == 0 or (l5 > 0 and ll[cnt] < l5) Then
l5 = ll[cnt];
}
m5 = (h5+l5)/2;
value1 = sDate;
Value2 = sTime;
TL = TL_new(sDate,sTime,var4,NextBarSdate,NextBarStime,var4);
TL_SetColor(TL,Green);
TL_SetSize(TL,1);
clr1 = clr[1];
Box1 = Box_New(sDate,sTime,var2,NextBarSdate,NextBarStime,Var3);
if var4 > m5 Then
Box_SetColor(Box1,Red);
Else
Box_SetColor(Box1,Blue);
Box_SetFill(Box1,true);
}
Else
{
if H > Var2 Then
Var2 = H;
if L < var3 Then
Var3 = L;
Var4 = (Var2+Var3)/2;
TL_SetBegin(TL,value1,Value2,var4);
TL_SetEnd(TL,NextBarSdate,NextBarStime,var4);
Box_SetBegin(Box1,value1,Value2,Var2);
Box_SetEnd(Box1,NextBarSdate,NextBarStime,Var3);
if var4 > m5 Then
clr = Red;
Else
clr = Blue;
Box_SetColor(Box1,clr);
hh[0] = Var2;
ll[0] = Var3;
}
if TF == N-1 and clr == Red and clr != clr1 Then
Buy();
if TF == N-1 and clr == Blue and clr != clr1 Then
Sell();
즐거운 하루되세요
> 새벽에 님이 쓴 글입니다.
> 제목 : 문의드립니다
> 안녕하세요?
아래지표식을 시스템식으로
신호는 사진처럼부탁드립니다
감사합니다
input : N(10);
var : ii(0),TF(0),TL(0),Box1(0),Box2(0),cnt(0);
var : h5(0),l5(0),m5(0);
Array : HH[10](0),LL[10](0);
if Bdate != Bdate[1] Then
ii = 0;
Else
ii = ii +1;
TF = ii%N;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and TF < TF[1] and TF > -1) Then
{
var1 = O;
Var2 = H;
Var3 = L;
var11 = var1[1];
Var4 = (Var2+Var3)/2;
Var41 = Var4[1];
For cnt = 9 downto 1
{
HH[cnt] = HH[cnt-1];
LL[cnt] = LL[cnt-1];
}
hh[0] = Var2;
ll[0] = Var3;
h5 = 0;
l5 = 0;
For cnt = 1 to 5
{
if h5 == 0 or (h5 > 0 and hh[cnt] > h5) Then
h5 = hh[cnt];
if l5 == 0 or (l5 > 0 and ll[cnt] < l5) Then
l5 = ll[cnt];
}
m5 = (h5+l5)/2;
value1 = sDate;
Value2 = sTime;
TL = TL_new(sDate,sTime,var4,NextBarSdate,NextBarStime,var4);
TL_SetColor(TL,Green);
TL_SetSize(TL,1);
Box1 = Box_New(sDate,sTime,var2,NextBarSdate,NextBarStime,Var3);
if var4 > m5 Then
Box_SetColor(Box1,Red);
Else
Box_SetColor(Box1,Blue);
Box_SetFill(Box1,true);
}
Else
{
if H > Var2 Then
Var2 = H;
if L < var3 Then
Var3 = L;
Var4 = (Var2+Var3)/2;
TL_SetBegin(TL,value1,Value2,var4);
TL_SetEnd(TL,NextBarSdate,NextBarStime,var4);
Box_SetBegin(Box1,value1,Value2,Var2);
Box_SetEnd(Box1,NextBarSdate,NextBarStime,Var3);
if var4 > m5 Then
Box_SetColor(Box1,Red);
Else
Box_SetColor(Box1,Blue);
hh[0] = Var2;
ll[0] = Var3;
}
Plot1(m5);