예스스탁
예스스탁 답변
2025-02-19 14:11:33
안녕하세요
예스스탁입니다.
1
input : N(5);
Condition1 = H>L*1.08 or H[1]>L[1]*1.08 or
H[2]>L[2]*1.08 or H[3]>L[3]*1.08
or H[4]>L[4]*1.08 or H[5]>L[5]*1.08;
if CountIf(Condition1==true,N) >= 1 Then
Find(1);
2. 당일 최초 한번
var : cnt(0), sum1(0), sumi1(0),tt(0),hh(0),ll(0),tl(0);
var: sum2(0),sumi2(0),sumaa(0);
var : t(0),StartBarIndex(0),dd(0),d1(0),d2(0);
Array : ii[50](0),aa[50](0),bb[50](0),ttl[10](0);
var : count(0);
if Bdate != Bdate[1] Then
{
DD = DD+1;
count = 0;
}
if h>vi(1)*0.98 Then
{
count = count+1;
var1 = Index;
Var2 = var1[1];
Var3 = Var2[1];
if count == 1 Then
{
sum1=0;
sumi1=0;
tl=TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999);
TL_SetSize(tl,0);
For cnt = 1 to (var1-Var2)
{
sum1=sum1+h[cnt];
sumi1=sumi1+1;
}
value1=sum1/sumi1;
}
}
3-1
당일 첫번째와 세번째인데
세번째 value1은 두번째와 세번째를 기준으로 계산하는 경우
var : cnt(0), sum1(0), sumi1(0),tt(0),hh(0),ll(0),tl(0);
var: sum2(0),sumi2(0),sumaa(0);
var : t(0),StartBarIndex(0),dd(0),d1(0),d2(0);
Array : ii[50](0),aa[50](0),bb[50](0),ttl[10](0);
var : count(0);
if Bdate != Bdate[1] Then
{
DD = DD+1;
count = 0;
}
if h>vi(1)*0.98 Then
{
count = count+1;
var1 = Index;
Var2 = var1[1];
Var3 = Var2[1];
if count == 1 or count == 3 Then
{
sum1=0;
sumi1=0;
tl=TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999);
TL_SetSize(tl,0);
For cnt = 1 to (var1-Var2)
{
sum1=sum1+h[cnt];
sumi1=sumi1+1;
}
value1=sum1/sumi1;
}
}
3-2
당일 첫번째와 세번째인데
세번째 value1은 첫번째와 세번째를 기준으로 계산하는 경우
var : cnt(0), sum1(0), sumi1(0),tt(0),hh(0),ll(0),tl(0);
var: sum2(0),sumi2(0),sumaa(0);
var : t(0),StartBarIndex(0),dd(0),d1(0),d2(0);
Array : ii[50](0),aa[50](0),bb[50](0),ttl[10](0);
var : count(0);
if Bdate != Bdate[1] Then
{
DD = DD+1;
count = 0;
}
if h>vi(1)*0.98 Then
{
count = count+1;
if count == 1 or count == 3 Then
{
var1 = Index;
Var2 = var1[1];
Var3 = Var2[1];
sum1=0;
sumi1=0;
tl=TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999);
TL_SetSize(tl,0);
For cnt = 1 to (var1-Var2)
{
sum1=sum1+h[cnt];
sumi1=sumi1+1;
}
value1=sum1/sumi1;
}
}
즐거운 하루되세요
> yamu 님이 쓴 글입니다.
> 제목 : 질문드리겠습니다
> 안녕하세요 질문 몇가지 드리겠습니다
질문1)
아래와 같이 종목검색 수식을 작성했는데요
일봉상에서 당일부터 5봉 전까지 하루라도 H>L*1.08 일 경우 검색하는 내용입니다
만약 10봉전까지를 작성하고자 한다면 반복문을 이용해서 단순화 시켜서 만들 수 있을까요?
IF H>L*1.08 or H[1]>L[1]*1.08 or
H[2]>L[2]*1.08 or H[3]>L[3]*1.08
or H[4]>L[4]*1.08 or H[5]>L[5]*1.08
Then Find(1);
질문2,3)
아래 식은 조건이 발생하면 당일 한번만 (최초로 만족한 신호만) 나타나게 하는 식인데요
두 가지 경우의 질문이 있습니다
질문1)
당일 3번째 조건 만족 신호까지만(최초,2번째,3번째) 나타나게 하려면 어떻게 수정을 해야할까요?
질문2)
당일 1번째(최초 만족) 과 3번째만 나타내게 하고 싶습니다 (2번째는 건너뛰기)
아래는 수식입니다
감사합니다
var : cnt(0), sum1(0), sumi1(0),tt(0),hh(0),ll(0),tl(0);
var: sum2(0),sumi2(0),sumaa(0);
var : t(0),StartBarIndex(0),dd(0),d1(0),d2(0);
Array : ii[50](0),aa[50](0),bb[50](0),ttl[10](0);
if Bdate != Bdate[1] Then
DD = DD+1;
if h>vi(1)*0.98 Then
{
d1 = dd;
d2 = d1[1];
if d1 >= d2+1 Then
{
var1 = Index;
Var2 = var1[1];
Var3= Var2[1];
sum1=0;
sumi1=0;
tl=TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999);
TL_SetSize(tl,0);
For cnt = 1 to (var1-Var2)
{
sum1=sum1+h[cnt];
sumi1=sumi1+1;
}
value1=sum1/sumi1;