안녕하세요.
예스랭귀지에는 UpVol, DownVol이 있어서,
매수/매도량을 알수가 있는데,
예스스팟에서도 이를 구할 수 있었으면 해서 문의드립니다.
예스스팟 종목객체의 체결량은 volume과 volumeTotal만 있는데,
한 종목객체에 대해서 현재가를 이용하여 각각의 매수/매도 체결량을 구할 수 있을 것 같은데,
수식으로 작성이 어려워 문의 드립니다.
감사합니다.
답변 1
예스스탁
예스스탁 답변
2016-03-08 09:02:45
안녕하세요
예스스탁입니다.
종목객체의 일간데이터에서는
upvol,downvol이 제공됩니다.
MarketData1.GetPrevUpVol(nIndex)
MarketData1.GetPrevDnVol(nIndex)
다만 실시간 데이터에서는 해당 값이 제공이 되지 않고
사용자분이 수식에서 계산해서 사용하셔야 합니다.
직전 체결가보다 현재 체결가가 높으면 up, 낮으면 down이고
동일값이면 이전 발생한쪽으로 집계가 되며
당일 첫시세는 up으로 간주합니다.
아래 내용 참고하시기 바랍니다.
게시판 금칙어가 있어 영문 업데이트가 up*date로 중간에 *이 있으므로
삭제하고 사용하시기 바랍니다.
var upvol, downvol, C0,C1,T;
function Main_OnStart()
{
upvol = 0;
dnvol = 0;
C1 = 0;
C0 = 0;
T = 0;
}
function Main_OnUp*dateMarket(sItemCode, lUp*dateID)//*삭제
{
if (lUp*dateID == 20001)//*삭제
{
C1 = C0;
C0 = MarketData1.current
if (C0 > C1)
T = 1;
if (C0 > C1)
T = -1;
if (T == 1)
{
upvol = upvol+MarketData1.volume;
}
if (T == -1)
{
dnvol = upvol+MarketData1.volume;
}
}
}
예스스팟은 데이터의 주기가 있지 않습니다.
실시간으로 계속 시세를 받습니다.
차트와 같이 일정 주기로 값을 확인하신 다면
해당 부분은 차트에 지표를 적용하고 확인하셔야 합니다.
plot1(upvol);
plot2(downvol);
위 지표를 "상승하락볼"이라는 이름으로 지표로 만드신후 차트에 적용요하신 후에
스팟식에서 아래와 같은 함수로 값을 리턴받아 사용하실수 있습니다.
Chart1.GetIndicatorData("상승하락볼",1,0);//상승하락볼지표의 plot1의 현재값
Chart1.GetIndicatorData("상승하락볼",2,0);//상승하락볼지표의 plot2의 현재값
즐거운 하루되세요
> ywesry 님이 쓴 글입니다.
> 제목 : 수식 문의 드립니다.
> 안녕하세요.
예스랭귀지에는 UpVol, DownVol이 있어서,
매수/매도량을 알수가 있는데,
예스스팟에서도 이를 구할 수 있었으면 해서 문의드립니다.
예스스팟 종목객체의 체결량은 volume과 volumeTotal만 있는데,
한 종목객체에 대해서 현재가를 이용하여 각각의 매수/매도 체결량을 구할 수 있을 것 같은데,
수식으로 작성이 어려워 문의 드립니다.
감사합니다.