커뮤니티

부탁 드립니다.

프로필 이미지
yes
2021-12-27 16:45:12
775
글번호 154903
답변완료
도움에 늘 감사 합니다. MACD를 타주기 1)틱봉용 2)일봉용 부탁 드립니다. 첨부 수식은 macd의 오래전 올려주신 타분봉용 수식 입니다. input : Atime1(60); input : short(12),long(26),sig(9); var : mav(0),dis(0),SS(0),LL(0),MACDV(0),MACDS(0); 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 : Didx(0),ema51(0),ema52(0),idx5(0),Xema51(0),Xema52(0),XMACDS5(0),MACDV5(0),MACDS5(0); Ep1 = 2/(short+1); Ep2 = 2/(long+1); Ep3 = 2/(sig+1); if Bdate != Bdate[1] Then{ S1 = TimeToMinutes(stime); D1 = sdate; Didx = Didx + 1; Xema51 = ema51[1]; Xema52 = ema52[1]; XMACDS5 = MACDS5[1]; } 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]) Then{ idx1 = idx1 + 1; Xema11 = ema11[1]; Xema12 = ema12[1]; XMACDS1 = MACDS1[1]; } if idx1 <= 1 then { ema11 = C; ema12 = C; MACDV1 = (ema11-ema12)/ema12*100; MACDS1 = MACDV1; } else{ ema11 = C * EP1 + Xema11 * (1-EP1); ema12 = C * EP2 + Xema12 * (1-EP2); MACDV1 = (ema11-ema12)/ema12*100; MACDS1 = MACDV1 * EP3 + XMACDS1 * (1-EP3); } plot4(MACDV1); plot5(MACDS1);} 타틱용 참고자료) if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; ii = 0; } Else ii = ii +1; if D1 > 0 then { TF = ii%nbar; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then { idx = idx+1;
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-12-28 15:06:22

안녕하세요 예스스탁입니다. 1 input : nbars(5),short(12),long(26),sig(9); var : S1(0),D1(0),TM(0),EP1(0),EP2(0),EP3(0),MACDO(0); var : TF(0),xma1(0),xma2(0),idx(0),Prexma1(0),Prexma2(0),MACDV(0),MACDS(0),PreMACDS(0); Ep1 = 2/(short+1); Ep2 = 2/(long+1); Ep3 = 2/(sig+1); if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; idx = 0; } Else idx = idx+1; if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = idx%nbars; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then { idx = idx + 1; Prexma1 = xma1[1]; Prexma2 = xma2[1]; PreMACDS = MACDS[1]; } if idx <= 1 then { xma1 = C; xma2 = C; MACDV = xma1-xma2; MACDS = MACDV; } else{ xma1 = C * EP1 + Prexma1 * (1-EP1); xma2 = C * EP2 + Prexma2 * (1-EP2); MACDV = xma1-xma2; MACDS = MACDV * EP3 + PreMACDS * (1-EP3); } plot1(MACDV,"MACD"); plot2(MACDS,"signal"); PlotBaseLine1(0); } 2 Input : Period1(12),Period2(26),Period3(9); var : Didx(0),dEP1(0),dEP2(0),dEP3(0); Var : dJISU1(0), PredJISU1(0); Var : dJISU2(0), PredJISU2(0); var : dMACDV(0), predMACDV(0); Var : dMACDS(0), PredMACDS(0); dEp1 = 2/(Period1+1); dEp2 = 2/(Period2+1); dEp3 = 2/(Period3+1); if bdate != bdate[1] Then { Didx = Didx + 1; PredJISU1 = dJISU1[1]; PredJISU2 = dJISU2[1]; PredMACDV = dMACDV[1]; PredMACDS = dMACDS[1]; } if Didx <= 1 then { dJISU1 = C; dJISU2 = C; dMACDV = dJISU1-dJISU2; dMACDS = dMACDV; } else{ dJISU1 = C * dEP1 + PredJISU1 * (1-dEP1); dJISU2 = C * dEP2 + PredJISU2 * (1-dEP2); dMACDV = dJISU1-dJISU2; dMACDS = dMACDV * dEP3 + PredMACDS * (1-dEP3); } plot1(dMACDV,"MACD"); plot2(dMACDs,"Signal"); PlotBaseLine1(0); 새해 복 많이 받으세요 > yes 님이 쓴 글입니다. > 제목 : 부탁 드립니다. > 도움에 늘 감사 합니다. MACD를 타주기 1)틱봉용 2)일봉용 부탁 드립니다. 첨부 수식은 macd의 오래전 올려주신 타분봉용 수식 입니다. input : Atime1(60); input : short(12),long(26),sig(9); var : mav(0),dis(0),SS(0),LL(0),MACDV(0),MACDS(0); 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 : Didx(0),ema51(0),ema52(0),idx5(0),Xema51(0),Xema52(0),XMACDS5(0),MACDV5(0),MACDS5(0); Ep1 = 2/(short+1); Ep2 = 2/(long+1); Ep3 = 2/(sig+1); if Bdate != Bdate[1] Then{ S1 = TimeToMinutes(stime); D1 = sdate; Didx = Didx + 1; Xema51 = ema51[1]; Xema52 = ema52[1]; XMACDS5 = MACDS5[1]; } 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]) Then{ idx1 = idx1 + 1; Xema11 = ema11[1]; Xema12 = ema12[1]; XMACDS1 = MACDS1[1]; } if idx1 <= 1 then { ema11 = C; ema12 = C; MACDV1 = (ema11-ema12)/ema12*100; MACDS1 = MACDV1; } else{ ema11 = C * EP1 + Xema11 * (1-EP1); ema12 = C * EP2 + Xema12 * (1-EP2); MACDV1 = (ema11-ema12)/ema12*100; MACDS1 = MACDV1 * EP3 + XMACDS1 * (1-EP3); } plot4(MACDV1); plot5(MACDS1);} 타틱용 참고자료) if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; ii = 0; } Else ii = ii +1; if D1 > 0 then { TF = ii%nbar; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then { idx = idx+1;