커뮤니티

예스스팟 Q&A

답변완료

선물에서 나온 신호로 kodex200을 매수하려고합니다. 스팟수식 부탁드립니다.

1. 차트에 코스피 200선물 띠우고 시험적용을 적용한 다음.. 2. 선물 8분봉에서 첫봉에 매수신호가 나오면(= 이때는 8시 53분) 이 매수신호를 kodex200 에 보내서 9시 동시호가에 바로 kodex200에 매수주문을 넣는 스팟 수식을 부탁드립니다.
프로필 이미지
제우스
2025-11-07
159
글번호 227773
답변완료

종목객체에서 전일봉 데이터를 조회하면

종목객체에서 전일봉 데이터를 조회하면전일부터 데이터가 받아져야하는데 전전일 데이터부터 받아집니다.예를 들어 GetPrevHigh(1) 의 경우 전일 고가를 받아와야하는데 전전일 고가를 받아옵니다.
프로필 이미지
ruach
2025-11-06
152
글번호 227691
답변완료

DB insert 오류 문의

예스스팟의 Database객체 insert 함수를 이용하여 거래내역을 DB에 기록하고 있습니다.DB insert 실행시 insert함수의 반복실행 텀이 아주 짧을 경우 내용이 뒤죽박죽 되어 insert되는 현상이 발생합니다. (이미지의 빨간 박스 참고)텀이 짧을 경우 매번 이런 현상이 나타나진 않고 정상적으로 insert될 때도 있습니다. (이미지의 초록색 박스 참고)insert 함수의 사용텀을 지연시키는 것 외에 다른 솔루션이 있을지 문의드립니다.
프로필 이미지
훈sys
2025-11-05
141
글번호 227680
답변완료

엑셀 불러오기

안녕하세요 예스스팟에서 엑셀을 실시간으로 불러오기 기능이 구현가능할까요?/제가 트레이딩뷰에서 구현한 매매시그널을 신호가 나오면 실시간으로 엑셀로 저장가능하고 그걸 스팟에서 불러와서 매매를 해보고싶은데(예를들면 엑셀에 buy , sell, 수량 등을 읽어오는 방식으로 엑셀에 저장)구현가능한지 검토 부탁드립니다.
프로필 이미지
소드노
2025-11-03
153
글번호 227590

민재77 님에 의해서 삭제되었습니다.

프로필 이미지
민재77
2025-11-03
30
글번호 227586
답변완료

신속하고 친절한 답변 감사 합니다.

Python 기반 강화학습 자동매매 시스템과의 연동과 관련하여 다음 몇가지 질문 드립니다. 1. 예스스팟의 JScript 환경에서 직접 적이거나 fetch 또는 XMLHttpRequest 와 같은 간접적인 방법에 의한 HTTP 지원여부 및 방안. 그리고 모의 거래시에도 DB와의 연동이 실거래와 마찬가지로 원활하게 사용 가능 한지요? 2. DB1 객체가 DSN을 통한 로컬 SQLite DB 연결 시 'Error initializing DB connection' 오류 발생 초기화에 실패 하였습니다. 특히 스크립트 로딩시점에 초기화 오류 원인에 대하여 해결 방안을 말씀해 주시면 감사 하겠습니다. 또한 초기화 실패가 원인 인줄은 잘 모르겠으나 가원장 체킹이 안 되고 있습니다. 3. 해외선물(MYMZ25) 거래에서 SQLite DB 연동과 관련한 예제를 하나 올려 주시면 정말 감사 하겠습니다.
프로필 이미지
너무조아
2025-11-01
198
글번호 227560
답변완료

대체거래소 시세주문

안내해주신 공지사항 (https://www.yesstock.com/community/notice-dtl?postNo=227137&searchType=&searchValue=)봤는데제가 사용하고 있는 코드는 종목객체속성도 없고 코드 예제에 속성도 좀 달라서 ......ordersell, orderbuy 이 부분만 고치면 되는가요?속성 부분이 예제랑 달라서... 수정 부탁드려요 ㅠ sor로 수정 하고 싶습니다-------------------아래 코드 -------------------------------var timer5 = 3; //3초var 매수금 = 1500000;var 손절 = 0.975;var 익절 = 1.15;var OrderList = [];var MKList = [];var req;function Main_OnStart(){ //1번 타이머, 5초 Main.SetTimer(1, timer5*1000); // 오늘 매수한 종목 관리 배열 초기화 MKList = []; //스팟 시작시 잔고평가금액 V1 = Account2.GetBalanceETCinfo(100); }function Main_OnTimer(nEventID){ var d = new Date(); YYYYMMDD = d.getFullYear()*10000+(d.getMonth()+1)*100+d.getDate(); HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); if (nEventID == 1 && HHMMSS >= 090459 && HHMMSS < 151900) { //종목검색 수행 Main.ReqPowerSearch("메인733511") } if (nEventID == 1) { //계좌보유종수 var num = Account2.GetTheNumberOfBalances(); //9시~15시 15분 사이 if (HHMMSS >= 090459 && HHMMSS < 151900) { //보유종목이 1개 이상 if (num >= 1) { //계좌평가금액이 스팟시작시 평가금액대비 5% 이상이면 전종목 전량매도 if (Account2.GetBalanceETCinfo(100) >= V1*1.10) { //1번 타이머 종료 Main.KillTimer(1); //계좌리스트의 순서대로 for (var i = 0; i < num; i++) { //잔고를 셋팅 Account2.SetBalance(i); //수량이 있고 5%수익이거나 5% 손실이면 시장가 매도 if (Account2.Balance.count > 0) { Account2.OrderSell(Account2.Balance.code,Account2.Balance.count,0,1); } } } else //아니면 개별종목 5%익절, -5%손절 체크 { //계좌리스트의 순서대로 for (var i = 0; i < num; i++) { //잔고를 셋팅 Account2.SetBalance(i); //수량이 있고 5%수익이거나 5% 손실이면 시장가 매도 if (Account2.Balance.count > 0 && (Account2.Balance.current >= Account2.Balance.avgUnitCost*익절 || Account2.Balance.current <= Account2.Balance.avgUnitCost*손절)) { Account2.OrderSell(Account2.Balance.code,Account2.Balance.count,0,1); } } } } } //15시 15분이후이면 if (HHMMSS >= 152900) { //1번 타이머 종료 Main.KillTimer(1); //계좌리스트의 순서대로 for (var i = 0; i < num; i++) { //잔고를 셋팅 Account2.SetBalance(i); //수량이 있고 5%수익이거나 5% 손실이면 시장가 매도 if (Account2.Balance.count > 0) { Account2.OrderSell(Account2.Balance.code,Account2.Balance.count,0,1); } } } } if (nEventID == 2) { Main.ReqMarketData(OrderList[req]); }}function Main_OnRcvItemList(aItemList, nCount){ Main.KillTimer(1); OrderList = []; if (nCount >= 1) { if (MKList.length == 0) { OrderList = aItemList; } else { for (var a = 0; a < nCount; a++) { var Add = true; for (var b = 0; b < MKList.length; b++) { if (aItemList[a] == MKList[b].code) { Add = false; } } if (Add == true && !IsStockInAccount(aItemList[a])) { OrderList.push(aItemList[a]); } } } } if (OrderList.length == 0) { Main.SetTimer(1, timer5*1000); } else { req = 0; Main.ReqMarketData(OrderList[req]); }}function Main_OnRcvMarketData(MarketData){ if (MarketData.code == OrderList[req]) { MKList.push(MarketData); // 계좌에 같은 종목이 있는지 확인 if (!IsStockInAccount(MarketData.code)) { // 계좌에 없는 경우에만 매수 //Account2.OrderBuy(MarketData.code,1,0,1); Account2.OrderBuy(MarketData.code,Math.floor(매수금/MarketData.Ask(1)),0,1); //Account2.OrderBuy(MarketData.code,Math.floor(매수금/MarketData.Ask(1)),MarketData.Ask(1),0); //지정가로 주문하고자 하시면 주문함수 내용을 위와 같이 변경하시면 됩니다. Main.MessageList(MarketData.code + " 주식을 매수합니다."); } else { Main.MessageList( MarketData.code + " 주식은 이미 계좌에 있으므로 매수하지 않습니다."); } req = req+1; if (req < OrderList.length) { var aa = Main.ReqMarketData(OrderList[req]); if (aa == -1) { Main.SetTimer(2, 15000); } } else { Main.SetTimer(1, timer5*1000); } }}function IsStockInAccount(stockCode) { // 계좌에 해당 종목이 있는지 확인하는 함수 var numberOfBalances = Account2.GetTheNumberOfBalances(); for (var i = 0; i < numberOfBalances; i++) { Account2.SetBalance(i); if (stockCode == Account2.Balance.code) { return true; // 계좌에 같은 종목이 있으면 true 반환 } } return false; // 계좌에 같은 종목이 없으면 false 반환}
SOR주문
프로필 이미지
허밍스타
2025-10-29
205
글번호 227426
답변완료

수식 문의드림니다

선물신호를 받아 etf 종류인 코덱스 인버스 와 레버리지를 매수 하고 싶은데요선물신호가 매도 발생하면 코덱스인버스를 매수하고선물신호에서 매수가 발생하면 코덱스 레버리지를 매수 하는 스팟 수식 부탁드림니다* 주의점은 선물신호가 매수인 경우는 이익방향이 같기 때문에 코덱스레버리지를 같은 방향으로 매수하는 것이 맞는데요주식의 성질을 같는 코덱스인버스는 선물처럼 매도를 할수 없기 때문에선물에서 매도신호가 나오면 매수하는 것으로 수식 작성 부탁드림니다
선물신호ETF주문
프로필 이미지
mao
2025-10-27
208
글번호 227345

iamdenison 님에 의해서 삭제되었습니다.

프로필 이미지
iamdenison
2025-10-27
6
글번호 227343
답변완료

문의 드립니다.《매수,매도 예정가》

장 종료후 개별종목 다음날 매수,매도 예정가격 매수,매도 신호를 볼수 있었는데개편후에는 어디서 조회 해볼수 있나요.
프로필 이미지
심산대박
2025-10-23
193
글번호 227257