커뮤니티

예스스팟 Q&A

바둑이 님에 의해서 삭제되었습니다.

프로필 이미지
바둑이
2020-08-27
8
글번호 225302
답변완료

ReqChartEx 로 사용하는 차트의 이름 지정이 가능한가요?

안녕하세요. 예스스팟 코드 상에서 ReqChartEx 로 차트 요청해서 사용하고 있습니다. [6131] 예스스팟 - 전략 화면에 보면 전략에서 사용중인 차트와 그리드, 이력변수 등을 볼 수 있는데 차트 보기에서 차트들의 이름이 #D651B80 처럼 알수 없는 값으로 되어 있어서 불편하네요. 이름을 지정할 수 있는 방법이 있을까요? 아니면 기능 업데이트를 부탁드리겠습니다.
프로필 이미지
kdh4865
2020-08-26
2114
글번호 225300
답변완료

포트폴리오 매매

안녕하세요. 아래의 포트폴리오 매매 전략이 예스랭귀지나 예스스팟으로 구현 가능한지 검토바랍니다. 제 생각에는 예스랭귀지로는 불가능하고 스팟으로만 가능할 것 같은데요... 1. 계좌 총 평가자산 조회 2. 두종목(A종목과 B종목) 70% : 30% 비율로 매수 3. 특정기간(예: 한달)이후 계좌 총 평가자산 조회 : (A종목x수량)+(B종목x수량)+현금 4. 계좌 총 평가자산을 기초로 다시 두종목에 대한 70% : 30% 비율계산 5. 비율 초가분은 매도 청산하고 비율 부족분은 매수 : 리밸런싱 예를들어, 100을 투자자산으로 A종목 70 / B종목 30 매수 진입이후 한달뒤에 총 평가자산이 110으로 A종목 74 / B종목 36 이 되었을때 B종목 3을 매도 청산하고 A종목 3을 매수하여 A종목 77 / B종목 33 으로 매달 리밸런싱하는 전략입니다.
프로필 이미지
몬스터
2020-08-18
2372
글번호 225299
답변완료

시스템 수식 수정 문의

0915시에 "분봉장중단타1.5" 파워검색 실시 후 나온 종목들에 대해 시스템을 실행하려고 합니다. 아래와 같이 코딩했는데... 어디가 문제인지 모르겠습니다. ㅜㅡ var List; var ListCnt; var ReqCount; var HHMMSS,HHMMSS1; //스팟 첫 실행시 function Main_OnStart() { Main.MessageLog("시작"); //시작 메세지 출력 Main.SetTimer(1,60000); } function Main_OnTimer(nEventID) { if (nEventID == 1) { var d = new Date(); HHMMSS1 = HHMMSS; HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); if (HHMMSS >= 093000 && HHMMSS1 < 0930) // 0930시 파워검색 실시 { Main.ReqPowerSearch("분봉장중단타1.5"); Main.MessageLog("파워검색시작"); Main.KillTimer(1); } } } function Main_OnRcvItemList(aItemList, nCount) //종목검색 완료되어 리스트(검색된 종목코드) 수신 { List = aItemList; //검색된 종목코드를 저장 ListCnt = nCount; //검색된 종목수 저장 Main.SetTimer(2,2000);//2초 타이머 ReqCount = 0; } function Main_OnTimer(nEventID) { if (nEventID == 2) //2초 단위로 한종목씩 차트 생성 { if (ReqCount == ListCnt) //요청이 검색된 종목수 만큼 되었으면 터이머 종료 Main.KillTimer(2); //ReqCount번째 종목요청 //종목검색 후 종목코드가 aItemList에 배열로 담겨오는데 [0]번방 부터 요청 //차트설정 :종목, 주기 분봉, 조회건수 1500 var C1 = new ReqChartItem(List[ReqCount], 1, CHART_PERIOD_MINUTE, 1500, CHART_REQCOUNT_BAR, false, false); //시스템 설정 var S1 = new SystemInfo("feel29na_ver_1.0"); //C1차트설정, S1시스템설정으로 첫번째 종목 차트 생성 Main.ReqChartEx(C1,S1); ReqCount = ReqCount+1;//요청횟수 1증가 } } //생성된 차트에서 신호가 발생하면 function Main_OnRiseSignal(ChartEx, Signal) { //신호완성 출력 Main.MessageLog("신호발생"); //매수신호 발생하면 매수주문 if (Signal.signalKind == 1) { Account1.OrderBuy(Main.GetOrderCode(ChartEx.code),1,0,1); Main.MessageLog("매수"); } //청산신호 발생하면 매도주문 if (Signal.signalKind == 2) { Account1.OrderSell(Main.GetOrderCode(ChartEx.code),1,0,1); Main.MessageLog("매수청산"); } }
프로필 이미지
feel29na
2020-08-17
2347
글번호 225298

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

프로필 이미지
훈sys
2020-08-10
1
글번호 225297

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

프로필 이미지
edan
2020-08-02
4
글번호 225293
답변완료

실시간 가격비교 중 GetHigh 관련문의

안녕하세요. 예스스팟을 이용해서 전략들을 만들고있는데 궁금한 부분이 생겨서 문의드립니다. 매수 이후에 타이머를 500ms 간격으로 돌면서 현재 가격과 비교하여 어느정도 이상이면 청산을 하도록하는 내용입니다. 처음에는 Account 객체안의 balance에서 제공하는 보유종목의 현재가격과 비교하였으나 급격한 변화가 잇을경우 뫀표가에 도달했음을 놓치고 지나갈수노 있다는 생각이 들더라구요. 그래서 차트객체에서 GetHigh를 통해 현재 진행중인 봉의 최고가와 비교를 하도록 하고있습니다. 그런데 종종 GetHigh에서 제대로된 값을 얻을수 없다는 참조오류가 발생하더라구요. 틱봉일때 주로 발생하는것 같긴한데 왜 이런문제가 발생하는걸까요? 해결방법이나 다른 접근방싴이 있을까요?
프로필 이미지
zwan
2020-07-30
2382
글번호 225292
답변완료

예스스팟 신용주문

하이투자 예스트레이더로 시스템구현하여 시험주문으로 테스트돌리고있는데 유통융자주문으로 신용주문을 넣으니 오류가뜨네요 자기융자만 지원이라고 뜨는데 유통융자로 신용주문 불가능한건가요? 그리고 자기융자로 주문을 설정하면 어떻게되나요? 손매매로 신용주문해보면 항상 유통융자로만뜨던데 가능여부도 알려주시면 감사하겟습니다
프로필 이미지
하얀머리
2020-07-30
2177
글번호 225291
답변완료

종목 검색 및 검색된 종목에 대한 시스템 자동 적용

안녕하세요... 예스스팟은 잘 몰라서.. 기초적인 질문일 수 있으나.. 여쭙습니다. 예스랭귀지로 작성한 검색식 A를 0915시에 실시하고 기다렸다가 0930시에 다시 실시하고 그렇게 모아진 종목들에 대해서 예스랭귀지로 작성한 B라는 시스템식을 적용하고 싶은데.. 기본 틀이라도 부탁드립니다.
프로필 이미지
feel29na
2020-07-28
2125
글번호 225290
답변완료

수식 점검 좀 해 주세요^^;;

3.0 근접 옵션 매수식인데.. 예스스팟에서 실행하면 12번째 줄이 ubexpected token;; 이라고 나오네요.. 12번째줄이 요놈... function Main::OnStart() 혹시 수식연습할 수 있는데 예제들이 있나요? ---------------------------------------------------------- var CPrice = new Array(101); var CCode = new Array(101); var PPrice = new Array(101); var PCode = new Array(101); var MaxCall; var MaxCallCode; var MaxPut; var MaxPutCode; function Main::OnStart() { //ATM-50~+50까지 종목중 0~3사이 종목을 제외하고 모두 -1처리 for(var i = -50; i <= 50; i++) { if (Option.GetCurrent(0,i) < 3 && Option.GetCurrent(0,i) > 0) { CPrice[50+i] = Option.GetCurrent(0,i); CCode[50+i] = Option.GetATMCallRecent(i); } else { CPrice[50+i] = -1; CCode[50+i] = -1; } if (Option.GetCurrent(1,i) < 3 && Option.GetCurrent(1,i) > 0) { PPrice[50+i] = Option.GetCurrent(1,i); PCode[50+i] = Option.GetATMPutRecent(i); } else { PPrice[50+i] = -1; PCode[50+i] = -1; } } //저장된 CPrice, PPrice값중 최고값 계산 MaxCall = -1; MaxCallcode = -1; MaxPut = -1; MaxPutcode = -1; for(var A = 0; A <= 100; A++) { if (CPrice[A] > MaxCall) { MaxCall = CPrice[A]; MaxCallcode = CCode[A]; } if (PPrice[A] > MaxPut) { MaxPut = PPrice[A]; MaxPutcode = PCode[A]; } } Main.MessageLog("가격:"+MaxCall+"종목코드:"+MaxCallcode); Main.MessageLog("가격:"+MaxPut+"종목코드:"+MaxPutcode); }
프로필 이미지
비오80
2020-07-27
2006
글번호 225289