커뮤니티

부탁드립니다

프로필 이미지
마르뚝
2015-11-09 12:27:38
176
글번호 92185
답변완료
아래수식에서 data2수식 부탁드립니다 -아래- input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; plot1(dayopen,"시가"); if avgv1 > 0 then{ plot2(dayopen+avgv1,"+1"); plot3(dayopen-avgv1,"-1"); } if avgv2 > 0 then{ plot4(dayopen+avgv2,"+2"); plot5(dayopen-avgv2,"-2"); } if avgv3 > 0 then{ plot6(dayopen+avgv3,"+3"); plot7(dayopen-avgv3,"-3"); } if avgv4 > 0 then{ plot8(dayopen+avgv4,"+4"); plot9(dayopen-avgv4,"-4"); } if avgv5 > 0 then{ plot10(dayopen+avgv5,"+5"); plot11(dayopen-avgv5,"-5"); }
지표
답변 4
프로필 이미지

예스스탁 예스스탁 답변

2015-11-09 16:08:18

안녕하세요 예스스탁입니다. 수식을 변경했습니다. 수식은 차트의 데이터를 이용해 계산합니다. 주종목의 경우에는 차트의 첫봉 +99일치의 일간데이터가 내부적으로 추가로 제공되고 있어 차트봉기간보다 더 긴기간의 일간값을 가져와 계산할수 있지만 참조데이터는 차트에 있는 봉만 사용하고 추가로 제공되는 일간데이터가 없습니다. 차트에 해당 일간데이터를 계산할 만큼 데이터가 충분하지 않으면 지표가 출력되지 않습니다. 이용에 참고하시기 바랍니다. input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); Array : HH[150](0),LL[150](0),OO[15](0); if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then sum2 = sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then sum3 = sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then sum4 = sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then sum5 = sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then avgv5 = sum5/P5; plot1(OO[0],"시가"); if avgv1 > 0 then{ plot2(OO[0]+avgv1,"+1"); plot3(OO[0]-avgv1,"-1"); } if avgv2 > 0 then{ plot4(OO[0]+avgv2,"+2"); plot5(OO[0]-avgv2,"-2"); } if avgv3 > 0 then{ plot6(OO[0]+avgv3,"+3"); plot7(OO[0]-avgv3,"-3"); } if avgv4 > 0 then{ plot8(OO[0]+avgv4,"+4"); plot9(OO[0]-avgv4,"-4"); } if avgv5 > 0 then{ plot10(OO[0]+avgv5,"+5"); plot11(OO[0]-avgv5,"-5"); } 즐거운 하루되세요 > 마르뚝 님이 쓴 글입니다. > 제목 : 부탁드립니다 > 아래수식에서 data2수식 부탁드립니다 -아래- input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; plot1(dayopen,"시가"); if avgv1 > 0 then{ plot2(dayopen+avgv1,"+1"); plot3(dayopen-avgv1,"-1"); } if avgv2 > 0 then{ plot4(dayopen+avgv2,"+2"); plot5(dayopen-avgv2,"-2"); } if avgv3 > 0 then{ plot6(dayopen+avgv3,"+3"); plot7(dayopen-avgv3,"-3"); } if avgv4 > 0 then{ plot8(dayopen+avgv4,"+4"); plot9(dayopen-avgv4,"-4"); } if avgv5 > 0 then{ plot10(dayopen+avgv5,"+5"); plot11(dayopen-avgv5,"-5"); }
프로필 이미지

마르뚝

2015-11-10 00:59:24

수치가 이상하게 나옵니다 기존 수식 수정하지 마시고 원래있는 수식에서 data2만 추가 부탁드립니다 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 부탁드립니다 > 안녕하세요 예스스탁입니다. 수식을 변경했습니다. 수식은 차트의 데이터를 이용해 계산합니다. 주종목의 경우에는 차트의 첫봉 +99일치의 일간데이터가 내부적으로 추가로 제공되고 있어 차트봉기간보다 더 긴기간의 일간값을 가져와 계산할수 있지만 참조데이터는 차트에 있는 봉만 사용하고 추가로 제공되는 일간데이터가 없습니다. 차트에 해당 일간데이터를 계산할 만큼 데이터가 충분하지 않으면 지표가 출력되지 않습니다. 이용에 참고하시기 바랍니다. input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); Array : HH[150](0),LL[150](0),OO[15](0); if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then sum2 = sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then sum3 = sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then sum4 = sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then sum5 = sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then avgv5 = sum5/P5; plot1(OO[0],"시가"); if avgv1 > 0 then{ plot2(OO[0]+avgv1,"+1"); plot3(OO[0]-avgv1,"-1"); } if avgv2 > 0 then{ plot4(OO[0]+avgv2,"+2"); plot5(OO[0]-avgv2,"-2"); } if avgv3 > 0 then{ plot6(OO[0]+avgv3,"+3"); plot7(OO[0]-avgv3,"-3"); } if avgv4 > 0 then{ plot8(OO[0]+avgv4,"+4"); plot9(OO[0]-avgv4,"-4"); } if avgv5 > 0 then{ plot10(OO[0]+avgv5,"+5"); plot11(OO[0]-avgv5,"-5"); } 즐거운 하루되세요 > 마르뚝 님이 쓴 글입니다. > 제목 : 부탁드립니다 > 아래수식에서 data2수식 부탁드립니다 -아래- input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; plot1(dayopen,"시가"); if avgv1 > 0 then{ plot2(dayopen+avgv1,"+1"); plot3(dayopen-avgv1,"-1"); } if avgv2 > 0 then{ plot4(dayopen+avgv2,"+2"); plot5(dayopen-avgv2,"-2"); } if avgv3 > 0 then{ plot6(dayopen+avgv3,"+3"); plot7(dayopen-avgv3,"-3"); } if avgv4 > 0 then{ plot8(dayopen+avgv4,"+4"); plot9(dayopen-avgv4,"-4"); } if avgv5 > 0 then{ plot10(dayopen+avgv5,"+5"); plot11(dayopen-avgv5,"-5"); }
프로필 이미지

예스스탁 예스스탁 답변

2015-11-10 13:27:18

안녕하세요 예스스탁입니다. 첨부된 그림과 같이 동일한 값을 리턴합니다. 각 지표에서 N/A로 표시되는 부분은 계산에 필요한 봉갯수가 부족해 지표가 출력되지 않는 지표입니다. 1번은 data2지표만 그리는 식이고 2번은 주종목+data2입니다. 1. input : P1(10),P2(20),P3(60),P4(100),P5(120); var : cnt(0),d2sum1(0,data2),d2avgv1(0,data2),d2sum2(0,data2),d2avgv2(0,data2); var : d2sum3(0,data2),d2avgv3(0,data2),d2sum4(0,data2),d2avgv4(0,data2),d2sum5(0,data2),d2avgv5(0,data2); Array : HH[150](0,data2),LL[150](0,data2),OO[15](0,data2); if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); d2sum1 = 0; d2sum2 = 0; d2sum3 = 0; d2sum4 = 0; d2sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then d2sum1 = d2sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then d2sum2 = d2sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then d2sum3 = d2sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then d2sum4 = d2sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then d2sum5 = d2sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then d2avgv1 = d2sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then d2avgv2 = d2sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then d2avgv3 = d2sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then d2avgv4 = d2sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then d2avgv5 = d2sum5/P5; plot1(OO[0],"시가"); if d2avgv1 > 0 then{ plot2(OO[0]+d2avgv1,"+1"); plot3(OO[0]-d2avgv1,"-1"); } if d2avgv2 > 0 then{ plot4(OO[0]+d2avgv2,"+2"); plot5(OO[0]-d2avgv2,"-2"); } if d2avgv3 > 0 then{ plot6(OO[0]+d2avgv3,"+3"); plot7(OO[0]-d2avgv3,"-3"); } if d2avgv4 > 0 then{ plot8(OO[0]+d2avgv4,"+4"); plot9(OO[0]-d2avgv4,"-4"); } if d2avgv5 > 0 then{ plot10(OO[0]+d2avgv5,"+5"); plot11(OO[0]-d2avgv5,"-5"); } 2 input : P1(10),P2(20),P3(60),P4(100),P5(120); var : cnt(0),sum1(0,data1),avgv1(0,data1),sum2(0,data1),avgv2(0,data1); var : sum3(0,data1),avgv3(0,data1),sum4(0,data1),avgv4(0,data1),sum5(0,data1),avgv5(0,data1); var : d2sum1(0,data2),d2avgv1(0,data2),d2sum2(0,data2),d2avgv2(0,data2); var : d2sum3(0,data2),d2avgv3(0,data2),d2sum4(0,data2),d2avgv4(0,data2),d2sum5(0,data2),d2avgv5(0,data2); Array : HH[150](0,data2),LL[150](0,data2),OO[15](0,data2); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; plot1(dayopen,"시가"); if avgv1 > 0 then{ plot2(dayopen+avgv1,"+1"); plot3(dayopen-avgv1,"-1"); } if avgv2 > 0 then{ plot4(dayopen+avgv2,"+2"); plot5(dayopen-avgv2,"-2"); } if avgv3 > 0 then{ plot6(dayopen+avgv3,"+3"); plot7(dayopen-avgv3,"-3"); } if avgv4 > 0 then{ plot8(dayopen+avgv4,"+4"); plot9(dayopen-avgv4,"-4"); } if avgv5 > 0 then{ plot10(dayopen+avgv5,"+5"); plot11(dayopen-avgv5,"-5"); } if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); d2sum1 = 0; d2sum2 = 0; d2sum3 = 0; d2sum4 = 0; d2sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then d2sum1 = d2sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then d2sum2 = d2sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then d2sum3 = d2sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then d2sum4 = d2sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then d2sum5 = d2sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then d2avgv1 = d2sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then d2avgv2 = d2sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then d2avgv3 = d2sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then d2avgv4 = d2sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then d2avgv5 = d2sum5/P5; plot20(OO[0],"data2시가"); if d2avgv1 > 0 then{ plot22(OO[0]+d2avgv1,"data2+1"); plot23(OO[0]-d2avgv1,"data2-1"); } if d2avgv2 > 0 then{ plot24(OO[0]+d2avgv2,"data2+2"); plot25(OO[0]-d2avgv2,"data2-2"); } if d2avgv3 > 0 then{ plot26(OO[0]+d2avgv3,"data2+3"); plot27(OO[0]-d2avgv3,"data2-3"); } if d2avgv4 > 0 then{ plot28(OO[0]+d2avgv4,"data2+4"); plot29(OO[0]-d2avgv4,"data2-4"); } if d2avgv5 > 0 then{ plot30(OO[0]+d2avgv5,"data2+5"); plot31(OO[0]-d2avgv5,"data2-5"); } 즐거운 하루되세요 > 마르뚝 님이 쓴 글입니다. > 제목 : Re : Re : 부탁드립니다 > 수치가 이상하게 나옵니다 기존 수식 수정하지 마시고 원래있는 수식에서 data2만 추가 부탁드립니다 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 부탁드립니다 > 안녕하세요 예스스탁입니다. 수식을 변경했습니다. 수식은 차트의 데이터를 이용해 계산합니다. 주종목의 경우에는 차트의 첫봉 +99일치의 일간데이터가 내부적으로 추가로 제공되고 있어 차트봉기간보다 더 긴기간의 일간값을 가져와 계산할수 있지만 참조데이터는 차트에 있는 봉만 사용하고 추가로 제공되는 일간데이터가 없습니다. 차트에 해당 일간데이터를 계산할 만큼 데이터가 충분하지 않으면 지표가 출력되지 않습니다. 이용에 참고하시기 바랍니다. input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); Array : HH[150](0),LL[150](0),OO[15](0); if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then sum2 = sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then sum3 = sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then sum4 = sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then sum5 = sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then avgv5 = sum5/P5; plot1(OO[0],"시가"); if avgv1 > 0 then{ plot2(OO[0]+avgv1,"+1"); plot3(OO[0]-avgv1,"-1"); } if avgv2 > 0 then{ plot4(OO[0]+avgv2,"+2"); plot5(OO[0]-avgv2,"-2"); } if avgv3 > 0 then{ plot6(OO[0]+avgv3,"+3"); plot7(OO[0]-avgv3,"-3"); } if avgv4 > 0 then{ plot8(OO[0]+avgv4,"+4"); plot9(OO[0]-avgv4,"-4"); } if avgv5 > 0 then{ plot10(OO[0]+avgv5,"+5"); plot11(OO[0]-avgv5,"-5"); } 즐거운 하루되세요 > 마르뚝 님이 쓴 글입니다. > 제목 : 부탁드립니다 > 아래수식에서 data2수식 부탁드립니다 -아래- input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; plot1(dayopen,"시가"); if avgv1 > 0 then{ plot2(dayopen+avgv1,"+1"); plot3(dayopen-avgv1,"-1"); } if avgv2 > 0 then{ plot4(dayopen+avgv2,"+2"); plot5(dayopen-avgv2,"-2"); } if avgv3 > 0 then{ plot6(dayopen+avgv3,"+3"); plot7(dayopen-avgv3,"-3"); } if avgv4 > 0 then{ plot8(dayopen+avgv4,"+4"); plot9(dayopen-avgv4,"-4"); } if avgv5 > 0 then{ plot10(dayopen+avgv5,"+5"); plot11(dayopen-avgv5,"-5"); }
프로필 이미지

마르뚝

2015-11-10 16:05:12

죄송합니다 제가 부족해서 수식을 변경하면 이해가 어렵습니다 수식이 길어져도 상관없으니 제발 처음 수식에서 수식변경 없이 data2만 넣어 주십시요 기존수식으로 콜 250과 콜 247.5으로 본 결과치와 콜 247.5를 data2로 해서본 결과치가 다릅니다 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : Re : Re : 부탁드립니다 > 안녕하세요 예스스탁입니다. 첨부된 그림과 같이 동일한 값을 리턴합니다. 각 지표에서 N/A로 표시되는 부분은 계산에 필요한 봉갯수가 부족해 지표가 출력되지 않는 지표입니다. 1번은 data2지표만 그리는 식이고 2번은 주종목+data2입니다. 1. input : P1(10),P2(20),P3(60),P4(100),P5(120); var : cnt(0),d2sum1(0,data2),d2avgv1(0,data2),d2sum2(0,data2),d2avgv2(0,data2); var : d2sum3(0,data2),d2avgv3(0,data2),d2sum4(0,data2),d2avgv4(0,data2),d2sum5(0,data2),d2avgv5(0,data2); Array : HH[150](0,data2),LL[150](0,data2),OO[15](0,data2); if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); d2sum1 = 0; d2sum2 = 0; d2sum3 = 0; d2sum4 = 0; d2sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then d2sum1 = d2sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then d2sum2 = d2sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then d2sum3 = d2sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then d2sum4 = d2sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then d2sum5 = d2sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then d2avgv1 = d2sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then d2avgv2 = d2sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then d2avgv3 = d2sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then d2avgv4 = d2sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then d2avgv5 = d2sum5/P5; plot1(OO[0],"시가"); if d2avgv1 > 0 then{ plot2(OO[0]+d2avgv1,"+1"); plot3(OO[0]-d2avgv1,"-1"); } if d2avgv2 > 0 then{ plot4(OO[0]+d2avgv2,"+2"); plot5(OO[0]-d2avgv2,"-2"); } if d2avgv3 > 0 then{ plot6(OO[0]+d2avgv3,"+3"); plot7(OO[0]-d2avgv3,"-3"); } if d2avgv4 > 0 then{ plot8(OO[0]+d2avgv4,"+4"); plot9(OO[0]-d2avgv4,"-4"); } if d2avgv5 > 0 then{ plot10(OO[0]+d2avgv5,"+5"); plot11(OO[0]-d2avgv5,"-5"); } 2 input : P1(10),P2(20),P3(60),P4(100),P5(120); var : cnt(0),sum1(0,data1),avgv1(0,data1),sum2(0,data1),avgv2(0,data1); var : sum3(0,data1),avgv3(0,data1),sum4(0,data1),avgv4(0,data1),sum5(0,data1),avgv5(0,data1); var : d2sum1(0,data2),d2avgv1(0,data2),d2sum2(0,data2),d2avgv2(0,data2); var : d2sum3(0,data2),d2avgv3(0,data2),d2sum4(0,data2),d2avgv4(0,data2),d2sum5(0,data2),d2avgv5(0,data2); Array : HH[150](0,data2),LL[150](0,data2),OO[15](0,data2); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; plot1(dayopen,"시가"); if avgv1 > 0 then{ plot2(dayopen+avgv1,"+1"); plot3(dayopen-avgv1,"-1"); } if avgv2 > 0 then{ plot4(dayopen+avgv2,"+2"); plot5(dayopen-avgv2,"-2"); } if avgv3 > 0 then{ plot6(dayopen+avgv3,"+3"); plot7(dayopen-avgv3,"-3"); } if avgv4 > 0 then{ plot8(dayopen+avgv4,"+4"); plot9(dayopen-avgv4,"-4"); } if avgv5 > 0 then{ plot10(dayopen+avgv5,"+5"); plot11(dayopen-avgv5,"-5"); } if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); d2sum1 = 0; d2sum2 = 0; d2sum3 = 0; d2sum4 = 0; d2sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then d2sum1 = d2sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then d2sum2 = d2sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then d2sum3 = d2sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then d2sum4 = d2sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then d2sum5 = d2sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then d2avgv1 = d2sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then d2avgv2 = d2sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then d2avgv3 = d2sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then d2avgv4 = d2sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then d2avgv5 = d2sum5/P5; plot20(OO[0],"data2시가"); if d2avgv1 > 0 then{ plot22(OO[0]+d2avgv1,"data2+1"); plot23(OO[0]-d2avgv1,"data2-1"); } if d2avgv2 > 0 then{ plot24(OO[0]+d2avgv2,"data2+2"); plot25(OO[0]-d2avgv2,"data2-2"); } if d2avgv3 > 0 then{ plot26(OO[0]+d2avgv3,"data2+3"); plot27(OO[0]-d2avgv3,"data2-3"); } if d2avgv4 > 0 then{ plot28(OO[0]+d2avgv4,"data2+4"); plot29(OO[0]-d2avgv4,"data2-4"); } if d2avgv5 > 0 then{ plot30(OO[0]+d2avgv5,"data2+5"); plot31(OO[0]-d2avgv5,"data2-5"); } 즐거운 하루되세요 > 마르뚝 님이 쓴 글입니다. > 제목 : Re : Re : 부탁드립니다 > 수치가 이상하게 나옵니다 기존 수식 수정하지 마시고 원래있는 수식에서 data2만 추가 부탁드립니다 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 부탁드립니다 > 안녕하세요 예스스탁입니다. 수식을 변경했습니다. 수식은 차트의 데이터를 이용해 계산합니다. 주종목의 경우에는 차트의 첫봉 +99일치의 일간데이터가 내부적으로 추가로 제공되고 있어 차트봉기간보다 더 긴기간의 일간값을 가져와 계산할수 있지만 참조데이터는 차트에 있는 봉만 사용하고 추가로 제공되는 일간데이터가 없습니다. 차트에 해당 일간데이터를 계산할 만큼 데이터가 충분하지 않으면 지표가 출력되지 않습니다. 이용에 참고하시기 바랍니다. input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); Array : HH[150](0),LL[150](0),OO[15](0); if data2(bdate != Bdate[1]) Then{ OO[0] = data2(O); HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 149{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(HH[cnt]-LL[cnt]); if cnt <= P2 Then sum2 = sum2+(HH[cnt]-LL[cnt]); if cnt <= P3 Then sum3 = sum3+(HH[cnt]-LL[cnt]); if cnt <= P4 Then sum4 = sum4+(HH[cnt]-LL[cnt]); if cnt <= P5 Then sum5 = sum5+(HH[cnt]-LL[cnt]); } #P1일 평균진폭 if HH[P1] > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if HH[P2] > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if HH[P3] > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if HH[P4] > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if HH[P5] > 0 Then avgv5 = sum5/P5; plot1(OO[0],"시가"); if avgv1 > 0 then{ plot2(OO[0]+avgv1,"+1"); plot3(OO[0]-avgv1,"-1"); } if avgv2 > 0 then{ plot4(OO[0]+avgv2,"+2"); plot5(OO[0]-avgv2,"-2"); } if avgv3 > 0 then{ plot6(OO[0]+avgv3,"+3"); plot7(OO[0]-avgv3,"-3"); } if avgv4 > 0 then{ plot8(OO[0]+avgv4,"+4"); plot9(OO[0]-avgv4,"-4"); } if avgv5 > 0 then{ plot10(OO[0]+avgv5,"+5"); plot11(OO[0]-avgv5,"-5"); } 즐거운 하루되세요 > 마르뚝 님이 쓴 글입니다. > 제목 : 부탁드립니다 > 아래수식에서 data2수식 부탁드립니다 -아래- input : P1(10),P2(20),P3(60),P4(100),P5(120); input : z1(10),z2(20),z3(30),z4(40),z5(50),z6(60),z7(70),z8(80),z9(90),z10(25),z11(75),z12(12.5),z13(87.5); var : cnt(0),sum1(0),avgv1(0),sum2(0),avgv2(0),sum3(0),avgv3(0),sum4(0),avgv4(0),sum5(0),avgv5(0); sum1 = 0; sum2 = 0; sum3 = 0; sum4 = 0; sum5 = 0; for cnt = 1 to P5{ if cnt <= P1 Then sum1 = sum1+(dayhigh(cnt)-daylow(cnt)); if cnt <= P2 Then sum2 = sum2+(dayhigh(cnt)-daylow(cnt)); if cnt <= P3 Then sum3 = sum3+(dayhigh(cnt)-daylow(cnt)); if cnt <= P4 Then sum4 = sum4+(dayhigh(cnt)-daylow(cnt)); if cnt <= P5 Then sum5 = sum5+(dayhigh(cnt)-daylow(cnt)); } #P1일 평균진폭 if dayhigh(P1) > 0 Then avgv1 = sum1/P1; #P2일 평균진폭 if dayhigh(P2) > 0 Then avgv2 = sum2/P2; #P3일 평균진폭 if dayhigh(P3) > 0 Then avgv3 = sum3/P3; #P4일 평균진폭 if dayhigh(P4) > 0 Then avgv4 = sum4/P4; #P5일 평균진폭 if dayhigh(P5) > 0 Then avgv5 = sum5/P5; plot1(dayopen,"시가"); if avgv1 > 0 then{ plot2(dayopen+avgv1,"+1"); plot3(dayopen-avgv1,"-1"); } if avgv2 > 0 then{ plot4(dayopen+avgv2,"+2"); plot5(dayopen-avgv2,"-2"); } if avgv3 > 0 then{ plot6(dayopen+avgv3,"+3"); plot7(dayopen-avgv3,"-3"); } if avgv4 > 0 then{ plot8(dayopen+avgv4,"+4"); plot9(dayopen-avgv4,"-4"); } if avgv5 > 0 then{ plot10(dayopen+avgv5,"+5"); plot11(dayopen-avgv5,"-5"); }