커뮤니티

스팟 전략 RangeError 문의

프로필 이미지
lucky93
2019-12-29 22:31:12
2867
글번호 225122
답변완료
안녕하세요. 예전에 KOSPI 옵션용 예스스팟 전략을 예스스팟창에 자동주문 설정해서 문제없이 사용했었는데, 오랜만에 접속해보니 예스스팟창에 RangeError:Invalid array length 라는 메시지가 뜨네요. 예스스팟 편집기에서 해당 전략을 검증해 보면 검증이 완료되었습니다라고 정상적으로 나오지만 해당 전략을 예스스팟창에서 자동주문 설정하면 RangeError:Invalid array length 라고 나옵니다. 해당 에러발생 부분은 아래와 같은데요 CallCode = new Array(UNum+LNum+1); 어떻게 문제를 해결해야 하는지 문의 드립니다. (참고로 계좌에 예탁금은 없는 상태이고 거래를 안한지는 1년이 넘었습니다) 추가로 에러 발생 부분 포함한 전략일부 내용은 아래와 같습니다. var Start; var SK; var EntryVol; var Start; var vol1; var vol2; var CallStart; var PutStart; function Main_OnStart() { Start = 0; vol1 = 0; vol2 = 0; Main.SetTimer(1, 5000); } function Main_OnTimer(nEventID) { var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); //9시 5분에 if (Start == 0 && nEventID == 1 && HHMMSS >= 90500) { Start = 1; 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); 확인 부탁 드립니다. 감사합니다.
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-01-13 19:07:21

안녕하세요 예스스탁입니다. 1 올려주신 내용을 테스트 해보았지만 오류가 나오지 않습니다 2 프로그램을 새로 설치하신 경우이시면 종합환경설정의 예스스팟 영역에서 "예스스팟 옵션데이타(옵션객체) 사용 여부"에 미사용으로 설정이 되어 있어 발생하는 문제인것 같습니다. 환경설정에서 사용으로 설정하시면 해결하실수 있습니다. 즐거운 하루되세요 > lucky93 님이 쓴 글입니다. > 제목 : 스팟 전략 RangeError 문의 > 안녕하세요. 예전에 KOSPI 옵션용 예스스팟 전략을 예스스팟창에 자동주문 설정해서 문제없이 사용했었는데, 오랜만에 접속해보니 예스스팟창에 RangeError:Invalid array length 라는 메시지가 뜨네요. 예스스팟 편집기에서 해당 전략을 검증해 보면 검증이 완료되었습니다라고 정상적으로 나오지만 해당 전략을 예스스팟창에서 자동주문 설정하면 RangeError:Invalid array length 라고 나옵니다. 해당 에러발생 부분은 아래와 같은데요 CallCode = new Array(UNum+LNum+1); 어떻게 문제를 해결해야 하는지 문의 드립니다. (참고로 계좌에 예탁금은 없는 상태이고 거래를 안한지는 1년이 넘었습니다) 추가로 에러 발생 부분 포함한 전략일부 내용은 아래와 같습니다. var Start; var SK; var EntryVol; var Start; var vol1; var vol2; var CallStart; var PutStart; function Main_OnStart() { Start = 0; vol1 = 0; vol2 = 0; Main.SetTimer(1, 5000); } function Main_OnTimer(nEventID) { var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); //9시 5분에 if (Start == 0 && nEventID == 1 && HHMMSS >= 90500) { Start = 1; 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); 확인 부탁 드립니다. 감사합니다.