커뮤니티

예스스팟 Q&A

답변완료

호가 데이터를 받고자 하는데 작동이 안되고 있습니다.

안녕하세요. 호가 데이터를 받고자 하는데 작동이 안되고 있습니다. 코드에 어떠한 문제가 있는지 알수있을까요? 스크립트 객체는 총 4개(MAIN, MarketData1, MarketDate2, AA(엑셀객체)) 입니다. Market Data1은 코스피 선물 3월물 Market Data2는 KODEX200 입니다. 그리고 타이머는 1초에 한번씩 잘 찍히게 셋팅된걸까요? 아래의 수식대로 복사 붙여넣기 한 후 -> 시스템트레이딩 -> 예스스팟 -> 해당 전략 더블클릭 -> (스팟 전략 설정 창에서)'시험적용' 클릭 이렇게 해서 엑셀창 까지는 떴는데 아무것도 안찍히네요. 도움 부탁드립니다. --------------------------------------------------------------------- var KOSPI200 = 2; var KODEX200 = 2; function Main_OnStart() { Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--시작--"); var D = new Date(); var hh = D.getHours(); var mm = D.getMinutes(); if (hh > 09 && mm > 01) { Main.SetTimer(1, 1000); Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--타이머셋--"); TimeCount = 0; } } function Main_OnTimer(nEventID) { function Main_OnUp*dateMarket(sItemCode, lUp*dateID) / * 제거 { if (lUp*dateID == 20001) / *제거 { if (sItemCode == MarketData1.code) { KOSPI200 = KOSPI200+1; Excel1.SetData(1, "A"+KOSPI200,MarketData1.Bid(1)); Excel1.SetData(1, "B"+KOSPI200,MarketData1.AskAmount(1)); Excel1.SetData(1, "C"+KOSPI200,MarketData1.Ask(1)); Excel1.SetData(1, "D"+KOSPI200,MarketData1.AskAmount(1)); Excel1.SetData(1, "E"+KOSPI200,MarketData1.current); } if (sItemCode == MarketData2.code) { KODEX200 = KODEX200+1; Excel1.SetData(1, "F"+KODEX200,MarketData2.Bid(1)); Excel1.SetData(1, "G"+KODEX200,MarketData2.AskAmount(1)); Excel1.SetData(1, "H"+KODEX200,MarketData2.Ask(1)); Excel1.SetData(1, "I"+KODEX200,MarketData2.AskAmount(1)); Excel1.SetData(1, "J"+KODEX200,MarketData2.current); } } } }
프로필 이미지
퀀트드래곤
2021-01-19
2735
글번호 225400
답변완료

수식 관련

안녕하세요. 제가 첨부한 식은 차트에서 매수청산신호 또는 매도신호 발생 시에 보유 중인 콜옵션 전량 청산하는 식인데요. 하기 첨부한 식을 시험주문을 한 결과, 주문가격에 "1.-214789786" 이란 값이 뜨고 청산이 되지 않는 듯 합니다. 오류가 무엇인지 알려주시면 감사하겠습니다. { var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); if (M1.code == sItemCode) { if ( (BuyCond == 19) || ( BuyCond == 9 && C2.GetIndicatorData("CCI", 1, 0) <= C2.GetIndicatorData("CCI", 2, 0) ) ) { BuyCond = 111; Main.MessageList("BuyCond:" ,BuyCond); /* 계좌 보유 종목수 */ var num = A1.GetTheNumberOfBalances(); for (var i = 0; i < num; i++) { /* 순서대로 종목셋팅 */ A1.SetBalance(i); /* 셋팅된 종목이 옵션인지 확인 */ if (Option.GetCurrent(A1.Balance.code) > 0) { /* 매수포지션 수량이 있으면 */ if (A1.Balance.count > 0 && A1.Balance.position == 2) { /* 매도3호가로 전량 청산 */ A1.OrderSell(A1.Balance.code, A1.Balance.count,Option.GetAsk(Callcode, 3), 0); } } } }
프로필 이미지
지나리
2021-01-18
2708
글번호 225399
답변완료

매도 가능 갯수 호출

미체결 매도가 있는 경우, 보유량과 매도가능 갯수는 달라지게 되는데, hts에서 처럼 스팟에서도 미체결매도갯수를 제외한 매도 가능 갯수를 호출하는 함수가 있는지요?
프로필 이미지
cs아빠
2021-01-17
2741
글번호 225398
답변완료

데이터베이스 객체 - 셀렉트 문 리턴 값 문의

[1] *elect 메소드가 불린 값을 리턴하도록 되어있는데, false 를 리턴할 경우, 상세 원인을 확인할 수 있는 방법이 있나요 ? [2] S ELECT TOP 1 으로 1행만 가져오는 구문일 경우, MoveFirst 함수 없이도 조회 레코드를 가져오는데 이상이 없어 보이는데, 맞는지요 ?
프로필 이미지
루씰
2021-01-14
2742
글번호 225397
답변완료

간단한 질문 드립니다. 옵션관련 (yesspot)

안녕하세요? 수고 많으십니다. 새해 복 많이 받으세요 예스 스팟기준으로, 지수 옵션시작하자 마자 시가들어오면 5초있다가 가격이 5~6사이에 콜옵션의 종목코드를 받으려고 하려면 어떻게 해야할까요? (확장차트를 만들때 쓰려구요) 꼭 좀 부탁드리곘습니다. 감사합니다.
프로필 이미지
명왕
2021-01-11
2803
글번호 225396

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

프로필 이미지
stier
2021-01-12
4
글번호 225395
답변완료

문의드립니다.

안녕하세요.. 주식거래중이며 예스랭귀지 시스템에서 신호가 나오면 스팟에서 확장차트를 만들어서 매매를 하고 있습니다. 시스템을 분할매도가 들어가게 바꾸었습니다. 그래서 한번 샀지만, 지표신호에 따라서 매도 신호가 나올때마다 보유수량을 일부씩 청산해갑니다. (차트에서는 정상적으로 나옵니다) 그런데 스팟에서는 매도신호를 받으면 아래의 식으로 매도를 하는데요 Acoount1.OrderSell(Main.GetOrderCode(ChartEx.code(1)),Account1.Balance.count,ChartEx.GetClose(1,0),0); 스팟은 차트에서의 매도신호에 담긴 <수량>이 분할이건, 전량이건 구분하지 않고 매도신호까지만 읽고 보유한 수량 전부를 청산 할수 밖에 없는 것인가요 그래서 분할청산을 하려면 랭귀지의 분할매도 신호와는 별개로 스팟에서 아예 따로 보유수량에 근거한 매도물량을 작성해야 하는 것인가요 1> 한마디로 차트에서 분할매도로 수식을 작성한게 스팟에서는 사용할수 없는 것인가요? 뭔가 그대로 사용할 수 잇는 해결책이 있을가 싶어서 문의드립니다.. 차트 신호에 최대한 가깝게 분할매도 하는 방법이 있을가요 안될경우 차트에서 매도신호나오면 , 동시에 n프로 수익중일때 분할익절 두번, 다시 신호나오면 전량청산 이렇게 확장차트에서 나오는 매도신호 + 잔고수익률 확인해서 청산수량을 3분할하는 방법좀 알려주세요.. 꼭좀 부탁드리겠습니다.
프로필 이미지
지스카드
2021-01-13
2723
글번호 225394

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

프로필 이미지
stier
2021-01-04
32
글번호 225393

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

프로필 이미지
온고지신
2020-12-23
0
글번호 225392

지스카드 님에 의해서 삭제되었습니다.

프로필 이미지
지스카드
2020-12-22
46
글번호 225391