커뮤니티

질문드리겠습니다

프로필 이미지
yamu
2024-10-15 15:47:53
629
글번호 184291
답변완료
지난 문의 답변 주셔서 감사드립니다 봉과 봉사이가 30개봉 이상 떨어져있을때 최저가를 추가해서 평균 구하는 식을 알려주셨는데요 var : cnt(0),i1(0),i2(0),sum1(0),mav1(0),p(0),LL(0),LL1(0); Array : v1[100](0); Var1= ma(c,30); Plot1(Var1,"ma"); if c>Var1*1.05 and h>l*1.09 Then { i1 = Index; i2 = i1[1]; p=6; LL = L; LL1 = LL[1]; if i2 > 0 and i1 >= i2+30 Then { For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = LL1; } #현재봉 종가 추가 For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = C; plot4(V1[0],"이평대비",Orange,Def,2); if V1[P-1] > 0 Then { sum1 = 0; For cnt = 0 to P-1 { sum1 = sum1+V1[cnt]; } mav1 = sum1/P; plot5(mav1,"조건이평",Green,Def,2); } } Else { if LL > 0 and L < LL Then LL = L; } 식은 위와 같고 if i2 > 0 and i1 >= i2+30 Then { For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = LL1; 이 부분에서 LL 한봉전 (LL[1]) 이 들어가는 이유가 궁금하고요 마지막에 Else { if LL > 0 and L < LL Then LL = L; } 이부분이 의미하는게 잘 이해가 안가는데 주석을 좀 부탁드려도 될까요 else 는 가장 상위의 if 문 (if c>Var1*1.05 and h>l*1.09 Then ) 이 아니라면 이라는 뜻이 아닌가요??~~ 그리고 별개로 30봉 이상 벌어진 구간에서 ma(c,30) 대비 가장 많이 하락한 저가를 추가하는 수식도 구하고 싶습니다. 같은 저가가 여러개 나온다면 모두 추가하는경우와 하나만 추가해서 평균을 구하는 방법으로 각각 알려주시면 감사하겠습니다 부탁드립니다
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-10-16 14:31:55

안녕하세요 예스스탁입니다. 1 #조건만족봉 if c>Var1*1.05 and h>l*1.09 Then { #초기값으로 조건만족봉 저가를 LL에 저장 LL = L; #LL1에는 전봉까지의 LL을 저장 LL1 = LL[1]; if i2 > 0 and i1 >= i2+30 Then { For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = LL1; } } Else #아니면(조건만족봉 이후라는 의미임) { #LL에 저장된 값보다 작은 저가가 발생하면 LL에 저가 저장 if LL > 0 and L < LL Then LL = L; } 설명에 불필요한 내용은 제외하고 간략화한 식입니다. 조건만족봉 사이가 30봉이상이면 직전저건만족봉과 현재조건만족사이의 최저가를 저장해야 하므로 아래와 같이 LL1이 V1[0]에 먼저 추가되게 작성된 것입니다. LL은 현재 만족봉과 다음만족봉 사이에 최저가가 갱싱된 값입니다. 2 조건과 조건 만족 사이에 봉 중에 30이평보다 저가가 모두 높은 경우도 발생할 수 있습니다. 이경우 이평보다 하락한 봉은 없게 됩니다. 아래식 참고하셔서 추가하시기 바랍니다. 조건과 조건사이에 30이평보다 저가가 작은 봉이 없으면 LL이 0이고 값이 0이면 추가하지 않습니다. #조건만족봉 if c>Var1*1.05 and h>l*1.09 Then { #저가가 이평보다 작으면 LL에 최값으로 저가저장 if L < ma(c,30) TheN LL = L; ElsE #저가가 이평보다 크거나 같으면 초기값은 0 LL = 0; LL1 = LL[1]; if i2 > 0 and i1 >= i2+30 and LL1 > 0 Then { For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = LL1; } } Else#아니면(조건만족봉 이후라는 의미임) { #저가가 이평보다 작은 봉이 발생하면 #LL이 0이면 LL에 저가를 저장 #LL이 0보다크 면(값이 이미 저장된 상태) 저가가 LL보다 작으면 저장 if L < ma(C,30) and (LL == 0 or (LL > 0 and L < LL)) Then LL = L; } 즐거운 하루되세요 > yamu 님이 쓴 글입니다. > 제목 : 질문드리겠습니다 > 지난 문의 답변 주셔서 감사드립니다 봉과 봉사이가 30개봉 이상 떨어져있을때 최저가를 추가해서 평균 구하는 식을 알려주셨는데요 var : cnt(0),i1(0),i2(0),sum1(0),mav1(0),p(0),LL(0),LL1(0); Array : v1[100](0); Var1= ma(c,30); Plot1(Var1,"ma"); if c>Var1*1.05 and h>l*1.09 Then { i1 = Index; i2 = i1[1]; p=6; LL = L; LL1 = LL[1]; if i2 > 0 and i1 >= i2+30 Then { For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = LL1; } #현재봉 종가 추가 For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = C; plot4(V1[0],"이평대비",Orange,Def,2); if V1[P-1] > 0 Then { sum1 = 0; For cnt = 0 to P-1 { sum1 = sum1+V1[cnt]; } mav1 = sum1/P; plot5(mav1,"조건이평",Green,Def,2); } } Else { if LL > 0 and L < LL Then LL = L; } 식은 위와 같고 if i2 > 0 and i1 >= i2+30 Then { For cnt = 99 downto 1 { V1[cnt] = V1[cnt-1]; } v1[0] = LL1; 이 부분에서 LL 한봉전 (LL[1]) 이 들어가는 이유가 궁금하고요 마지막에 Else { if LL > 0 and L < LL Then LL = L; } 이부분이 의미하는게 잘 이해가 안가는데 주석을 좀 부탁드려도 될까요 else 는 가장 상위의 if 문 (if c>Var1*1.05 and h>l*1.09 Then ) 이 아니라면 이라는 뜻이 아닌가요??~~ 그리고 별개로 30봉 이상 벌어진 구간에서 ma(c,30) 대비 가장 많이 하락한 저가를 추가하는 수식도 구하고 싶습니다. 같은 저가가 여러개 나온다면 모두 추가하는경우와 하나만 추가해서 평균을 구하는 방법으로 각각 알려주시면 감사하겠습니다 부탁드립니다