커뮤니티

문의드립니다

프로필 이미지
kns
2023-03-03 09:17:02
969
글번호 166878
답변완료
아래의 rsi수식을 바탕으로 3분봉 ,60분봉, 일봉 ,주봉의 Rsi 함수값을 구하고 싶습니다 일봉에서 주봉rsi를 같이 본다거나 , 분봉에서 일봉 rsi를 같이 보는 용도로 사용할려 합니다 A = eavg(if(C-C(1)>0,C-C(1),0),period1); B = eavg(if(C-C(1)<0,abs(C-C(1)),0),period1); RS= A/B RSI = 100 - 100/(1+RS)
사용자 함수
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-03-03 13:50:48

안녕하세요 예스스탁입니다. 지수이평의 경우 과거봉에 따라 현재봉의 값이 달라지게 됩니다. 기본차트를 기준으로 타주기 지표를 계산하므로 기본차트 기준 너무 큰 다른 주기는 현재봉값에 많이 차이가 날수 있습니다. 이용에 참고하시기 바랍니다. 1 타분봉 Input : ntime(10),RSIP(14); var : S1(0),D1(0),TM(0),TF1(0),diff(0); Var : Ep(0); var : A(0),B(0),preA(0),preB(0),RS(0),RSIV(0),C1(0); EP = 2/(RSIP+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 { PreA = A[1]; PreB = B[1]; C1 = C[1]; value1 = value1+1; } if C1 > 0 Then { var1 = iff(C-C1>0,C-C1,0); var2 = iff(C-C1<0,abs(C-C1),0); if value1 <= 1 then { A = var1; B = var2; } else { A = var1 * EP + PreA * (1-EP); B = var2 * EP + PreB * (1-EP); } RS= A/B; RSIv = 100 - 100/(1+RS); plot1(RSIV); } } 2 일봉 Input : RSIP(14); Var : Ep(0); var : A(0),B(0),preA(0),preB(0),RS(0),RSIV(0),C1(0); EP = 2/(RSIP+1); if Bdate != Bdate[1] Then { PreA = A[1]; PreB = B[1]; C1 = C[1]; value1 = value1+1; } if C1 > 0 Then { var1 = iff(C-C1>0,C-C1,0); var2 = iff(C-C1<0,abs(C-C1),0); if value1 <= 1 then { A = var1; B = var2; } else { A = var1 * EP + PreA * (1-EP); B = var2 * EP + PreB * (1-EP); } RS= A/B; RSIv = 100 - 100/(1+RS); plot1(RSIV); } 3 주봉 Input : RSIP(14); Var : Ep(0); var : A(0),B(0),preA(0),preB(0),RS(0),RSIV(0),C1(0); EP = 2/(RSIP+1); if dayofweek(Bdate) != DayOfWeek(Bdate[1]) Then { PreA = A[1]; PreB = B[1]; C1 = C[1]; value1 = value1+1; } if C1 > 0 Then { var1 = iff(C-C1>0,C-C1,0); var2 = iff(C-C1<0,abs(C-C1),0); if value1 <= 1 then { A = var1; B = var2; } else { A = var1 * EP + PreA * (1-EP); B = var2 * EP + PreB * (1-EP); } RS= A/B; RSIv = 100 - 100/(1+RS); plot1(RSIV); } 즐거운 하루되세요 > kns 님이 쓴 글입니다. > 제목 : 문의드립니다 > 아래의 rsi수식을 바탕으로 3분봉 ,60분봉, 일봉 ,주봉의 Rsi 함수값을 구하고 싶습니다 일봉에서 주봉rsi를 같이 본다거나 , 분봉에서 일봉 rsi를 같이 보는 용도로 사용할려 합니다 A = eavg(if(C-C(1)>0,C-C(1),0),period1); B = eavg(if(C-C(1)<0,abs(C-C(1)),0),period1); RS= A/B RSI = 100 - 100/(1+RS)