커뮤니티

계좌에서 옵션 종목별 평균 단가 구하기

프로필 이미지
유기농옵션
2013-05-02 22:10:39
1824
글번호 222348
답변완료
수고 많으십니다. 옵션 매매 수식을 만드는 중인데요. 257.5 콜 옵션을 하나 매도 하고 255 콜 옵션을 하나 매도 했을 때 257.5는 1포인트 올랐을 때 손절하고 255는 0.5포인트 올랐을 때 손절하려고 합니다. 내 계좌의 옵션 종목별 평균단가를 구하려고 하는데요. 어떤 함수를 이용해야 하나요?
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-05-03 18:22:44

안녕하세요 예스스탁입니다. 잔고객체에 평균단가가 제공되고 있습니다. 예스스팟에서 잔고는 계좌상 순번이나 종목코드로 지정하면 해당 종목의 잔고정보가 Balance객체에 세팅이 되고 사용자가 사용하게 되어 있습니다. 즉 특정종목의 잔고(Balance)를 셋팅하고 잔고에서 현재가나 평균단가 가져와서 사용하시면 됩니다. 계좌잔고상 위에서 아래순서대로 번호를 지정하거나(SetBalanceIndex(nIndex)) 혹은 종목코드를 넣어 지정할수 있습니다. (SetBalanceItem(sItemCode, nPosition)) 아래식 참고하시기 바랍니다. 스크립트 객체화면에서 Option객체와 계좌객체 추가하신 후 사용하셔야 합니다. 계좌객체 이름은 Account1입니다. 1초단위로 잔고를 체크해서 257.5 콜은 1포인트 올랐을 때 손절하고 255 콜은 0.5포인트 올랐을 때 손절하는 식입니다. function Main_OnStart() { Main.SetTimer(1, 1000); } function Main_OnTimer(nEventID) { //계좌의 보유종목수 var num = A1.GetTheNumberOfBalances(); //계좌의 종목을 순서대로 for (var i = 0; i < num; i++) { //잔고 셋팅 Account1.SetBalanceIndex(i); // 해당 종목의 행사가가 257.5이고 // 잔고 포지션이 매도포지션이고 // 현재가가 평균단가+1이상이면 청산 if (Option.GetExercisePriceByCode(Account1.Balance.code) == 257.5 && Account1.Balance.position == 1 && Account1.Balance.current >= Account1.Balance.avgUnitCost +1) { Account1.OrderBuy(Account1.Balance.code, Account1.Balance.count, 0,1); } // 해당 종목의 행사가가 255이고 // 잔고 포지션이 매도포지션이고 // 현재가가 평균단가+0.5이상이면 청산 if (Option.GetExercisePriceByCode(Account1.Balance.code) == 255 && Account1.Balance.position == 1 && Account1.Balance.current >= Account1.Balance.avgUnitCost +0.5) { Account1.OrderBuy(Account1.Balance.code, Account1.Balance.count, 0,1); } } } > 유기농옵션 님이 쓴 글입니다. > 제목 : 계좌에서 옵션 종목별 평균 단가 구하기 > 수고 많으십니다. 옵션 매매 수식을 만드는 중인데요. 257.5 콜 옵션을 하나 매도 하고 255 콜 옵션을 하나 매도 했을 때 257.5는 1포인트 올랐을 때 손절하고 255는 0.5포인트 올랐을 때 손절하려고 합니다. 내 계좌의 옵션 종목별 평균단가를 구하려고 하는데요. 어떤 함수를 이용해야 하나요?