커뮤니티
예스스팟으로 합성선물전략식 문의
2012-10-31 20:57:27
232
글번호 56144
안녕하세요. 청산식 좀 부탁드립니다.
특정 행사가로 풋옵션 또는 콜옵션을 시스템에 의한 진입이 아닌 직접(수동) 주문 체결 해놓고 선물지수가 특정 값(예를들어 255.00 <= 외부변수로 입력할 수 있게 해주세요)에 도달했을때 옵션 매수상태(매도상태)이면 매도(매수)하여 청산하는 식좀 부탁드립니다.
(청산할때 계좌객체를 통해 직접(수동) 주문 체결한 종목코드나 진입수량을 파악하여 자동으로 청산할수 있도록 부탁드립니다.)
답변 1
예스스탁 예스스탁 답변
2012-11-01 12:58:24
안녕하세요
예스스탁입니다.
잔고종목이 수동으로 주문에 의해
편입된 종목인지 자동에 의해 주문된 종목인지
알수 있는 방법이 없습니다.
또한 스팟은 수식을 작성해 드리지 않습니다.
아래 내용을 참고하셔서 작성해 가시기 바랍니다.
스팟으로 해당 내용을 작성하신다면
종목객체를 직접 주문한 종목으로 선택해 주셔야만 됩니다.
스크립트 객체화면에서
1. 계좌객체를 추가하신 후 속성화면에서 계좌 지정하시고
(객체명 : Account1)
2. 종목객체를 추가하시고 속성화면에서 선물로 지정하시고
(객체명 : MarketData1)
3. 종목객체를 하나더 추가하시고 속성화면에서 주문한 옵션종목으로
지정하신 후에 아래식 이용하셔야 합니다.
(객체명 : MarketData2)
4. 외부변수추가하신 후 속성화면에서 변수명, 초기값, 데이터형지정
(변수명 : Price, 초기값 : 255, 데이터형 숫자)
아래식은
스팟전략 실행후에
선물가격이 255를 터치하면
지정한 옵션종목이 잔고에 매도포지션으로 있으면 해당 종목 전량 청산(매수주문)이 발생하고
지정한 옵션종목이 잔고에 매수포지션으로 있으면 해당 종목 전량 청산(매도주문)이 발생하는 식입니다.
var AA;
var BB;
function Main_OnStart()
{
Start = 0;
Main.SetTimer(1,1000);
AA = 0;
BB = 0;
}
function Main_OnTimer(nEventID)
{
BB = AA;
AA = MarketData1.current;
if (Start == 0 && ((AA >= Price && BB < Price && BB > 0) || (AA <= Price && BB > Price && BB > 0)))
{
Strat = 1;
Account1.SetBalanceItem(MarketData2.code, 1);
if (Account1.Balance > 0)
{
Account1.OrderBuy(Account1.Balance.code, Account1.Balance.count,0,1);
}
Account1.SetBalanceItem(MarketData2.code, 2);
if (Account1.Balance > 0)
{
Account1.OrderSell(Account1.Balance.code, Account1.Balance.count,0,1);
}
}
}
즐거운 하루되세요
> 와신상담 님이 쓴 글입니다.
> 제목 : 예스스팟으로 합성선물전략식 문의
> 안녕하세요. 청산식 좀 부탁드립니다.
특정 행사가로 풋옵션 또는 콜옵션을 시스템에 의한 진입이 아닌 직접(수동) 주문 체결 해놓고 선물지수가 특정 값(예를들어 255.00 <= 외부변수로 입력할 수 있게 해주세요)에 도달했을때 옵션 매수상태(매도상태)이면 매도(매수)하여 청산하는 식좀 부탁드립니다.
(청산할때 계좌객체를 통해 직접(수동) 주문 체결한 종목코드나 진입수량을 파악하여 자동으로 청산할수 있도록 부탁드립니다.)