커뮤니티
간단한 함수 질문입니다.
2015-08-11 01:48:05
105
글번호 89381
아래와 같이 함수 작성했을 때 별 문제는 없긴한데요 궁금한게요...
X2값이 x1의 '1봉'전 값을 갖는 것인데 첫번째 봉에서 1봉전 값이 없기 때문에
오류가 나거나 x2=0을 갖거나 해야 할거 같은데요 맞나요?
만약 오류가 나는 것이라면 그걸 어떻게 막아줄 수 있나요?
<작성>
Inputs: k(Numeric);
Vars: x1(0),x2(0);
x1=ma(C,k);
X2=x1[1];
For= ((x1-x2)*180)/3.14;
답변 1
예스스탁 예스스탁 답변
2015-08-11 13:47:32
안녕하세요
예스스탁입니다.
현재 작성하신 식 그대로 사용하셔도 문제는 없습니다.
X2가 매봉 X1의 1봉전 값을 저장하므로
수식에 필요한 봉갯수가 처음 충족되는 첫봉에서는
이전봉이 값이 없으므로 N/A가 저장된 이후에
두번째 봉부터 숫자가 저장이 됩니다.
값이 없을때는 for의 계산식도 계산이 되지 않아 N/A를 리턴합니다.
아래와 같이 처리하시면
아직 계산할만큼 봉이 충분치 않으면 함수가 0으로 리턴합니다.
Inputs: k(numeric);
Vars: x1(0),x2(0);
x1 = ma(C,k);
X2 = x1[1];
if CurrentBar >= 1 Then
For = ((x1-x2)*180)/3.14;
Else
For = 0;
즐거운 하루되세요
> 로봇짱 님이 쓴 글입니다.
> 제목 : 간단한 함수 질문입니다.
> 아래와 같이 함수 작성했을 때 별 문제는 없긴한데요 궁금한게요...
X2값이 x1의 '1봉'전 값을 갖는 것인데 첫번째 봉에서 1봉전 값이 없기 때문에
오류가 나거나 x2=0을 갖거나 해야 할거 같은데요 맞나요?
만약 오류가 나는 것이라면 그걸 어떻게 막아줄 수 있나요?
<작성>
Inputs: k(Numeric);
Vars: x1(0),x2(0);
x1=ma(C,k);
X2=x1[1];
For= ((x1-x2)*180)/3.14;
다음글
이전글