커뮤니티

질문드리겠습니다

프로필 이미지
yamu
2025-04-21 11:40:31
234
글번호 190275
답변완료
안녕하세요 아래 수식은 조건만족봉 사이가 5거래일 이상 차이가 날때 (조건A) 만 tl을 표시하게 했는데요 제가 원하는건 가장 최근만족봉 기준으로 이전만족봉들을 누적 계산해서 5거래일 차이가 날때 추세선 표시를 하고자 합니다 예를들어서 조건문을 배열함수 A 에 넣었을때, 가장 최근봉이 A[0]이고 A[1] 이 1일전에 나오고, A[2]가 2일전, A[3] 가 3일전에 나왔다면 모두 합산을 해서 6일전에 나왔으니 A[3] 에만 표시를 하고, A[3]를 기준으로 다시 계산을 해서 반복을 하고자 합니다. 이런식으로 "가장 최근봉만" 가지고 5거래일 차이가 나는 경우들을 if문, 혹은 새로운 배열 변수에 대입해서 구현 가능하지 않는지 궁금합니다.. ** 이 방식이 안된다면 단순히 5거래일에 한번씩 나오게 부탁드립니다 아래는 작성한 수식인데 수정을 부탁드립니다 감사합니다 var : cnt(0), sum1(0), sumi1(0),summ(0),tt(0),hh(0),ll(0),tl(0),tl1(0),n(0); var: sum2(0),sumi2(0),sumaa(0); var : t(0),StartBarIndex(0),dd(0),d1(0),d2(0),ee(0),e1(0),e2(0); Array : ii[50](0),aa[50](0),cc[50](0),vv[150](0),ttl[30](0),tttl[40](0),tttl1[40](0),tttl2[40](0),sd[45](0),st[45 ](0); Var33=Money/100000000; if Bdate != Bdate[1] Then { DD = DD+1; } #H>vi(1)*0.95 h>l*1.07 CrossUp(h,ma(h,240)) if h>l*1.08 Then { d1 = dd; d2 = d1[1]; if d2 == 0 or (d2 > 0 and d1 >= d2+5) Then { var1 = Index; Var2 = var1[1]; Var3= Var2[1]; tl=TL_NEW(sDatE,sTimE,100,sDatE,sTimE,999999); TL_SetSize(tl,0); TL_SetColor(tl,Black); } }
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-04-21 14:57:17

안녕하세요 예스스탁입니다. 올리신 내용이면 새로운 조건만족봉이 나오면 과거로 가면서 그려야 하므로 과거봉에 그려진 추세선은 모두 삭제를 하고 다시 그려야 합니다. 무한정 그릴수 없으므로 각 값은 100개까지 저장하고 최대 조건만족봉 100개기준으로 그려지게 작성해 드립니다. 아래 내용 참고하시기 바랍니다. var : cnt(0), sum1(0), sumi1(0),summ(0),tt(0),hh(0),ll(0),tl(0),tl1(0),n(0); var: sum2(0),sumi2(0),sumaa(0); var : t(0),StartBarIndex(0),dd(0),d1(0),d2(0),ee(0),e1(0),e2(0); Array : ii[50](0),aa[50](0),cc[50](0),vv[150](0),ttl[30](0),tttl[40](0),tttl1[40](0),tttl2[40](0),sd[45](0),st[45](0); var : sum(0),YY(0),XX(0),diff(0); Array : A[100](0),D[100](0),S[100](0),ZZ[100](0); Var33=Money/100000000; if Bdate != Bdate[1] Then { DD = DD+1; } #H>vi(1)*0.95 h>l*1.07 CrossUp(h,ma(h,240)) if h>l*1.08 Then { d1 = dd; d2 = d1[1]; if d2 == 0 or (d2 > 0 and d1 >= d2+5) Then { var1 = Index; Var2 = var1[1]; Var3= Var2[1]; tl=TL_NEW(sDatE,sTimE,100,sDatE,sTimE,999999); TL_SetSize(tl,0); TL_SetColor(tl,Black); } For cnt = 99 DownTo 1 { A[cnt] = A[cnt-1]; D[cnt] = D[cnt-1]; S[cnt] = S[cnt-1]; } A[0] = DD; D[0] = sdate; S[0] = sTime; For cnt = 0 to 99 { TL_Delete(ZZ[cnt]); } sum = 0; YY = A[0]; XX = 0; For cnt = 1 to 99 { diff = A[cnt]-YY; sum = sum + diff; if sum > 5 Then { XX = XX+1; ZZ[XX] =TL_NEW(D[cnt],S[cnt],100,D[cnt],S[cnt],999999); sum = 0; YY = A[cnt]; } } } 즐거운 하루되세요 > yamu 님이 쓴 글입니다. > 제목 : 질문드리겠습니다 > 안녕하세요 아래 수식은 조건만족봉 사이가 5거래일 이상 차이가 날때 (조건A) 만 tl을 표시하게 했는데요 제가 원하는건 가장 최근만족봉 기준으로 이전만족봉들을 누적 계산해서 5거래일 차이가 날때 추세선 표시를 하고자 합니다 예를들어서 조건문을 배열함수 A 에 넣었을때, 가장 최근봉이 A[0]이고 A[1] 이 1일전에 나오고, A[2]가 2일전, A[3] 가 3일전에 나왔다면 모두 합산을 해서 6일전에 나왔으니 A[3] 에만 표시를 하고, A[3]를 기준으로 다시 계산을 해서 반복을 하고자 합니다. 이런식으로 "가장 최근봉만" 가지고 5거래일 차이가 나는 경우들을 if문, 혹은 새로운 배열 변수에 대입해서 구현 가능하지 않는지 궁금합니다.. ** 이 방식이 안된다면 단순히 5거래일에 한번씩 나오게 부탁드립니다 아래는 작성한 수식인데 수정을 부탁드립니다 감사합니다 var : cnt(0), sum1(0), sumi1(0),summ(0),tt(0),hh(0),ll(0),tl(0),tl1(0),n(0); var: sum2(0),sumi2(0),sumaa(0); var : t(0),StartBarIndex(0),dd(0),d1(0),d2(0),ee(0),e1(0),e2(0); Array : ii[50](0),aa[50](0),cc[50](0),vv[150](0),ttl[30](0),tttl[40](0),tttl1[40](0),tttl2[40](0),sd[45](0),st[45 ](0); Var33=Money/100000000; if Bdate != Bdate[1] Then { DD = DD+1; } #H>vi(1)*0.95 h>l*1.07 CrossUp(h,ma(h,240)) if h>l*1.08 Then { d1 = dd; d2 = d1[1]; if d2 == 0 or (d2 > 0 and d1 >= d2+5) Then { var1 = Index; Var2 = var1[1]; Var3= Var2[1]; tl=TL_NEW(sDatE,sTimE,100,sDatE,sTimE,999999); TL_SetSize(tl,0); TL_SetColor(tl,Black); } }