커뮤니티

34308 재질문 드려요

프로필 이미지
스로우
2014-01-13 18:51:13
107
글번호 71349
답변완료
많이 도움이 되었읍니다. 타종목(Data12)에 적용하기 위해서 아래와 같이 수정을 했는데 "기간"을 바꿔도 동일하게 적용됩니다. 도움 부탁드립니다 input:기간(2),N(1); var: 최고(0),최저(0),최중심(0),최중상(0),최중하(0),cnt(0); 최고 = data12(highD(N)); 최저 = data12(lowD(N)); for cnt = N to (기간-1)+N{ if data12(HighD(cnt)) > 최고 Then 최고 = data12(highD(cnt)); if data12(LowD(cnt)) < 최저 Then 최저 = data12(lowD(cnt)); } 최중심=(최고+최저)/2; 최중하=최저+(최고-최저)*0.25; 최중상=최저+(최고-최저)*0.75; plot1(최고,"최고"); plot2(최저,"최저"); plot3(최중심,"최중심"); plot4(최중상,"최중상"); plot5(최중하,"최중하");
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-01-13 19:27:11

안녕하세요 예스스탁입니다. data2안의 함수를 직접 for문을 돌리시면 안됩니다. 아래와 같이 따로 배열변수에 저장하고 해당 배열변수 이용하셔야 합니다. input:기간(2),N(1); var: 최고(0,data12),최저(0,data12),최중심(0,data12),최중상(0,data12),최중하(0,data12),cnt(0,data12); Array : DH12[50](0,data12),DL12[50](0,data12); if data12(date != date[1]) Then{ for cnt = 1 to 49{ DH12[cnt] = DH12[cnt-1][1]; DL12[cnt] = DL12[cnt-1][1]; } } DH12[0] = data12(highD(0)); DL12[0] = data12(LowD(0)); 최고 = DH12[0]; 최저 = DL12[0]; for cnt = N to (기간-1)+N{ if DH12[cnt] > 최고 Then 최고 = DH12[cnt]; if DL12[cnt] < 최저 Then 최저 = DL12[cnt]; } 최중심=(최고+최저)/2; 최중하=최저+(최고-최저)*0.25; 최중상=최저+(최고-최저)*0.75; plot1(최고,"최고"); plot2(최저,"최저"); plot3(최중심,"최중심"); plot4(최중상,"최중상"); plot5(최중하,"최중하"); 즐거운 하루되세요 > 스로우 님이 쓴 글입니다. > 제목 : 34308 재질문 드려요 > 많이 도움이 되었읍니다. 타종목(Data12)에 적용하기 위해서 아래와 같이 수정을 했는데 "기간"을 바꿔도 동일하게 적용됩니다. 도움 부탁드립니다 input:기간(2),N(1); var: 최고(0),최저(0),최중심(0),최중상(0),최중하(0),cnt(0); 최고 = data12(highD(N)); 최저 = data12(lowD(N)); for cnt = N to (기간-1)+N{ if data12(HighD(cnt)) > 최고 Then 최고 = data12(highD(cnt)); if data12(LowD(cnt)) < 최저 Then 최저 = data12(lowD(cnt)); } 최중심=(최고+최저)/2; 최중하=최저+(최고-최저)*0.25; 최중상=최저+(최고-최저)*0.75; plot1(최고,"최고"); plot2(최저,"최저"); plot3(최중심,"최중심"); plot4(최중상,"최중상"); plot5(최중하,"최중하");