커뮤니티
문의드립니다.
2014-04-29 16:31:19
280
글번호 74760
아래와 같은 지표를 예스글로벌에서 작동시키는데요,,,
이상하게 시간이 흐름에 따라 지표가 움직임이 없이 수평선값으로 진행이 됩니다.
그래서 예스글로벌을 껐다가 다시 로그인하면 움직여져 있고,,,왜 그런지 모르겠네요,,,
if dayindex==0 then{
Value1 = Accum((Data2(C[1])-Data2(C[0]))/Data2(C[1]));
Value2 = Accum((Data2(C[2])-Data2(C[0]))/Data2(C[2]));
Value3 = Accum((Data2(C[3])-Data2(C[0]))/Data2(C[3]));
Value4 = Accum((Data2(C[4])-Data2(C[0]))/Data2(C[4]));
Value5 = Accum((Data2(C[5])-Data2(C[0]))/Data2(C[5]));
Value6 = Accum((Data2(C[6])-Data2(C[0]))/Data2(C[6]));
}
Value7 = Accum((Data2(C[1])-Data2(C[0]))/Data2(C[1]))-Value1;
Value8 = Accum((Data2(C[2])-Data2(C[0]))/Data2(C[2]))-Value2;
Value9 = Accum((Data2(C[3])-Data2(C[0]))/Data2(C[3]))-Value3;
Value10 = Accum((Data2(C[4])-Data2(C[0]))/Data2(C[4]))-Value4;
Value11 = Accum((Data2(C[5])-Data2(C[0]))/Data2(C[5]))-Value5;
Value12 = Accum((Data2(C[6])-Data2(C[0]))/Data2(C[6]))-Value6;
PlotBaseLine1(-Value7,"증감율");
PlotBaseLine2(-Value8,"증감율");
PlotBaseLine3(-Value9,"증감율");
PlotBaseLine4(-Value10,"증감율");
PlotBaseLine5(-Value11,"증감율");
PlotBaseLine6(-Value12,"증감율");
답변 1
예스스탁 예스스탁 답변
2014-04-30 09:54:04
안녕하세요
예스스탁입니다.
수식은 차트 첫봉부터 계산하면서 현재봉으로 오게 됩니다.
Accum이 첫봉부터 값을 누적해야 하는데
특정 if 조건문(dayindex == 0)에 포함이 되어
이전봉의 값을 계속 누적할수 없게 작성을 하셨습니다.
아래와 같이 accum을 if문 없이 단독으로 계산하게 하고
필요시 값을 저장해 사용하셔야 합니다.
또한 참조데이터를 이용하실 때 if문의 조건도 데이터번호로 지정해 주셔야 합니다.
data2(함수)와 같이 계산식을 작성해 가셔야 합니다.
var : D1(0,data2),D2(0,data2),D3(0,data2),D4(0,data2),D5(0,data2),D6(0,data2);
var : V1(0,data2),V2(0,data2),V3(0,data2),V4(0,data2),V5(0,data2),V6(0,data2);
var : V7(0,data2),V8(0,data2),V9(0,data2),V10(0,data2),V11(0,data2),V12(0,data2);
D1 = data2(Accum((C[1]-C[0])/C[1]));
D2 = data2(Accum((C[2]-C[0])/C[2]));
D3 = data2(Accum((C[3]-C[0])/C[3]));
D4 = data2(Accum((C[4]-C[0])/C[4]));
D5 = data2(Accum((C[5]-C[0])/C[5]));
D6 = data2(Accum((C[6]-C[0])/C[6]));
if data2(dayindex==0) then{
V1 = D1;
V2 = D2;
V3 = D3;
V4 = D4;
V5 = D5;
V6 = D6;
}
V7 = D1-V1;
V8 = D2-V2;
V9 = D3-V3;
V10 = D4-V4;
V11 = D5-V5;
V12 = D6-V6;
PlotBaseLine1(-V7,"증감율");
PlotBaseLine2(-V8,"증감율");
PlotBaseLine3(-V9,"증감율");
PlotBaseLine4(-V10,"증감율");
PlotBaseLine5(-V11,"증감율");
PlotBaseLine6(-V12,"증감율");
즐거운 하루되세요
> 예스매니아 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 아래와 같은 지표를 예스글로벌에서 작동시키는데요,,,
이상하게 시간이 흐름에 따라 지표가 움직임이 없이 수평선값으로 진행이 됩니다.
그래서 예스글로벌을 껐다가 다시 로그인하면 움직여져 있고,,,왜 그런지 모르겠네요,,,
if dayindex==0 then{
Value1 = Accum((Data2(C[1])-Data2(C[0]))/Data2(C[1]));
Value2 = Accum((Data2(C[2])-Data2(C[0]))/Data2(C[2]));
Value3 = Accum((Data2(C[3])-Data2(C[0]))/Data2(C[3]));
Value4 = Accum((Data2(C[4])-Data2(C[0]))/Data2(C[4]));
Value5 = Accum((Data2(C[5])-Data2(C[0]))/Data2(C[5]));
Value6 = Accum((Data2(C[6])-Data2(C[0]))/Data2(C[6]));
}
Value7 = Accum((Data2(C[1])-Data2(C[0]))/Data2(C[1]))-Value1;
Value8 = Accum((Data2(C[2])-Data2(C[0]))/Data2(C[2]))-Value2;
Value9 = Accum((Data2(C[3])-Data2(C[0]))/Data2(C[3]))-Value3;
Value10 = Accum((Data2(C[4])-Data2(C[0]))/Data2(C[4]))-Value4;
Value11 = Accum((Data2(C[5])-Data2(C[0]))/Data2(C[5]))-Value5;
Value12 = Accum((Data2(C[6])-Data2(C[0]))/Data2(C[6]))-Value6;
PlotBaseLine1(-Value7,"증감율");
PlotBaseLine2(-Value8,"증감율");
PlotBaseLine3(-Value9,"증감율");
PlotBaseLine4(-Value10,"증감율");
PlotBaseLine5(-Value11,"증감율");
PlotBaseLine6(-Value12,"증감율");
다음글
이전글