이것을 막을 방법으로 아래와 같이 답변해 주셨는데요,
(매수 조건에 청산 조건이 아님을 제시)
//매수식
if CrossUp(C,ma(C,20)) and !(CrossDown(C,ma(C,5))) then
buy();
//매수청산식
if CrossDown(C,ma(C,5)) then
exitlong();
이걸 이렇게 고치면 안되나요?
var1=0;
//매수식
if CrossUp(C,ma(C,20)) and var1!=1 then
{buy();
var1=0;}
//매수청산식
if CrossDown(C,ma(C,5)) and var1=0 then
{exitlong();
var1=1;}
답변 부탁 드립니다.
답변 1
예스스탁
예스스탁 답변
2007-08-03 09:39:29
안녕하세요..예스스탁입니다.
말씀하신 식으로는 동일봉 신호가 제거되지 않습니다.
이유는 var1의 값이 봉이 완성된 다음에 저장되기 때문입니다.
조건을 만족시키는 봉에서는 진입식과 청산식을 모두 만족하기 때문에 두개모두 앞조건을 만족하면 신호가 같이 발생되게 됩니다.
감사합니다.
//매수식
if CrossUp(C,ma(C,20)) and !(CrossDown(C,ma(C,5))) then
buy();
//매수청산식
if CrossDown(C,ma(C,5)) then
exitlong();
> 도레미트리오 님이 쓴 글입니다.
> 제목 : 하나의 봉에 매수, 청산 동시에 뜰 경우
> 이것을 막을 방법으로 아래와 같이 답변해 주셨는데요,
(매수 조건에 청산 조건이 아님을 제시)
//매수식
if CrossUp(C,ma(C,20)) and !(CrossDown(C,ma(C,5))) then
buy();
//매수청산식
if CrossDown(C,ma(C,5)) then
exitlong();
이걸 이렇게 고치면 안되나요?
var1=0;
//매수식
if CrossUp(C,ma(C,20)) and var1!=1 then
{buy();
var1=0;}
//매수청산식
if CrossDown(C,ma(C,5)) and var1=0 then
{exitlong();
var1=1;}
답변 부탁 드립니다.