연결 된 chart1 의
현재의 봉(미완성봉) 에서 아래와 같이 연속하여 반복적으로 신호가 발생 하는 경우
Signal.signalkind 가
2. Exitlong
3. Sell
4. ExitShort
1. Buy 이면
가) 2.3.신호 발생 후 10초 경과 시에 2.3.의 매수청산/매도 의 <주문>과 <체결>이 실행되고
2.3.신호 발생 후 10초 이내에 4.1.의 신호가 발생 하면 2.3.의 매수청산/매도 의 <주문>과 <체결> 은 실행 되지 아니하며
나) 4.1.신호 발생 후 10초 경과 시에 4.1. 의 매도청산/매수 의 <주문>과 <체결> 이 실행 되고
4.1.신호 발생 후 10초 이내에 2.3.의 신호가 발생 하면 4.1.의 매도청산/매수 의 <주문>과 <체결> 은 실행 되지 않습니다.
다) 중복진입은 허용하지 않음.
이상과 같은 조건에 맞는 예스스팟 수식을 작성하여 주시면 감사 하겠습니다.
답변 1
예스스탁
예스스탁 답변
2016-03-09 09:52:42
안녕하세요
예스스탁입니다.
아래 내용 참고하셔서 수정보완해 사용하시기 바랍니다.
진입신호시 타이머(10)를 적용해 10초 이내에
발생하는 청산과 반대방향신호를 무시하는 내용입니다.
var TimeCond;
function Main_OnStart()
{
TimeCond = false;
}
function Chart1_OnRiseIncompleteSignal(IncompleteSignal)
{
if (TimeCond == false && IncompleteSignal.signalKind == 1)
{
TimeCond = true;
Main.SetTimer(1, 10000);//10초
Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(5), 0);
}
if (TimeCond == false == false && IncompleteSignal.signalKind == 2)
{
Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(5), 0);
}
if (TimeCond == false && IncompleteSignal.signalKind == 3)
{
TimeCond = true;
Main.SetTimer(1, 10000);//10초
Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Bid(5), 0);
}
if (TimeCond == false && IncompleteSignal.signalKind == 4)
{
Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.Ask(5), 0);
}
}
function Main_OnTimer(nEventID)
{
if (nEventID == 1)
{
TimeCond = false;
}
}
즐거운 하루되세요
> 너무조아 님이 쓴 글입니다.
> 제목 : 부탁합니다.(YesGlobal - NH선물)
> 연결 된 chart1 의
현재의 봉(미완성봉) 에서 아래와 같이 연속하여 반복적으로 신호가 발생 하는 경우
Signal.signalkind 가
2. Exitlong
3. Sell
4. ExitShort
1. Buy 이면
가) 2.3.신호 발생 후 10초 경과 시에 2.3.의 매수청산/매도 의 <주문>과 <체결>이 실행되고
2.3.신호 발생 후 10초 이내에 4.1.의 신호가 발생 하면 2.3.의 매수청산/매도 의 <주문>과 <체결> 은 실행 되지 아니하며
나) 4.1.신호 발생 후 10초 경과 시에 4.1. 의 매도청산/매수 의 <주문>과 <체결> 이 실행 되고
4.1.신호 발생 후 10초 이내에 2.3.의 신호가 발생 하면 4.1.의 매도청산/매수 의 <주문>과 <체결> 은 실행 되지 않습니다.
다) 중복진입은 허용하지 않음.
이상과 같은 조건에 맞는 예스스팟 수식을 작성하여 주시면 감사 하겠습니다.