커뮤니티

사용자 함수 문의

프로필 이미지
이만스닥
2024-03-06 11:41:08
517
글번호 177204
답변완료
안녕하세요 항상 건강하십쇼! 저번에 여쭤본 86029 게시글에 이어서 계속 질문 드립니다. 말씀주신 PercentRankArray의 결과값을 사용자 함수로 불러와서 쓰고싶은데 안됩니다 ㅠㅠ 동일한 코드로 지표를 만들어서 plot하면 값이 잘 불러와지는데, 사용자 함수로 넣어서 해당 사용자 함수를 불러와서 plot하면 값이 n/a로 뜹니다. 안뜹니다. 고쳐주세요 (__) 사용자함수명 : PRATest ///////// var: vari1(0), Vari2(0) ; Array : cc[10000](0) ; /// Vari1 = Close; Ins*ertArray(cc, 0, Vari1); Vari2 = PercentRankArray(C,cc,index); #대상값은 종가, 대상배열은 cc, 사이즈는 Array에 저장된 값의 수. 즉 Array에 방이 하나씩 채워질때마다 해당 값도 늘어나야합니다. 어떻게 해야하나요? Index를 넣으면 되나요? PRATest = Vari2; //////////
사용자 함수
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-03-06 14:55:07

안녕하세요 예스스탁입니다. In*sertArray함수가 사용자함수 안에서는 동작하지 않게 되어 있습니다. 사용자함수로 만드신다면 방법은 2가지입니다. 1 In*sertArray내용을 풀어서 for문으로 대체하는 방법입니다. 이경우 내장함수인 In*sertArray함수에 비해 로드가 많이 걸리게 됩니다. 사용자함수명 : PRATest 반환값형 : 숫자형 var: cnt(0),Vari1(0),Vari2(0); Array : cc[10000](0); Vari1 = close; for cnt = 99999 downto 1 { CC[cnt] = CC[cnt-1]; } cc[0] = Vari1; Vari2 = PercentRankArray(C,cc,index); PRATest = Vari2; 2 Array : cc[10000](0); In*sertArray(cc, 0, c); plot1(PRATest(cc)); 배열에 값을 저장하는 내용은 위와 같이 지표식이나 시스템식등 필요한 식에서 동작하게 하고 사용자함수에 배열명만 지정하게 작성해서 사용하는 방법입니다. 사용자함수명 : PRATest 반환값형 : 숫자형 input : arr[n](NumericArray); PRATest = PercentRankArray(C,arr,index); 즐거운 하루되세요 > 이만스닥 님이 쓴 글입니다. > 제목 : 사용자 함수 문의 > 안녕하세요 항상 건강하십쇼! 저번에 여쭤본 86029 게시글에 이어서 계속 질문 드립니다. 말씀주신 PercentRankArray의 결과값을 사용자 함수로 불러와서 쓰고싶은데 안됩니다 ㅠㅠ 동일한 코드로 지표를 만들어서 plot하면 값이 잘 불러와지는데, 사용자 함수로 넣어서 해당 사용자 함수를 불러와서 plot하면 값이 n/a로 뜹니다. 안뜹니다. 고쳐주세요 (__) 사용자함수명 : PRATest ///////// var: vari1(0), Vari2(0) ; Array : cc[10000](0) ; /// Vari1 = Close; Ins*ertArray(cc, 0, Vari1); Vari2 = PercentRankArray(C,cc,index); #대상값은 종가, 대상배열은 cc, 사이즈는 Array에 저장된 값의 수. 즉 Array에 방이 하나씩 채워질때마다 해당 값도 늘어나야합니다. 어떻게 해야하나요? Index를 넣으면 되나요? PRATest = Vari2; //////////