커뮤니티

다른 프레임에서 해당 지표를 구현하고 싶습니다.

프로필 이미지
마녀58
2022-09-28 11:18:16
748
글번호 162570
답변완료
Truestrength = TSI(C, R, S, U); 일봉 TSI를 5분봉에서 소환하려면 어떻게 해야하나요? 단순 이평 같은 경우에는 for cnt 구문으로 하는 방법은 알겠는데 이건 구현이 어렵네요. 매번 감사드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-09-29 09:52:26

안녕하세요 예스스탁입니다. TSI는 지수이평이 중복으로 사용되어 계산됩니다. 지수이평과 같은 계산방법은 차트의 과거데이타수에 따라 현재값이 다르게 됩니다. 분봉에서 일봉구현하시면 과거 데이타의 차이로 인해 값이 다를 수 있습니다 이용에 참고하시기 바랍니다. Input : R(4),S(8),U(6),SMTHLEN(3); var : DINDEX1(0),TSIv(0),TSIs(0),Ep44(0),PreJISU44(0); Var : Ep1(0), JISU1(0), PreJISU1(0), Ep11(0), JISU11(0), PreJISU11(0); Var : Ep2(0), JISU2(0), PreJISU2(0), Ep22(0), JISU22(0), PreJISU22(0); Var : Ep3(0), JISU3(0), PreJISU3(0), Ep33(0), JISU33(0), PreJISU33(0); Ep1 = 2/(R+1); Ep2 = 2/(S+1); Ep3 = 2/(U+1); Ep11 = 2/(R+1); Ep22 = 2/(S+1); Ep33 = 2/(U+1); Ep44 = 2/(SMTHLEN+1); if bdate != bdate[1] then { DINDEX1= DINDEX1 + 1; if DINDEX1 >= 2 Then PreJISU1 = JISU1[1]; if DINDEX1 >= 3 Then PreJISU2 = JISU2[1]; if DINDEX1 >= 4 Then PreJISU3 = JISU3[1]; if DINDEX1 >= 2 Then PreJISU11 = JISU11[1]; if DINDEX1 >= 3 Then PreJISU22 = JISU22[1]; if DINDEX1 >= 4 Then PreJISU33 = JISU33[1]; if DINDEX1 >= 5 Then PreJISU44 = TSIs[1]; } if DINDEX1 <= 2 then JISU1 = DayClose-DayClose(1); else JISU1 = (DayClose-DayClose(1)) * EP1 + PreJISU1 * (1-EP1); if DINDEX1 <= 3 then JISU2 = JISU1; else JISU2 = JISU1 * EP2 + PreJISU2 * (1-EP2); if DINDEX1 <= 4 then JISU3 = JISU2 ; else JISU3 = JISU2 * EP3 + PreJISU3 * (1-EP3); if DINDEX1 <= 2 then JISU11 = abs(DayClose-DayClose(1)); else JISU11 = (abs(DayClose-DayClose(1))) * EP11 + PreJISU11 * (1-EP11); if DINDEX1 <= 3 then JISU22 = JISU11; else JISU22 = JISU11 * EP22 + PreJISU22 * (1-EP22); if DINDEX1 <= 4 then JISU33 = JISU22 ; else JISU33 = JISU22 * EP33 + PreJISU33 * (1-EP33); Value1 = 100 * JISU3; Value2 = JISU33; If Value2 <> 0 then TSIv = Value1 / Value2; Else TSIv = 0; if DINDEX1 <= 5 then TSIs = TSIv; else TSIs = TSIV * EP44 + PreJISU44 * (1-EP44); plot1(TSIv); plot2(TSIs); PlotBaseLine1(0); 즐거운 하루되세요 > 마녀58 님이 쓴 글입니다. > 제목 : 다른 프레임에서 해당 지표를 구현하고 싶습니다. > Truestrength = TSI(C, R, S, U); 일봉 TSI를 5분봉에서 소환하려면 어떻게 해야하나요? 단순 이평 같은 경우에는 for cnt 구문으로 하는 방법은 알겠는데 이건 구현이 어렵네요. 매번 감사드립니다.