커뮤니티

문의드립니다~

프로필 이미지
겐지
2017-03-14 04:11:25
132
글번호 107752
답변완료
input : 분주기(30),P(5),분주기1(15); var : S1(0),D1(0),TM(0),TF(0); var : cnt(0),sum(0),mav(0),tf1(0); Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),TT[100](0); Array : C1[100](0),T1[100](0); if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{ S1 = TimeToMinutes(100000); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분주기; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF < TF[1]) Then{ OO[0] = o; HH[0] = H; LL[0] = L; TT[0] = stime; for cnt = 1 to 99{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; TT[cnt] = TT[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; CC[0] = C; TF1 = TM%분주기1; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF1 < TF1[1]) Then{ T1[cnt] = stime; for cnt = 1 to 99{ C1[cnt] = C1[cnt-1][1]; T1[cnt] = T1[cnt-1][1]; } } C1[0] = C; } 1.cc[1]과 c1[1]이 같지않은 경우를 식으로 표현하고 싶은데요~ 틱분주기15분단위에서 이전종가가10시45분 11시15분 11시45분 12시15분 12시45분식으로 15분단위 시간일때에 5일선과 20일선데드크로스시매도한다라는걸 제가 식으로 표현하니깐 if cc[1]!=c1[1] then crossdown(tic5,tic20); 이렇게 표현을 했거든요 그런데 만약 2시가격인cc[1]과 2시15분가격인c[1]이 서로가격이 같아지게되면 2시15분이후에 데드크로스가나온자리를 시스템이 인지를 못하더라구요 그래서 cc[1]의 시간과 c1[1]의 시간이 같지않을때 또는 15분 45분단위시간을 식으로 표현하고 싶습니다. 새로받은식에서tt[1]과 t1[1]이 있던데요 plot로 표현해 보니깐 빨간세로선으로 새벽12시30분 그리고 낮10시30분에 세로로 가격이 그어지던데 tt랑 t1이 각각30분주기시작시간 15분주기시작시간을 나타낸거 같은데요 plot으로 표현해 보니깐 당일시작시간이 나타나서요 제가원하는 식이 tt[1]!=t1[1]이렇게 표현하면 되는건지요? 감사합니다~
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-03-14 16:15:09

안녕하세요 예스스탁입니다. 아래식 적용해 보시시기 바랍니다. 식상 var1값이 1이나 0일때로 구분해서 식 작성하시면 됩니다. input : 분주기(30),P(5),분주기1(15); var : S1(0),D1(0),TM(0),TF(0); var : cnt(0),sum(0),mav(0),tf1(0); Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),TT[100](0); Array : C1[100](0),T1[100](0); if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{ S1 = TimeToMinutes(100000); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분주기; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF < TF[1]) Then{ OO[0] = o; HH[0] = H; LL[0] = L; TT[0] = stime; for cnt = 1 to 99{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; TT[cnt] = TT[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; CC[0] = C; TF1 = TM%분주기1; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF1 < TF1[1]) Then{ T1[0] = stime; for cnt = 1 to 99{ C1[cnt] = C1[cnt-1][1]; T1[cnt] = T1[cnt-1][1]; } } C1[0] = C; } if TT[0] == T1[0] Then var1 = 1; Else var1 = 0; plot1(var1); 즐거운 하루되세요 > 겐지 님이 쓴 글입니다. > 제목 : 문의드립니다~ > input : 분주기(30),P(5),분주기1(15); var : S1(0),D1(0),TM(0),TF(0); var : cnt(0),sum(0),mav(0),tf1(0); Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),TT[100](0); Array : C1[100](0),T1[100](0); if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{ S1 = TimeToMinutes(100000); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분주기; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF < TF[1]) Then{ OO[0] = o; HH[0] = H; LL[0] = L; TT[0] = stime; for cnt = 1 to 99{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; TT[cnt] = TT[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; CC[0] = C; TF1 = TM%분주기1; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF1 < TF1[1]) Then{ T1[cnt] = stime; for cnt = 1 to 99{ C1[cnt] = C1[cnt-1][1]; T1[cnt] = T1[cnt-1][1]; } } C1[0] = C; } 1.cc[1]과 c1[1]이 같지않은 경우를 식으로 표현하고 싶은데요~ 틱분주기15분단위에서 이전종가가10시45분 11시15분 11시45분 12시15분 12시45분식으로 15분단위 시간일때에 5일선과 20일선데드크로스시매도한다라는걸 제가 식으로 표현하니깐 if cc[1]!=c1[1] then crossdown(tic5,tic20); 이렇게 표현을 했거든요 그런데 만약 2시가격인cc[1]과 2시15분가격인c[1]이 서로가격이 같아지게되면 2시15분이후에 데드크로스가나온자리를 시스템이 인지를 못하더라구요 그래서 cc[1]의 시간과 c1[1]의 시간이 같지않을때 또는 15분 45분단위시간을 식으로 표현하고 싶습니다. 새로받은식에서tt[1]과 t1[1]이 있던데요 plot로 표현해 보니깐 빨간세로선으로 새벽12시30분 그리고 낮10시30분에 세로로 가격이 그어지던데 tt랑 t1이 각각30분주기시작시간 15분주기시작시간을 나타낸거 같은데요 plot으로 표현해 보니깐 당일시작시간이 나타나서요 제가원하는 식이 tt[1]!=t1[1]이렇게 표현하면 되는건지요? 감사합니다~