커뮤니티

부탁 드립니다.

프로필 이미지
yes
2021-11-07 15:03:29
846
글번호 153447
답변완료
항상 도움에 감사 드립니다. 타주기 수식 (분봉지표를 분봉에서, 일봉 지표를 분봉에서) 부탁 드립니다. 질문1) var1=ma(c,period); 질문2) var2=wma(c,period); 질문3) var3=ema(c,period); 참고 수식) Input : Atime(30),Period(10),sig(9); var : S1(0),D1(0),TM(0),EP(0); Var : TF1(0),idx1(0),emav1(0),Pre1(0); Ep = 2/(Period+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%Atime; if Bdate != Bdate[1] or (Bdate == Bdate[1] and Atime <= 1 and TF1 > TF1[1]) or (Bdate == Bdate[1] and Atime > 1 and TF1 < TF1[1]) Then{ idx1 = idx1+1; Pre1 = emav1[1]; } if idx1 <= 1 then emav1 = C; else emav1 = C * EP + Pre1 * (1-EP); var1=ma(Emav1,sig); } Plot1(var1);
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-11-09 15:22:34

안녕하세요 예스스탁입니다. 1-1 input : ntime(5),Period(10); var : S1(0),D1(0),TM(0),TF(0),cnt(0); var : sum1(0),mav1(0); Array : CC[100](0); 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%ntime; if Bdate != Bdate[1] or (Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or (Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or (Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then { for cnt = 1 to 99 { CC[cnt] = CC[cnt-1][1]; } } CC[0] = C; if CC[Period-1] > 0 then { sum1 = 0; for cnt = 0 to Period-1 { sum1 = sum1+CC[cnt]; } mav1 = sum1/Period; plot1(mav1,"단순이평"); } } 1-2 input : Period(10); var : cnt(0),sum1(0),mav1(0); Array : CC[100](0); if Bdate != Bdate[1] Then { for cnt = 1 to 99 { CC[cnt] = CC[cnt-1][1]; } } CC[0] = C; if CC[Period-1] > 0 then { sum1 = 0; for cnt = 0 to Period-1 { sum1 = sum1+CC[cnt]; } mav1 = sum1/Period; plot1(mav1,"단순이평"); } 2-1 input : ntime(5),Period(10); var : S1(0),D1(0),TM(0),TF(0),cnt(0); var : sum1(0),Csum1(0),wma1(0); Array : CC[100](0); 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%ntime; if Bdate != Bdate[1] or (Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or (Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or (Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then { for cnt = 1 to 99 { CC[cnt] = CC[cnt-1][1]; } } CC[0] = C; if CC[Period-1] > 0 then { Sum1 = 0; CSum1 = 0; For cnt = 0 To Period - 1 Begin Sum1 = Sum1 + CC[cnt] * (Period - cnt); CSum1 = CSum1 + Period - cnt; End; WMA1 = Sum1/CSum1; plot1(WMA1,"가중이평"); } } 2-2 input : Period(10); var : cnt(0), sum1(0),Csum1(0),wma1(0); Array : CC[100](0); if Bdate != Bdate[1] Then { for cnt = 1 to 99 { CC[cnt] = CC[cnt-1][1]; } } CC[0] = C; if CC[Period-1] > 0 then { Sum1 = 0; CSum1 = 0; For cnt = 0 To Period - 1 Begin Sum1 = Sum1 + CC[cnt] * (Period - cnt); CSum1 = CSum1 + Period - cnt; End; WMA1 = Sum1/CSum1; plot1(WMA1,"가중이평"); } 3-1 Input : ntime(10),Period(10); var : S1(0),D1(0),TM(0),TF1(0); Var : Ep1(0), Emav(0), PreEmav(0); Ep1 = 2/(Period+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%ntime; if Bdate != Bdate[1] or (Bdate == Bdate[1] and ntime > 1 and TF1 < TF1[1]) or (Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or (Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then { value1 = value1+1; PreEmav = Emav[1]; } if value1 <= 1 then Emav = C; else Emav = C * EP1 + PreEmav * (1-EP1); plot1(Emav,"지수이평"); } 3-2 Input : Period(10); ₩Var : Ep1(0), Emav(0), PreEmav(0); Ep1 = 2/(Period+1); if Bdate != Bdate[1] Then { value1 = value1+1; PreEmav = Emav[1]; } if value1 <= 1 then Emav = C; else Emav = C * EP1 + PreEmav * (1-EP1); plot1(Emav,"지수이평"); 즐거운 하루되세요 > yes 님이 쓴 글입니다. > 제목 : 부탁 드립니다. > 항상 도움에 감사 드립니다. 타주기 수식 (분봉지표를 분봉에서, 일봉 지표를 분봉에서) 부탁 드립니다. 질문1) var1=ma(c,period); 질문2) var2=wma(c,period); 질문3) var3=ema(c,period); 참고 수식) Input : Atime(30),Period(10),sig(9); var : S1(0),D1(0),TM(0),EP(0); Var : TF1(0),idx1(0),emav1(0),Pre1(0); Ep = 2/(Period+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%Atime; if Bdate != Bdate[1] or (Bdate == Bdate[1] and Atime <= 1 and TF1 > TF1[1]) or (Bdate == Bdate[1] and Atime > 1 and TF1 < TF1[1]) Then{ idx1 = idx1+1; Pre1 = emav1[1]; } if idx1 <= 1 then emav1 = C; else emav1 = C * EP + Pre1 * (1-EP); var1=ma(Emav1,sig); } Plot1(var1);