커뮤니티

예스스팟 Q&A

답변완료

HTS 이용관련

1.종목검색식으로 검색된 종옥을 종목내보내기하여 관심종목으로 저장한후 향후 주가의 방향이 어떻게 변화해가는지 추적관찰해보고 싶으나 검색된 종목이 어느날에 검색되어 저장되었는지 날짜가 없는데 날짜가 표시되면 많은 도움이될것 같습니다 꼭꼭꼭 좀 부탁드립니다^^ NH 트레이드 입니다 2.종목명검색시 한글로 치는게 버릇이 되어있는데 영어로 기본세팅되어 있으니 꼭 지우고 다시 입력하는 경우가 많아 번거롭습니다 한글기본 한영변환후 영어 이렇게 세팅을 바꿀수 없나요^^
프로필 이미지
트라이
111
글번호 226347
답변완료

특정종목만 미체결주문을 취소하는 방법

가령 잔고에 콜옵션과 풋옵션이 동시에 존재할 경우 콜옵션만 혹은 풋옵션만 청산하는 코드를 작성중인데 과거 캔슬관련 게시글을 보아도 잔고의 전체 미체결을 일괄 취소하는 법 정도만 보이는 것 같아서 특정 종목이든 특정 옵션만 취소하는 방법을 알고 싶습니다. 감사합니다.
프로필 이미지
Trader
110
글번호 226346
답변완료

문의

아래 수식은 차트 매수신호 (Signal.signalKind == 1) 발생하면 buy로 진입하는 수식입니다. 차트 청산신호 (Signal.signalKind == 2) 발생하면 청산하는 수식을 추가해 주십시요. 참고로 차트수식의 청산내용은 강제청산(익절,손절,트레일링스탑,최소가격)과 일반청산(exitlong)이 혼재되어 있습니다. 항상 고맙습니다. ********************************************************************************* var UNum; var LNum; var CallCode; var CallPrice; var CC; var CallOrderCode; var CallExit; function Main_OnStart() { CallExit = false; Main.SetTimer(1, 5000); } //차트에서 신호가 발생하면 function Chart1_OnRiseSignal(Signal) { //해당 신호가 매수신호이면 if (Signal.signalKind == 1) { Main.MessageList("--------------------------------------------"); Main.MessageList("매수신호 발생"); //0.2이하 중 가장 큰 가격을 가지는 종목을 찾음 //ATM위 행사가 갯수 UNum = Option1.uppersATM; //ATM아래 행사가 갯수 LNum = Option1.lowersATM; //각 행사가의 콜종목의 종목코드를 저장할 변수를 배열변수로 선언 CallCode = new Array(UNum+LNum+1); //각 행사가의 콜종목의 현재가를 저장할 변수를 배열변수로 선언 CallPrice = new Array(UNum+LNum+1); //콜종목 찾기 //콜옵션은 ATM기준 위행사가 +단계, 아래가 -단계이므로 //for문에서 LNum의 역수부터 시작해서 UNum까지 1씩 증가하면서 수행하도록 함 for (var i = -LNum; i <= UNum; i++) { //값이 1.0이하이면 if (Option1.GetCurrent(0, i) <= 1.00) { //해당종목의 현재가를 배열변수 CallPrice의 방번호 i+LNum에 저장 CallPrice[i+LNum] = Option1.GetCurrent(0, i); //해당종목의 종목코드를 배열변수 CallCode의 방번호 i+LNum에 저장 CallCode[i+LNum] = Option1.GetATMCallRecent(i); //주의 //배열변수의 방(공간)번호은 -가 없으므로 최하단 행사가를 0번방부터 //저장하도록 작성해야 함 } else//1.00보다 크면 { //배열변수 CallPrice의 방번호 i+LNum에 -1 저장 CallPrice[i+LNum] = -1; //배열변수 CallCode의 방번호 i+LNum에 -1 저장 CallCode[i+LNum] = -1; } } //배열변수 CallPrice의 각 배열방의 값중 가장 큰값을 찾아 CC에 저장하고 //CallCode의 동일 방번호의 값을 CallOrderCode에 저장 CC = -1; CallOrderCode = -1; for (var iii = -LNum; iii <= UNum; iii++) { if (CallPrice[iii+LNum] > CC) { CC = CallPrice[iii+LNum]; CallOrderCode = CallCode[iii+LNum] } } Main.MessageList("--------------------------------------------"); Main.MessageList("콜종목코드:",CallOrderCode,"/콜현재가 :",CC); //콜옵션종목 매수 if (CallExit == false) { //지정가 Account1.OrderBuy(CallOrderCode, 1, Option1.GetAskByCode(CallOrderCode, 2), 0); //시장가 //Account1.OrderBuy(CallOrderCode, 1, 0, 1); } } }
프로필 이미지
좌오비우오비
133
글번호 226344
답변완료

부탁드립니다

안녕하세요 엑셀 A1 셀에 있는 값을 3분마다 한 번씩 실시간으로 불러와서 var: CLL(0); 변수에 저장하고 싶습니다. 스팟으로 코딩 부탁드립니다.
프로필 이미지
소드노
100
글번호 226343
답변완료

문의드립니다

항상 노고에 감사드립니다 스팟실행시 1.프로그램 실행시 처음에 잔고를 불러와 각각의 종목들이 7%이상인 종목들만 시장가 매도하기를 구하고싶습니다 2.미체결에 같은 종목이있으면 중복으로 매수하지않게하고싶습니다. (이미 같은 종목이라는 에러가 나온후 그대로 스탑일때가 종종있습니다) 3.당일 매수한종목과 매도한 종목은 당일 재매수 하지않게 만들고싶습니다 4.종목코드를 불러와서 종목명으로 변환해주는 함수를 알고싶습니다 (숫자코드가 아니고 한글의 종목명을 활용하고 싶습니다) 5.마지막으로 혹시 대체거래소의 종목은 필터링할수있는 방법은 있는지 만약 있다면 추가하고 싶습니다. var timerInterval = 5; // 5초 타이머 var 매수금 = 1000000; var MKList = []; // 종목코드 및 가격을 담는 배열 [{code, price}] var MK = []; var req; function Main_OnStart() { var d = new Date(); HHMMSS = d.getHours()*10000 + d.getMinutes()*100 + d.getSeconds(); Main.MessageList(HHMMSS,"|Start"); Main.SetTimer(1, timerInterval*1000); } function Main_OnTimer(nEventID) { var d = new Date(); HHMMSS = d.getHours()*10000 + d.getMinutes()*100 + d.getSeconds(); if (nEventID == 1 ) { Main.MessageList(HHMMSS,"|종목검색요청"); Main.ReqPowerSearch("www"); } if (nEventID == 2) { Main.KillTimer(2); Main.MessageList(HHMMSS,"|종목객체재요청"); Main.ReqMarketData(MKList[req].code); } } function Main_OnRcvItemList(aItemList, nCount, aValues) { var d = new Date(); HHMMSS = d.getHours()*10000 + d.getMinutes()*100 + d.getSeconds(); Main.KillTimer(1); Main.MessageList(HHMMSS,"|종목검색완료|검색된종목수:", nCount); MKList = []; if (nCount > 0) { for (var i = 0; i < nCount; i++) { var code = aItemList[i]; var price = parseFloat(aValues[i]); var isExist = false; for (var j = 0; j < MK.length; j++) { if (code == MK[j].code) isExist = true; } if (!isExist) { MKList.push({code: code, price: price}); Main.MessageList(HHMMSS, "|대상종목:", code, "|기준가격:", price); } } } if (MKList.length == 0) { Main.SetTimer(1, timerInterval*1000); } else { req = 0; Main.ReqMarketData(MKList[req].code); } } function Main_OnRcvMarketData(MarketData) { var d = new Date(); var HHMMSS = d.getHours()*10000 + d.getMinutes()*100 + d.getSeconds(); if (MarketData.code == MKList[req].code) { var entryPrice = MKList[req].price; Account1.OrderBuy(MarketData.code, 1, entryPrice, 0); Main.MessageList(HHMMSS,"|매수주문:", MarketData.code, "|가격:", entryPrice); MK.push(MarketData); req = req + 1; if (req < MKList.length) { var S = Main.ReqMarketData(MKList[req].code); if (S == -1) { Main.MessageList(HHMMSS,"|요청제한 15초대기"); Main.SetTimer(2, 15000); } } else { Main.MessageList(HHMMSS,"|모든종목처리완료"); Main.SetTimer(1, timerInterval*1000); } } }
프로필 이미지
동동스나
132
글번호 226342

당근인생 님에 의해서 삭제되었습니다.

프로필 이미지
당근인생
26
글번호 226337
답변완료

문의

옵션 거래 수식 2개 요청드립니다. 요청수식1) 콜옵션 행사가들 중 시가 0.50 이상인 종목에서 090000 이후에 0.12 체결이 발생하면 0.12 체결이 발생한 행사가를 대상으로 매수 1개 (GetAsk 5) 거래시작 : 090000 거래횟수 : 1회 익절가격 : 1.12 시간청산 : 150000 요청수식2) 풋옵션 행사가들 중 시가 0.50 이상인 종목에서 090000 이후에 0.06 체결이 발생하면 0.06 체결이 발생한 행사가를 대상으로 매수 1개 (GetAsk 5) 거래시작 : 090000 거래횟수 : 1회 익절가격 : 0.60 시간청산 : 150000 항상 고맙습니다.
프로필 이미지
좌오비우오비
133
글번호 226336

시온사랑 님에 의해서 삭제되었습니다.

프로필 이미지
시온사랑
2
글번호 226335
답변완료

문의드립니다.

차트1과 차트2가 있고 각각 예스랭귀지로 만든 지표로 신호를 만들고 있을 때 차트1에서 생긴신호를 차트2에 연결된 지표에서 사용 할 수 있는 방법이 있는지 궁금합니다.
프로필 이미지
이스데일
139
글번호 226331
답변완료

시장가 매도 오류

A1.OrderSell(A1.Balance.code, A1.Balance.count, 0, 1); 어제까지는 이상 없던 코드였지만 오늘부터 갑자기 "신규 주문가격 오류" 라고 에러가 발생합니다.
프로필 이미지
지순신
145
글번호 226330