커뮤니티
문의합니다~
2015-08-25 12:30:44
106
글번호 89800
var1 = ma(c,1);
var4 = ma(C,20);
var5 = ma(c,60);
var6 = ma(c,120);
Var7 = (dayhigh+daylow)/2;
if stime >= 160000 or stime < 040000 Then{
a1 = 0;
b1 = 0;
if H == dayhigh Then
a1 = a1 +1;
if L < daylow Then
b1 = b1 +1;
}
if stime >= 160000 or stime < 040000 Then{
if a1<1 and (var1>=Var7) Then
if CrossUp(var4, var5) Then
buy("b");
if b1<1 and (var1<=Var7) Then
if Crossdown(var4, var5) Then
sell("s");
}
제가 의도하고자 하는 것은 설정시간 동안 저점이 한번이라도 돌파되면 매도 금지 고점 마찬가지 매수금지를 하고싶은데 올린 그림처럼 나옵니다.
도와주세요~
- 1. 2015-08-25_12;34;08.PNG (0.02 MB)
답변 1
예스스탁 예스스탁 답변
2015-08-25 14:22:44
안녕하세요
예스스탁입니다.
문의하신 내용을 정확히 이해하지 못했습니다.
설정시간이 어떤 시간을 의미하시는지 불명확하고
고점/저점이 당일저점인지 아니면 아니면 다른 의미의 내용인지 모르겠습니다.
아래식은 16시~4시 사이에 당일고가가 갱신된 횟수
당일저가가 갱신된 횟수를 카운틀해서
매수는 당일고가 갱신횟수가 0일때만
매도는 당일저가 갱신횟수가 0일때만 발생하게 작성했습니다.
아래식 참고하셔서 수정보완해 사용하시기 바랍니다.
var : a1(0),b1(0);
var1 = ma(c,1);
var4 = ma(C,20);
var5 = ma(c,60);
var6 = ma(c,120);
Var7 = (dayhigh+daylow)/2;
#16시에 0으로 초기화
if stime == 160000 or (stime > 160000 and stime[1] < 160000) Then{
a1 = 0;
b1 = 0;
}
#16시에서 ~새벽 4시이전에
if stime >= 160000 or stime < 040000 Then{
#당일고가가 갱신된 횟수 카운트
if Bdate == Bdate and H > dayhigh[1] Then
a1 = a1 +1;
#당일저가가 갱신된 횟수 카운트
if Bdate == Bdate and L < daylow[1] Then
b1 = b1 +1;
#a1이 0이고
#1이평이 당일 중심값보다 크거나 같고
#60이평이 120이평을 상향돌파하면 매수
if a1<1 and
(var1>=Var7) and
CrossUp(var4, var5) Then
buy("b");
#b1이 0이고
#1이평이 당일 중심값보다 작거나 같고
#60이평이 120이평을 하향이탈하면 매도
if b1<1 and
(var1<=Var7) and
Crossdown(var4, var5) Then
sell("s");
}
즐거운 하루되세요
> 별무리 님이 쓴 글입니다.
> 제목 : 문의합니다~
> var1 = ma(c,1);
var4 = ma(C,20);
var5 = ma(c,60);
var6 = ma(c,120);
Var7 = (dayhigh+daylow)/2;
if stime >= 160000 or stime < 040000 Then{
a1 = 0;
b1 = 0;
if H == dayhigh Then
a1 = a1 +1;
if L < daylow Then
b1 = b1 +1;
}
if stime >= 160000 or stime < 040000 Then{
if a1<1 and (var1>=Var7) Then
if CrossUp(var4, var5) Then
buy("b");
if b1<1 and (var1<=Var7) Then
if Crossdown(var4, var5) Then
sell("s");
}
제가 의도하고자 하는 것은 설정시간 동안 저점이 한번이라도 돌파되면 매도 금지 고점 마찬가지 매수금지를 하고싶은데 올린 그림처럼 나옵니다.
도와주세요~