커뮤니티

수고 많으십니다. 53813재문의 입니다.

프로필 이미지
상중하
2017-06-26 16:59:26
156
글번호 110723
답변완료

첨부 이미지

저가 설명이 부족한것 같아 그림첨부 하였습니다. 검정색이 var3 적색이 var4 입니다. 20개 이전봉중에 한번이라도 var3이 var4를 크로스한경우가 있다면 (var3>var4) 기존수식이 진입신호가 한번나오게 하고 싶습니다. 정리하면 종가기준으로 1~20개 이전봉사이에 var3>var4 인경우이고, var3 이 var4보다 크다가 작아지는 지점의 전봉(var3<var4 전봉)기준으로 20개 카운트입니다. var1>var2>var3>var4 (최근 20개봉이 모두의 조건은 아닙니다.) 설명이 충분히 되었는지 모르겠습니다. 번거럽게 해서 죄송합니다. --------------------------------------------------------------------------- if countif(var3>var4,20) == 20 and #최근 20개봉이 모두 var3 > var4 var2 > var2[1] and C < var1 Then{ buy("매수",AtStop,NextBarOpen+PriceScale*1,1); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-06-26 17:43:57

안녕하세요 예스스탁입니다. "var3-var4 데드크로스가 발생하고 19봉 이내에(데드전봉을 기준으로는 20봉임) 조건만족하면 해당 한번만 진입" 위 내용이시면 아래와 같습니다. 부가적으로 현재도 데드구간이어야 하면 1번식을 사용하시면 되고 데드이후 19봉안에 골드로 변경이 되어도 무방하면 2번식 사용하시면 됩니다. 1 var : ii(0); if CrossDown(var3,var4) Then{ ii = index; Condition1 = false; } if MarketPosition == 1 Then Condition1 = true; if Condition1 == false and var3 < var4 and index >= ii and index < ii+20 and var2 > var2[1] and C < var1 Then{ buy("매수",AtStop,NextBarOpen+PriceScale*1,1); } 2 var : ii(0); if CrossDown(var3,var4) Then{ ii = index; Condition1 = false; } if MarketPosition == 1 Then Condition1 = true; if Condition1 == false and index >= ii and index < ii+20 and var2 > var2[1] and C < var1 Then{ buy("매수",AtStop,NextBarOpen+PriceScale*1,1); } 즐거운 하루되세요 > 상중하 님이 쓴 글입니다. > 제목 : 수고 많으십니다. 53813재문의 입니다. > 저가 설명이 부족한것 같아 그림첨부 하였습니다. 검정색이 var3 적색이 var4 입니다. 20개 이전봉중에 한번이라도 var3이 var4를 크로스한경우가 있다면 (var3>var4) 기존수식이 진입신호가 한번나오게 하고 싶습니다. 정리하면 종가기준으로 1~20개 이전봉사이에 var3>var4 인경우이고, var3 이 var4보다 크다가 작아지는 지점의 전봉(var3<var4 전봉)기준으로 20개 카운트입니다. var1>var2>var3>var4 (최근 20개봉이 모두의 조건은 아닙니다.) 설명이 충분히 되었는지 모르겠습니다. 번거럽게 해서 죄송합니다. --------------------------------------------------------------------------- if countif(var3>var4,20) == 20 and #최근 20개봉이 모두 var3 > var4 var2 > var2[1] and C < var1 Then{ buy("매수",AtStop,NextBarOpen+PriceScale*1,1); }