커뮤니티

간단한 질문 올립니다.

프로필 이미지
coehrial
2011-11-28 16:13:01
335
글번호 45237
답변완료
질문 1 봉의 저가가 20이평선을 돌파시 '고가'를 Hvalue에 할당하는 수식을 작성하면, Hvalue 값이 처음 돌파한 봉의 고가로 고정되는지, 아니면, 그 이후로 고가를 갱신하는 봉이 생기게 되면 Hvalue 값도 그에 따라서 새롭게 갱신되게 되는지 궁금합니다. if Low > ma(c,20) then Hvalue = H; 만약, 갱신이 안 된다면 Hvlue에 새롭게 갱신되는 고가 값을 계속 할당하려면 어떻게 작성해야 하는지 좀 알려주십시오. 질문 2 현재봉의 고가가 과거 4개 이상의 봉들의 고가들보다 높을경우 Buy 한다는 수식을 4라는 숫자를 외부변수로 사용해서 구현하려면 어떻게 해야 하는지 궁금합니다. 작성해 봤는데, 이렇게 하면 4개까지만 확인하는 꼴이 되는 것 같은데, '4개 이상'을 확인해서 부합하면 매수하도록 하고 싶습니다. Input : Barnumber(4); var: cnt(1); count = 0; For cnt = 1 to Barnumber Begin if H[cnt] < H then count = count + 1; end; if count >= Barnumber then buy(); 부탁드립니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-11-29 10:41:16

안녕하세요 예스스탁입니다. 1. var : Hvalue(0); var1 = ma(c,20); if crossup(L,var1) Then Hvalue = H; if H > hvalue Then Hvalue = H; 위와 같이 작성하셔야 저가가 20이평을 상향돌파한 후에 최고가를 계산할 수 있습니다. 2. 현재봉 직전의 연속적인 봉의 고가들과 비교하시는 것이면 작성하신 식이 맞습니다. 4개만 지정하여 4개만 만족하면 자동적으로 4개이상 조건이 만족하기 때문에 해당식 사용하시면 됩니다. 위 내용이 아니라 특별히 과거의 봉수를 지정하지 않으시고 과거에 현재봉의 고가보다 작은게 4개이상만 있으면 조건이 만족하는 내용이시면 아래와 같이 작성하시면 됩니다. var: cnt(1),count(0); count = 0; cnt = 1; While H[cnt] < H and count < 4 { count = count + 1; cnt = cnt+1; } if count >= 4 then buy(); 즐거운 하루되세요 > coehrial 님이 쓴 글입니다. > 제목 : 간단한 질문 올립니다. > 질문 1 봉의 저가가 20이평선을 돌파시 '고가'를 Hvalue에 할당하는 수식을 작성하면, Hvalue 값이 처음 돌파한 봉의 고가로 고정되는지, 아니면, 그 이후로 고가를 갱신하는 봉이 생기게 되면 Hvalue 값도 그에 따라서 새롭게 갱신되게 되는지 궁금합니다. if Low > ma(c,20) then Hvalue = H; 만약, 갱신이 안 된다면 Hvlue에 새롭게 갱신되는 고가 값을 계속 할당하려면 어떻게 작성해야 하는지 좀 알려주십시오. 질문 2 현재봉의 고가가 과거 4개 이상의 봉들의 고가들보다 높을경우 Buy 한다는 수식을 4라는 숫자를 외부변수로 사용해서 구현하려면 어떻게 해야 하는지 궁금합니다. 작성해 봤는데, 이렇게 하면 4개까지만 확인하는 꼴이 되는 것 같은데, '4개 이상'을 확인해서 부합하면 매수하도록 하고 싶습니다. Input : Barnumber(4); var: cnt(1); count = 0; For cnt = 1 to Barnumber Begin if H[cnt] < H then count = count + 1; end; if count >= Barnumber then buy(); 부탁드립니다. 감사합니다.