커뮤니티
변수값 구하기
2009-12-10 04:02:04
570
글번호 26619
안녕하세요
미리 감사드립니다
100부터 200까지 5 단위로 증가하는 (100 105 110 ~ ) 이동평균 21개가 있습니다
이들 중에서
1. 우상향하고
2. 현재가(C)보다 작으며
3. 현재가(C)에 가장 가까운
이동평균의 변수값을 찾습니다.
답변 1
예스스탁 예스스탁 답변
2009-12-10 09:37:24
안녕하세요
예스스탁입니다.
# 배열변수는 하나의 변수에 여러개의 방을 만들어 사용하는 변수로
# 0번방부터 시작하며 편의상 1번방부터 사용하기 위해 22개의 방으로 지정합니다
array : mav[22](0),mavdiff[22](0);
# 분석함수는 for문에서 기간값을 변경할 수 할수 없으므로
# 하나하나 변수로 설정하셔야 하며 for문에 이용하기 쉽게
# 배열변수에 할당하시면 됩니다.
mav[1] = ma(c,100);
mav[2] = ma(c,105);
mav[3] = ma(c,110);
mav[4] = ma(c,115);
mav[5] = ma(c,120);
mav[6] = ma(c,125);
mav[7] = ma(c,130);
mav[8] = ma(c,135);
mav[9] = ma(c,140);
mav[10] = ma(c,145);
mav[11] = ma(c,150);
mav[12] = ma(c,155);
mav[13] = ma(c,160);
mav[14] = ma(c,165);
mav[15] = ma(c,170);
mav[16] = ma(c,175);
mav[17] = ma(c,180);
mav[18] = ma(c,185);
mav[19] = ma(c,190);
mav[20] = ma(c,195);
mav[21] = ma(c,200);
# 이평이 종가 위에 있는지 아래에 있는지 판단하기 위해
# 이평에서 종가를 뺀값을 구해서 다른 배열변수에 저장합니다
# +값이면 종가위 -값이면 종가아래
for var1 = 1 to 21{
mavdiff[var1] = mav[var1]-C;
}
var3 = -1000000000;
value1 = -1;
for var2 = 1 to 21{
if mav[var2] > mav[var2][1] and mavdiff[var2] < 0 and mavdiff[var2] > var3 Then{
var3 = mavdiff[var2];
value1 = mav[var2];
}
}
plot1(value1);
value1값에 -1이 리턴되면 이평중에 종가아래에 있는 이평이 없다는 의미입니다.
참고하시기 바랍니다.
즐거운 하루되세요
> somun 님이 쓴 글입니다.
> 제목 : 변수값 구하기
> 안녕하세요
미리 감사드립니다
100부터 200까지 5 단위로 증가하는 (100 105 110 ~ ) 이동평균 21개가 있습니다
이들 중에서
1. 우상향하고
2. 현재가(C)보다 작으며
3. 현재가(C)에 가장 가까운
이동평균의 변수값을 찾습니다.
다음글
이전글