질문1>
당일 등가 콜 옵션의 시초가에 갭이 얼마나 발생하였는지를 찾고자 합니다.
옵션객체의
Option.GetCurrent
Option.GetATMCallRecent
를 이용하여 현재가격 및 종목코드를 찾아 올수 있는데
전일 종가를 어떻게 찾아올 수 있는지요 ?
질문2>
MarketData 객체 사용시
스크립터 내부에서 MarketData 객체의 종목코드 속성을 변경시켜 사용할 수 없나요?
여러가지 조건으로 종목을 검색하여
검색된 종목의 현재가격들을 비교하는 형태를 구성하고 싶은데
각 종목의 현재가를 찾아오는 방법은 바깥에서 미리 설정한
차트나 마켓데이타를 이용하는 거 뿐인가요 ?
검색된 종목이 수시로 바뀌므로 차트를 일일이 다 만들어 놓을 수도 없는 상황인데...
답변 3
예스스탁
예스스탁 답변
2013-07-23 18:47:53
안녕하세요
예스스탁입니다.
옵션객체는 실시간의 데이터만 수신을 받아 이전 날에 대한
값을 따로 리턴을 하지 않습니다.
수식안에서 종목객체를 생성하는 함수(ReqMarketData)를 이용하시면 됩니다.
문의하신 1번, 2번 모두 아래 내용 참고하시기 바랍니다.
var BuyCallCode;
function Chart1_OnRiseSignal(Signal)
{
if (Signal.signalKind == 1 )
{
BuyCallCode = Option.GetATMCallRecent(0);
var BuyCallPrice = Option.GetAskByCode(BuyCallCode,2);
Account1.OrderBuy(BuyCallCode, 1, BuyCallPrice, 0);
}
}
기본수식이 위와 같이 차트에서 buy신호 발생하면
옵션종목을 선택해서 주문을 내는 내용이었다면
아래와 같이 수식안에서 종목객체를 생성시켜 그 값을 이용하도록 변경하셔야 합니다.
아래식의 주석을 참고하시기 바랍니다.
예로 매수신호 하나에 대해서만 작성했습니다
var BuyCallCode;
var Sig;
var Request;
function Chart1_OnRiseSignal(Signal)
{
//발생된 신호종류 저장
Sig = Signal.signalKind;
//buy신호 발생하면
if (Sig == 1 )
{
//ATM 콜옵션 종목코드 저장
BuyCallCode = Option.GetATMCallRecent(0);
//BuyCallCode 종목객체 요청
//(종목코드는 BuyCallCode, 일봉갯수는 1개(전일것만), 수급데이터는 0개)
Main.ReqMarketData(BuyCallCode, 1,0);
//Request는 true(매수신호 발생 후 한번만 요청하기 위한 변수)
Request = true;
}
}
//요청한 종목객체 생성완료
function Main_OnRcvMarketData(MarketData)
{
//item에 수신받은 종목객체 저장
var item = MarketData;
//최근 buy신호 발생되었고
//Request는 true이고
//생성된 종목객체의 종목코드가 BuyCallCode와 같으면
if (Sig == 1 && Request == true && item.code == BuyCallCode)
{
//Request는 false
Request = false;
//현재가가 전일종가보다 크면
if (item.current > item.GetPrevClose(1));
{
//BuyCallPrice에 매도2호가 저장
var BuyCallPrice = item.Ask(2);
//BuyCallCode종목을 BuyCallPrice에 지정가 매수주문
Account1.OrderBuy(BuyCallCode, 1, BuyCallPrice, 0);
//주문 후 종목객체 삭제
Main.RemoveMarketData(item);
}
}
}
즐거운 하루되세요
> inko 님이 쓴 글입니다.
> 제목 : MarketData 객체 사용시
> 질문1>
당일 등가 콜 옵션의 시초가에 갭이 얼마나 발생하였는지를 찾고자 합니다.
옵션객체의
Option.GetCurrent
Option.GetATMCallRecent
를 이용하여 현재가격 및 종목코드를 찾아 올수 있는데
전일 종가를 어떻게 찾아올 수 있는지요 ?
질문2>
MarketData 객체 사용시
스크립터 내부에서 MarketData 객체의 종목코드 속성을 변경시켜 사용할 수 없나요?
여러가지 조건으로 종목을 검색하여
검색된 종목의 현재가격들을 비교하는 형태를 구성하고 싶은데
각 종목의 현재가를 찾아오는 방법은 바깥에서 미리 설정한
차트나 마켓데이타를 이용하는 거 뿐인가요 ?
검색된 종목이 수시로 바뀌므로 차트를 일일이 다 만들어 놓을 수도 없는 상황인데...
TypeError 조회대상 종목이 아닙니다. 라는 에러메시지가 뜹니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : MarketData 객체 사용시
>
안녕하세요
예스스탁입니다.
옵션객체는 실시간의 데이터만 수신을 받아 이전 날에 대한
값을 따로 리턴을 하지 않습니다.
수식안에서 종목객체를 생성하는 함수(ReqMarketData)를 이용하시면 됩니다.
문의하신 1번, 2번 모두 아래 내용 참고하시기 바랍니다.
var BuyCallCode;
function Chart1_OnRiseSignal(Signal)
{
if (Signal.signalKind == 1 )
{
BuyCallCode = Option.GetATMCallRecent(0);
var BuyCallPrice = Option.GetAskByCode(BuyCallCode,2);
Account1.OrderBuy(BuyCallCode, 1, BuyCallPrice, 0);
}
}
기본수식이 위와 같이 차트에서 buy신호 발생하면
옵션종목을 선택해서 주문을 내는 내용이었다면
아래와 같이 수식안에서 종목객체를 생성시켜 그 값을 이용하도록 변경하셔야 합니다.
아래식의 주석을 참고하시기 바랍니다.
예로 매수신호 하나에 대해서만 작성했습니다
var BuyCallCode;
var Sig;
var Request;
function Chart1_OnRiseSignal(Signal)
{
//발생된 신호종류 저장
Sig = Signal.signalKind;
//buy신호 발생하면
if (Sig == 1 )
{
//ATM 콜옵션 종목코드 저장
BuyCallCode = Option.GetATMCallRecent(0);
//BuyCallCode 종목객체 요청
//(종목코드는 BuyCallCode, 일봉갯수는 1개(전일것만), 수급데이터는 0개)
Main.ReqMarketData(BuyCallCode, 1,0);
//Request는 true(매수신호 발생 후 한번만 요청하기 위한 변수)
Request = true;
}
}
//요청한 종목객체 생성완료
function Main_OnRcvMarketData(MarketData)
{
//item에 수신받은 종목객체 저장
var item = MarketData;
//최근 buy신호 발생되었고
//Request는 true이고
//생성된 종목객체의 종목코드가 BuyCallCode와 같으면
if (Sig == 1 && Request == true && item.code == BuyCallCode)
{
//Request는 false
Request = false;
//현재가가 전일종가보다 크면
if (item.current > item.GetPrevClose(1));
{
//BuyCallPrice에 매도2호가 저장
var BuyCallPrice = item.Ask(2);
//BuyCallCode종목을 BuyCallPrice에 지정가 매수주문
Account1.OrderBuy(BuyCallCode, 1, BuyCallPrice, 0);
//주문 후 종목객체 삭제
Main.RemoveMarketData(item);
}
}
}
즐거운 하루되세요
> inko 님이 쓴 글입니다.
> 제목 : MarketData 객체 사용시
> 질문1>
당일 등가 콜 옵션의 시초가에 갭이 얼마나 발생하였는지를 찾고자 합니다.
옵션객체의
Option.GetCurrent
Option.GetATMCallRecent
를 이용하여 현재가격 및 종목코드를 찾아 올수 있는데
전일 종가를 어떻게 찾아올 수 있는지요 ?
질문2>
MarketData 객체 사용시
스크립터 내부에서 MarketData 객체의 종목코드 속성을 변경시켜 사용할 수 없나요?
여러가지 조건으로 종목을 검색하여
검색된 종목의 현재가격들을 비교하는 형태를 구성하고 싶은데
각 종목의 현재가를 찾아오는 방법은 바깥에서 미리 설정한
차트나 마켓데이타를 이용하는 거 뿐인가요 ?
검색된 종목이 수시로 바뀌므로 차트를 일일이 다 만들어 놓을 수도 없는 상황인데...
예스스탁
예스스탁 답변
2013-07-24 08:43:08
안녕하세요
예스스탁입니다.
종합환경설정의 예스스팟탭에서
[예스스팟 옵션데이터사용여부]가 미사용으로 되어 있으면
옵션객체에 데이터가 제공되지 않습니다.
사용(거래소민감도)나 사용(로컬 민감도) 중 하나를 선택해서 설정하시면 됩니다.
즐거운 하루되세요
> inko 님이 쓴 글입니다.
> 제목 : Re : Re : MarketData 객체 사용시
> TypeError 조회대상 종목이 아닙니다. 라는 에러메시지가 뜹니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : MarketData 객체 사용시
>
안녕하세요
예스스탁입니다.
옵션객체는 실시간의 데이터만 수신을 받아 이전 날에 대한
값을 따로 리턴을 하지 않습니다.
수식안에서 종목객체를 생성하는 함수(ReqMarketData)를 이용하시면 됩니다.
문의하신 1번, 2번 모두 아래 내용 참고하시기 바랍니다.
var BuyCallCode;
function Chart1_OnRiseSignal(Signal)
{
if (Signal.signalKind == 1 )
{
BuyCallCode = Option.GetATMCallRecent(0);
var BuyCallPrice = Option.GetAskByCode(BuyCallCode,2);
Account1.OrderBuy(BuyCallCode, 1, BuyCallPrice, 0);
}
}
기본수식이 위와 같이 차트에서 buy신호 발생하면
옵션종목을 선택해서 주문을 내는 내용이었다면
아래와 같이 수식안에서 종목객체를 생성시켜 그 값을 이용하도록 변경하셔야 합니다.
아래식의 주석을 참고하시기 바랍니다.
예로 매수신호 하나에 대해서만 작성했습니다
var BuyCallCode;
var Sig;
var Request;
function Chart1_OnRiseSignal(Signal)
{
//발생된 신호종류 저장
Sig = Signal.signalKind;
//buy신호 발생하면
if (Sig == 1 )
{
//ATM 콜옵션 종목코드 저장
BuyCallCode = Option.GetATMCallRecent(0);
//BuyCallCode 종목객체 요청
//(종목코드는 BuyCallCode, 일봉갯수는 1개(전일것만), 수급데이터는 0개)
Main.ReqMarketData(BuyCallCode, 1,0);
//Request는 true(매수신호 발생 후 한번만 요청하기 위한 변수)
Request = true;
}
}
//요청한 종목객체 생성완료
function Main_OnRcvMarketData(MarketData)
{
//item에 수신받은 종목객체 저장
var item = MarketData;
//최근 buy신호 발생되었고
//Request는 true이고
//생성된 종목객체의 종목코드가 BuyCallCode와 같으면
if (Sig == 1 && Request == true && item.code == BuyCallCode)
{
//Request는 false
Request = false;
//현재가가 전일종가보다 크면
if (item.current > item.GetPrevClose(1));
{
//BuyCallPrice에 매도2호가 저장
var BuyCallPrice = item.Ask(2);
//BuyCallCode종목을 BuyCallPrice에 지정가 매수주문
Account1.OrderBuy(BuyCallCode, 1, BuyCallPrice, 0);
//주문 후 종목객체 삭제
Main.RemoveMarketData(item);
}
}
}
즐거운 하루되세요
> inko 님이 쓴 글입니다.
> 제목 : MarketData 객체 사용시
> 질문1>
당일 등가 콜 옵션의 시초가에 갭이 얼마나 발생하였는지를 찾고자 합니다.
옵션객체의
Option.GetCurrent
Option.GetATMCallRecent
를 이용하여 현재가격 및 종목코드를 찾아 올수 있는데
전일 종가를 어떻게 찾아올 수 있는지요 ?
질문2>
MarketData 객체 사용시
스크립터 내부에서 MarketData 객체의 종목코드 속성을 변경시켜 사용할 수 없나요?
여러가지 조건으로 종목을 검색하여
검색된 종목의 현재가격들을 비교하는 형태를 구성하고 싶은데
각 종목의 현재가를 찾아오는 방법은 바깥에서 미리 설정한
차트나 마켓데이타를 이용하는 거 뿐인가요 ?
검색된 종목이 수시로 바뀌므로 차트를 일일이 다 만들어 놓을 수도 없는 상황인데...