커뮤니티

함수값 검증을 누르면 오류창이 발생

프로필 이미지
치치야
2025-08-29 16:31:20
105
글번호 193601
답변완료

첨부 이미지

안녕하세요.함수값이 잘못 되었는지 검증을 누르면 오류창이 발생해서 확인 한번 부탁드립니다. // ===== 전역 변수 선언 ===== var timer5 = 5;// 5초 var 매수금 = 100000 var 손절 = 0.95 var 익절 = 1.05 var OrderList = [] var MKList = [] var req = null var V1 = 0 // 스팟 시작시 잔고평가금액 저장용 function Main_OnStart() { // 1번 타이머, 5초 Main.SetTimer(1, timer5 * 1000); // 오늘 매수한 종목 관리 배열 초기화 MKList = []; // 스팟 시작시 잔고평가금액 V1 = Account1.GetBalanceETCinfo(100); } function Main_OnTimer(nEventID) { var d = new Date(); var YYYYMMDD = d.getFullYear() * 10000 + (d.getMonth() + 1) * 100 + d.getDate(); var HHMMSS = d.getHours() * 10000 + d.getMinutes() * 100 + d.getSeconds(); // 09:00:00 ~ 15:15:00 사이에 파워종목검색 수행 if (nEventID == 1 && HHMMSS >= 90000 && HHMMSS < 151500) { Main.ReqPowerSearch("파워종목검색 제목"); } if (nEventID == 1) { // 계좌보유종수 var num = Account1.GetTheNumberOfBalances(); // 09:00:00 ~ 15:15:00 사이 if (HHMMSS >= 90000 && HHMMSS < 151500) { if (num >= 1) { // 계좌평가금액이 시작 대비 5% 이상이면 전량 매도 if (Account1.GetBalanceETCinfo(100) >= V1 * 1.05) { // 1번 타이머 종료 Main.KillTimer(1); // 전 종목 전량 매도 for (var i = 0; i < num; i++) { Account1.SetBalance(i); if (Account1.Balance.count > 0) { Account1.OrderSell(Account1.Balance.code, Account1.Balance.count, 0, 1); } } return; // 전량 매도 후 종료 } else { // 개별종목 익절/손절 체크 for (var i = 0; i < num; i++) { Account1.SetBalance(i); if (Account1.Balance.count > 0 && ( Account1.Balance.current >= Account1.Balance.avgUnitCost * 익절 || Account1.Balance.current <= Account1.Balance.avgUnitCost * 손절 ) ) { Account1.OrderSell(Account1.Balance.code, Account1.Balance.count, 0, 1); } } } } } // 15:15:00 이후엔 전량 매도 후 타이머 종료 if (HHMMSS >= 151500) { Main.KillTimer(1); for (var i = 0; i < num; i++) { Account1.SetBalance(i); if (Account1.Balance.count > 0) { Account1.OrderSell(Account1.Balance.code, Account1.Balance.count, 0, 1); } } } } }
사용자 함수
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-09-01 10:16:57

안녕하세요 예스스탁입니다. 올리신 수식은 예스랭귀지 수식이 아닙니다. [6132]예스스팟 편집기에서 수식을 작성하시고 실행은 [6131]예스스팟에서 실행하셔야 합니다. 즐거운 하루되세요 > 치치야 님이 쓴 글입니다. > 제목 : 함수값 검증을 누르면 오류창이 발생 > 안녕하세요.함수값이 잘못 되었는지 검증을 누르면 오류창이 발생해서 확인 한번 부탁드립니다. // ===== 전역 변수 선언 ===== var timer5 = 5;// 5초 var 매수금 = 100000 var 손절 = 0.95 var 익절 = 1.05 var OrderList = [] var MKList = [] var req = null var V1 = 0 // 스팟 시작시 잔고평가금액 저장용 function Main_OnStart() { // 1번 타이머, 5초 Main.SetTimer(1, timer5 * 1000); // 오늘 매수한 종목 관리 배열 초기화 MKList = []; // 스팟 시작시 잔고평가금액 V1 = Account1.GetBalanceETCinfo(100); } function Main_OnTimer(nEventID) { var d = new Date(); var YYYYMMDD = d.getFullYear() * 10000 + (d.getMonth() + 1) * 100 + d.getDate(); var HHMMSS = d.getHours() * 10000 + d.getMinutes() * 100 + d.getSeconds(); // 09:00:00 ~ 15:15:00 사이에 파워종목검색 수행 if (nEventID == 1 && HHMMSS >= 90000 && HHMMSS < 151500) { Main.ReqPowerSearch("파워종목검색 제목"); } if (nEventID == 1) { // 계좌보유종수 var num = Account1.GetTheNumberOfBalances(); // 09:00:00 ~ 15:15:00 사이 if (HHMMSS >= 90000 && HHMMSS < 151500) { if (num >= 1) { // 계좌평가금액이 시작 대비 5% 이상이면 전량 매도 if (Account1.GetBalanceETCinfo(100) >= V1 * 1.05) { // 1번 타이머 종료 Main.KillTimer(1); // 전 종목 전량 매도 for (var i = 0; i < num; i++) { Account1.SetBalance(i); if (Account1.Balance.count > 0) { Account1.OrderSell(Account1.Balance.code, Account1.Balance.count, 0, 1); } } return; // 전량 매도 후 종료 } else { // 개별종목 익절/손절 체크 for (var i = 0; i < num; i++) { Account1.SetBalance(i); if (Account1.Balance.count > 0 && ( Account1.Balance.current >= Account1.Balance.avgUnitCost * 익절 || Account1.Balance.current <= Account1.Balance.avgUnitCost * 손절 ) ) { Account1.OrderSell(Account1.Balance.code, Account1.Balance.count, 0, 1); } } } } } // 15:15:00 이후엔 전량 매도 후 타이머 종료 if (HHMMSS >= 151500) { Main.KillTimer(1); for (var i = 0; i < num; i++) { Account1.SetBalance(i); if (Account1.Balance.count > 0) { Account1.OrderSell(Account1.Balance.code, Account1.Balance.count, 0, 1); } } } } }