커뮤니티
수고 많으십니다. 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_15;52;01.JPG (0.02 MB)
- 2. 2017-06-26_17;02;34.JPG (0.02 MB)
답변 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);
}