커뮤니티
문의드립니다.
2012-10-18 11:01:39
315
글번호 55702
1.알려주신 수식을 적용해 보았더니 첨부파일에서와 같이 AA값은 저장되지 않고 BB값은 조건이 만족
되었는데도 저장이 되지 않았습니다.
수식의 내용을 읽고 이해하고 2일동안 테스트 수정해 보았지만 계속 오류가 생깁니다.
수정부탁드립니다.
2.그리고 H[0] > H[1] AND L[0] < L[1]은 제가 IF THEN문 밑에 첨부한 저장내용만 저장이 발생하는 수식이 필요
합니다.
H[0] > H[1] 조건과 L[0] < L[1]에 중복되어 저장이 발생하여서는 안됩니다.
상승중은 전에 H[0] > H[1]= direction= 1 저장
하락중은 전에 L[0] < L[1]= direction= -1 저장을 뜻합니다.
3.H[0] > H[1] AND L[0] < L[1]봉 다음봉에서는 아래 조건만족시A,B의 값은 저장이 되지만 AA,BB의
값이 저장이 되어서는 안됩니다.(확인결과 H[0] > H[1] AND L[0] < L[1]봉 의다음봉에서 AA,BB저장이 발생합니다.)
고저가 돌파 다음 봉은 고저가돌파봉 모양에 따라 따로 수식작성 예정입니다.
수식은 디아이디종목 일봉으로 지표작성 확인해보았습니다.
답변부탁드립니다.수고하세요^^
Var:A(0),B(0),cnt(0),direction(0);
Array: AA[100](0),BB[100](0);
#차트 첫봉
#A에 고가 저장
#B에 저가 저장
If Index == 0 Then
{ A=H[0]; B=L[0];}
#고가가 한봉전 고가보다 크면
#A에 고가 저장
#direction변수에 1저장
if H[0] > H[1] then//1번조건
{
A = H[0];
direction = 1;
}
#저가가 한봉전 저가보다 작으면
#B에 저가 저장
#direction변수에 -1저장
If L[0] < L[1] Then//2번조건
{ B = L[0];
direction = -1;
}
# Direction변수가 -1이고 고가가 전봉 고가보다 커지면
# BB[0]에 B값 저장
# Direction변수는 -2
if Direction == -1 and H[0] > H[1] then //3번조건
{
BB[0] = B;
direction = -2;
}
# Direction변수가 1이고 저가가 전봉 저가보다 커지면
# AA[0]에 A값 저장
# Direction변수는 2
If Direction == 1 and L[0] < L[1] Then //4번조건
{
AA[0] = A;
direction = 2;
}
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] > C[0] AND direction == 1 //상승중 음봉
{저장내용;}
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] < C[0] AND direction == -1 THEN//하락중 양봉
{저장내용; }
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] < C[0] AND direction == 1 THEN//상승중 양봉
{저장내용; }
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] > C[0] AND direction == -1 THEN//하락중 음봉
{저장내용;}
for cnt = 1 to 99{
AA[cnt] = AA[cnt-1][1];}
for cnt = 1 to 99{
BB[cnt] = BB[cnt-1][1];}
Plot1(DIRECTION,"DIRECTION",RED,DEF,1);
Plot2(A,"B",BLUE,DEF,1);
Plot3(AA[0],"BB",GREEN,DEF,1);
plot4(AA[1],"BB1",GRAY,DEF,1);
- 1. 오류수식.png (0.06 MB)
답변 1
예스스탁 예스스탁 답변
2012-10-18 15:06:14
안녕하세요
예스스탁입니다.
아래식으로 테스트 해보시기 바랍니다.
Var:A(0),B(0),cnt(0),direction(0);
Array: AA[100](0),BB[100](0);
If Index == 0 Then
{
A=H[0];
B=L[0];
Direction = 0;
}
//1번조건
if direction <= 0 and H[0] > H[1] and L >= L[1] then
{
A = H[0];
direction = 1;
}
//2번조건
If direction >= 0 and L[0] < L[1] and H <= H[1] Then
{ B = L[0];
direction = -1;
}
//3번조건
if countif(Direction == -1,2) == 2 and H[0] > H[1] then
{
BB[0] = B;
direction = -2;
}
//4번조건
If countif(Direction == 1,2) == 2 and L[0] < L[1] Then
{
AA[0] = A;
direction = 2;
}
Plot1(DIRECTION,"DIRECTION",RED,DEF,1);
즐거운 하루되세요
> 아싸가오리 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 1.알려주신 수식을 적용해 보았더니 첨부파일에서와 같이 AA값은 저장되지 않고 BB값은 조건이 만족
되었는데도 저장이 되지 않았습니다.
수식의 내용을 읽고 이해하고 2일동안 테스트 수정해 보았지만 계속 오류가 생깁니다.
수정부탁드립니다.
2.그리고 H[0] > H[1] AND L[0] < L[1]은 제가 IF THEN문 밑에 첨부한 저장내용만 저장이 발생하는 수식이 필요
합니다.
H[0] > H[1] 조건과 L[0] < L[1]에 중복되어 저장이 발생하여서는 안됩니다.
상승중은 전에 H[0] > H[1]= direction= 1 저장
하락중은 전에 L[0] < L[1]= direction= -1 저장을 뜻합니다.
3.H[0] > H[1] AND L[0] < L[1]봉 다음봉에서는 아래 조건만족시A,B의 값은 저장이 되지만 AA,BB의
값이 저장이 되어서는 안됩니다.(확인결과 H[0] > H[1] AND L[0] < L[1]봉 의다음봉에서 AA,BB저장이 발생합니다.)
고저가 돌파 다음 봉은 고저가돌파봉 모양에 따라 따로 수식작성 예정입니다.
수식은 디아이디종목 일봉으로 지표작성 확인해보았습니다.
답변부탁드립니다.수고하세요^^
Var:A(0),B(0),cnt(0),direction(0);
Array: AA[100](0),BB[100](0);
#차트 첫봉
#A에 고가 저장
#B에 저가 저장
If Index == 0 Then
{ A=H[0]; B=L[0];}
#고가가 한봉전 고가보다 크면
#A에 고가 저장
#direction변수에 1저장
if H[0] > H[1] then//1번조건
{
A = H[0];
direction = 1;
}
#저가가 한봉전 저가보다 작으면
#B에 저가 저장
#direction변수에 -1저장
If L[0] < L[1] Then//2번조건
{ B = L[0];
direction = -1;
}
# Direction변수가 -1이고 고가가 전봉 고가보다 커지면
# BB[0]에 B값 저장
# Direction변수는 -2
if Direction == -1 and H[0] > H[1] then //3번조건
{
BB[0] = B;
direction = -2;
}
# Direction변수가 1이고 저가가 전봉 저가보다 커지면
# AA[0]에 A값 저장
# Direction변수는 2
If Direction == 1 and L[0] < L[1] Then //4번조건
{
AA[0] = A;
direction = 2;
}
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] > C[0] AND direction == 1 //상승중 음봉
{저장내용;}
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] < C[0] AND direction == -1 THEN//하락중 양봉
{저장내용; }
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] < C[0] AND direction == 1 THEN//상승중 양봉
{저장내용; }
If (H[0] > H[1] AND L[0] < L[1]) AND O[0] > C[0] AND direction == -1 THEN//하락중 음봉
{저장내용;}
for cnt = 1 to 99{
AA[cnt] = AA[cnt-1][1];}
for cnt = 1 to 99{
BB[cnt] = BB[cnt-1][1];}
Plot1(DIRECTION,"DIRECTION",RED,DEF,1);
Plot2(A,"B",BLUE,DEF,1);
Plot3(AA[0],"BB",GREEN,DEF,1);
plot4(AA[1],"BB1",GRAY,DEF,1);
다음글
이전글