커뮤니티

예스스팟 Q&A

답변완료

예스스팟에서

안녕하세요. 예스스팟에서 여러개의 차트를 연결하여 처리할 수 있는데요. 각 차트의 옵션종목을 가격의 등락에 따라 옵션종목코드를 예스스팟에서 변경할 수 있는지요? 예) 예스스팟에서 등가종목인 252를 매매하다가 가격이 올라서 257일 되었을 경우 현재는 차트에서 종목을 수동으로 변경해야 하는데 예스스팟에서 등가격종목이 변하면 해당 차트의 종목코드를 변경하고 매매할 수 있는지요?
프로필 이미지
richon
2013-04-26
1757
글번호 222338
답변완료

기능 문의

안녕하세요. 다음과 같은 기능이 가능한지 문의 드립니다. A, B 두개의 관심그룹을 비교해서 서로 다른 종목이 존재 할 경우, 1. 사운드를 울림 2. 관심 그룹 A의 종목을 모두 삭제하고 B로 대체. 그룹 B 종목 삭제. 감사합니다.
프로필 이미지
hugnkiss
2013-04-25
1847
글번호 222337
답변완료

수정 문의

선물신호연계(옵션 매수. 옵션 매도)식입니다만, 가격설정을 1.0~2.0 사이로 했더니 가끔 두 종목이 겹치네요. * 수정 문의 부탁드릴 것은, 그런 오류 없게끔 이식을 (2.0)에 제일 가까운 종목 한 개종목만 매매하도록 수정 부탁드립니다 (매수. 매도식 두개다 수정 부탁드립니다) * 추가로 질문인데, 1. 이렇게 가격이 겹칠 때 두 종목중 한 종목만 체결되는 것인지요? 2. 또 손절식이setstop이나 setstopprofit같은 함수식 조건이라도 오류없이 청산이 되는지요? 감사합니다 1. 옵션매수 var Start; var UNum; var LNum; var CallCode; var CallPrice; var PutCode; var PutPrice; var CC; var PP; var CallOrderCode; var PutOrderCode; function Main_OnStart() { Start = 0; } function Chart1_OnRiseSignal(Signal) { 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++) { if (Option.GetCurrent(0, i) <= 2.0 && Option.GetCurrent(0, i) >= 1.0) { CallPrice[i+LNum] = Option.GetCurrent(0, i); CallCode[i+LNum] = Option.GetATMCallRecent(i); } else { CallPrice[i+LNum] = -1; CallCode[i+LNum] = -1; } } for (var ii = -UNum; ii <= LNum; ii++) { if (Option.GetCurrent(1, ii) <= 2.0 && Option.GetCurrent(1, ii) >= 1.0) { PutPrice[ii+UNum] = Option.GetCurrent(1, ii); PutCode[ii+UNum] = Option.GetATMPutRecent(ii); } else { PutPrice[ii+UNum] = -1; PutCode[ii+UNum] = -1; } } //buy신호 발생시 if (Signal.signalKind == 1) { Start = 1; CC = -1; CallOrderCode = -1; for (var iii = -LNum; iii <= UNum; iii++) { if (CallPrice[iii+LNum] > CC) { CC = CallPrice[iii+LNum]; CallOrderCode = CallCode[iii+LNum] } } if (CC > 0) { Account1.OrderBuy(CallOrderCode, 1, 0, 1); Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드:"+CallOrderCode+" /START:"+Start); } else { Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } // Exitlong신호 발생시 if (Start == 1 && Signal.signalKind == 2) { Start = 0; if (CC > 0) { Account1.OrderSell(CallOrderCode, 1, 0, 1); Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드:"+CallOrderCode+" /START:"+Start); } else { Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } //sell신호 발생시 if (Signal.signalKind == 3) { Start = -1; PP = -1; PutOrderCode = -1; for (var iiii = -UNum; iiii <= LNum; iiii++) { if (PutPrice[iiii+UNum] > PP) { PP = PutPrice[iiii+UNum]; PutOrderCode = PutCode[iiii+UNum]; } } if (PP > 0) { Account1.OrderBuy(PutOrderCode, 1, 0, 1); Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드:"+PutOrderCode+" /START:"+Start); } else { Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } //exitshort신호 발생시 if ( Start == -1 && Signal.signalKind == 4) { Start = 0; if (PP > 0) { Account1.OrderSell(PutOrderCode, 1, 0, 1); Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드:"+PutOrderCode+" /START:"+Start); } else { Main.MessageLog("B신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } } 2. 옵션매도 var Start; var UNum; var LNum; var CallCode; var CallPrice; var PutCode; var PutPrice; var CC; var PP; var CallOrderCode; var PutOrderCode; function Main_OnStart() { Start = 0; } function Chart1_OnRiseSignal(Signal) { 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++) { if (Option.GetCurrent(0, i) <= 2.0 && Option.GetCurrent(0, i) >= 1.0) { CallPrice[i+LNum] = Option.GetCurrent(0, i); CallCode[i+LNum] = Option.GetATMCallRecent(i); } else { CallPrice[i+LNum] = -1; CallCode[i+LNum] = -1; } } for (var ii = -UNum; ii <= LNum; ii++) { if (Option.GetCurrent(1, ii) <= 2.0 && Option.GetCurrent(1, ii) >= 1.0) { PutPrice[ii+UNum] = Option.GetCurrent(1, ii); PutCode[ii+UNum] = Option.GetATMPutRecent(ii); } else { PutPrice[ii+UNum] = -1; PutCode[ii+UNum] = -1; } } //buy신호 발생시 if (Signal.signalKind == 1) { Start = 1; PP = -1; PutOrderCode = -1; for (var iiii = -UNum; iiii <= LNum; iiii++) { if (PutPrice[iiii+UNum] > PP) { PP = PutPrice[iiii+UNum]; PutOrderCode = PutCode[iiii+UNum]; } } if (PP > 0) { Account1.OrderSell(PutOrderCode, 1, 0, 1); Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드:"+PutOrderCode+" /START:"+Start); } else { Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } //exitlong신호 발생시 if ( Start == 1 && Signal.signalKind == 2) { Start = 0; if (PP > 0) { Account1.OrderBuy(PutOrderCode, 1, 0, 1); Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드:"+PutOrderCode+" /START:"+Start); } else { Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } //sell신호 발생시 if (Signal.signalKind == 3) { Start = -1; CC = -1; CallOrderCode = -1; for (var iii = -LNum; iii <= UNum; iii++) { if (CallPrice[iii+LNum] > CC) { CC = CallPrice[iii+LNum]; CallOrderCode = CallCode[iii+LNum] } } if (CC > 0) { Account1.OrderSell(CallOrderCode, 1, 0, 1); Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드:"+CallOrderCode+" /START:"+Start); } else { Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } // Exitshort신호 발생시 if (Start == -1 && Signal.signalKind == 4) { Start = 0; if (CC > 0) { Account1.OrderBuy(CallOrderCode, 1, 0, 1); Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드:"+CallOrderCode+" /START:"+Start); } else { Main.MessageLog("S신호종류:"+Signal.signalKind+" /종목코드: 지정한 가격대 종목이 없음"+" /START:"+Start); } } }
프로필 이미지
털보
2013-04-30
1883
글번호 222336
답변완료

보안 설정

안녕하세요~ 일전에 건의드린 내용인데, 아직 수정이 안된듯 하여 다시 한번 건의드립니다. 현재 예스스팟 편집기에서 '보안 설정'을 할 때, 만기일 지정이 제대로 안되고 있습니다. 즉, 특정기간까지만 사용하도록 설정이 안되는데, 이부분 수정 부탁드립니다. 아울러 YT의 배포버젼처럼, YesSpot도 '배포버젼'으로 처리가 가능하면 좋겠습니다. (이부분이 당분간 어렵다면, 만기지정 문제라도 꼭 부탁드립니다) 감사의 달인 5월이 다가옵니다. 그럼 오늘도 즐거운 하루되시기를 바라며, 감사합니다 !!!
프로필 이미지
새로운세상
2013-04-24
1936
글번호 222335
답변완료

좀 더....

여기에 수평추세선을 그을수 있다면 좀 더 정확한 분석이 가능할 텐데,,,,,,, 건의 합니다.
프로필 이미지
하늘거지
2013-04-23
1982
글번호 222334
답변완료

예스스팟에서는 거래소로 직접 주문 넣는것이 가능한지요?

수고하십니다. 예스글로벌에서 체결 관련 문제가 있어서 시세가 급변할때 일어날 수 있는 문제라고 했는데 시세가 급변할때도 체결 안될때도 있지만 급변 안해도 지정된 가격에서 청산 안되는 경우가 많았습니다. 형태만 stop, limit 주문이지 사실상 시스템에서 신호 감지해서 주문 내는 형식이라 거래소로 주문을 보내서 체결시키는 것에 비해서 많이 불리하다고 생각합니다. 그래서 질문드리는 것인데 예스트레이더 4.0과 예스스팟에서는 신호 발생시 거래소로 예약주문을 넣는것이 가능한지 하는 것입니다.
프로필 이미지
개냥이
2013-04-19
2103
글번호 222330
답변완료

질문드립니다

수고하십니다.. 외부변수에 원금 & MDD를 설정한 후에 _OnStart var 계좌평가 = GetBalanceETCinfo(nKind) ; if (원금 - 계좌평가) > 원금*MDD then AccountFreeze = 1 ; Else AccountFreeze = 0 ; 상기와 같이 MDD 이상의 손실일경우 포지션 추가진입없이 대기상태에서 자동매매를 정지시킬려고 합니다 질문1 : 현금 예수금일 경우 nKind를 몇번으로 해야하는지?(0,39 or 40) 질문2 : 대용을 포함하는 경우?
프로필 이미지
희망차사
2013-04-18
2082
글번호 222328
답변완료

장전 동시호가 시간에 선물/옵션 예상체결가 제공하나요?

안녕하세요? 예스스팟에서 장전 동시호가 시간에 선물과 옵션의 예상체결가를 이용하여 전략을 작성하고 싶은데요 어떻게 확인해야 하는지 궁금합니다. 혹시 데이터를 제공하고 있지 않다면 추후 업데이트를 통해서 제공해 주실 수 없는지요? 현재가 화면에서 확인할 수 있는것으로 보아 기술적으로는 가능하지 않을까 싶은데요 가능하다면 사용할 수 있게 해 주시면 감사하겠습니다. ^^
프로필 이미지
아인슈타인
2013-04-18
2041
글번호 222327
답변완료

591문의

591문의는 정상 작동되어 삭제하였습니다.
프로필 이미지
mir
2013-04-18
2048
글번호 222326
답변완료

함수 및 RegChartItem 사용법 문의

안녕하십니까. 1. 예스스팟에서 콜풋종목중에서 특정가격에 가장 가까운 종목을 찾는 함수를 아래와 같이 작성했는데 다음과 같은 에러가 납니다. 무엇이 문제인지요? TypeError: Property 'find_option_code' of object [object Object] is not a function function find_option_code(call_put, call_put_price) { var UNum = Option.uppersATM; var LNum = Option.lowersATM; var temp_price = 9999; var temp_code = ""; if (call_put = 1 ) { for (var i = -LNum; i <= UNum; i++) { if (Option.GetCurrent(0, i) >= call_put_price && temp_price > Option.GetCurrent(0, i)) { temp_price = Option.GetCurrent(0, i); temp_code = Option.Option.GetATMCallRecent(i); } } find_option_code = temp_code; } if (call_put = -1 ) { for (var i = -LNum; i <= UNum; i++) { if (Option.GetCurrent(1, i) >= call_put_price && temp_price > Option.GetCurrent(1, i)) { temp_rice = Option.GetCurrent(1, i); temp_code = Option.Option.GetATMPutRecent(i); } } find_option_code = temp_code; } } 2. 객체중에 RegChartItem이 있던데 이것은 언제 어떻게 사용할 수 있는 것인가요? 예를 들면 예스4.0에서 chart를 dummy로 만들어놓고, 차트의 종목을 예스스팟에서 변경 가능한 것인가요? 아니면, 예스스팟에서 chart Object를 만들어서 사용할 수 있는 것인가요? 만약에 예스스팟에서 만들어 사용할 수 있다면 어떻게 사용예제를 간단하게 만들어 주세요. 감사합니다.
프로필 이미지
richon
2013-04-17
2173
글번호 222325