커뮤니티

간단한 질문.

프로필 이미지
sjpapa
2011-08-09 07:07:48
641
글번호 41764
답변완료
어떤 데이터 값은 과거 값을 부를떄 [ ] 배열식으로 부릅니다. 예) c[1],c[2] 또 어떤 것들은 ( ) 로 부릅니다...이것도 배열인가요? 예) dayhigh(1), exitprie(1) 궁금해서 그런데 왜 아래식은 [ ] 형식이 아니라 ( ) 형식인가요? correlation 함수 사용시 Correlation(num1,num2,Period); n1,n2 변수에 제가 지정해준 변수 값들을 주려면 어떻게 해야 하나요? 예를 들어 10일 동안의 10시 30분 종가를 N1 으로 정해주고 11 시 종가를 n2로 정해주어, 20일간의 correl 값을 구하는 그런식이요.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-08-09 14:39:08

안녕하세요 예스스탁입니다. 1. C는 데이터이고 [ ]은 이전값 참조입니다. C[1]한봉전 종가, C[2]두봉전 종가 와 같이 단지 봉갯수로 지정하여 이전값을 부를때 사용됩니다. dayhigh는 ma(C,20)과 같은 함수입니다. 함수는 ( )안에 필요한 매개변수를 입력하여 값을 가져오게 되고 이 함수들도 모두 다 이전값 참조가 가능합니다. dayhigh는 ()안에 1,2,3등으로 이전일을 지정하면 해당 날의 일봉고가를 가져오게 작성된 함수입니다. dayhigh(1)은 전일의 고가이고 dayhigh(1)[1]과 같이 작성하시면 한봉전 기준으로 본 전일 고가입니다. 가령 dayhigh(0) 혹은 dayhigh로 작성하시면 당일 고가인데 이 당일고가를 현재시점이 아닌 5개봉전의 시점에서 값을 가져오고자 하시면 dayhigh(0)[5], 혹은 dayhigh[5]라고 작성하시면 됩니다. 2. 말씀하신 내용은 매봉 연속으로 이어지는 값이 아니고 매일 특정시간의 값만을 필요로 하므로 아래와 같이 따로 풀어 작성하셔야 합니다. Inputs: Period(20); Var : Counter1(0), Counter2(0), Cnt(0),Correlationv(0); Array : C10[21](0),C11[21](0); if stime == 100000 Then{ C10[0] = C; for cnt = 1 to 20{ C10[cnt] = C10[cnt-1][1]; } } if stime == 110000 Then{ C11[0] = C; for cnt = 1 to 20{ C11[cnt] = C11[cnt-1][1]; } } Counter1 = 0; Counter2 = 0; For Cnt = 0 To Period - 1 Begin If (C10[Cnt] >= C10[Cnt + 1] AND C11[Cnt] >= C11[Cnt + 1]) OR (C10[Cnt] < C10[Cnt + 1] AND C11[Cnt] < C11[Cnt + 1]) Then Counter1 = Counter1 + 1; Else Counter2 = Counter2 + 1; End; If Counter1 + Counter2 <> 0 Then Correlationv = (Counter1 - Counter2) / (Counter1 + Counter2); Else Correlationv = 0; plot1(Correlationv); 즐거운 하루되세요 > 휴식 님이 쓴 글입니다. > 제목 : 간단한 질문. > 어떤 데이터 값은 과거 값을 부를&#46468; [ ] 배열식으로 부릅니다. 예) c[1],c[2] 또 어떤 것들은 ( ) 로 부릅니다...이것도 배열인가요? 예) dayhigh(1), exitprie(1) 궁금해서 그런데 왜 아래식은 [ ] 형식이 아니라 ( ) 형식인가요? correlation 함수 사용시 Correlation(num1,num2,Period); n1,n2 변수에 제가 지정해준 변수 값들을 주려면 어떻게 해야 하나요? 예를 들어 10일 동안의 10시 30분 종가를 N1 으로 정해주고 11 시 종가를 n2로 정해주어, 20일간의 correl 값을 구하는 그런식이요.