커뮤니티

예스스팟 Q&A

답변완료

문의드립니다

/*스크립트시작-----------------------------------------------------*/ function Main_OnStart() { Main.MessageLog("시작") Main.SetTimer(1, 5000); } function Main_OnTimer(nEventID) { var d = new Date(); var HHMMDD = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); if (nEventID == 1 && HHMMDD >= 150600) { Main.KillTimer(1); num = A1.GetTheNumberOfBalances(); for(var i = 0; i < num; i++) { A1.SetBalanceIndex(i); if (A1.Balance.position == 1) A1.OrderBuy(A1.Balance.code,A1.Balance.count,0,1); if (A1.Balance.position == 2) A1.OrderSell(A1.Balance.code,A1.Balance.count,0,1); } } }/*스크립트끝-------------------------------------------------------*/ 메뉴얼에 나와있는 동시호가 청산 수식 예제입니다. 잔고를 모두 청산하게 되어있는데 통장잔고를 모두 청산하는 방식이 아닌 특정 차트를 동시호가 청산하는 방식을 하고자 합니다. 꼭 필요한 방식인데 스팟에 너무 무능해서 모르겠네요 언제나 감사드립니다.
프로필 이미지
시고르시고르
2021-06-03
2792
글번호 225496
답변완료

수식 부탁합니다

수고하십니다. 10시30분에 양매도 하여 14시 30분에 청산하는 식을 원합니다. 차트 매수 매도 신호에 상관없이 설정 시간으로 작동되게 원하며 매도시 5초간격으로 1계약씩 증가하면서 매도주문하고 청산 시간에도 5초마다 1계약씩 청산하는식 원합니다. 첨부 예시는 매수하여 매도청산하는 식이며 반대로 매도하여 매수 청산하는식으로 변경 원합니다. 부팅이 되거나 설정시간(10시 30분)이 지나서 실행시키면 시간 관계없이 다시 작동(매도)되는 오류가 있는데 해결방법을 알고 싶습니다.
프로필 이미지
팡팡
2021-05-31
2945
글번호 225494
답변완료

수식요청드립니다

lowestsince(1,crossdown(trix(일수),0),avg(C,일수)) 위 수식이 현봉과 전봉의 값이 같고, 전봉과 전전봉의 값이 다른 경우 검색되게 부탁드립니다. 예스스팟으로 검색되게 부탁드려요ㅠ 작성 좀 해주세요..
프로필 이미지
234fsdae
2021-05-16
2737
글번호 225484
답변완료

Main.ReqPowerSearch로 검색하라는 말이 무슨말인지요?

제목에 Main.ReqPowerSearch넣고 검색하니 아무것도 안나옵니다...
프로필 이미지
234fsdae
2021-05-16
2692
글번호 225483
답변완료

에러 문의드립니다

수고하십니다 농협선물을 이용하는데 자꾸 코드번호가 안 맞다고 나옵니다 function c1_OnRiseSignal(Signal) { if (Signal.signalKind == 1) { a1.OrderBuy(Main.GCM21, 1, 0, 1); } if (Signal.signalKind == 3) { a1.OrderSell(Main.GCM21, 1, 0, 1); } } Main.GCM21을 Main없이 GCM21만 넣어도 마찬가지네요
프로필 이미지
파도여
2021-05-14
2729
글번호 225482
답변완료

ETF REAL NAV값을 불러오는 함수가 없는거같은데 요청드려도 될까요

ETF REAL NAV값을 불러오는 함수가 없는거같은데 요청드려도 될까요. 추가로 ETF 1CU 수량, PDF에 포함된 현금 등 다양한 정보도 같이 요청드려도 될까요
프로필 이미지
퀀트드래곤
2021-04-28
2792
글번호 225479
답변완료

일봉 및 시간별 봉 데이터를 활용해서 시그널을 짜고싶은데

매매 시그널 작성하는 것 시도하려고하는데요. 쓱 둘러보니 봉단위 코딩이 가능한것 같은데. 일별 거래량으로 조건을 설정하다가 조건이 충족된 기업들 중에서 오후 2시까지의 거래량이 충족됐을때 매매 시그널을 발동시키고싶은데, 이런 코딩이 가능한가요?
프로필 이미지
부처스탁
2021-04-25
2838
글번호 225477
답변완료

수식 설명좀 부탁합니다.

이수식이 무엇을 말하는지 아시는분있으면 쉽게 한글로 풀이좀 해주세요.. indip = input(1,type=bool,title="Use current timeframe?") tf = (indip==0?(input('60',type=resolution,title="Timeframe (only if previous opt is unflagged)")):period) Timeframem = (tf=='D'?'M':(tf=='240'?'W':(tf=='120'?'W':(tf=='60'?'W':(tf=='15'?'640':(tf=='5'?'360':'na')))))) Timeframed = (tf=='D'?'2W':(tf=='240'?'2D':(tf=='120'?'2D':(tf=='60'?'D':(tf=='15'?'360':(tf=='5'?'180':'na')))))) Timeframeh = (tf=='D'?'W':(tf=='240'?'D':(tf=='120'?'D':(tf=='60'?'720':(tf=='15'?'180':(tf=='5'?'90':'na')))))) chm = security(tickerid, Timeframem, open) chm1 = security(tickerid, Timeframem, close) defm = (chm1/chm) -1 chd = security(tickerid, Timeframed, open) chd1 = security(tickerid, Timeframed, close) defd = (chd1/chd) -1 chh = security(tickerid, Timeframeh, open) chh1 = security(tickerid, Timeframeh, close) defh = (chh1/chh) -1 output = defm>0?(defd>defh?defd:defh):(defd>defh?defh:defd) plot(output,linewidth=2,color=output>0?lime:red,transp=50,style=area) plot(defh,color=defh>0?lime:red,transp=0,linewidth=1) plot(defh,color=defh>0?lime:red,transp=75,style=area) hline(0)
프로필 이미지
힘내라
2021-04-25
2870
글번호 225476

퀀트드래곤 님에 의해서 삭제되었습니다.

프로필 이미지
퀀트드래곤
2021-04-23
12
글번호 225475
답변완료

수식 수정 및 질문

아래수식을 게시판에서 받아서 모의로 실행하면 안돼는게 있어서 질문드립니다. 1. 관심종목등록이 안되네요. 2. 종목검색중 검색되다가 -1로 시간초과후 멈춤니다. 3. 매수주문은 들어가는데 체결이 안됩니다. 원인이 무엇인지 설명부탁드리며, 수식보완 부탁합니다. var 검색주기 = 60;//60초 var 종목수 = 50; var 매수금액 = 1000000; var ItemList = [],MK = [],HH = []; var HHMMSS,req; function Main_OnStart() { Main.SetTimer(1, 60000); Main.MessageList("start"); } function Main_OnTimer(nEventID) { var d = new Date(); HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); //9시 이후에 2분간격으로 종목검색 50종목 이하 if (nEventID == 1 && HHMMSS >= 090100 && MK.length < 종목수) { Main.KillTimer(1); Main.MessageList("종목검색 요청"); Main.ReqPowerSearch("단타A"); } } // 검색종목 관심등록 function Main_OnRcvItemList(aItemList, nCount) { if (nCount > 0) { Main.SendInterests("관심단타A", aItemList, false); Main.MessageList("관심종목 등록"); } } function Main_OnRcvItemList(aItemList, nCount) { Main.MessageList("종목검색 완료 nCount : ",nCount,MK.length); Main.MessageList("종목검색 완료 aItemList : ",aItemList); if (nCount > 0) { ItemList = []; //첫검색일때 if (MK.length == 0) { ItemList = aItemList; } else //두번쨰 이후(차트가 만들어진 종목을 제외하고 새로운 종목만 집계) { for (var i = 0; i < nCount; i++ ) { var add = true; for (var x = 0; x < MK.length; x++ ) { if (aItemList[i] == MK[x].code) { add = false; } } if (add == true) { ItemList.push(aItemList[i]); } } } if (ItemList.length > 0 && MK.length < 종목수) { req = 0; Main.MessageList("종목객체요청 : ",ItemList[req]); Main.ReqMarketData(ItemList[req]); } else { if (MK.length < 종목수) { Main.SetTimer(1, 검색주기*1000); } } } } function Main_OnRcvMarketData(MarketData) { if (MarketData.code == ItemList[req]) { Main.MessageList("종목객체생성:",req,MarketData.code); MK.push(MarketData); HH.push(MK[req].current);//최고가 초기값은 현재가 Main.MessageList("매수주문:",MarketData.code); //매도5호가로 매수금액만큼 매수주문 Account1.OrderBuy(MarketData.code,Math.floor(매수금액/MarketData.Ask(5)),MarketData.Ask(5),0); req = req+1; if (req < ItemList.length && MK.length < 종목수) { Main.MessageList("종목객체요청 : ",ItemList[req]); Main.ReqMarketData(ItemList[req]); } else { Main.MessageList("종목객체생성완료"); if (MK.length < 50) { Main.SetTimer(1, 검색주기*1000); } } } } function Main_OnUp*ateMarket(sItemCode, lUp*ateID) { if (lUp*ateID == 20001) { for (var i = 0; i < MK.length; i++) { //업데이트된 종목을 찾아 if (MK[i].code == sItemCode && HH[i] > 0) { //현재가가 저장된 최고가 보다 크면 최고가를 현재가로 변경 if (MK[i].current > HH[i]) { HH[i] = MK[i].current; } //잔고셋팅 Account1.SetBalance(MK[i].code, 0); //최고가는 평단가 대비 20이상 크고 현재가가 평단가 대비 15% 이하로 내려오면 매수5호가로 전량 매도 if (HH[i] >= Account1.Balance.avgUnitCost*1.20 && MK[i].current <= Account1.Balance.avgUnitCost*1.10) { Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,MK[i].Bid(5),0); //HH[i]는 -1로 저장하여 이후 감시하지 않게 함 HH[i] = -1; Main.MessageList("종목객체삭제 : ",S); var S = Main.RemoveObject(MK[i]); MK.splice(i,1); } } } } }
프로필 이미지
다낚아
2021-04-22
2691
글번호 225473