현재 봉에서 이전 200봉(임의 설정) 내를 기준으로
20일선 위에 있는 모든 종가들의 합의 평균
20일선 밑에 있는 모든 종가들의 합의 평균
각각 따로 계산하고 싶습니다.
var : cnt(0), cnt1(0), cnt2(0);
For cnt=0 to 199
{
if close[cnt] - ma(close[cnt],20) > 0 then
{value1 = value1+close[cnt] - ma(close[cnt],20);
cnt1 = cnt1+1;}
Else
{
value2 = value2+close[cnt] - ma(close[cnt],20);
cnt2 = cnt2+1;
}
}
plot1(value1/cnt1, "aa");
plot2(value2/cnt2, "bb");
대충 이런식으로 for문 짜봤는데 값이 이상하게 나와요
답변 1
예스스탁
예스스탁 답변
2021-09-09 10:32:36
안녕하세요
예스스탁입니다.
매봉 최근 200개봉의 값을 누적하므로
누적전에 각 변수는 0으로 초기화되게 작성하셔야 합니다.
또한 매봉 200번의 이동평균을 계산하는 것보다는
이평은 변수처리하고 for문에서는 변수를 이용해야 로드가 덜 발생하는 수식이 됩니다.
var : cnt(0), cnt1(0), cnt2(0);
#매봉 종가-이평계산
var1 = C-ma(c,20);
#매봉 0으로 초기화
value1 = 0;
Value2 = 0;
cnt2 = 0;
cnt2 = 0;
For cnt=0 to 199
{
if var1[cnt] > 0 then
{
value1 = value1+close[cnt] - ma(close[cnt],20);
cnt1 = cnt1+1;
}
Else
{
value2 = value2+close[cnt] - ma(close[cnt],20);
cnt2 = cnt2+1;
}
}
plot1(value1/cnt1, "aa");
plot2(value2/cnt2, "bb");
즐거운 하루되세요
> 초심자 님이 쓴 글입니다.
> 제목 : 수식 좀 봐주세요
> 현재 봉에서 이전 200봉(임의 설정) 내를 기준으로
20일선 위에 있는 모든 종가들의 합의 평균
20일선 밑에 있는 모든 종가들의 합의 평균
각각 따로 계산하고 싶습니다.
var : cnt(0), cnt1(0), cnt2(0);
For cnt=0 to 199
{
if close[cnt] - ma(close[cnt],20) > 0 then
{value1 = value1+close[cnt] - ma(close[cnt],20);
cnt1 = cnt1+1;}
Else
{
value2 = value2+close[cnt] - ma(close[cnt],20);
cnt2 = cnt2+1;
}
}
plot1(value1/cnt1, "aa");
plot2(value2/cnt2, "bb");
대충 이런식으로 for문 짜봤는데 값이 이상하게 나와요