커뮤니티

swing

프로필 이미지
마수거리
2008-04-01 01:24:01
1408
글번호 15160
답변완료
수식지왕님이 만드신 swing지표를 참고로 피라미딩 이용해서 모든 저점표시가 발생될때마다 매수로 모든 고점에는 매수청산으로 시스템식을 만들려고 하는데요. 이상하게 매수, 매수청산이 5봉(1,5,10분,일봉 상관없이) 후행이 되어서 발생되고 피라미딩도 적용이 않되네요. 무슨 이유인지 아무리 찾아봐도 모르겠습니다. 어떻게 방법이 없을까요?? 답변은 firstcell@naver.com으로 부탁드립니다. 참고한 수식은 아래와 같습니다. input:left(5),right(5),x(0.005); var:j(0),예비고(0),예비저(0),예비고bar(0),예비저bar(0),미완성(0),미완성bar(0), 고점표시(0),저점표시(0); array:고[100](0),저[100](0),고bar[100](0),저bar[100](0); #================================================# # 변곡점 계산 #================================================# if highest(h[1],left) <= h then { 예비고 = h; 예비고bar = 0; } else 예비고bar = 예비고bar + 1; if lowest(l[1],left) >= l then { 예비저 = l; 예비저bar = 0; } else 예비저bar = 예비저bar + 1; 고점표시 = (o[right] + c[right]) / 2; 저점표시 = (o[right] + c[right]) / 2; for j = 1 to 99 begin 고bar[j] = 고bar[j] + 1; 저bar[j] = 저bar[j] + 1; end; if 예비고bar == right and highest(h,right) <= h[right] then { for j = 99 downto 2 { 고[j] = 고[j-1]; 고bar[j] = 고bar[j-1]; } 고점표시 = 예비고 + x; 고[1] = 예비고; 고bar[1] = 예비고bar; if 저bar[1] > 고bar[2] then { for j = 99 downto 2 { 저[j] = 저[j-1]; 저bar[j] = 저bar[j-1]; } 미완성 = 10000; for j = 고bar[1] + 1 to 고bar[2] - 1 { if 미완성 > l[j] then { 미완성 = l[j]; 미완성bar = j; } } 저[1] = 미완성; 저bar[1] = 미완성bar; } } if 예비저bar == right and lowest(l,right) >= l[right] then { for j = 99 downto 2 { 저[j] = 저[j-1]; 저bar[j] = 저bar[j-1]; } 저점표시 = 예비저 - x; 저[1] = 예비저; 저bar[1] = 예비저bar; if 고bar[1] > 저bar[2] then { for j = 99 downto 2 { 고[j] = 고[j-1]; 고bar[j] = 고bar[j-1]; } 미완성 = 0; for j = 저bar[1] + 1 to 저bar[2] - 1 { if 미완성 < h[j] then { 미완성 = h[j]; 미완성bar = j; } } 고[1] = 미완성; 고bar[1] = 미완성bar; } } #=====================================================# # 시스템식 #=====================================================# if 저bar[1]==right and 저점표시 < l[right] then { Buy("매수", AtStop, 저[1], DEF); } if 고bar[1]==right and 고점표시 > h[right] then { ExitLong("청산", AtStop, 고[1], DEF); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2008-04-01 16:18:47

> 마수거리 님이 쓴 글입니다. > 제목 : swing > 수식지왕님이 만드신 swing지표를 참고로 피라미딩 이용해서 모든 저점표시가 발생될때마다 매수로 모든 고점에는 매수청산으로 시스템식을 만들려고 하는데요. 이상하게 매수, 매수청산이 5봉(1,5,10분,일봉 상관없이) 후행이 되어서 발생되고 피라미딩도 적용이 않되네요. 무슨 이유인지 아무리 찾아봐도 모르겠습니다. 어떻게 방법이 없을까요?? 답변은 firstcell@naver.com으로 부탁드립니다. 참고한 수식은 아래와 같습니다. input:left(5),right(5),x(0.005); var:j(0),예비고(0),예비저(0),예비고bar(0),예비저bar(0),미완성(0),미완성bar(0), 고점표시(0),저점표시(0); array:고[100](0),저[100](0),고bar[100](0),저bar[100](0); #================================================# # 변곡점 계산 #================================================# if highest(h[1],left) <= h then { 예비고 = h; 예비고bar = 0; } else 예비고bar = 예비고bar + 1; if lowest(l[1],left) >= l then { 예비저 = l; 예비저bar = 0; } else 예비저bar = 예비저bar + 1; 고점표시 = (o[right] + c[right]) / 2; 저점표시 = (o[right] + c[right]) / 2; for j = 1 to 99 begin 고bar[j] = 고bar[j] + 1; 저bar[j] = 저bar[j] + 1; end; if 예비고bar == right and highest(h,right) <= h[right] then { for j = 99 downto 2 { 고[j] = 고[j-1]; 고bar[j] = 고bar[j-1]; } 고점표시 = 예비고 + x; 고[1] = 예비고; 고bar[1] = 예비고bar; if 저bar[1] > 고bar[2] then { for j = 99 downto 2 { 저[j] = 저[j-1]; 저bar[j] = 저bar[j-1]; } 미완성 = 10000; for j = 고bar[1] + 1 to 고bar[2] - 1 { if 미완성 > l[j] then { 미완성 = l[j]; 미완성bar = j; } } 저[1] = 미완성; 저bar[1] = 미완성bar; } } if 예비저bar == right and lowest(l,right) >= l[right] then { for j = 99 downto 2 { 저[j] = 저[j-1]; 저bar[j] = 저bar[j-1]; } 저점표시 = 예비저 - x; 저[1] = 예비저; 저bar[1] = 예비저bar; if 고bar[1] > 저bar[2] then { for j = 99 downto 2 { 고[j] = 고[j-1]; 고bar[j] = 고bar[j-1]; } 미완성 = 0; for j = 저bar[1] + 1 to 저bar[2] - 1 { if 미완성 < h[j] then { 미완성 = h[j]; 미완성bar = j; } } 고[1] = 미완성; 고bar[1] = 미완성bar; } } #=====================================================# # 시스템식 #=====================================================# if 저bar[1]==right and 저점표시 < l[right] then { Buy("매수", AtStop, 저[1], DEF); } if 고bar[1]==right and 고점표시 > h[right] then { ExitLong("청산", AtStop, 고[1], DEF); }