커뮤니티

수식이 어떤게 틀린지 부탁 좀 드립니다.

프로필 이미지
월척
2016-05-09 01:06:34
122
글번호 97804
답변완료

첨부 이미지

첨부한 LG디스플레이 주봉에서 맨 오른쪽 세번째 화살표(11월3일) 기준 전봉부터 20봉동안 제일 높은 종가의 봉수를 리턴해서 (Var1) 제일 높은 종가 봉 기준으로 20-var1-1 (Var2) 봉전까지 제일 낮은 종가를 리턴하고 싶습니다. 그렇게 해서 짠게 아래 수식인데 11월3일 기준으로 Var5 와 Var6 이 같은 값이 나와야 하는데 그렇지가 않은 데 왜 그럴까요? var1 = Nthhighestbar(1,c[1],20); var2 = 20-var1-1; var3 = highest(c[1],20)/(lowest(c[var1+1],20-var1))-1; var4 = Nthhighest(1,c[1],20); var5 = Nthlowest(1,c[6],14); var6 = nthlowest(1,c[var1+1],var2); var7 = highest(c[1],20)/(lowest(c[1],14))-1; var8 = var4/var6-1; Plot1(var1, "실험1"); Plot2(var2, "실험2"); //Plot3(var3, "실험3"); //Plot4(var4, "실험4"); Plot5(var5, "실험5"); Plot6(var6, "실험6"); //Plot7(var7, "실험7"); Plot8(var8, "실험7");
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-05-09 18:55:18

안녕하세요 예스스탁입니다. 수식에 이전값 참조준비가 되지 않은 상태에서 가변적인 내용이 직접 사용되면 계산이 될수 없습니다. 즉 이전값 사용에 대한 준비가 되지 않은 상태에서 호출이 되면 안됩니다. lowest(1,C[6],14)와 같이 고정 숫자로 지정하면 관계없지만 lowest(1,C[var1+1],var2)과 lowest의 기간도 가변적이고 이전봉도 가변적이므로 이전값 사용이 준비되지 않아 값이리턴이 되지 않습니다. 해당 내용은 루프문으로 따로 풀어서 작성하셔야 합니다. var : cnt(0),HC(0),HI(0),LC(0); #1봉전~20봉전 중 종가상 최고가와 그봉의 bars HC = C[1]; Hi = 1; for cnt = 1 to 20{ if C[cnt] > HC Then{ HC = C[cnt]; Hi = cnt; } } #20봉전~ 종가 최고가봉까지의 종가 최저가 LC = C[20]; for cnt = HI to 20{ if C[cnt] < LC Then{ LC = C[cnt]; } } plot1(HC); plot2(LC); 즐거운 하루되세요 > 월척 님이 쓴 글입니다. > 제목 : 수식이 어떤게 틀린지 부탁 좀 드립니다. > 첨부한 LG디스플레이 주봉에서 맨 오른쪽 세번째 화살표(11월3일) 기준 전봉부터 20봉동안 제일 높은 종가의 봉수를 리턴해서 (Var1) 제일 높은 종가 봉 기준으로 20-var1-1 (Var2) 봉전까지 제일 낮은 종가를 리턴하고 싶습니다. 그렇게 해서 짠게 아래 수식인데 11월3일 기준으로 Var5 와 Var6 이 같은 값이 나와야 하는데 그렇지가 않은 데 왜 그럴까요? var1 = Nthhighestbar(1,c[1],20); var2 = 20-var1-1; var3 = highest(c[1],20)/(lowest(c[var1+1],20-var1))-1; var4 = Nthhighest(1,c[1],20); var5 = Nthlowest(1,c[6],14); var6 = nthlowest(1,c[var1+1],var2); var7 = highest(c[1],20)/(lowest(c[1],14))-1; var8 = var4/var6-1; Plot1(var1, "실험1"); Plot2(var2, "실험2"); //Plot3(var3, "실험3"); //Plot4(var4, "실험4"); Plot5(var5, "실험5"); Plot6(var6, "실험6"); //Plot7(var7, "실험7"); Plot8(var8, "실험7");