커뮤니티
부탁드립니다
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");
}