커뮤니티

스팟문의드립니다.

프로필 이미지
몬자
2014-02-12 21:45:40
1572
글번호 222803
답변완료
업무에 노고가 많으십니다. 다름이 아니오라 옵션 만기일에 미청산중인 포지션이 -50%가 넘으면 강제 청산하는 수식을 예스스팟으로 작성하고 싶습니다. 아직 예스스팟에 문외한이라 전문가의 도움을 얻고자 합니다. 부탁드립니다.
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-02-17 18:49:35

안녕하세요 예스스탁입니다. 아래식 참고하시기 바랍니다. 가이드이므로 주석참고하셔서 수정 보완해 사용하시기 바랍니다. 스크립트객체화면에서 욥션객체와 계좌객체가 설정되어 있어야 합니다. 옵션객체 추가, 계좌객체 추가 --> 속성에서 객체명은 Account1입니다. function Main_OnStart() { Main.SetTimer(1, 5000); } function Main_OnTimer(nEventID) { //잔존일이 1일일때 if (nEventID == 1 && Option.GetRemainDays(0, 0) == 1) { var num = Account1.GetTheNumberOfBalances(); for(var i = 0; i < num; i++) { Account1.SetBalanceIndex(i); //매수포지션 //현재가가 진입단가 대비 -50% 이하이면 청산 if (Account1.Balance.count > 0 && Account1.Balance.position == 2 && Account1.Balance.code.charAt(0) != "1" && Account1.Balance.current <= Account1.Balance.avgUnitCost *0.5) { Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,Option.GetAskByCode(Account1.Balance.code, 3),0); } //매도포지션 //현재가가 평균단가 대비 +50% 이상이면 청산 if (Account1.Balance.count > 0 && Account1.Balance.position == 1 && Account1.Balance.code.charAt(0) != "1" && Account1.Balance.current >= Account1.Balance.avgUnitCost *1.5) { Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,Option.GetBidByCode(Account1.Balance.code, 3),0); } } } } 즐거운 하루되세요 > 몬자 님이 쓴 글입니다. > 제목 : 스팟문의드립니다. > 업무에 노고가 많으십니다. 다름이 아니오라 옵션 만기일에 미청산중인 포지션이 -50%가 넘으면 강제 청산하는 수식을 예스스팟으로 작성하고 싶습니다. 아직 예스스팟에 문외한이라 전문가의 도움을 얻고자 합니다. 부탁드립니다.