5분봉에서 15분 200일 지수이평 지표를 그리고 싶습니다.
밑에것으로 했는데 값이 다르네요
input : Atime(5),Period1(5),Period2(20),Period3(60);
Var : Ep1(0), JISU1(0), PreJISU1(0);
Var : Ep2(0), JISU2(0), PreJISU2(0);
Var : Ep3(0), JISU3(0), PreJISU3(0);
var : TF(0);
Ep1 = 2/(Period1+1);
Ep2 = 2/(Period2+1);
Ep3 = 2/(Period3+1);
TF = TimeToMinutes(stime)%Atime;
if Bdate != bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then{
value1 = value1+1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
}
if value1 <= 1 then {
JISU1 = C;
JISU2 = C;
JISU3 = C;
}
else{
JISU1 = C * EP1 + PreJISU1 * (1-EP1);
JISU2 = C * EP2 + PreJISU2 * (1-EP2);
JISU3 = C * EP3 + PreJISU3 * (1-EP3);
}
plot1(JiSu1);
plot2(Jisu2);
plot3(Jisu3);
답변 1
예스스탁
예스스탁 답변
2022-11-17 13:35:30
안녕하세요
예스스탁입니다.
지수이평은 과거봉에 영향을 받는 지표입니다.
기존 15분봉에서 보는 지표와 5분봉에서 15분을 구현한 지표와
과거봉의 차이로 현재봉 값이 다를수 있습니다.
이는 지수이평과 같은 계산법을 사용하는 모든 지표에 모두 적용되는 부분입니다.
과거봉의 영향이 시간이 지남에 따라 차츰 감소하므로
차트에 가능한 많은 봉을 조회해서 적용해 보셔야 합니다.
input : Atime(15),Period1(5),Period2(20),Period3(200);
Var : Ep1(0), JISU1(0), PreJISU1(0);
Var : Ep2(0), JISU2(0), PreJISU2(0);
Var : Ep3(0), JISU3(0), PreJISU3(0);
var : S1(0),D1(0),TF(0),TM(0);
Ep1 = 2/(Period1+1);
Ep2 = 2/(Period2+1);
Ep3 = 2/(Period3+1);
TF = TimeToMinutes(stime)%Atime;
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%Atime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and Atime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and Atime > 1 and TM >= TM[1]+Atime) or
(Bdate == Bdate[1] and Atime == 1 and TM > TM[1]) Then
{
value1 = value1+1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
}
if value1 <= 1 then {
JISU1 = C;
JISU2 = C;
JISU3 = C;
}
else{
JISU1 = C * EP1 + PreJISU1 * (1-EP1);
JISU2 = C * EP2 + PreJISU2 * (1-EP2);
JISU3 = C * EP3 + PreJISU3 * (1-EP3);
}
plot1(JiSu1);
plot2(Jisu2);
plot3(Jisu3);
}
즐거운 하루되세요
> 몬테카를로 님이 쓴 글입니다.
> 제목 : 지표수식 부탁드립니다.
> 5분봉에서 15분 200일 지수이평 지표를 그리고 싶습니다.
밑에것으로 했는데 값이 다르네요
input : Atime(5),Period1(5),Period2(20),Period3(60);
Var : Ep1(0), JISU1(0), PreJISU1(0);
Var : Ep2(0), JISU2(0), PreJISU2(0);
Var : Ep3(0), JISU3(0), PreJISU3(0);
var : TF(0);
Ep1 = 2/(Period1+1);
Ep2 = 2/(Period2+1);
Ep3 = 2/(Period3+1);
TF = TimeToMinutes(stime)%Atime;
if Bdate != bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then{
value1 = value1+1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
}
if value1 <= 1 then {
JISU1 = C;
JISU2 = C;
JISU3 = C;
}
else{
JISU1 = C * EP1 + PreJISU1 * (1-EP1);
JISU2 = C * EP2 + PreJISU2 * (1-EP2);
JISU3 = C * EP3 + PreJISU3 * (1-EP3);
}
plot1(JiSu1);
plot2(Jisu2);
plot3(Jisu3);