커뮤니티
a=a+b와 같은 형태의 연산에 대해서 여쭙니다.
2017-09-30 10:57:04
186
글번호 113226
vars:a(0),b(0),d(0);
if ma(c,5)>ma(c,20) then
{ b=(ma(c,5)-ma(c,20))/ma(c,60);
a=a+b;
d=accum(b);
plot1(b,"b");
plot2(a,"누적a");
plot3(d,"d");
}
와 같은 수식을 만들어 출력을 확인하면
plot1 은 출력이 되지만 plot2와 plo3는 결과를 알수가 없습니다.(N/A)
plot2와 같은경우 a=a+b; 대신 a=a[1]+b;를 하여도 결과가 동일합니다.
답변 2
예스스탁 예스스탁 답변
2017-10-10 14:30:01
안녕하세요
예스스탁입니다.
변수에 한번 N/A값이 저장되면
이후에 숫자를 더해도 값계산이 되지 않습니다.
if ma(c,5) > ma(c,20) then
조건은 봉 20개만 있어도 계산이 되지만
b은 60개봉이 있어야 합니다.
즉 차트상 최초 20개봉~60개봉사이에는 b가 N/A이고 이때
a에 N/A가 저장되므로 이후에도 합산값을 계산하지 못하는 것입니다.
아래와 같이 특정변수가 N/A가 아닐때만 저장되게 하셔야 합니다.
accum은 특정조건에만 누적하는데에는 적당하지 않는 함수로 제외했습니다.
vars:a(0),b(0),d(0);
if ma(c,5) > ma(c,20) then
{
b=(ma(c,5)-ma(c,20))/ma(c,60);
if IsNaN(b) == false then
a = a + b;
plot1(b,"b");
plot2(a,"누적a");
}
즐거운 하루되세요
> 일프로 님이 쓴 글입니다.
> 제목 : a=a+b와 같은 형태의 연산에 대해서 여쭙니다.
> vars:a(0),b(0),d(0);
if ma(c,5)>ma(c,20) then
{ b=(ma(c,5)-ma(c,20))/ma(c,60);
a=a+b;
d=accum(b);
plot1(b,"b");
plot2(a,"누적a");
plot3(d,"d");
}
와 같은 수식을 만들어 출력을 확인하면
plot1 은 출력이 되지만 plot2와 plo3는 결과를 알수가 없습니다.(N/A)
plot2와 같은경우 a=a+b; 대신 a=a[1]+b;를 하여도 결과가 동일합니다.
일프로
2017-10-16 18:28:20
감사합니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : a=a+b와 같은 형태의 연산에 대해서 여쭙니다.
>
안녕하세요
예스스탁입니다.
변수에 한번 N/A값이 저장되면
이후에 숫자를 더해도 값계산이 되지 않습니다.
if ma(c,5) > ma(c,20) then
조건은 봉 20개만 있어도 계산이 되지만
b은 60개봉이 있어야 합니다.
즉 차트상 최초 20개봉~60개봉사이에는 b가 N/A이고 이때
a에 N/A가 저장되므로 이후에도 합산값을 계산하지 못하는 것입니다.
아래와 같이 특정변수가 N/A가 아닐때만 저장되게 하셔야 합니다.
accum은 특정조건에만 누적하는데에는 적당하지 않는 함수로 제외했습니다.
vars:a(0),b(0),d(0);
if ma(c,5) > ma(c,20) then
{
b=(ma(c,5)-ma(c,20))/ma(c,60);
if IsNaN(b) == false then
a = a + b;
plot1(b,"b");
plot2(a,"누적a");
}
즐거운 하루되세요
> 일프로 님이 쓴 글입니다.
> 제목 : a=a+b와 같은 형태의 연산에 대해서 여쭙니다.
> vars:a(0),b(0),d(0);
if ma(c,5)>ma(c,20) then
{ b=(ma(c,5)-ma(c,20))/ma(c,60);
a=a+b;
d=accum(b);
plot1(b,"b");
plot2(a,"누적a");
plot3(d,"d");
}
와 같은 수식을 만들어 출력을 확인하면
plot1 은 출력이 되지만 plot2와 plo3는 결과를 알수가 없습니다.(N/A)
plot2와 같은경우 a=a+b; 대신 a=a[1]+b;를 하여도 결과가 동일합니다.