커뮤니티

highest, lowest 문의

프로필 이미지
고저중
2016-11-14 01:23:10
202
글번호 103932
답변완료

첨부 이미지

수고많으십니다. 아직 초보라서~ highest 와 lowest 를 이용하여 고점과 저점 채널을 첨부와 같이 만들었습니다 input : p(20); var1 = (highest(c,p)); var2 = (lowest(c,p)); var3 = (highest(c,p))-(lowest(c,p)); if var1 > var1[1] Then value1 = 1; if var1 < var1[1] Then value1 = -1; if value1 == 1 Then plot1(Var1,"고점",white); Else plot1(Var1,"고점",black); ~~~ 이런식으로 지표는 만들었는데 이 지표를 시스템식으로 만들려고 하는데요? if C < var1[1] and c < var[2] and c < var[3] then sell(); if C > var2[1] and c > var[2] and c > var[3]then buy(); 종가가 앞선 고점이나 저점보다 크다작다. 결과는 매수 매도 신호가 발생이 않되네요. 제가 원하는 시스템은 아래와 같이 if crossup(c, var1) Then var11=index; if index >= var11+10 and crossdown(c, var1) Then sell("매도"); 위의 수식은 채널 상단 터치후 10개봉동안 신고점이 발생되지 않고 종가가 고점을 다운시 매도 하는 수식으로 알고 있은데 시스템에서 수량(10개봉 또는 그보다 많은 봉)을 수정해도 시스템에 반영이 않되네요^^ 첨부된 그림과 같이 로직을 짜고 싶습니다.(고점 매도/저점 매수) 1. 상단채널 터치후 일정봉(n) 동안 고점(상한채널)을 형성하지 못 할 경우 매도 2. 상단채널 터치후 일정봉(n) 상단채널을 새로이 형성시 그 상단을 var1에 저장 3. var1보다 큰 상단채널 형성시 var2에 저장 ....var(n) 4. var(n)이 낮아 질 경우 매도하는 시스템 입니다.(즉 var(n) < var2 < var1) 요점은 새로이 형성된 고점과 저점(채널상/하단)을 기억해서 앞선 고점(채널상단) 보다 낮아질 경우 매도 앞선 저점(하단채널)보다 높아질 경우 매수하는 시스템 입니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-11-14 13:20:54

안녕하세요 예스스탁입니다. 3번4번 문의하신 내용은 정확히 이해하지 못했습니다. 수식에 주석을 붙여드립니다. 아래 내용 참고하셔서 수정보완해 사용하시기 바랍니다. input : p(20),N(5); var : H1(0),H2(0),H3(0),L1(0),L2(0),L3(0); var1 = (highest(c,p)); var2 = (lowest(c,p)); var3 = (highest(c,p))-(lowest(c,p)); #최고가가 변동 if var1 != var1[1] Then{ #인덱스저장 value1 = index; #고점저장 H1 = var1; #최근고점 H2 = H1[1]; #전고점 H3 = H2[1]; #전전고점 #최근고점이 전고점보다 작고 전고점은 전전고점보다 크면 매도 if H1 < H2 and H2 > H3 and H3 > 0 Then sell("s2"); } #최저가가 변동 if var2 < var2[1] Then{ #인덱스저장 value2 = index; L1 = var1; #최근저점 L2 = H1[1]; #전저점 L3 = H2[1]; #전전저점 #최근저점이 전저점보다 크고 전저점은 전전저점보다 작으면 매수 if L1 > L2 and L2 < L3 and L3 > 0 Then buy("b2"); } # 최고점 갱신후 n봉 동안 최고점이 갱신되지 않으면 매도 if index == value1+n and value1 > 0 Then sell("s1"); # 최저점 갱신후 n봉 동안 최저점이 갱신되지 않으면 매수 if index == value2+n and value1 > 0 Then buy("b1"); 즐거운 하루되세요 > 고저중 님이 쓴 글입니다. > 제목 : highest, lowest 문의 > 수고많으십니다. 아직 초보라서~ highest 와 lowest 를 이용하여 고점과 저점 채널을 첨부와 같이 만들었습니다 input : p(20); var1 = (highest(c,p)); var2 = (lowest(c,p)); var3 = (highest(c,p))-(lowest(c,p)); if var1 > var1[1] Then value1 = 1; if var1 < var1[1] Then value1 = -1; if value1 == 1 Then plot1(Var1,"고점",white); Else plot1(Var1,"고점",black); ~~~ 이런식으로 지표는 만들었는데 이 지표를 시스템식으로 만들려고 하는데요? if C < var1[1] and c < var[2] and c < var[3] then sell(); if C > var2[1] and c > var[2] and c > var[3]then buy(); 종가가 앞선 고점이나 저점보다 크다작다. 결과는 매수 매도 신호가 발생이 않되네요. 제가 원하는 시스템은 아래와 같이 if crossup(c, var1) Then var11=index; if index >= var11+10 and crossdown(c, var1) Then sell("매도"); 위의 수식은 채널 상단 터치후 10개봉동안 신고점이 발생되지 않고 종가가 고점을 다운시 매도 하는 수식으로 알고 있은데 시스템에서 수량(10개봉 또는 그보다 많은 봉)을 수정해도 시스템에 반영이 않되네요^^ 첨부된 그림과 같이 로직을 짜고 싶습니다.(고점 매도/저점 매수) 1. 상단채널 터치후 일정봉(n) 동안 고점(상한채널)을 형성하지 못 할 경우 매도 2. 상단채널 터치후 일정봉(n) 상단채널을 새로이 형성시 그 상단을 var1에 저장 3. var1보다 큰 상단채널 형성시 var2에 저장 ....var(n) 4. var(n)이 낮아 질 경우 매도하는 시스템 입니다.(즉 var(n) < var2 < var1) 요점은 새로이 형성된 고점과 저점(채널상/하단)을 기억해서 앞선 고점(채널상단) 보다 낮아질 경우 매도 앞선 저점(하단채널)보다 높아질 경우 매수하는 시스템 입니다. 감사합니다.