커뮤니티

수식 문의 드립니다.

프로필 이미지
ywesry
2016-03-08 12:36:00
78
글번호 96081
답변완료
안녕하세요. 먼저 답변 감사드립니다. 아래 주신 답변 중, 몇가지 의문 나는 것이 있어 재문의 드립니다. 1. if (C0 > C1) T = 1; if (C0 > C1) T = -1; 여기서 아래식의 부등호는 "<"로 바꾸는 게 맞을 것 같은데, 어떤지요? 2. dnvol = upvol+MarketData1.volume; 여기서 upvol 대신 dnvol 을 쓰는게 맞을 것 같은데, 맞는지요? 3. 기존에 주신 수식을 제가 좀 변경을 해봤습니다.(T 라는 변수를 이용안함) 아래와 같이 쓰는 것과 어떤 차이가 있는지요? 코드 기법상 다른 효과가 있는지 알려주시면 고맙겠습니다. if (C0 > C1) { upvol = upvol+MarketData1.volume; } if (C0 > C1) { dnvol = dnvol +MarketData1.volume; } 감사합니다. ===================================================================================== 안녕하세요 예스스탁입니다. 종목객체의 일간데이터에서는 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만 있는데, 한 종목객체에 대해서 현재가를 이용하여 각각의 매수/매도 체결량을 구할 수 있을 것 같은데, 수식으로 작성이 어려워 문의 드립니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-03-08 13:30:55

안녕하세요 예스스탁입니다. 1.2 죄송합니다. 수식에 오류가 있었습니다. 수정한 내용입니다. 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 = dnvol+MarketData1.volume; } } } 2 T 변수가 없으면 직전 체결가보다 높거나 낮을때만 집계가 되어 가격이 같으면 집계에서 제외가 됩니다. 가격이 같을 경우 직전이 upvol이면 계속 upvol로 집계가 되고 직적이 dnvol이면 계속 dnvol로 집계를 하기위해 T변수를 사용한것입니다. 즐거운 하루되세요 > ywesry 님이 쓴 글입니다. > 제목 : 수식 문의 드립니다. > 안녕하세요. 먼저 답변 감사드립니다. 아래 주신 답변 중, 몇가지 의문 나는 것이 있어 재문의 드립니다. 1. if (C0 > C1) T = 1; if (C0 > C1) T = -1; 여기서 아래식의 부등호는 "<"로 바꾸는 게 맞을 것 같은데, 어떤지요? 2. dnvol = upvol+MarketData1.volume; 여기서 upvol 대신 dnvol 을 쓰는게 맞을 것 같은데, 맞는지요? 3. 기존에 주신 수식을 제가 좀 변경을 해봤습니다.(T 라는 변수를 이용안함) 아래와 같이 쓰는 것과 어떤 차이가 있는지요? 코드 기법상 다른 효과가 있는지 알려주시면 고맙겠습니다. if (C0 > C1) { upvol = upvol+MarketData1.volume; } if (C0 > C1) { dnvol = dnvol +MarketData1.volume; } 감사합니다. ===================================================================================== 안녕하세요 예스스탁입니다. 종목객체의 일간데이터에서는 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만 있는데, 한 종목객체에 대해서 현재가를 이용하여 각각의 매수/매도 체결량을 구할 수 있을 것 같은데, 수식으로 작성이 어려워 문의 드립니다. 감사합니다.