커뮤니티

뭐가 잘못되었는지요?

프로필 이미지
삐돌이
2009-09-03 13:09:40
825
글번호 24552
답변완료
1. <사용자함수> : 최대거래량 input: period(Numeric); 최대거래량 = accum(1)-highest(iff(highest(v,period)==v,accum(1),0),accum(1)-period); 2. <지표> :c(최대거래랑) Input: period(30); Var: Formula0(0); Formula0 = iff(C[최대거래량(period)]>O[최대거래량(period)],O[최대거래량(period)],C[최대거래량(period)]); Plot1( Formula0, "Formula0"); 3. <종목검색식> : 최대거래량2번발생한 날 Input: N(0),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, 최대거래량(period2),0) ; Find( Formula0 ); 4. <종목검색식> : 최대거래량2번발생한 날 Input: N(0),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, c[최대거래량(period2)],0) ; Find( Formula0 ); 1번 : 사용자함수를 정의한 후, 2번 : 사용자함수를 이용하여 지표를 그래프에 삽입하였으며, 3번 : 사용자함수등을 이용하여 조건검색식을 만들면 최대거래량(period2)값이 나옵니다. 4번 : 하지만 3번결과에 c[최대거래량(period2)]을 넣으면 검색값을 찾지못하니 답답하네요. 5 <종목검색식> : c(최대거래량)근접 Input: N(0), period(30); Var: Formula0(0); Formula0 = iff( c[최대거래량(period)] > o[최대거래량(period)] && o[최대거래량(period)]*1.01 >= c[N] && o[최대거래량(period)]*0.99 <= c[N] && ma(v[N],5) > 50000 && 최대거래량(period) >= 10, 1,0) ; Find( Formula0 ); 또한, 5번수식처럼 c[최대거래량(period)]근처를 찾으려고 하니 또한 값을 찾지못하네요. 예스트레이드3에서는 5번수식에서 iff문 없이 검색이 되었는데.. Input: N(0), period(30); Var: Formula0(0); Formula0 = c[최대거래량(period)] > o[최대거래량(period)] && o[최대거래량(period)]*1.01 >= c[N] && o[최대거래량(period)]*0.99 <= c[N] && ma(v[N],5) > 50000 && 최대거래량(period) >= 10 ; Find( Formula0 ); 내가 모르고 있는 것을 알려주세요. 수고하세요.
검색
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2009-09-03 15:52:48

안녕하세요 예스스탁입니다. 1. 만드신 최대거래량 사용자함수는 현재봉이 최대 거래량일경우 0값입니다. 아래의 지표를 차트에 적용해 보시면 확인하실 수 있습니다. Input: period1(30),period2(120); plot1(최대거래량(period1)); plot2(최대거래량(period2)); 그러므로 검색식의 iff(조건,최대거래량(period2),0)은 달리 작성하면 iff(조건,0,0)하고 같습니다. 그러므로 검색되는 데이터가 없습니다. 아래와 같이 작성하셔야 합니다. Input: N(0),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, 1,0) ; Find(Formula0); 2. 종목검색에서 특성상 변동적인 값을 가지는 함수를 이전값에 넣으실 경우 검색에 에러가 발생할 수 있습니다. 아래와 같이 식을 수정하시어 사용하시기 바랍니다. Input: N(0), period(30); Var: Formula0(0); var2 = 최대거래량(period); if var2 == 0 Then{ value1 = C; # 최대거래량 발생시의 종가 value2 = O; # 최대거래량 발생시의 시가 } if value1 > value2 && value2*1.01 >= c[N] && value2*0.99 <= c[N] && ma(v[N],5) > 50000 && var2 >= 10 Then var1 = 1; Else var1 = 0; Find(var1); 즐거운 하루되세요 > 삐돌이 님이 쓴 글입니다. > 제목 : 뭐가 잘못되었는지요? > 1. <사용자함수> : 최대거래량 input: period(Numeric); 최대거래량 = accum(1)-highest(iff(highest(v,period)==v,accum(1),0),accum(1)-period); 2. <지표> :c(최대거래랑) Input: period(30); Var: Formula0(0); Formula0 = iff(C[최대거래량(period)]>O[최대거래량(period)],O[최대거래량(period)],C[최대거래량(period)]); Plot1( Formula0, "Formula0"); 3. <종목검색식> : 최대거래량2번발생한 날 Input: N(0),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, 최대거래량(period2),0) ; Find( Formula0 ); 4. <종목검색식> : 최대거래량2번발생한 날 Input: N(0),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, c[최대거래량(period2)],0) ; Find( Formula0 ); 1번 : 사용자함수를 정의한 후, 2번 : 사용자함수를 이용하여 지표를 그래프에 삽입하였으며, 3번 : 사용자함수등을 이용하여 조건검색식을 만들면 최대거래량(period2)값이 나옵니다. 4번 : 하지만 3번결과에 c[최대거래량(period2)]을 넣으면 검색값을 찾지못하니 답답하네요. 5 <종목검색식> : c(최대거래량)근접 Input: N(0), period(30); Var: Formula0(0); Formula0 = iff( c[최대거래량(period)] > o[최대거래량(period)] && o[최대거래량(period)]*1.01 >= c[N] && o[최대거래량(period)]*0.99 <= c[N] && ma(v[N],5) > 50000 && 최대거래량(period) >= 10, 1,0) ; Find( Formula0 ); 또한, 5번수식처럼 c[최대거래량(period)]근처를 찾으려고 하니 또한 값을 찾지못하네요. 예스트레이드3에서는 5번수식에서 iff문 없이 검색이 되었는데.. Input: N(0), period(30); Var: Formula0(0); Formula0 = c[최대거래량(period)] > o[최대거래량(period)] && o[최대거래량(period)]*1.01 >= c[N] && o[최대거래량(period)]*0.99 <= c[N] && ma(v[N],5) > 50000 && 최대거래량(period) >= 10 ; Find( Formula0 ); 내가 모르고 있는 것을 알려주세요. 수고하세요.
프로필 이미지

삐돌이

2009-09-03 18:58:46

답변대로 현재봉이 최대거래량일 경우 0값이 나옵니다. 하지만, Input: N(0),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, c[N],0) ; Find(Formula0); 위식에서 N값을 0으로 입력하면 검색이 됩니다. iff(조건,N,0)에서 N을 "0"를 입력하면 오류가 되지만 iff(조건,c[N],0)은 값을 찾읍니다. 제가 묻고싶은것은 iff(조건,최대거래량(period2),0)에서 N을 10으로 입력하고 앞 iff문을 검색하면 검색결과값 즉 최대거래량(period2)은 10으로 나오면서 검색됩니다. 하지만 iff(조건,c[최대거래량(period2)],0)에서 N을 10으로 입력하고 앞 iff문을 검색하면 iff(조건,c[10],0)으로 검색되어 10일전의 종가가 검색되어야 되는것 아닌가요? 수고하세요
프로필 이미지

예스스탁 예스스탁 답변

2009-09-04 09:34:01

안녕하세요 예스스탁입니다. 테스트 결과 정상적으로 검색이 됩니다. 1번식 Input: N(10),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, c[N],0) ; Find(Formula0); 2번식 Input: N(10),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, 최대거래량(period2),0) ; Find(Formula0); 검색에 필요한 봉갯수가 많으므로 검색에 필요한 봉갯수를 최래로 설정하시기 바랍니다. 예스트레이더는 500봉 리딩스타는 200봉까지 지원됩니다. 즐거운 하루되세요 > 삐돌이 님이 쓴 글입니다. > 제목 : Re : Re : 뭐가 잘못되었는지요? > 답변대로 현재봉이 최대거래량일 경우 0값이 나옵니다. 하지만, Input: N(0),period1(30),period2(120); Var: Formula0(0); Formula0 = iff( 최대거래량(period1) == N && 최대거래량(period2) == N && ma(c[N],5) > 1000 && ma(v[N],5) > 50000, c[N],0) ; Find(Formula0); 위식에서 N값을 0으로 입력하면 검색이 됩니다. iff(조건,N,0)에서 N을 "0"를 입력하면 오류가 되지만 iff(조건,c[N],0)은 값을 찾읍니다. 제가 묻고싶은것은 iff(조건,최대거래량(period2),0)에서 N을 10으로 입력하고 앞 iff문을 검색하면 검색결과값 즉 최대거래량(period2)은 10으로 나오면서 검색됩니다. 하지만 iff(조건,c[최대거래량(period2)],0)에서 N을 10으로 입력하고 앞 iff문을 검색하면 iff(조건,c[10],0)으로 검색되어 10일전의 종가가 검색되어야 되는것 아닌가요? 수고하세요