커뮤니티
부탁드립니다
2016-06-14 10:08:12
111
글번호 99036
아래와 같이 지표식을 만들 적에 어쩔 때는 맞게 그려지고
어쩔 때는 엉터리로 나오는데 원인을 모르겠습니다.
var1=abs(data2(OpenD(0))-data3(OpenD(0)));
var2=abs(data2(OpenD(0))-data5(OpenD(0)));
var3=abs(data2(OpenD(0))-data9(OpenD(0)));
var4=abs(data3(OpenD(0))-data4(OpenD(0)));
var5=abs(data3(OpenD(0))-data8(OpenD(0)));
If var1<=var2 and var1<=var3 and var1<=var4 and var1<=var5 Then{
var7=(data2(C)-data2(OpenD(0)))*100/data2(OpenD(0));
var8=(data3(C)-data3(OpenD(0)))*100/data3(OpenD(0));
}
If var1>=var2 and var2<=var3 and var2<=var4 and var2<=var5 Then{
var7=(data2(C)-data2(OpenD(0)))*100/data2(OpenD(0));
var8=(data5(C)-data5(OpenD(0)))*100/data5(OpenD(0));
}
If var1>=var3 and var2>=var3 and var3<=var4 and var3<=var5 Then{
var7=(data2(C)-data2(OpenD(0)))*100/data2(OpenD(0));
var8=(data9(C)-data9(OpenD(0)))*100/data9(OpenD(0));
}
If var1>=var4 and var2>=var4 and var3>=var4 and var4<=var5 Then{
var7=(data4(C)-data4(OpenD(0)))*100/data4(OpenD(0));
var8=(data3(C)-data3(OpenD(0)))*100/data3(OpenD(0));
}
If var1>=var5 and var2>=var5 and var3>=var5 and var4>=var5 Then{
var7=(data8(C)-data8(OpenD(0)))*100/data8(OpenD(0));
var8=(data3(C)-data3(OpenD(0)))*100/data3(OpenD(0));
}
var9=(var7-var8)/2;
plot1(var7,"1",red);
plot2(-var8,"2",blue);
답변 1
예스스탁 예스스탁 답변
2016-06-14 11:28:48
안녕하세요
예스스탁입니다.
식상에 수정할 만한 부분이 보이지 않습니다.
수식에서 데이터는 완성봉의 데이터만 사용합니다.
지표식의 경우에는
차트에 표시를 하는 부분이므로
봉이 미완성일때도 미완성봉들의 현재값을 가져와 그려서 보여주는데
주종목봉이 완성되면 참조데이터의 최근 완성봉값 기준으로
값을 가져와 계산해서 완성지표가 그려지게 됩니다.
즐거운 하루되세요
> 묘선낭자 님이 쓴 글입니다.
> 제목 : 부탁드립니다
> 아래와 같이 지표식을 만들 적에 어쩔 때는 맞게 그려지고
어쩔 때는 엉터리로 나오는데 원인을 모르겠습니다.
var1=abs(data2(OpenD(0))-data3(OpenD(0)));
var2=abs(data2(OpenD(0))-data5(OpenD(0)));
var3=abs(data2(OpenD(0))-data9(OpenD(0)));
var4=abs(data3(OpenD(0))-data4(OpenD(0)));
var5=abs(data3(OpenD(0))-data8(OpenD(0)));
If var1<=var2 and var1<=var3 and var1<=var4 and var1<=var5 Then{
var7=(data2(C)-data2(OpenD(0)))*100/data2(OpenD(0));
var8=(data3(C)-data3(OpenD(0)))*100/data3(OpenD(0));
}
If var1>=var2 and var2<=var3 and var2<=var4 and var2<=var5 Then{
var7=(data2(C)-data2(OpenD(0)))*100/data2(OpenD(0));
var8=(data5(C)-data5(OpenD(0)))*100/data5(OpenD(0));
}
If var1>=var3 and var2>=var3 and var3<=var4 and var3<=var5 Then{
var7=(data2(C)-data2(OpenD(0)))*100/data2(OpenD(0));
var8=(data9(C)-data9(OpenD(0)))*100/data9(OpenD(0));
}
If var1>=var4 and var2>=var4 and var3>=var4 and var4<=var5 Then{
var7=(data4(C)-data4(OpenD(0)))*100/data4(OpenD(0));
var8=(data3(C)-data3(OpenD(0)))*100/data3(OpenD(0));
}
If var1>=var5 and var2>=var5 and var3>=var5 and var4>=var5 Then{
var7=(data8(C)-data8(OpenD(0)))*100/data8(OpenD(0));
var8=(data3(C)-data3(OpenD(0)))*100/data3(OpenD(0));
}
var9=(var7-var8)/2;
plot1(var7,"1",red);
plot2(-var8,"2",blue);