커뮤니티

모의 거래 옵션 잔고리스트 개수 문의

프로필 이미지
rayen
2019-06-17 15:54:23
3214
글번호 224902
답변완료
안녕하십니까? 수고하십니다. 문의드리고자 하는 바는 아래와 같습니다. 옵션 모의거래 테스트를 하면서 GetTheNumberofBalances를 이용하여 잔고리스트의 개수를 불러오고자 했습니다. 하지만 분명 계좌 잔고에는 옵션 종목이 4개가 있는데 위 함수를 이용하여 잔고리스트 수를 불러오면 10개로 나옵니다. 잔고에 있는 옵션을 청산하고 1개만 남겨도 잔고리스트의 수는 10개로 나옵니다. 해당 부분내용은 아래와 같습니다. 참고로 모의계좌번호 일치 확인했습니다. 그리고 추가적인 문의사항은 지금은 6월인데 아래 date결과가 5월로 나옵니다. 분명 컴퓨터에 뜨는 날은 오늘로 뜨는데 말이죠 이부분도 함께 문의드립니다. 감사합니다. var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); var Month = d.getMonth(); var SCallCode, BCallCode; var SPutCode, BPutCode; var IDPB, IDPS, IDCS, IDCB; var NumPB, NumPS, NumCS, NumCB; var entryBPutCode, entrySPutCode, entrySCallCode, entryBCallCode; var amount = 20;//매매수량 function Main_OnStart() { Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--시작--"); var num = A.GetTheNumberOfBalances(); if (HHMMSS >= 90100 && HHMMSS <= 155000 && PstEntry == 0) { Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"num",num); for (var i = 0; i < num; i++) { A.SetBalance(i); if (A.Balance.position == 1) { if (O.GetDelta(A.Balance.code) < 0) { SCallCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"SCallCode",A.Balance.code,O.GetDelta(A.Balance.code)); } else { SPutCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"SPutCode",A.Balance.code,O.GetDelta(A.Balance.code)); } } else { if (O.GetDelta(A.Balance.code) < 0) { BPutCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"BPutCode",A.Balance.code,O.GetDelta(A.Balance.code)); } else { BCallCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"BCallCode",A.Balance.code,O.GetDelta(A.Balance.code)); } } } Main.SetTimer(1, 5000); Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--잔고 내 옵션보유 확인 후 5초 타이머셋--"); } if (HHMMSS >= 90100 && HHMMSS <= 153500 && PstEntry == 1) { Main.SetTimer(2, 5000); Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--포지션 진입 준비--"); Main.SetTimer(3, 30000); } }
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-07-08 16:22:45

안녕하세요 예스스탁입니다. 1 해당 부분을 테스트 해보았지만 보유종목 이상으로 해당 함수가 출력되지 않습니다. 모의투자에서 일시적으로 발생하는 내용인지 해당 부분은 지속적으로 테스트를 해보아야 할것 같습니다. 죄송하지만 동일내용이 반복해서 발생하면 02-3453-1060으로 전화 부탁드립니다. 2 자바스크립트의 날짜시간객체에서 getMonth()는 1월이 0으로 시작합니다. 1을 더해서 사용하셔야 합니다. var Month = d.getMonth()+1; 즐거운 하루되세요 > rayen 님이 쓴 글입니다. > 제목 : 모의 거래 옵션 잔고리스트 개수 문의 > 안녕하십니까? 수고하십니다. 문의드리고자 하는 바는 아래와 같습니다. 옵션 모의거래 테스트를 하면서 GetTheNumberofBalances를 이용하여 잔고리스트의 개수를 불러오고자 했습니다. 하지만 분명 계좌 잔고에는 옵션 종목이 4개가 있는데 위 함수를 이용하여 잔고리스트 수를 불러오면 10개로 나옵니다. 잔고에 있는 옵션을 청산하고 1개만 남겨도 잔고리스트의 수는 10개로 나옵니다. 해당 부분내용은 아래와 같습니다. 참고로 모의계좌번호 일치 확인했습니다. 그리고 추가적인 문의사항은 지금은 6월인데 아래 date결과가 5월로 나옵니다. 분명 컴퓨터에 뜨는 날은 오늘로 뜨는데 말이죠 이부분도 함께 문의드립니다. 감사합니다. var d = new Date(); var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds(); var Month = d.getMonth(); var SCallCode, BCallCode; var SPutCode, BPutCode; var IDPB, IDPS, IDCS, IDCB; var NumPB, NumPS, NumCS, NumCB; var entryBPutCode, entrySPutCode, entrySCallCode, entryBCallCode; var amount = 20;//매매수량 function Main_OnStart() { Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--시작--"); var num = A.GetTheNumberOfBalances(); if (HHMMSS >= 90100 && HHMMSS <= 155000 && PstEntry == 0) { Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"num",num); for (var i = 0; i < num; i++) { A.SetBalance(i); if (A.Balance.position == 1) { if (O.GetDelta(A.Balance.code) < 0) { SCallCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"SCallCode",A.Balance.code,O.GetDelta(A.Balance.code)); } else { SPutCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"SPutCode",A.Balance.code,O.GetDelta(A.Balance.code)); } } else { if (O.GetDelta(A.Balance.code) < 0) { BPutCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"BPutCode",A.Balance.code,O.GetDelta(A.Balance.code)); } else { BCallCode = A.Balance.code; Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"BCallCode",A.Balance.code,O.GetDelta(A.Balance.code)); } } } Main.SetTimer(1, 5000); Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--잔고 내 옵션보유 확인 후 5초 타이머셋--"); } if (HHMMSS >= 90100 && HHMMSS <= 153500 && PstEntry == 1) { Main.SetTimer(2, 5000); Main.MessageList(getYYYYMMDD(),getHHMMSSS(),"--포지션 진입 준비--"); Main.SetTimer(3, 30000); } }