커뮤니티
분봉마다 값 가져올수 있나요?
2017-11-10 14:09:56
148
글번호 114078
수고하십니다.
현재 화면은 1분봉 차트입니다.
1분봉 차트에서 보조지표(MACD) 값을
3분, 5분, 10분에 해당하는 MACDv 값을 가져오는 수식좀 부탁드리겠습니다.
없으면 가능한 방법좀 부탁드립니다.
감사합니다.
답변 2
예스스탁 예스스탁 답변
2017-11-10 16:53:13
안녕하세요
예스스탁입니다.
input : short(12),long(26),sig(9);
input : Atime1(3),Atime2(5),Atime3(10);
var : S1(0),D1(0),TM(0),EP1(0),EP2(0),EP3(0);
var : TF1(0),ema11(0),ema12(0),idx1(0),Xema11(0),Xema12(0),XMACDS1(0),MACDV1(0),MACDS1(0);
var : TF2(0),ema21(0),ema22(0),idx2(0),Xema21(0),Xema22(0),XMACDS2(0),MACDV2(0),MACDS2(0);
var : TF3(0),ema31(0),ema32(0),idx3(0),Xema31(0),Xema32(0),XMACDS3(0),MACDV3(0),MACDS3(0);
Ep1 = 2/(short+1);
Ep2 = 2/(long+1);
Ep3 = 2/(sig+1);
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;
TF1 = TM%Atime1;
if bdate != bdate[1] or (TF1 < TF1[1] and bdate == bdate[1]) or (TM >= TM[1]+Atime3 and bdate == bdate[1]) Then{
idx1 = idx1 + 1;
Xema11 = ema11[1];
Xema12 = ema12[1];
XMACDS1 = MACDS1[1];
}
if idx1 <= 1 then {
ema11 = C;
ema12 = C;
MACDV1 = ema11-ema12;
MACDS1 = ema11-ema12;
}
else{
ema11 = C * EP1 + Xema11 * (1-EP1);
ema12 = C * EP2 + Xema12 * (1-EP2);
MACDV1 = ema11-ema12;
MACDS1 = MACDV1 * EP3 + XMACDS1 * (1-EP3);
}
plot1(MACDV1,"MACDv1");
plot2(MACDS1,"signal1");
TF2 = TM%Atime2;
if bdate != bdate[1] or (TF2 < TF2[1] and bdate == bdate[1]) or (TM >= TM[1]+Atime3 and bdate == bdate[1]) Then{
idx2 = idx2 + 1;
Xema21 = ema21[1];
Xema22 = ema22[1];
XMACDS2 = MACDS2[1];
}
if idx2 <= 1 then {
ema21 = C;
ema22 = C;
MACDV2 = ema21-ema22;
MACDS2 = ema21-ema22;
}
else{
ema21 = C * EP1 + Xema21 * (1-EP1);
ema22 = C * EP2 + Xema22 * (1-EP2);
MACDV2 = ema21-ema22;
MACDS2 = MACDV2 * EP3 + XMACDS2 * (1-EP3);
}
plot3(MACDV2,"MACDv2");
plot4(MACDS2,"signal2");
TF3 = TM%Atime3;
if bdate != bdate[1] or (TF3 < TF3[1] and bdate == bdate[1]) or (TM >= TM[1]+Atime3 and bdate == bdate[1]) Then{
idx3 = idx3 + 1;
Xema31 = ema31[1];
Xema32 = ema32[1];
XMACDS3 = MACDS3[1];
}
if idx3 <= 1 then {
ema31 = C;
ema32 = C;
MACDV3 = ema31-ema32;
MACDS3 = ema31-ema32;
}
else{
ema31 = C * EP1 + Xema31 * (1-EP1);
ema32 = C * EP2 + Xema32 * (1-EP2);
MACDV3 = ema31-ema32;
MACDS3 = MACDV3 * EP3 + XMACDS3 * (1-EP3);
}
plot5(MACDV3,"MACDv3");
plot6(MACDS3,"signal3");
}
즐거운 하루되세요
> 이제광 님이 쓴 글입니다.
> 제목 : 분봉마다 값 가져올수 있나요?
> 수고하십니다.
현재 화면은 1분봉 차트입니다.
1분봉 차트에서 보조지표(MACD) 값을
3분, 5분, 10분에 해당하는 MACDv 값을 가져오는 수식좀 부탁드리겠습니다.
없으면 가능한 방법좀 부탁드립니다.
감사합니다.
회원
2017-11-10 17:50:50
회원 님에 의해 삭제된 답변입니다.
다음글
이전글