커뮤니티
수식 수정 부탁합니다.
2005-10-12 14:29:13
1737
글번호 8505
수식 수정 부탁합니다.
1. cond1 이라는 부분이 오류라고 나오는데, 이유를 모르겟고요,
2. var2하고 var3를 찍으면 바로 주문이 나가게 하려고 atlimit구문을 사용해 봤지만
뜻대로 신호가 안나오더군요..
var: count(0),cond1(0);
var1= dayclose(1); //전일의 종가
var2= var1-0.5; //전일종가 - 0.5포인트.
var3= var1+0.5;
if dayindex() == 0 then
count=0;
cond1 = dayopen()<var3 and dayopen()>var2 //그날의 시가가 바2와 바3 사이에서 시작하면..
if cond1 then begin
if time<150000 and count<2 and dayhigh()>var3 then begin
sell("sell",atlimit,var3,def); //바3를 터치하면 매도하라.
count=count+1;
end;
if time<150000 and count<2 and daylow()<var2 then begin
buy("buy",atlimit,var2,def);
count=count+1;
end;
end;
setstoploss(0.3,pointstop);
setstopendofday(1515);
답변 4
예스스탁 예스스탁 답변
2005-10-12 17:12:34
안녕하세요
예스스탁입니다.
식을 수정하였습니다.
문장이 끝나면 세미콜론으로 마무리를 해주셔야 합니다.
var: count(0),cond1(0);
var1= dayclose(1); //전일의 종가
var2= var1-0.5; //전일종가 - 0.5포인트.
var3= var1+0.5;
if dayindex() == 0 then
count=0;
cond1 = dayopen()<var3 and dayopen()>var2; //그날의 시가가 바2와 바3 사이에서 시작하면..
if cond1 then begin
if time<150000 and count<2 and dayhigh()>var3 then begin
sell("sell",atlimit,var3); //바3를 터치하면 매도하라.
count=count+1;
end;
if time<150000 and count<2 and daylow()<var2 then begin
buy("buy",atlimit,var2);
count=count+1;
end;
end;
setstoploss(0.3,pointstop);
setstopendofday(1515);
즐거운 하루되세요
> 제우스 님이 쓴 글입니다.
> 제목 : 수식 수정 부탁합니다.
> 수식 수정 부탁합니다.
1. cond1 이라는 부분이 오류라고 나오는데, 이유를 모르겟고요,
2. var2하고 var3를 찍으면 바로 주문이 나가게 하려고 atlimit구문을 사용해 봤지만
뜻대로 신호가 안나오더군요..
var: count(0),cond1(0);
var1= dayclose(1); //전일의 종가
var2= var1-0.5; //전일종가 - 0.5포인트.
var3= var1+0.5;
if dayindex() == 0 then
count=0;
cond1 = dayopen()<var3 and dayopen()>var2 //그날의 시가가 바2와 바3 사이에서 시작하면..
if cond1 then begin
if time<150000 and count<2 and dayhigh()>var3 then begin
sell("sell",atlimit,var3,def); //바3를 터치하면 매도하라.
count=count+1;
end;
if time<150000 and count<2 and daylow()<var2 then begin
buy("buy",atlimit,var2,def);
count=count+1;
end;
end;
setstoploss(0.3,pointstop);
setstopendofday(1515);
제우스
2005-10-13 07:54:04
;을 찍으니 수식이 작동을 하는군요. 감사합니다. 이번 질문의 요지는 내가 원하는 지정가에 도달하면 봉의 완성 여부를 기다리지 않고, 그 즉시 주문이 나가는 방법입니다. 귀사의 설명에 의하면 atlimit을 사용하면 지정가에 도달시 바로 주문이 나가는 것으로 이해가 되는데요. 실제로 차트에는 그렇게 구현되지 않습니다. 조건이 단순하게 오후3시 이전이고, 진입회수가 한번도 없을때 이므로 장중 어느때라도 지정가에 도달하면 주문이 나가야 한다고 생각하는데.. 그렇지 않더군요.
연결선물 지수 5분봉입니다. 아래 식에서 오류를 수정해 주시면 감사하겠습니다.
input: times(1);
var: count(0),cond1(0);
var1= dayclose(1);
var2= var1-0.5;
var3= var1+0.5;
if dayindex() == 0 then
count=0;
cond1 = dayopen()<var3 and dayopen()>var2;
if cond1 then begin
if time<150000 and count<times then begin
sell("sell",atlimit,var3,def); //지정가에 도달시 즉시 매도
count=count+1;
end;
if time<150000 and count<times then begin
buy("buy",atlimit,var2,def); //지정가에 도달시 즉시 매수
count=count+1;
end;
end;
setstoploss(0.5,pointstop);
setstopendofday(1515);
예스스탁 예스스탁 답변
2005-10-13 16:37:24
안녕하세요
예스스탁입니다.
수식에 문제는 없습니다.
input: times(1);
var: count(0),cond1(0);
var1= dayclose(1);
var2= var1-0.5;
var3= var1+0.5;
setstoploss(0.5,pointstop);
setstopendofday(1515);
if dayindex() == 0 then
count=0;
cond1 = dayopen() < var3 and dayopen() > var2;
if cond1 then {
if time < 150000 and count < times then {
sell("sell",atlimit,var3); //지정가에 도달시 즉시 매도
count=count+1;
}
if time<150000 and count<times then {
buy("buy",atlimit,var2); //지정가에 도달시 즉시 매수
count=count+1;
}
}
atlimit주문은 매수에서는 지정된 가격이하에서 주문이
나가며 매도에서는 지정된 각격이상에서 주문이 발생합니다.
매수에서 if 조건이 만족하고 다음봉이 가격 조건을 보다 위에서만 형성된다면
가격조건을 만족하지 않아 주문이 나가지 않습니다.
참고하시기 바랍니다.
즐거운 하루되세요
> 제우스 님이 쓴 글입니다.
> 제목 : 다시 한번 수식 수정 부탁합니다.
> ;을 찍으니 수식이 작동을 하는군요. 감사합니다. 이번 질문의 요지는 내가 원하는 지정가에 도달하면 봉의 완성 여부를 기다리지 않고, 그 즉시 주문이 나가는 방법입니다. 귀사의 설명에 의하면 atlimit을 사용하면 지정가에 도달시 바로 주문이 나가는 것으로 이해가 되는데요. 실제로 차트에는 그렇게 구현되지 않습니다. 조건이 단순하게 오후3시 이전이고, 진입회수가 한번도 없을때 이므로 장중 어느때라도 지정가에 도달하면 주문이 나가야 한다고 생각하는데.. 그렇지 않더군요.
연결선물 지수 5분봉입니다. 아래 식에서 오류를 수정해 주시면 감사하겠습니다.
input: times(1);
var: count(0),cond1(0);
var1= dayclose(1);
var2= var1-0.5;
var3= var1+0.5;
if dayindex() == 0 then
count=0;
cond1 = dayopen()<var3 and dayopen()>var2;
if cond1 then begin
if time<150000 and count<times then begin
sell("sell",atlimit,var3,def); //지정가에 도달시 즉시 매도
count=count+1;
end;
if time<150000 and count<times then begin
buy("buy",atlimit,var2,def); //지정가에 도달시 즉시 매수
count=count+1;
end;
end;
setstoploss(0.5,pointstop);
setstopendofday(1515);
제우스
2005-10-13 17:43:01
제우스 님에 의해 삭제된 답변입니다.