시스템이든, 수동매수든, 포지션이든 상관없이 ...
현 보유수량 잔고를 확인하여 14:30분이 되면 무조건 전량 강제청산토록하는(혹시 미체결 주문이 있으면 그 주문을 취소후 시장가로 전량 청산) 수식 부탁드립니다.
^^
답변 1
예스스탁
예스스탁 답변
2015-03-31 13:15:50
안녕하세요
예스스탁입니다.
아래 내용 참고하시기 바랍니다.
스크립트 객화화면에서 계좌객체 추가하시고
속성에서 객체명은 Account1로 지정하시고 계좌선택해 주시면 됩니다.
function Main_OnStart()
{
Main.MessageLog("시작")
Main.SetTimer(1, 30000);//30초 간격으로 타이머 작동
}
function Main_OnTimer(nEventID)
{
var d = new Date();
var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds();
//14시 30분 이후
if (nEventID == 1 && HHMMSS >= 143000)
{
//타이머 종료
Main.KillTimer(1);
//미체결 전체 취소
var Unum = Account1.GetTheNumberOfUnfills()
for(var i = 0; i < Unum; i++)
{
Account1.SetUnfillIndex(i);
if (Account1.Unfill.count > 0)
{
Account1.OrderCancel(Account1.Unfill.orderNum);
}
}
//잔고 전체 시장가 청산
var Bnum = Account1.GetTheNumberOfBalances();
for(var i = 0; i < Bnum; i++)
{
Account1.SetBalanceIndex(i);
//매수포지션이면
if (Account1.Balance.position == 1)
Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,0,1);
//매도포지션이면
if (Account1.Balance.position == 2)
Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,0,1);
}
}
}
즐거운 하루되세요
> 바다리 님이 쓴 글입니다.
> 제목 : 당일청산식 문의
> 시스템이든, 수동매수든, 포지션이든 상관없이 ...
현 보유수량 잔고를 확인하여 14:30분이 되면 무조건 전량 강제청산토록하는(혹시 미체결 주문이 있으면 그 주문을 취소후 시장가로 전량 청산) 수식 부탁드립니다.
^^