커뮤니티

예스스팟 Q&A

답변완료

문의 드립니다.

선물신호로 옵션을 거래하고 있습니다. 여기서 선물 1계약(델타)과 비슷하게 옵션 종목 및 계약수를 선택하고 싶은데 근접하게라도 맞출 수 있는 방법이 있을까요?
프로필 이미지
달무드
2019-05-21
3495
글번호 224876

어나니머스 님에 의해서 삭제되었습니다.

프로필 이미지
어나니머스
2019-05-20
7
글번호 224875
답변완료

주식선물 종가청산 로직 검토부탁드립니다.

주식선물의 경우 장종료후 시장가가 없습니다. 장종료후 종가청산을 어떻게 해야할까요? 3시 36분에 지정가로 청산 가능한지 궁금합니다.
프로필 이미지
영원한자유
2019-05-20
3631
글번호 224874
답변완료

수식 수정 요청 드립니다.

안녕하세요. 당일 스팟수식 적용 후 차트에서 발생하는 첫 진입 신호로 1계약 진입, 동일방향 추가진입 보류 하고, 진입 후 첫 반대신호로 청산하게 요청 드립니다. 차트 신호 기준 입니다. 작성해주신 스팟수식을 장중 차트신호에 적용해보니 에러가 발생 하네요. 첨부파일 확인후 수정 요청 드립니다. (진입수량은 변경 할수있도록 외부변수로 요청드립니다. 수식 주석요청 드립니다.) 감사합니다. 안녕하세요 예스스탁입니다. 당일 첫신호는 알수 없습니다. 스팟 적용이후 첫 진입신호만 주문하게 수정했습니다. 스위칭은 차트에서 청산신호와 함께 진입신호가 발생하는 신호입니다. 진입만 첫진입으로 제어하시면 됩니다. var entry(0); function Main_OnStart() { entry = 0; } function Chart1_OnRiseSignal(Signal) { if(entry == 0 && Signal.signalKind == 1) { entry = entry+1; Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current + MarketData1.GetTickSize()*5, 0); } if (entry == 1 && Signal.signalKind == 2) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current - MarketData1.GetTickSize()*5, 0); } if (entry == 0 && Signal.signalKind == 3) { entry = entry+1; Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current - MarketData1.GetTickSize()*5, 0); } if (entry == 1 && Signal.signalKind == 4) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current + MarketData1.GetTickSize()*5, 0); } } 즐거운 하루되세요 > dandy 님이 쓴 글입니다. > 제목 : 수정요청드립니다. > 안녕하세요. 연결선물 당일청산 차트 신호로 미니선물 진입 청산하는 아래스팟 시스템에서 연결선물 차트의 매수 매도 진입 신호가 여러번 발생하는 차트에서 당일 첫신호로 미니선물 1계약만 진입 나머지 진입신호는 진입 보류하고, 청산시호 발생시 첫신호로 진입한 미니선물 1계약 청산하고 당일 매매종료하는 스팟수식으로 수정 요청 드립니다. 연결선물 매수 첫신호로 미니선물 1계약만 매수진입(추가 매수 진입신호 진입보류) -> 연결선물 매수청산신호 또는 매수 스위칭 반대신호 발생시 첫신호로 청산하고 당일매매종료. 연결선물 매도 첫신호로 미니선물 1계약만 매도진입(추가 매도 진입신호 진입보류) -> 연결선물 매도청산신호 또는 매도 스위칭 반대신호 발생시 첫신호로 청산하고 당일매매종료. (당일 첫진입신호 발생시 진입하고, 진입신호의 첫 반대신호 발생시 청산하고 당일 매매종료) 감사합니다. function Chart1_OnRiseSignal(Signal) { if (Signal.signalKind == 1) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current + MarketData1.GetTickSize()*5, 0); } if (Signal.signalKind == 2) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current - MarketData1.GetTickSize()*5, 0); } if (Signal.signalKind == 3) { Account1.OrderSell(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current - MarketData1.GetTickSize()*5, 0); } if (Signal.signalKind == 4) { Account1.OrderBuy(Main.GetOrderCode(MarketData1.code), 1, MarketData1.current + MarketData1.GetTickSize()*5, 0); } }
프로필 이미지
dandy
2019-05-15
3715
글번호 224867
답변완료

옵션잔존만기일

안녕하세요, 옵션잔존만기일을 하기와 같이 찍어보면 잔존일이 아닌 0값이 출력이 됩니다. 잔존일수는 어떻게 확인할 수 있을까요? function Main_OnStart() { Main.MessageLog(Option1.GetRemainDays(0, 0)) }
프로필 이미지
shining9
2019-05-14
3637
글번호 224863

검색으로 가져온 주식 종목의 일봉데이터를 가죠올 수 있는지요??

검색으로 주식 종목을 가져왔다고 가정하고요~ 그 각각의 종목의 일봉데이터 예를 들어, 금일봉의 시가나 전일봉의 종가 등의 데이터를 사용할 수 있는지요?? 아마도 어려워보이지만 혹시나 방법이 있을까 싶어 여쭈어 봅니다. 고수분들의 도움 부탁드립니다. 감사합니다.
프로필 이미지
왕경태
2019-05-13
3509
글번호 224856

조회 횟수 및 OnNotifyFill 관련 질문입니다.

1. 예를 들어 현재 잔고 중 전일 매수한 종목의 개수를 확인한다고 할 때 전일 매수 종목수가 50종목, 현재 잔고가 50개라고 하면 아래와 같이 작성하면 최대 몇 번 계좌조회를 한 것으로 계산되나요? 최대 50*50 = 2500번 조회로 계산되는지 Account1.Balance.code는 조회 횟수 계산에 포함되지 않는지 궁금합니다. 50종목 정도의 포트폴리오를 구성하여 운영하고자 하는데 모두 조회 횟수로 계산된다면 다른 방법이 있는지도 궁금합니다. PrevBuyNum = 50; //전일 매수종목 개수 CheckItem = 0; Account1.Refresh(); var num = Account1.GetTheNumberOfBalances(); for (var i = 0 ; i < num ; i++) { Account1.SetBalanceIndex(i); //현재 잔고 중 전일 매수 종목 개수 파악 for (var j = 0 ; j < PrevBuyNum; j++) { if (BuyItem[j] == Account1.Balance.code) //BuyItem : 전일 매수 종목코드 CheckItem++; } } 2. 종목 객체 생성 후 시세나 호가가 바뀔 때마다 들어오는 Main_OnUp*dateMarket 이벤트 내에서 이벤트 발생할 때마다 price = sItemCode.current; 로 조회를 하면, 매 시세나 호가 변경시마다 1회씩 시세조회한 것으로 계산되나요? 아니면 한 번 생성한 종목객체에 대한 현재가나 호가 등 정보 접근은 조회수 계산에서 제외되는지 궁금합니다. 보유 종목의 실시간 시세를 확인하여 Stoploss를 적용하고자 하여 현재가를 실시간으로 파악하고자 하는데 매번 조회수가 계산된다면 다른 방법이 있을까요? 3. OnNotifyFill 은 전체 주문화면에서 발생한 모든 주문 체결에 대해서 호출된다고 하였는데 그 범위가 궁금합니다. 1) Spot이 실행되고 있는 특정 계좌에서 발생한 모든 체결 내용이 수신되는 것인지 2) 본인이 소유한 모든 계좌에서 발생한 체결 내용이 수신되는 것인지 어떤 방식인지 궁금합니다. 4. OnOrderResponse은 Spot 전략에서 발생한 주문에 대해서만 호출된다고 하는데 1) 한 계좌에서 여러개의 Spot 전략을 사용할 경우 구분없이 모두 수신되는지 전략별로 따로 수신되는지 궁금합니다. 2) 더불어 한 계좌에서 Spot과 YesLanguage 전략을 같이 수행하는 경우에는 Spot 전략에서 발생한 신호만 호출되는지도 궁금합니다. 복수의 계좌에서 여러 전략을 동시에 작성하고 있어 위의 사항들에 대해 문의 드립니다.
프로필 이미지
nollae
2019-05-11
3511
글번호 224854

해외선물 주문시 원주문번호 없는 미체결 주문 취소 방법

해외선물 모의투자로 테스트 중인데요 주문이 되었으나 주문번호가 할당되지 않아 GetTheNumberOfUnfills()를 실행하면 0을 리턴하는 경우가 가끔 발생합니다. 이럴 경우 취소할 수 있는 방법은 뭘까요?
프로필 이미지
우니쮸니
2019-05-10
3381
글번호 224853
답변완료

엑셀에 데이터를 매일 누적해서 쌓는 방법

엑셀에 데이터를 누적해서 쌓으려 하는데 아래 rayen님 께서 질문하신 내용을 참고하니까 킨 순간부터 끌때까지의 당일 데이터는 누적으로 받아지나, 매일 9시 이전에 키고, 장 마감할때 꺼서 데이터를 매일 누적하고 싶은데 어떤식으로 해야할까요. rayan님처럼 하면 매일 엑셀데이터가 초기화 되네요 일단 이를 해결하기위해 Excel1.GetRowCount함수를 사용해서 현제 엑셀파일의 row를 읽은 후 +1을 해줘서 누적을 하려했는데, 잘 안되는거같네요 var Time; var S; //기초자산(현재가) var r; //무위험이자율 var K; //행사가 var T; //잔존만기 var xlRow; //엑셀의 행 function Main_OnStart() { xlRow =Excel1.GetRowCount(1) + 1; //2번째 행부터 시작 Time = getHHMMSSS(); S = MarketData1.current; //연결선물지수 현재가 r = Option1.RiskFreeRate; K = Option1.GetExercisePrice(0, 0); T = Option1.GetRemainDays(0, 0)/252; Main.SetTimer(1, 5000) } function Main_OnTimer(nEventID) { Time = getHHMMSSS(); S = MarketData1.current; //연결선물지수 현재가 r = Option1.RiskFreeRate; K = Option1.GetExercisePrice(0, 0); T = Option1.GetRemainDays(0, 0)/252; Excel1.SetRowData(1, "A"+xlRow, Time); Excel1.SetRowData(1, "B"+xlRow, S); Excel1.SetRowData(1, "C"+xlRow, K); Excel1.SetRowData(1, "D"+xlRow, Option1.GetCurrent(0, 1)); Excel1.SetRowData(1, "E"+xlRow, Option1.GetCurrent(1, -1)); Excel1.SetRowData(1, "F"+xlRow, Option1.GetRemainDays(0,0)); Excel1.SetRowData(1, "G"+xlRow, Option1.RiskFreeRate); xlRow = xlRow + 1; 에러 메세지가 4개가 뜨는데 1. 엑셀을 정상적으로 호출할 수 없습니다 2. excel1:객체를 생성할 수 없습니다. 3. 엑셀파일에 연결되지 않았습니다. 4. 엑셀을 정상적으로 호출할 수 없습니다. 이렇게 뜨네요
프로필 이미지
퀀트드래곤
2019-05-07
3842
글번호 224852
답변완료

강제청산 로직 부탁드립니다

수고가 많으십니다. 저는 유진예스트레이더를 사용하는데, 손매매 비중도 높습니다. 투자대상은 해외선물입니다. 제가 원하는 수식은 예스트레이더를 이용한 자동매매든지, 손매매든지 상관없이 내 계좌의 당일 손실(청산손실+미청산손실)이 -1000달러에 도달하면 미체결주문은 모두 취소되고 현재 보유중인 계약은 시장가로 강제청산되도록 하고 싶습니다. 위의 "당일 손실"에서 "당일"이라함은 한국시간기준으로 당일이 아니라 해외거래소 거래일기준의 당일입니다. 예를들어 저는 크루드오일을 주로 매매하는데 썸머타임이 적용된 현재기준으로 07:00~익일06:00 까지의 손실을 계산합니다. 수고에 감사드리며, 로직 부탁드립니다.
프로필 이미지
기똥찬
2019-05-07
3275
글번호 224851