커뮤니티

예스스팟 Q&A

시골소년 님에 의해서 삭제되었습니다.

프로필 이미지
시골소년
2014-03-23
11
글번호 222879

파문일기 님에 의해서 삭제되었습니다.

프로필 이미지
파문일기
2014-03-19
0
글번호 222871
답변완료

수식 점검 부탁드립니다^^

계좌객체 옵션객체 설정.. 1. 장시작후 2.5에 근접한 옵션을 설정(2.5 대항옵션)후 콜 2.5, 풋 2.5근접 옵션을 기준으로 위, 아래 행사가를 3-4개 참조해서 확장챠트를 콜 풋 각각 만듭니다. 2. 만들어진 확장챠트에 예스랭기지 수식으로 만들어진 시스템(OpCall, OpPut)을 적용하고 싶습니다. - 현재는 예스스팟전략 시험가동시 messagelist(콜,풋코드)가 뜹니다. 챠트 객체 생성후에 "정의되지 않은 업무가 요청되었습니다.(E_UNKONOWN_GBN)(10003)" 이라 뜨는데... 3. OpCall, OpPut 시스템의 진입명과 수량을 그대로 이용하고 싶습니다. 첨부파일은 적용하는 시스템이고, 또 챠트를 띄우는 방법을 알려주시면 ..... 감사합니다 var Start; var UNum; var LNum; var CallCode; var CallPrice; var PutCode; var PutPrice; var CC; var PP; var CallOrderCode; var PutOrderCode; var vol1; var vol2; var CallStart; var PutStart; var ChartEx1 ;//= null; var ChartEx2 ;//= null; function Main_OnStart() { Start = 0; vol1 = 0; vol2 = 0; CallStart = 0; PutStart = 0; var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); //9시 5분에 if (Start == 0 && HHMMSS >= 90001)// && HHMMSS >= 90030 { Start = 1; UNum = Option.uppersATM; LNum = Option.lowersATM; CallCode = new Array(UNum+LNum+1); PutCode = new Array(UNum+LNum+1); CallPrice = new Array(UNum+LNum+1); PutPrice = new Array(UNum+LNum+1); for (var i = -LNum; i <= UNum; i++) { CallPrice[i+LNum] = Math.abs(Option.GetCurrent(0, i)-2.3); CallCode[i+LNum] = Option.GetATMCallRecent(i); } CC = 99999999; // CallOrderCode = -1; for (var i = -LNum; i <= UNum; i++) { if (CallPrice[i+LNum] < CC) { CC = CallPrice[i+LNum]; CallOrderCode = CallCode[i+LNum]; } if (CallOrderCode == CallCode[i+LNum]) { CallOrderCode1 = CallCode[i+LNum-1]; CallOrderCode2 = CallCode[i+LNum+1]; CallOrderCode3 = CallCode[i+LNum+2]; } } for (var ii = -UNum; ii <= LNum; ii++) { PutPrice[ii+UNum] = Math.abs(Option.GetCurrent(1, ii)-2.3); PutCode[ii+UNum] = Option.GetATMPutRecent(ii); } PP = 99999999; // PutOrderCode = -1; for (var ii = -UNum; ii < LNum; ii++) { if (PutPrice[ii+UNum] <= PP) { PP = PutPrice[ii+UNum]; PutOrderCode = PutCode[ii+UNum]; } if (PutOrderCode == PutCode[ii+UNum]) { PutOrderCode1 = PutCode[ii+UNum-1]; PutOrderCode2 = PutCode[ii+UNum+1]; PutOrderCode3 = PutCode[ii+UNum+2]; PutOrderCode4 = PutCode[ii+UNum+3]; } } Main.MessageList("콜",CallOrderCode ,"풋",PutOrderCode); // 이자리까지는 확인이 됩니다. 확장챠트 형서이 않됩니다. //확장 차트객체 요청 var ReqChartItem1 = new ReqChartItem(CallOrderCode,10, CHART_PERIOD_SECOND, 5000, CHART_REQCOUNT_BAR, false, false); // var ChartSet2 = new ReqChartItem(PutOrderCode,10, CHART_PERIOD_SECOND, 5000, CHART_REQCOUNT_BAR, false, false); //참조데이터 추가 var ReqChartItem2 = new ReqChartItem(PutOrderCode1, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem3 = new ReqChartItem(PutOrderCode, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem4 = new ReqChartItem(PutOrderCode2, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem5 = new ReqChartItem(CallOrderCode1, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem6 = new ReqChartItem(CallOrderCode2, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem7 = new ReqChartItem("00000000", 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem8 = new ReqChartItem(PutOrderCode3, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem9 = new ReqChartItem(PutOrderCode4, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReqChartItem10 = new ReqChartItem(CallOrderCode3, 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); //var R20 = new ReqChartItem("EI735", 10, CHART_PERIOD_SECOND, 3000, CHART_REQCOUNT_BAR, false, false); var ReferDataSet1 = new Array(ReqChartItem10,ReqChartItem2,ReqChartItem3,ReqChartItem4,ReqChartItem5,ReqChartItem6,ReqChartItem7,ReqChartItem8,ReqChartItem9); //시스템 설정 var SystemInfo1 = new SystemInfo("OpCall",YL_TYPE_NORMAL,null,null,null); // var SystemSet2 = new SystemInfo("OpPut",YL_TYPE_NORMAL,null,null,null); //지정한 설정으로 챠트 생성을 요청 Main.ReqChartEx(ReqChartItem1,SystemInfo1,null,ReferDataSet1); // Main.ReqChartEx(ChartSet2,SystemSet2,null,ReferDataSet2); } } //요청한 차트객체 생성이 완료되면 function Main_OnRcvChartEx(ChartEx) { if (ChartEx.GetCode(1) == PutOrderCode) { ChartEx2 = ChartEx; PutStart = 1; } } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) { if (sItemCode == PutOrderCode && lUp*dateID == 20001) { // if (ChartEx2 != null) { Main.MessageList("Code",ChartEx2.GetCode(1)); } } } //확장차트에서 신호나오면 주문 function Main_OnRiseSignal(ChartEx2, Signal) { //차트 if (PutStart == 1 && ChartEx2.GetCode(1) == PutOrderCode) { if (Signal.signalKind == 1) { vol2 = Math.abs(Signal.count); Account1.OrderBuy(Signal.code,vol2,Option.GetAskByCode(Signal.code,3),0); } if (vol2 > 0 && Signal.signalKind == 2) { Account1.OrderSell(Signal.code,vol2,Option.GetBidByCode(Signal.code,3),0); } if (Signal.signalKind == 3) { vol2 = Math.abs(Signal.count); Account1.OrderBuy(Signal.code,vol2,Option.GetBidByCode(Signal.code,3),0); } if (vol2 > 0 && Signal.signalKind == 4) { Account1.OrderBuy(Signal.code,vol2,Option.GetAskByCode(Signal.code,3),0); } } }
프로필 이미지
파문일기
2014-03-20
1399
글번호 222870
답변완료

스팟 오류

오늘 아래와 같은 오류가 나서 청산이 안되었는데 수식의 오류가 있는지 문의드립니다. 예스스팟모니터에는 아래와 같이 오류가 나서 미체결주문이 되었는데 혹시 미체결일때 재주문할 수 있는 수식도 Sample이 있으면 부탁합니다. 주문가격 1.-2147483648 주문상태 [check_order_ok]가격 제한폭 초과[0.010000][36.500000][301J3250]: sqlnum 20003 사용 스팟수식은 아래와 같습니다. if (Start == 2 && Signal.signalKind == 4 ) //ExitShort신호발생시 주문종목 청산 { var SxP_price = Option.GetBidByCode(SellP_code, 5); A1.OrderSell(SellP_code, Vol, SxP_price, 0); }
프로필 이미지
펠릭스
2014-03-13
1398
글번호 222866
답변완료

실시간 데이터 받기

항상 빠른 답변을 주셔서 감사 합니다. 아직 함수들 사용에 미흡해서 무슨 함수를 써야하는지 공부중에 있는데 잘 이해가 안가네요. 예스스팟 프로그램중 질문이 있어 문의 드립니다. 예스랭기지를 사용해서 시작한후 선물 3분차트의 첫째봉의 고가 저가를 표시하는 차트를 지표로 추가를 하였습니다. 예스 랭기지 부분 Var : min_high(0), min_low(0); min_high = TimeHigh(090000,090259); min_low = TimeLow(090000,090259); Plot1(min_high, "고가"); Plot2(min_low, "저가"); 예스스팟 부분 var minhigh = C1.GetIndicatorData("고가저가", 1, 0); var minlow = C1.GetIndicatorData("고가저가", 2, 0); 예스 스팟에서 SyntaxError : Unexpected token ILLIEGAL 이라고 나옵니다. 예스랭지기에서 plot에 대해서 print해서 data를 디버깅으로 보니 시작 시점이 예로써 처음에는 9시가 아니여서 그런지 (1.#R)로 표시되다가 다음날 9시가 되면 정상적인 data가 나옵니다. 이부분 때문에 예스스팟에서 error가 띄는것 같은데 어떻게 해야 하나요? 답변 주시면 감사 하겠습니다.
프로필 이미지
jonathan
2014-03-21
1342
글번호 222865
답변완료

몇가지 질문 드립니다~

Q1) 첨부한 그림1을 보시면, 코드에서 4~7번 줄 사이(OnStart의 본문 구간)에는 본문을 접을 수 있는 표시가 생기는데 왜 밑의 함수에는 그런 표시가 안생기나요? 생기게 할 수 있나요? Q2) 예스스팟으로 주문을 내면 예스트레이더에 연계된 챠트에서(예:F1) 그 주문낸 내용이 표시가 되나요? 표시가 된다면, 체결되었을 때 표시가 되나요?
프로필 이미지
온고지신
2014-03-13
1280
글번호 222864

온고지신 님에 의해서 삭제되었습니다.

프로필 이미지
온고지신
2014-03-13
0
글번호 222863

온고지신 님에 의해서 삭제되었습니다.

프로필 이미지
온고지신
2014-03-13
1
글번호 222862
답변완료

문의드립니다

안녕하세요 예스 스팟을 이용하여 주식매매 시에 스팟 프로그램에 매수금액 및 수익률을 넣지 않고 일반 지표에서 처럼 입력 받아서 처리 하고 싶습니다 가능한지요? 가능하다면 샘플 좀 부탁드립니다
프로필 이미지
무영세
2014-03-10
1328
글번호 222861
답변완료

수식 부탁드립니다

안녕하세요. 스팟에 주식 개별종목 차트를 지정하고, 장 시작과 동시에 일정금액을 지정가로 주문하는 수식 가이드 부탁드립니다. 1. 장 시작과 동시에, 지표1의 한틱 위에 일정금액 매수주문 (지표1에 현재가 도달여부와 상관없이) 2. 시스템에서 매수신호 발생하면, 1의 주문이 전량 체결되었으면 무시하고 체결되지 않았거나 일부만 체결되었으면 정정 매수주문 3. 시스템 매도신호 발생하면 매수청산하고 미체결 잔량에 대하여 매수주문 취소 4. 1의 매수 주문가 대비 3% 손실이면 청산주문 그럼 수고하시구요, 미리 감사드립니다..
프로필 이미지
somun
2014-03-09
1209
글번호 222859