커뮤니티

문의드립니다.

프로필 이미지
아싸가오리
2013-01-10 12:47:08
293
글번호 57993
답변완료
1.어제 조건검색식에서 일주월봉의 시고저종가를 부탁드렸었는데요. 일주월봉의 시고저종가를 이용하다 보니 변수값이 계속변해 수치가 계속 바뀌워 저의의도대로 표시가 안되네요 월주일봉의 시고저종가를 배열변수로 저장되게해주세요. 현재 작성되고 있는 이번 주의 시고저종가는 h[0] 완성된 전 주의 시고저종가는 h[1] 이런식으로 저장 사용할수 있게 작성 부탁드립니다. 아래는 월간,주간,일간 시고저종가를 계산하는 식입니다. var : Mopen(0),Mhigh(0),Mlow(0),Mclose(0); var : Wopen(0),Whigh(0),Wlow(0),Wclose(0); var : Dopen(0),Dhigh(0),Dlow(0),Dclose(0); if date > date[1]+30 Then{ Mopen = O; Mhigh = H; Mlow = L; } if H > Mhigh Then Mhigh = H; if L < Mlow Then Mlow = L; Mclose = C; if dayofweek(date) < dayofweek(date[1]) Then{ Wopen = O; Whigh = H; Wlow = L; } if H > Whigh Then Whigh = H; if L < Wlow Then Wlow = L; Wclose = C; Dopen = dayopen; Dhigh = dayopen; Dlow = dayopen; Dclose = dayopen; 2. var:m(0); if dayhigh(0) > dayhigh(1) THEN m = 1; if daylow(0) < daylow(1) then m = -1; 연습삼아서 작성해봤는데요. 당일고가가 실시간으로 전날의 고가를 상향돌파시 m = 1 당일저가가 실시간으로 전날의 저가를 하향돌파시 m = -1이라고 작성해봤는데요. 지표값으로 출력해봤더니 전날의 저가를 당일 하향 돌파했는데 -1로 변하지않고 다음날 변하네요.일봉차트에서요. 당일봉이 전날의 고가와 저가를 모두 돌파했다면 시간의 흐름상 나중에 돌파한 값으로 저장이 되어야 하는 것 아닌가요?당일 전일의 고가를 먼저 돌파했다면 m = 1; 그후 당일 전일의 저가를 돌파했다면 마지막엔 m = -1 ;로 저장이 되어있어야하는 것 아닌가요? 무엇이 잘못되었는지 답변 부탁드립니다. 수고하세요^^
검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-01-10 15:25:16

안녕하세요 예스스탁입니다. 1. 일간시고저종가는 dayhigh,daylow,daylcose,dayopen함수로 기본 제공되고 있으므로 별도로 작성하실 필요가 없습니다. 함수도움말 참고하시기 바랍니다. 각값은 차트에 있는 기간만큼만 값이 리턴됩니다. 가령 차트에 3주정도의 데이터만 있다면 그 이전주 값들은 모두 0입니다. var : cnt(0); Array : Mopen[10](0),Mhigh[10](0),Mlow[10](0),Mclose[10](0); Array : Wopen[10](0),Whigh[10](0),Wlow[10](0),Wclose[10](0); if date > date[1]+30 Then{ Mopen[0] = O; Mhigh[0] = H; Mlow[0] = L; Mclose[0] = C; for cnt = 1 to 9 { Mopen[cnt] = Mopen[cnt-1][1]; Mhigh[cnt] = Mhigh[cnt-1][1]; Mlow[cnt] = Mlow[cnt-1][1]; Mclose[cnt] = Mclose[cnt-1][1]; } } if H > Mhigh[0] Then Mhigh[0] = H; if L < Mlow[0] Then Mlow[0] = L; Mclose[0] = C; if dayofweek(date) < dayofweek(date[1]) Then{ Wopen[0] = O; Whigh[0] = H; Wlow[0] = L; Wclose[0] = L; for cnt = 1 to 9 { Wopen[cnt] = Wopen[cnt-1][1]; Whigh[cnt] = Whigh[cnt-1][1]; Wlow[cnt] = Wlow[cnt-1][1]; Wclose[cnt] = Wclose[cnt-1][1]; } } if H > Whigh[0] Then Whigh[0] = H; if L < Wlow[0] Then Wlow[0] = L; Wclose[0] = C; 2. 날짜가 변경되면 0으로 초기화하시기 바랍니다. 변수를 만들어 사용할 경우 데이터예약어는 선언해서 사용하실 수 없습니다. 변수는 mm으로 변경했습니다. var : mm(0); if date != date[1] Then mm = 0; if dayhigh(0) > dayhigh(1) THEN mm = 1; if daylow(0) < daylow(1) then mm = -1; plot1(mm); 즐거운 하루되세요 > 아싸가오리 님이 쓴 글입니다. > 제목 : 문의드립니다. > 1.어제 조건검색식에서 일주월봉의 시고저종가를 부탁드렸었는데요. 일주월봉의 시고저종가를 이용하다 보니 변수값이 계속변해 수치가 계속 바뀌워 저의의도대로 표시가 안되네요 월주일봉의 시고저종가를 배열변수로 저장되게해주세요. 현재 작성되고 있는 이번 주의 시고저종가는 h[0] 완성된 전 주의 시고저종가는 h[1] 이런식으로 저장 사용할수 있게 작성 부탁드립니다. 아래는 월간,주간,일간 시고저종가를 계산하는 식입니다. var : Mopen(0),Mhigh(0),Mlow(0),Mclose(0); var : Wopen(0),Whigh(0),Wlow(0),Wclose(0); var : Dopen(0),Dhigh(0),Dlow(0),Dclose(0); if date > date[1]+30 Then{ Mopen = O; Mhigh = H; Mlow = L; } if H > Mhigh Then Mhigh = H; if L < Mlow Then Mlow = L; Mclose = C; if dayofweek(date) < dayofweek(date[1]) Then{ Wopen = O; Whigh = H; Wlow = L; } if H > Whigh Then Whigh = H; if L < Wlow Then Wlow = L; Wclose = C; Dopen = dayopen; Dhigh = dayopen; Dlow = dayopen; Dclose = dayopen; 2. var:m(0); if dayhigh(0) > dayhigh(1) THEN m = 1; if daylow(0) < daylow(1) then m = -1; 연습삼아서 작성해봤는데요. 당일고가가 실시간으로 전날의 고가를 상향돌파시 m = 1 당일저가가 실시간으로 전날의 저가를 하향돌파시 m = -1이라고 작성해봤는데요. 지표값으로 출력해봤더니 전날의 저가를 당일 하향 돌파했는데 -1로 변하지않고 다음날 변하네요.일봉차트에서요. 당일봉이 전날의 고가와 저가를 모두 돌파했다면 시간의 흐름상 나중에 돌파한 값으로 저장이 되어야 하는 것 아닌가요?당일 전일의 고가를 먼저 돌파했다면 m = 1; 그후 당일 전일의 저가를 돌파했다면 마지막엔 m = -1 ;로 저장이 되어있어야하는 것 아닌가요? 무엇이 잘못되었는지 답변 부탁드립니다. 수고하세요^^