커뮤니티

수식 부탁드려요

프로필 이미지
뚱띵
2012-07-15 19:47:07
3166
글번호 221235
답변완료
선물종가청산을 위하여 3시 5분 이후 3시 15분 이전 특정시간에 잔고를 확인하고 잔고청산을 시장가 또는 특정가로 청산하는 예스스팟식을 부탁드립니다. 여러개의 전략을 사용할 경우 어떤 것은 매수, 어떤것은 매도로 실제로 잔고는 없는데 잔고와 연계없이 신호와 연계될 경우 필요없이 각각 매수청산, 매도청산에 들어가 수수료만 낭비되므로 이를 감안해서 잔고를 확인하고 신호와는 상관없이 잔고만 청산되게 해야 할 것 같네요. 신호에서는 현재 예스트레이더 시스템하에서도 15분에 종가청산 신호만 나오게는 할 수 있으므로 (3시 15분 종가청산 설정시 신호만 나오고 체결은 장마감으로 체결은 안되므로) 청산신호가 누락되서 다음날로 신호가 넘어가 영향을 주는 것은 없어 신호쪽 문제는 해결되니 잔고만 확인해서 청산만 되면 될 것 같네요. 이와 같은 선물종가 청산식 부탁드립니다.
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2012-07-17 19:33:31

안녕하세요 예스스탁입니다. 문의하신 부분에 대해 이틀이내에 도움말의 예제로 추가할 예정입니다. 추가후 다시 답변드리겠습니다. 즐거운 하루되세요 > 뚱띵 님이 쓴 글입니다. > 제목 : 수식 부탁드려요 > 선물종가청산을 위하여 3시 5분 이후 3시 15분 이전 특정시간에 잔고를 확인하고 잔고청산을 시장가 또는 특정가로 청산하는 예스스팟식을 부탁드립니다. 여러개의 전략을 사용할 경우 어떤 것은 매수, 어떤것은 매도로 실제로 잔고는 없는데 잔고와 연계없이 신호와 연계될 경우 필요없이 각각 매수청산, 매도청산에 들어가 수수료만 낭비되므로 이를 감안해서 잔고를 확인하고 신호와는 상관없이 잔고만 청산되게 해야 할 것 같네요. 신호에서는 현재 예스트레이더 시스템하에서도 15분에 종가청산 신호만 나오게는 할 수 있으므로 (3시 15분 종가청산 설정시 신호만 나오고 체결은 장마감으로 체결은 안되므로) 청산신호가 누락되서 다음날로 신호가 넘어가 영향을 주는 것은 없어 신호쪽 문제는 해결되니 잔고만 확인해서 청산만 되면 될 것 같네요. 이와 같은 선물종가 청산식 부탁드립니다.
프로필 이미지

예스스탁 예스스탁 답변

2012-07-19 17:30:23

안녕하세요 예스스탁입니다. 도움말 업데이트 전에 먼저 올려드립니다. 아래식 참고하셔서 변경해 사용하시기 바랍니다. /*장중 청산 없을시 3시 5분 동시호가 청산*/ var OrderCode; function Main::OnStart() { //스팟실행 후 5초마다 타이머 실행 //타이머 아이디 1 Main.SetTimer(1, 5000); //차트종목 주문코드 OrderCode = Main.GetOrderCode(C1.GetCode(1)); //차트종목 주문코드 출력 Main.MessageLog(OrderCode); } function Main::OnTimer(nEventID) { //Date객체 var d = new Date(); //현재 시간출력 Main.MessageLog(d.getHours()+":"+d.getMinutes()); // 타이머 아이디가 1이고 15시 5분 이후면 if (nEventID == 1 && d.getHours() >= 15 && d.getMinutes() >= 5 ) { //차트 미청산수량 출력(매수는 양수, 매도는 음수, 무포지션 0) Main.MessageLog("차트 미청산수량:"+C1.GetOpenContracts()); //차트 미청산수량이 없으면 타이머 중지 if (C1.GetOpenContracts() == 0) { Main.MessageLog("차트미청산수량없음") Main.KillTimer(1); } //현재 차트상 현재 포지션은 매수 if (C1.GetOpenContracts() > 0) { //OrderCode 종목, 매수포지션 객체로 잔고객체 설정 A1.SetBalanceItem(OrderCode, 2); Main.MessageLog("계좌 보유수량:"+A1.Balance.count); //잔고의 수량이 차트의 신호상 수량이상이면 if (A1.Balance.count >= C1.GetOpenContracts()) { //매도주문 실행 A1.OrderSell(OrderCode, C1.GetOpenContracts(), 0, 1); Main.MessageLog("매수청산") //타이머 중지 Main.KillTimer(1); } //잔고상 보유수량이 차트 미청산 수량보다 작으면 타이머 중지 if (A1.Balance.count < C1.GetOpenContracts()) { Main.MessageLog("계좌보유수량이 차트 미청산 수량보다 작음"); //타이머 중지 Main.KillTimer(1); } } //현재 차트상 매도포지션이면 if (C1.GetOpenContracts() < 0) { //OrderCode 종목, 매도포지션 객체로 잔고객체 설정 A1.SetBalanceItem(OrderCode, 1); //잔고수량이 차트 신호상 수량이상이면 Main.MessageLog("계좌 보유수량:"+A1.Balance.count); if (A1.Balance.count >= C1.GetOpenContracts()) { //매수주문실행 A1.OrderBuy(OrderCode,Math.abs(C1.GetOpenContracts()), 0, 1); Main.MessageLog("매도청산") //타이머 중지 Main.KillTimer(1); } //잔고상 보유수량이 차트 미청산 수량보다 작으면 타이머 중지 if (A1.Balance.count < C1.GetOpenContracts()) { Main.MessageLog("계좌보유수량이 차트 미청산 수량보다 작음"); //타이머 중지 Main.KillTimer(1); } } } } 즐거운 하루되세요 > 뚱띵 님이 쓴 글입니다. > 제목 : 수식 부탁드려요 > 선물종가청산을 위하여 3시 5분 이후 3시 15분 이전 특정시간에 잔고를 확인하고 잔고청산을 시장가 또는 특정가로 청산하는 예스스팟식을 부탁드립니다. 여러개의 전략을 사용할 경우 어떤 것은 매수, 어떤것은 매도로 실제로 잔고는 없는데 잔고와 연계없이 신호와 연계될 경우 필요없이 각각 매수청산, 매도청산에 들어가 수수료만 낭비되므로 이를 감안해서 잔고를 확인하고 신호와는 상관없이 잔고만 청산되게 해야 할 것 같네요. 신호에서는 현재 예스트레이더 시스템하에서도 15분에 종가청산 신호만 나오게는 할 수 있으므로 (3시 15분 종가청산 설정시 신호만 나오고 체결은 장마감으로 체결은 안되므로) 청산신호가 누락되서 다음날로 신호가 넘어가 영향을 주는 것은 없어 신호쪽 문제는 해결되니 잔고만 확인해서 청산만 되면 될 것 같네요. 이와 같은 선물종가 청산식 부탁드립니다.