커뮤니티
수식검토요망
2010-10-06 14:11:25
1102
글번호 32690
이틀동안 산식을 계속 변경해 봤는데 문제가 사라지지 않네요
Highest(c,50)[DB20[0]]=-1이 나오는 이유가 무었때문인지
검토좀 부탁드립니다
########################
var:j20(0),SD20(0),IN(0);
IN=Index;
SD20=ema(RSI(10),20);#-------
Array:D20[10](0),DB20[10](0),M20[10](0);
If SD20[2]<SD20[1] and SD20[1]>SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
If SD20[2]>SD20[1] and SD20[1]<SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
###################################################
var60=0;
If D20[2]<D20[1] and D20[1]>D20[0] and M20[2]<M20[1] and M20[1]>M20[0] and M20[2]<M20[0] and
DB20[1]-db20[2]>=15 and DB20[0]-DB20[1]>=3 and DB20[0]-db20[1]<=5 Then {
if Highest(ma(c,5),30)[DB20[0]-60]<Highest(ma(c,5),30)[DB20[0]-30] and Highest(ma(c,5),30)[DB20[0]-30]<Highest(ma(c,5),30)[DB20[0]]
or Lowest(ma(c,5),30)[DB20[0]-60] <Lowest(ma(c,5),30)[DB20[0]-30] and Lowest(ma(c,5),30)[DB20[0]-30] <Lowest(ma(c,5),30)[DB20[0]] Then
var60=200;
Else var60=100;
}
MessageLog("Highest(c,5)[DB20[0]-60]=%.2f Highest(c,5)[DB20[0]-30]=%.2f Highest(c,5)[DB20[0]]=%.2f"
,Highest(c,5)[DB20[0]-60], Highest(c,5)[DB20[0]-30], Highest(c,50)[DB20[0]]);
- 1. 32959_질문용1.jpg (0.21 MB)
답변 3
예스스탁 예스스탁 답변
2010-10-07 09:50:55
안녕하세요
예스스탁입니다.
-1.#j는 N/A(계산할수 없는 구간)이라는 의미입니다.
Highest(c,50)은 최소 50봉이 있어야 계산되는 값입니다.
그러므로 첫봉부터 49번째봉까지는 N/A이고 50번째 봉부터 값이 있습니다.
첨부된 그림에서보시면 현재 index는 66번째 봉이고
DB20[0]는 62로 이값이 이전값으로 사용되면
62개 전봉의 값을 가져오라고 내용이 됩니다.
62개 전봉은 아직 Highest(c,50)이 계산할만큼 봉이 모인 곳이 아닙니다.
이런식으로 계속 차트상 Highest(c,50)값이 나오지도 않은 지점을 지칭하여 값을 가져오라고 하므로 N/A만 리턴되게 됩니다.
plot1(highest(c,50));
위 지표를 차트에 그리시고
아래지표에서 리턴되는 값만큼 현재봉에서 과거로 이동해 보시면
값이 없는 걸 확인하실 수 있습니다.
########################
var:j20(0),SD20(0),IN(0);
IN=Index;
SD20=ema(RSI(10),20);#-------
Array:D20[10](0),DB20[10](0),M20[10](0);
If SD20[2]<SD20[1] and SD20[1]>SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
If SD20[2]>SD20[1] and SD20[1]<SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
plot1(DB20[0]);
즐거운 하루되세요
> 티끌 님이 쓴 글입니다.
> 제목 : 수식검토요망
> 이틀동안 산식을 계속 변경해 봤는데 문제가 사라지지 않네요
Highest(c,50)[DB20[0]]=-1이 나오는 이유가 무었때문인지
검토좀 부탁드립니다
########################
var:j20(0),SD20(0),IN(0);
IN=Index;
SD20=ema(RSI(10),20);#-------
Array:D20[10](0),DB20[10](0),M20[10](0);
If SD20[2]<SD20[1] and SD20[1]>SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
If SD20[2]>SD20[1] and SD20[1]<SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
###################################################
var60=0;
If D20[2]<D20[1] and D20[1]>D20[0] and M20[2]<M20[1] and M20[1]>M20[0] and M20[2]<M20[0] and
DB20[1]-db20[2]>=15 and DB20[0]-DB20[1]>=3 and DB20[0]-db20[1]<=5 Then {
if Highest(ma(c,5),30)[DB20[0]-60]<Highest(ma(c,5),30)[DB20[0]-30] and Highest(ma(c,5),30)[DB20[0]-30]<Highest(ma(c,5),30)[DB20[0]]
or Lowest(ma(c,5),30)[DB20[0]-60] <Lowest(ma(c,5),30)[DB20[0]-30] and Lowest(ma(c,5),30)[DB20[0]-30] <Lowest(ma(c,5),30)[DB20[0]] Then
var60=200;
Else var60=100;
}
MessageLog("Highest(c,5)[DB20[0]-60]=%.2f Highest(c,5)[DB20[0]-30]=%.2f Highest(c,5)[DB20[0]]=%.2f"
,Highest(c,5)[DB20[0]-60], Highest(c,5)[DB20[0]-30], Highest(c,50)[DB20[0]]);
티끌
2010-10-07 10:07:41
죄송합니다.....첨부파일과 제가 질문한 내용이 일치하질 않았읍니다 -.-;;
Highest(c,50)[DB20[0]] 이 아니라 Highest(c,5)[DB20[0]]
의 값이 않나오는것을 질문한 것입니다( 즉 그림화일안의 내용이 질문내용입니다)
현재 답변주신 내용으로 Highest(c,5)[DB20[0]]를 이해해 보려 했는데 되질 않네요
다시한번더 설명을 부탁드립니다
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식검토요망
> 안녕하세요
예스스탁입니다.
-1.#j는 N/A(계산할수 없는 구간)이라는 의미입니다.
Highest(c,50)은 최소 50봉이 있어야 계산되는 값입니다.
그러므로 첫봉부터 49번째봉까지는 N/A이고 50번째 봉부터 값이 있습니다.
첨부된 그림에서보시면 현재 index는 66번째 봉이고
DB20[0]는 62로 이값이 이전값으로 사용되면
62개 전봉의 값을 가져오라고 내용이 됩니다.
62개 전봉은 아직 Highest(c,50)이 계산할만큼 봉이 모인 곳이 아닙니다.
이런식으로 계속 차트상 Highest(c,50)값이 나오지도 않은 지점을 지칭하여 값을 가져오라고 하므로 N/A만 리턴되게 됩니다.
plot1(highest(c,50));
위 지표를 차트에 그리시고
아래지표에서 리턴되는 값만큼 현재봉에서 과거로 이동해 보시면
값이 없는 걸 확인하실 수 있습니다.
########################
var:j20(0),SD20(0),IN(0);
IN=Index;
SD20=ema(RSI(10),20);#-------
Array:D20[10](0),DB20[10](0),M20[10](0);
If SD20[2]<SD20[1] and SD20[1]>SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
If SD20[2]>SD20[1] and SD20[1]<SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
plot1(DB20[0]);
즐거운 하루되세요
> 티끌 님이 쓴 글입니다.
> 제목 : 수식검토요망
> 이틀동안 산식을 계속 변경해 봤는데 문제가 사라지지 않네요
Highest(c,50)[DB20[0]]=-1이 나오는 이유가 무었때문인지
검토좀 부탁드립니다
########################
var:j20(0),SD20(0),IN(0);
IN=Index;
SD20=ema(RSI(10),20);#-------
Array:D20[10](0),DB20[10](0),M20[10](0);
If SD20[2]<SD20[1] and SD20[1]>SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
If SD20[2]>SD20[1] and SD20[1]<SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
###################################################
var60=0;
If D20[2]<D20[1] and D20[1]>D20[0] and M20[2]<M20[1] and M20[1]>M20[0] and M20[2]<M20[0] and
DB20[1]-db20[2]>=15 and DB20[0]-DB20[1]>=3 and DB20[0]-db20[1]<=5 Then {
if Highest(ma(c,5),30)[DB20[0]-60]<Highest(ma(c,5),30)[DB20[0]-30] and Highest(ma(c,5),30)[DB20[0]-30]<Highest(ma(c,5),30)[DB20[0]]
or Lowest(ma(c,5),30)[DB20[0]-60] <Lowest(ma(c,5),30)[DB20[0]-30] and Lowest(ma(c,5),30)[DB20[0]-30] <Lowest(ma(c,5),30)[DB20[0]] Then
var60=200;
Else var60=100;
}
MessageLog("Highest(c,5)[DB20[0]-60]=%.2f Highest(c,5)[DB20[0]-30]=%.2f Highest(c,5)[DB20[0]]=%.2f"
,Highest(c,5)[DB20[0]-60], Highest(c,5)[DB20[0]-30], Highest(c,50)[DB20[0]]);
예스스탁 예스스탁 답변
2010-10-07 10:25:39
> 티끌 님이 쓴 글입니다.
> 제목 : Re : Re : 수식검토요망
> 죄송합니다.....첨부파일과 제가 질문한 내용이 일치하질 않았읍니다 -.-;;
Highest(c,50)[DB20[0]] 이 아니라 Highest(c,5)[DB20[0]]
의 값이 않나오는것을 질문한 것입니다( 즉 그림화일안의 내용이 질문내용입니다)
현재 답변주신 내용으로 Highest(c,5)[DB20[0]]를 이해해 보려 했는데 되질 않네요
다시한번더 설명을 부탁드립니다
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식검토요망
> 안녕하세요
예스스탁입니다.
-1.#j는 N/A(계산할수 없는 구간)이라는 의미입니다.
Highest(c,50)은 최소 50봉이 있어야 계산되는 값입니다.
그러므로 첫봉부터 49번째봉까지는 N/A이고 50번째 봉부터 값이 있습니다.
첨부된 그림에서보시면 현재 index는 66번째 봉이고
DB20[0]는 62로 이값이 이전값으로 사용되면
62개 전봉의 값을 가져오라고 내용이 됩니다.
62개 전봉은 아직 Highest(c,50)이 계산할만큼 봉이 모인 곳이 아닙니다.
이런식으로 계속 차트상 Highest(c,50)값이 나오지도 않은 지점을 지칭하여 값을 가져오라고 하므로 N/A만 리턴되게 됩니다.
plot1(highest(c,50));
위 지표를 차트에 그리시고
아래지표에서 리턴되는 값만큼 현재봉에서 과거로 이동해 보시면
값이 없는 걸 확인하실 수 있습니다.
########################
var:j20(0),SD20(0),IN(0);
IN=Index;
SD20=ema(RSI(10),20);#-------
Array:D20[10](0),DB20[10](0),M20[10](0);
If SD20[2]<SD20[1] and SD20[1]>SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
If SD20[2]>SD20[1] and SD20[1]<SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
plot1(DB20[0]);
즐거운 하루되세요
> 티끌 님이 쓴 글입니다.
> 제목 : 수식검토요망
> 이틀동안 산식을 계속 변경해 봤는데 문제가 사라지지 않네요
Highest(c,50)[DB20[0]]=-1이 나오는 이유가 무었때문인지
검토좀 부탁드립니다
########################
var:j20(0),SD20(0),IN(0);
IN=Index;
SD20=ema(RSI(10),20);#-------
Array:D20[10](0),DB20[10](0),M20[10](0);
If SD20[2]<SD20[1] and SD20[1]>SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
If SD20[2]>SD20[1] and SD20[1]<SD20 Then {
For J20=1 To 9 {
D20[J20] =D20[J20-1][1];
DB20[J20] =DB20[J20-1][1];
M20[J20] =M20[J20-1][1];
}
D20[0] =SD20[1];
DB20[0] =index[1];
M20[0] =ma(C,05)[1];
}
###################################################
var60=0;
If D20[2]<D20[1] and D20[1]>D20[0] and M20[2]<M20[1] and M20[1]>M20[0] and M20[2]<M20[0] and
DB20[1]-db20[2]>=15 and DB20[0]-DB20[1]>=3 and DB20[0]-db20[1]<=5 Then {
if Highest(ma(c,5),30)[DB20[0]-60]<Highest(ma(c,5),30)[DB20[0]-30] and Highest(ma(c,5),30)[DB20[0]-30]<Highest(ma(c,5),30)[DB20[0]]
or Lowest(ma(c,5),30)[DB20[0]-60] <Lowest(ma(c,5),30)[DB20[0]-30] and Lowest(ma(c,5),30)[DB20[0]-30] <Lowest(ma(c,5),30)[DB20[0]] Then
var60=200;
Else var60=100;
}
MessageLog("Highest(c,5)[DB20[0]-60]=%.2f Highest(c,5)[DB20[0]-30]=%.2f Highest(c,5)[DB20[0]]=%.2f"
,Highest(c,5)[DB20[0]-60], Highest(c,5)[DB20[0]-30], Highest(c,50)[DB20[0]]);
다음글
이전글