커뮤니티

예스스팟 Q&A

답변완료

미완성봉 매수이후 매도 문의

안녕하세요. 초보라서 문의수준이 부족할수 있는점 양해바랍니다. 스팟프로그램에서 미완성봉 차트에서 매수이후 매수한 해당바에서 끝날때까지 매수조건이 부합하지 않으면 MarketPosition() = 1로 변경이 안되서 미완성봉 차트에서 매도를 못하고 있습니다. (스팟에서는 매수가 잘 뜨는데 차트에서 매수를 했다고 인지를 못하는거 같습니다.) 미완성봉 매수이후 차트에 마켓포지션을 확인하거나 하지 않더라도 미완성봉 차트매도조건일때 스팟에서 다시 차트매도 시그널을 받아서 매도 할 수 있는 방법이나 프로그램 예제 부탁드립니다. 감사합니다.
프로필 이미지
이쁜예린이
1227
글번호 225719

이쁜예린이 님에 의해서 삭제되었습니다.

프로필 이미지
이쁜예린이
1
글번호 225718
답변완료

미체결 잔량 확인 코드 관련 문의

안녕하세요. 미체결 잔량 확인 코드가 정상동작하지 않는 것 같아 문의 드립니다. 미체결 잔량을 확인하기 위해 아래와 같이 작성하였으나 BNum1주문에 대한 미체결 잔량이 존재함에도 if(Account1.Unfill.count > 0) 구문이 Else로 빠집니다. . 디버깅을 위해 스팟식에서 미체결 잔량이 발생하도록 지정가 주문하고, 타이머에서 미체결 잔량 체크하도록 하고 있는데(본 게시판에서 가이드 해주시는 코드 그대로) 정상 동작 하지 않습니다. 확인 부탁 드립니다. 한투 글로벌 예트 사용 중 입니다. 첨부화면 및 테스트 코드 공유합니다. 바쁘시겠지만 확인 부탁드립니다. var BuyID1,BxID1,SellID1,SxID1,BNum1,BxNum1,SNum1,SxNum1; var SigCnt = 0; var Level = 1; var UnfillObj; function Chart1_OnRiseSignal(Signal) { if (Signal.signalKind == SIG_BUY ) { BuyID1 = Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1,3900, 2); //미체결 잔량 테스트를 위한 지정가 주문 Main.MessageLog("SIG_BUY 가격:"+ MarketData1.Bid(10) +"종목코드:"+MarketData1.code); } } function Main_OnOrderResponse(OrderResponse) { //차트1 주문별 주문번호 저장 if (OrderResponse.orderID == BuyID1) { BNum1 = OrderResponse.orderNum; Main.SetTimer(11,3000); Main.MessageLog("SMain_OnOrderResponse BNum1 : "+ BNum1 +" BuyID1:"+BuyID1); } } function Main_OnNotifyFill(NotifyFill) { if (NotifyFill.orderNum == BNum1) { Main.MessageLog("Main_OnNotifyFill BNum1 : "+ BNum1 +" BuyID1:"+BuyID1); Main.KillTimer(11); } } function Main_OnTimer(nEventID) { if (nEventID == 11) { Main.MessageLog("Main_OnTimer BNum1 : "+ BNum1 +" BuyID1:"+BuyID1); Account1.SetUnfillOrderNumber(BNum1); if (Account1.Unfill.count > 0) { Main.MessageLog("Account1.Unfill.count > 0 BNum1: "+ BNum1 +" BuyID1:"+BuyID1); } else { Main.MessageLog("Account1.Unfill.count else BNum1: "+ BNum1 +" BuyID1:"+BuyID1); //Main.KillTimer(11); } } }
프로필 이미지
eagle이글
1321
글번호 225712
답변완료

일간데이터 사용여부 에러

예스스팟으로 코드 만들다가 자꾸 에러가 떠서 문의드립니다. M1 종목객체에 KQ종합을 연결하고 일간데이터 사용 조회건수 30으로 설정했습니다. var mt10 = 9*M1.current - M1.GetPrevClose(1) -M1.GetPrevClose(2)-M1.GetPrevClose(3)-M1.GetPrevClose(4)-M1.GetPrevClose(5)-M1.GetPrevClose(6)-M1.GetPrevClose(7)-M1.GetPrevClose(8)-M1.GetPrevClose(9) ; 이렇게 현재가격이 10일 이동평균선보다 위에 있는지를 확인하기 위한 변수를 만들었고 검증을 해보니 ReferenceError: 조회된 데이터가 없습니다. 종목객체의 일간데이터 사용여부를 확인하세요. 라고 에러메세지가 뜹니다. M1.current까지만 하면 에러가 안뜨는데 GetPrevClose를 추가하면 이런 에러가 뜨네요. 어떻게 해결해야 할까요? ======================================================================= 추가로 차트를 연결해서도 해봤는데 해결되지 않습니다. 전략실행차트로 KQ종합을 열고 차트 아이디도 KQ150으로 객체와 동일하게 하여서 차트의 아이디가 빨간색으로 변한것도 확인했습니다. 차트객체명 KQ 차트아이디 KQ150 var kqmt10 = KQ.GetIndicatorData("단순이동평균3", 1, 0);
프로필 이미지
프로라인89
1289
글번호 225711
답변완료

너무 간단한 질문인데 내용들 봐도 잘 모르겠습니다. 꼭 답변부탁드립니다.

안녕하십니까^^ 파워종목검색 [설정]-[기타]기능 중에 '관리종목', '우선주'등 제외하는 기능은 잘사용하고 있습니다. 스팟에서 파워종목검색식으로 매수를 하고 있는데 '관리종목'등 제외 기능을 스팟 프로그램에서는 어떻게 표현하는지 궁금합니다. (스팟에서 직접 차트를 열때도 프로그램상에서 여러 옵션을 넣어주던데. 비슷한게 있을지요?^^) 감사합니다.
프로필 이미지
이쁜예린이
1243
글번호 225710
답변완료

부탁드려요

아래수식에서 매수 금액을 n 만큼 지정할수 있게 도와주세요 부탁드려요 머리가 안 돌아가 이것 저것 짜집기해도 안 되네요 //스팟 첫 실행시 function Main_OnStart() { //1번 타이머, 60초 Main.SetTimer(1, 5000); } function Main_OnTimer(nEventID) { if (nEventID == 1) { //종목검색 수행 Main.ReqPowerSearch("3") } } //종목검색 완료 function Main_OnRcvItemList(aItemList, nCount) { //1종목 이상 검색되면 if (nCount >= 1) { //리스트 첫종목부터 마지막종목까지 순차적으로 //1번 타이머 동작 for (var i = 0; i < nCount; i++) { //잔고를 셋팅 Account1.SetBalance(aItemList[i],0); //보유수량이 없으면 if (Account1.Balance.count == 0) { //매수주문 Account1.OrderBuy(aItemList[i], 1,0,1); } } } }
프로필 이미지
아무다
1161
글번호 225709

시스시스스템 님에 의해서 삭제되었습니다.

프로필 이미지
시스시스스템
0
글번호 225706
답변완료

질문드립니다

안녕하세요 예스트레이더의 경우. 포지션 확인이 불가능한 것으로 알고있습니다. 차트 상에서 매수 시그널이 나올 경우, 실 체결과 관련없이 이미 매수 포지션이 들어가 있다고 프로그램이 인식한다고 알고 있는데요, 혹시 예스 스팟의 경우, 프로그램(예스스팟)의 포지션과 내 현재 진짜 포지션(증권사 포지션)을 매칭하거나 확인하는 함수가 있을까요? 지정가 매매를 하는데, 제 주문은 체결이 안되어있는데, 프로그램에서는 신호가 떠있다는 이유로 제가 포지션을 들고 있는 것처럼 인식하더라구요.
프로필 이미지
이만스닥
1178
글번호 225705
답변완료

예스글로벌 (NH선물) 에서 해외 선물 MarketData 에서 일부 데이터가 쓰레기 값임

안녕하세요. 예스글로벌 (NH선물)의 예스스팟을 이용해서 프로그램 개발하고 있는데요. 해외 선물 MarketData 에서 일부 데이터가 쓰레기 값으로 차 있습니다. 가장 최근월물 E-mini S&P 500 과 Nasdaq 100 futures 모두 MarketData 에 GetPrevHigh(1), GetPrevOpen(1), GetPrevHigh(1), GetPrevLow(1) 를 해보면 전부 의미있는 데이터가 아닌 1.4814925181420344e-309 이런식의 값들이 들어가 있습니다. MarketData 를 요청할때는 올바르게 다음과 같이 요청했습니다. // 하루 전의 데이터만 필요해서 1을 넣었습니다. Main.ReqMarketData(esFuturesInfoAndTradingHour.FuturesInfo.FutureCode, 1, 0); Main.ReqMarketData(nqFuturesInfoAndTradingHour.FuturesInfo.FutureCode, 1, 0); 이러고 나서 Main_OnRcvMarketData 내부에서 MarketData.GetPrevOpen(1); 이렇게 하면 이상한 값이 나옵니다.
프로필 이미지
블루웨일
1244
글번호 225703

이쁜예린이 님에 의해서 삭제되었습니다.

프로필 이미지
이쁜예린이
14
글번호 225702