커뮤니티

수고가 많으십니다

프로필 이미지
yamu
2025-04-30 09:19:31
163
글번호 190488
답변완료
질문 2가지 부탁드리겠습니다. 질문1) 아래 조건에서 현재 만족봉의 저가보다 "최초로" 1.5배 높거나 낮은 저가가 나올때만 조건만족봉이 나오게하려고 합니다. 비교기준은 새로운 봉이 아니라 이전 봉으로 고정을 해서 하려고 합니다 예를들어 현재만족봉 A 기준으로 다음 만족봉의 저가가 1.5배 높거나 낮지 않다면 계속 이후에 나오는 봉을 "A봉 기준"으로 비교, 최초로 조건이 만족할때를 찾아내고자 합니다. 만족봉이 나오면 그 봉을 기준으로 다시 반복을 합니다. 감사합니다 if h>l*1.08 Then { d1 = dd; var1 = Index; Var2 = var1[1]; Var3 = Var2[1]; tl=TL_NEW(sDate,sTime,100,sDate,sTime,999999); TL_SetSize(tl,0); TL_SetColor(tl,Red); } 질문2) 3차원 배열에 대해서 질문드리고 싶은데요 아래와 같이 작성했을때 2차원 배열에서는 cc[x,y] x는 조건만족봉 순서 , y에는 원하는 값 (아래 예시에서는 고가값, 저가값, ...) 처럼 y에 여러가지 변수를 저장할 수 있는데요 3차원 배열에서는 어떤것을 추가로 구현 (용도) 할 수 있는지 간단한 예시와 수식 구성법을 알려주셨으면 합니다. 감사합니다 var : cnt(0),tt(0),hh(0),ll(0); Array : CC[50,2](0); if h>l*1.08 Then { var1 = Index; Var2 = var1[1]; hh = 0; ll = 0; For cnt = 1 to (var1-Var2) { if hh == 0 or (hh > 0 and H[cnt] > hh) Then hh = h[cnt]; if ll == 0 or (ll > 0 and l[cnt] <= ll) Then ll=l[cnt]; } For cnt = 49 to 1 { CC[cnt,0] = CC[cnt-1,0]; CC[cnt,1] = CC[cnt-1,1]; } CC[0,0] = hh; CC[0,1] = ll; }
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-04-30 10:27:14

안녕하세요 예스스탁입니다. 1 var : LL(0); if h>l*1.08 and (LL == 0 or (LL > 0 and (L >= LL*1.5 or L <= LL*0.5))) Then { d1 = dd; LL = L; var1 = Index; Var2 = var1[1]; Var3 = Var2[1]; tl=TL_NEW(sDate,sTime,100,sDate,sTime,999999); TL_SetSize(tl,0); TL_SetColor(tl,Red); } 2 배열은 이벤트당 하나의 값만 저장해서 관리하고 사용할때는 1차원 배열, 이벤트당 두개 이상의 값들을 저장해서 관리하고 사용할때 2차원 배열을 사용합니다. 3차원 배열은 다시 2차원의 각 값별로 저장할 값이 복수일때 사용됩니다. 계통도를 연상하시면 되고 세부계통이 증가할 때마다 차원도 증가합니다. 올리신 수식에서는 2차원 배열로 CC[0,0]은 HH를 저장하는데 추가로 HH외에 직전조건만족시 HH대비 변화율도 저장해야 한다면 계통구분도 하고 값도 복수로 저장하기 위해 3차원 배열을 사용하게 됩니다. CC[0,0,0] = HH; CC[0,0,1] = (CC[0,0,0]-CC[1,0,0])/CC[1,0,0]*100; var : cnt(0),tt(0),hh(0),ll(0); var : x(0),y(0),z(0); Array : CC[50,2,2](0); if h>l*1.08 Then { var1 = Index; Var2 = var1[1]; hh = 0; ll = 0; For cnt = 1 to (var1-Var2) { if hh == 0 or (hh > 0 and H[cnt] > hh) Then hh = h[cnt]; if ll == 0 or (ll > 0 and l[cnt] <= ll) Then ll=l[cnt]; } For x = 49 downto 1 { For y = 1 downto 0 { For z = 1 downto 0 { CC[cnt,y,z] = CC[cnt-1,y,z]; } } } CC[0,0,0] = HH; CC[0,0,1] = (CC[0,0,0]-CC[1,0,0])/CC[1,0,0]*100; CC[0,1,0] = LL; CC[0,1,1] = (CC[0,1,0]-CC[1,1,0])/CC[1,1,0]*100; } 즐거운 하루되세요 > yamu 님이 쓴 글입니다. > 제목 : 수고가 많으십니다 > 질문 2가지 부탁드리겠습니다. 질문1) 아래 조건에서 현재 만족봉의 저가보다 "최초로" 1.5배 높거나 낮은 저가가 나올때만 조건만족봉이 나오게하려고 합니다. 비교기준은 새로운 봉이 아니라 이전 봉으로 고정을 해서 하려고 합니다 예를들어 현재만족봉 A 기준으로 다음 만족봉의 저가가 1.5배 높거나 낮지 않다면 계속 이후에 나오는 봉을 "A봉 기준"으로 비교, 최초로 조건이 만족할때를 찾아내고자 합니다. 만족봉이 나오면 그 봉을 기준으로 다시 반복을 합니다. 감사합니다 if h>l*1.08 Then { d1 = dd; var1 = Index; Var2 = var1[1]; Var3 = Var2[1]; tl=TL_NEW(sDate,sTime,100,sDate,sTime,999999); TL_SetSize(tl,0); TL_SetColor(tl,Red); } 질문2) 3차원 배열에 대해서 질문드리고 싶은데요 아래와 같이 작성했을때 2차원 배열에서는 cc[x,y] x는 조건만족봉 순서 , y에는 원하는 값 (아래 예시에서는 고가값, 저가값, ...) 처럼 y에 여러가지 변수를 저장할 수 있는데요 3차원 배열에서는 어떤것을 추가로 구현 (용도) 할 수 있는지 간단한 예시와 수식 구성법을 알려주셨으면 합니다. 감사합니다 var : cnt(0),tt(0),hh(0),ll(0); Array : CC[50,2](0); if h>l*1.08 Then { var1 = Index; Var2 = var1[1]; hh = 0; ll = 0; For cnt = 1 to (var1-Var2) { if hh == 0 or (hh > 0 and H[cnt] > hh) Then hh = h[cnt]; if ll == 0 or (ll > 0 and l[cnt] <= ll) Then ll=l[cnt]; } For cnt = 49 to 1 { CC[cnt,0] = CC[cnt-1,0]; CC[cnt,1] = CC[cnt-1,1]; } CC[0,0] = hh; CC[0,1] = ll; }