커뮤니티

문의드립니다.

프로필 이미지
라떼처럼
2018-07-25 08:37:47
2419
글번호 224532
답변완료
예스스팟을 이용하여 해외선물 거래하고 싶습니다. 간단한 내용이지만 개인적으로 스팟으로 작성이 어렵습니다. 부탁드립니다. 07:01:00에 거래 시작 시작가보다 작으면 매도, 시작가보다 크면 매수 05:30:00에 포지션 청산
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-08-09 14:42:50

안녕하세요 예스스탁입니다. 스팟의 종목객체는 실시간으로 시세를 받습니다. 별도로 봉단위가 있지 않으므로 시초가 위애래로 시세가 움직일때 많은 주문이 발생하는 내용입니다. 스팟의 수식답변은 단순히 수식작성에 흐름을 잡아드리는 가이드입니다. 아래 내용 참고하셔서 수정보완해 사용하시기 바랍니다. 수식에 게시판 금칙어가 있습니다. 영문 업데이트가 Up*date와 같이 중간에 *에 추가되 있으므로 제거하고 사용하시기 바랍니다. 이용에 참고하시기 바랍니다. 스크립트 객체설정 종목객체 추가 --> 객체명은 MarketData1, 거래할 종목선택해 지정 계좌객체 추가 --> 객체명은 Account1, 거래할 계좌번호 지정 var dd,step,HHMMSS,HHMMSS1; //스팟시작 function Main_OnStart() { Main.MessageList("Spot Stat"); //타이머셋팅 Main.SetTimer(1,5000); //step은 0 step = 0; } //타이머동작 function Main_OnTimer(nEventID) { var d = new Date(); HHMMSS1 = HHMMSS; HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); //step이 0이고 7시 1분이 되면 //step은 1 if (step == 0 && HHMMSS >= 70100 && HHMMSS1 < 70100) { step = 1; } //step이 1이고 5시 30분이 되면 //step은 2 if (step == 1 && HHMMSS >= 53000 && HHMMSS1 < 53000) { step = 2; //잔고셋팅 Account1.SetBalanceItem(Main.GetOrderCode(MarketData1.code), 0); //매수포지션이 있으면 if (Account1.Balance.count > 0 && Account1.Balance.position == 2)) { //시장가로 잔고수량 전량 매도주문 Account1.OrderSell(Main.GetOrderCode(MarketData1.code), Account1.Balance.count, 0, 1); } //매도포지션이 있으면 if (Account1.Balance.count > 0 && Account1.Balance.position == 1)) { //시장가로 잔고수량 전량 매수주문 Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), Account1.Balance.count, 0, 1); } } } //종목시세 업데이트 function Main_OnUp*dateMarket(sItemCode, lUp*dateID) { //step이 1이고 체결시세 업데이트 if (step == 1 && lUp*dateID == 20001) { //현재가가 시초가보다 크면 if (MarketData1.current > MarketData1.open) { //잔고셋팅 Account1.SetBalanceItem(Main.GetOrderCode(MarketData1.code), 0); //무포지션이면 if (Account1.Balance.count == 0) { //시장가로 1개 매수주문 Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, 0, 1); } //매도포지션이 있으면 if (Account1.Balance.count > 0 && Account1.Balance.position == 1)) { //시장가로 잔고수량+1개로 매수주문(청산+진입) Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), Account1.Balance.count+1, 0, 1); } } //현재가가 시초가보다 작으면 if (MarketData1.current < MarketData1.open) { //잔고셋팅 Account1.SetBalanceItem(Main.GetOrderCode(MarketData1.code), 0); //무포지션이면 if (Account1.Balance.count == 0) { //시장가로 1개 매도주문 Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, 0, 1); } //매수포지션이 있으면 if (Account1.Balance.count > 0 && Account1.Balance.position == 2)) { //시장가로 잔고수량+1개로 매도주문(청산+진입) Account1.OrderSell(Main.GetOrderCode(MarketData1.code), Account1.Balance.count+1, 0, 1); } } } } 즐거운 하루되세요 > 라떼처럼 님이 쓴 글입니다. > 제목 : 문의드립니다. > 예스스팟을 이용하여 해외선물 거래하고 싶습니다. 간단한 내용이지만 개인적으로 스팟으로 작성이 어렵습니다. 부탁드립니다. 07:01:00에 거래 시작 시작가보다 작으면 매도, 시작가보다 크면 매수 05:30:00에 포지션 청산