커뮤니티
문의 드립니다.
2011-11-08 08:49:16
381
글번호 44536
수고가 많으십니다.
1~50이평선에서 상승이평선수의 수를 구하고 싶은데 아래 식은 답이 틀린 것 같습니다.
var : cnt(0), count(0);
count = 0;
for cnt = 1 to 50 {
if ma(c, cnt) > ma(c, cnt)[1] then
count = count +1;
}
plot1(count);
상기의 식은 아래의 수식 결과와 다른 값이 나옵니다.
감사합니다.
안녕하세요
예스스탁입니다.
var : cnt(0),count(0);
Array : mav[51](0);
for cnt = 1 to 50{
mav[cnt] = ma(C,cnt);
}
count = 0;
for cnt = 1 to 50{
if mav[cnt] > mav[cnt][1] then
count = count+1;
}
plot1(count);
즐거운 하루되세요
답변 1
예스스탁 예스스탁 답변
2011-11-08 10:45:52
안녕하세요
예스스탁입니다.
var : cnt(0),count(0);
Array : mav[51](0);
for cnt = 1 to 50{
mav[cnt] = ma(C,cnt);
}
count = 0;
for cnt = 1 to 50{
if mav[cnt] > mav[cnt][1] then
count = count+1;
}
plot1(count);
기존의 올려드린 답변과 같이 작성해서 사용하셔야 합니다.
수정하신 식과 같이
for문안에서 이평의 기간값과 이전값을 요구하는 조건문을
한번에 작성하지 않으셔야 합니다.
즉 현재시점에서 이평함수를 불러와 기간값을 1~50을 넣어
계산하므로 과거(이전값)을 만들지를 못합니다.
즐거운 하루되세요
> 아틀라스 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> 수고가 많으십니다.
1~50이평선에서 상승이평선수의 수를 구하고 싶은데 아래 식은 답이 틀린 것 같습니다.
var : cnt(0), count(0);
count = 0;
for cnt = 1 to 50 {
if ma(c, cnt) > ma(c, cnt)[1] then
count = count +1;
}
plot1(count);
상기의 식은 아래의 수식 결과와 다른 값이 나옵니다.
감사합니다.
안녕하세요
예스스탁입니다.
var : cnt(0),count(0);
Array : mav[51](0);
for cnt = 1 to 50{
mav[cnt] = ma(C,cnt);
}
count = 0;
for cnt = 1 to 50{
if mav[cnt] > mav[cnt][1] then
count = count+1;
}
plot1(count);
즐거운 하루되세요