커뮤니티

예스스팟 Q&A

답변완료

수식 오류 확인 부탁드립니다.

다음 수식으로 차트와 연결하여 사용하려고 하는데 주문이 나갈때도 있고 안나갈때도 있습니다. 무엇이 잘 못되었는지 검증 부탁드립니다. var T,YYYYMMDD,daycount; var d = new Date(); var T1 = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); function Main_OnStart() { Main.MessageList("Start"); T = 0; var d = new Date(); YYYYMMDD = d.getFullYear()*10000+(d.getMonth()+1)*100+d.getDate(); Main.SetTimer(1, 5000); if (Main.GetUserValue(YYYYMMDD) == "20200611") { daycount = true; } else { daycount = false; } } function Chart1_OnRiseSignal(Signal) { if (T1>=90400 && Signal.signalKind == 1) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), Signal.count, MarketData1.Ask(5), 0); } if (T1>=90400 && Signal.signalKind == 2) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), Signal.count, 0, 1); } if (T1>=90400 && Signal.signalKind == 3) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), Signal.count, MarketData1.Bid(5), 0); } if (T1>=90400 && Signal.signalKind == 4) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), Signal.count, 0, 1); } } function Main_OnTimer(nEventID) { var d = new Date(); var T1 = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); if (nEventID == 1 && daycount == true && T1>=152100) { Main.KillTimer(1); Account1.SetBalance(Main.GetOrderCode(MarketData1.code), 0); if (Account1.Balance.count > 0 && Account1.Balance.position == 1) { Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,0,1); } if (Account1.Balance.count > 0 && Account1.Balance.position == 2) { Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,0,1); } } if (nEventID == 1 && daycount == false && T1>=153600) { Main.KillTimer(1); Account1.SetBalance(Main.GetOrderCode(MarketData1.code), 0); if (Account1.Balance.count > 0 && Account1.Balance.position == 1) { Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,0,1); } if (Account1.Balance.count > 0 && Account1.Balance.position == 2) { Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,0,1); } } }
프로필 이미지
삼룡이
2020-04-17
3541
글번호 225198
답변완료

스팟 스크립트에서 5분봉, 10분봉, 15분봉별로 매매하고자 경우, 선별은?

안녕하세요. 제가 단일 스팟 스크립트에서 같은 전략으로 분봉만 다르게 하여 5분봉, 10분봉, 15분동 3개 돌리고자 합니다. 아래는 제가 실제 구성해서 사용하고 있는 것으로 현재는 5분봉에 대해서만 사용합니다. 스크립트 객체는 1. Main 2. Account1 3. ChartEx1 YS 코드 function Main_OnRiseSignal(ChartEx, Signal) { if(Signal.signalKind == 1) { } } 제가 생각하는 방법으로는 .. 위 코드에 3개 분봉 CharEx을 만들어서 하면 될것 같습니다. 3. ChartEx1 <-- 5분봉 4. ChartEx2 <-- 10분봉 5. ChartEx3 <-- 15분봉 이렇게 하면 , OnRiseSignal 함수도 function Main_OnRiseSignal(ChartEx1, Signal) { } function Main_OnRiseSignal(ChartEx2, Signal) { } function Main_OnRiseSignal(ChartEx3, Signal) { } A. 이렇게 만들면 되는지요? B. 매매수량은 각 차트의 signal.count 로 사용해도 구분되는지요?
프로필 이미지
2ndbus
2020-04-16
3544
글번호 225197
답변완료

사용자 정의 함수의 인쇄

안녕하세요. YesSpot으로 만든 코드를 점검 중인데요. 코드를 프린터로 인쇄하여 가지고 다니며 들여다 보는데, 사용자 정의 함수는 어떻게 인쇄를 해야 하는 건지요? 아시는 분 있으시면 도움 부탁드립니다. 감사합니다.
프로필 이미지
좋은밤
2020-04-07
3943
글번호 225194
답변완료

파워종목에서 검색하면 아침에 검색이 잘 되던게 오후에는검색이 안됩니다

파워종목에서 검색하면 아침에 검색이 잘 되던게 오후에는검색이 안됩니다
프로필 이미지
소민수
2020-04-06
3753
글번호 225193
답변완료

미체결 주문 조회 및 취소

안녕하세요. 코스피200 선물 거래중 일정시간마다 미체결 내역을 조회후 해당 거래를 취소하는 스팟 코드를 작성중 질문드립니다. 일단 미체결 주문에 대한 조회를 하고 싶은데 아래와 같이 코드 작성후 수동으로 주문 이후 미체결 주문이 존재하는 상태에서 UnfillCnt가 계속 0으로 출력됩니다. 관련 내용 문의드립니다. function Main_OnStart() { Main.MessageLog("----- Start -----") Main.SetTimer(1, 10000); } function Main_OnTimer(nEventID) { var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); Main.MessageLog(HHMMSS); if (nEventID == 1 && HHMMSS >= 110000) { Main.MessageLog("미체결 조회 시작") var UnfillCnt = A1.GetTheNumberOfUnfills(); Main.MessageLog("미체결 건수 :" + UnfillCnt); } }
프로필 이미지
지순신
2020-04-06
3672
글번호 225192
답변완료

수식 문의 드립니다.

Q&A 등에 있는 스팟 수식을 조금씩 고쳐서 사용하고 있습니다. 요건 비슷한 글이 없어 뼈대를 만들기 힘들어서 여쭤봅니다. 최근 조건검색식에 맞는 종목수가 많이 떠서 조회횟수 에러가 떠서 이를 해결하고자 수식을 만들려합니다. 1. 12:00가 되면 "search A"란 조건으로 검색한다. 2. search A의 결과가 35종목 미만이면 search A의 종목을 거래량 내림차순으로 예수금을 10등분 하여 10종목 매수한다. 3. search A의 결과가 35종목 이상이면, "search B"란 조건으로 검색한다. 4. search B에 해당하는 종목을 거래량 내림차순으로 예수금을 10등분 하여 10종목 매수한다. 그리고 혹시 단순히 검색결과가 예를 들어 100종목이 넘는다든지 하는 이유로도 조회횟수 오류가 나올 수 있는지도 궁금합니다.
프로필 이미지
오전만트레이딩
2020-04-04
3737
글번호 225191

하임스 님에 의해서 삭제되었습니다.

프로필 이미지
하임스
2020-03-31
0
글번호 225190
답변완료

예스스팟에서 파워종목검색을 할때

예스스팟에서 파워종목검색을 할때 검색된 종목수가 60개 이상이면 조회제한에 걸리지는 궁금합니다. 종목데이터를 요청안할때에도 조회제한에 영향을 받는지 궁금합니다. 검색된 종목이 60개 이상일때 기준을 높여서 재검색하게 코딩했는데 제대로 돌아가지 않아 여쭤봅니다. if (Cnt > 59) {Main.ReqPowerSearch("1");} if (Cnt > 59) {Main.ReqPowerSearch("2");} if (Cnt > 59) {Main.ReqPowerSearch("3");}
프로필 이미지
ruach
2020-03-30
3915
글번호 225189
답변완료

매도식 부탁드립니다.

1. 관심종목의 종목이 매수되면 감시시작 2. 매수 이후 최고 상승이 n% 미만일 경우 2-1. 현재가 < 매수후_최고가*[1 - (n/2)/100] ==> 잔고의 50% 매도 2-2. 현재가 < 매수가*[1 - n/100] ==> 전량 매도 3. 매수 이후 최고 상승이 n% ~ (2*n) % 일경우 3-1 현재가 < 매수후_최고가*[1 - n/100] ==> 잔고의 50% 매도 3-2 현재가 < 매수가*[1 - (n/2)/100] ==> 전량 매도 4. 매수 이후 최고 상승이 (2*n) % 이상일 경우 4-1 현재가 < 매수후_최고가*[1 - n/100] ==> 전량 매도 5. 2~4번과 상관없이 매수가대비 2%, 3%, 4% 상승시 최초 잔고의 15% 씩 매도 6. T1 시간이후 1번에서 감시한 종목의 미체결 매도 취소후 전량 시장가 매도 감사합니다.
프로필 이미지
cs아빠
2020-03-27
3949
글번호 225188
답변완료

예스스팟에서 파워종목 검색 질문

Main.ReqPowerSearch 위의 함수를 사용하여 파워종목 검색 기능을 사용하는데 결과 값이 60개만 나옵니다. 상위 60개만 전달되는게 맞나요? 검색후 거래대금 순서대로 결과 값을 받고자 합니다. (100개 검색되면 거래대금 순서로 정렬후 리턴) 검색 결과가 전부 전달되던지 아니면 파워종목 검색 기능에서 거래대금 순서로 정렬해서 넘기던지 하는 방법이 있나요? (지금 순위 검색기능으로는 불가능합니다.)
프로필 이미지
매너모드
2020-03-26
4027
글번호 225183