답변완료
최근 봉이 강조신호가 뜨지 않습니다
강조신호가 최근 봉에 적용되지 않습니다.
분명히 제가 의도한 모습을 보여주는데요, 강조신호가 뜨지 않습니다.(첨부참고)
아래가 코드입니다
var : tx1(0);
if ma(c,5) >= ma(c[1],5) and h > ma(c,5) and c > o Then
{
tx1 = Text_New(sDate,sTime,L,"▲");
Text_SetColor(tx1,BLACK);
Text_SetStyle(tx1,2,0);
}
2021-07-01
1826
글번호 150466
강조
답변완료
호가 round 수식 검증과 보완 부탁합니다.
항상 감사드립니다.
친절히 잘 알려주시고 도움 주시는데 너무 귀찮게 해드리는 것 같아서 죄송합니다.
어제 통화했던 수정주가 호가 라운딩 건을 사용자 함수로 구현하여 보았습니다.
수식검증과 부족한 부분 수정 부탁 드립니다.
2번. 사용자 함수의 주석처리도 검토 부탁 드립니다.
게시판 글 작성 도중 생각난 것인데, 상한가는 round 처리가 된 것 같은데,
하한가는 이 식대로 하면 제대로 처리가 되는지 의문이 듭니다.
무언가 꼭 빠진 것 같은 기분이 듭니다. 상한가,하한가 round 처리가 틀린 것으로 아는데요
하한가 round 검증이 꼭 필요할 것 같습니다.(Mod함수가 아니고 Round함수를 써야 하는 건지요)
보성파워텍으로 검증하니 잘 맞아 떨어지는 것 같은데
수식에 확신을 갖기에는 조건에 맞는 데이타 봉이 부족한 듯 합니다.
수정주가가 적용된 종목과 일자와 조건에 맞는 데이타 봉을 찾기가 어렵습니다.
보성파워텍이 2016.07.01 까지의 과거 봉이 수정주가가 적용이 되어 있는 것 같습니다.
검증한 데이타 봉
보성파워텍 호가단위 틀린 수정주가(상한가)
2014.10.27(28,29,30), 2014.11.07(21), 2012.12.11,2011.11.07
보성파워텍 호가단위 틀린 수정주가(하한가)
2003.03.21, 2000.4.11, 1999.11.09
=============================================================
1번.
# data1 이용 상하한가에 추가 S 와 추가 E 사이에 2줄에 사용자 함수 호출했습니다.
var : 하한가(0,Data1), DnLimit(0,Data1);
var : dn1(0,Data1), dn2(0,Data1), dn3(0,Data1), dn4(0,Data1), dn5(0,Data1),dn6(0,Data1),dn7(0,Data1);
var : 상한가(0,Data1), UpLimit(0,Data1);
var : up1(0,Data1), up2(0,Data1), up3(0,Data1), up4(0,Data1), up5(0,Data1),up6(0,Data1),Up7(0,Data1);
var : base(0,Data1);
base = Data1(BP);
#---------------------------------------------------추가 S
Value1 = _수정주가_round(base); #사용자함수 호출
if Value1 != base Then base = Value1;
#---------------------------------------------------추가 E
if Data1(date >= 19981207) then
이하 길어서 생략
=============================================================
2번.
#사용자 함수 : _수정주가_round = Round_v;
input : chk_v(Numeric);
var : 호가단위(0),Mod_v(0),Round_v(0);
#현행 호가단위가 맞는지 체크
if chk_v < 1000 Then 호가단위 = 1; #할 필요가 있나? 같잔아!
if 1000 <= chk_v and chk_v < 5000 Then 호가단위 = 5;
if 5000 <= chk_v and chk_v < 10000 Then 호가단위 = 10;
if 10000 <= chk_v and chk_v < 50000 Then 호가단위 = 50;
if 50000 <= chk_v and chk_v < 100000 Then 호가단위 = 100;
if 100000 <= chk_v and chk_v < 500000 Then
if CodeCategory() == 1 Then 호가단위 = 500;
Else if codeCategory() == 2 Then 호가단위 = 100;
if 500000 <= chk_v Then
if CodeCategory() == 1 Then 호가단위 = 1000;
Else if codeCategory() == 2 Then 호가단위 = 100;
#호가단위 체크 끝, 제대로 찾은건지 모르겟네. 전에 호가단위는 지금과 같았을까? 확인필요!!!!
#만약 금액별 호가 단위가 틀리면 금액별&날짜 체크까지 해야하는데 ㅠㅠㅠ pass!!!
#수정주가여부 : 나머지가 0이 아니면 수정주가, <우연히 0인 경우는 pass!!! 상하한만 알면 되지! 방법이 있나 모르겠다.>
# Round 함수를 쓰고 호가단위 반올림,반내림해야 하나??
Mod_v = Mod(chk_v,호가단위);
if Mod_v != 0 Then Round_v = chk_v - Mod_v; #iff 를 써야 하는데...
Else Round_v = chk_v;
_수정주가_round = Round_v;
2021-07-01
1771
글번호 150465
검색
답변완료
안녕하세요! 문의드립니다~ 꼭좀 답변 부탁드립니다~
안녕하세요!
함수관련하여 궁금한게 생겨 문의 드려요~
DayClose, High, Low, Open 요 함수를 사용하는데
설명란에 보면
일봉 데이터에서 직접 그 값을 가져 온다.
차트상 최초일+99일의 일봉 데이터가 추가로 제공된다.
요렇게 써있는데 제가 차트를 일분봉을 사용할 경우
최대치가 10,000개 이다 보니 일수로 보면 약 25일 정도 인데
차트에 지나가서 포함되지 않은 일봉데이터를 불러서 사용할 수가 있다는 건가요?
그리고 사용방법에 대해 이전값을 참조할때는 대괄호를 사용하는데
분봉차트에서도 소괄호를 사용해도 별개로
일일 수치를 저장하는게 맞는지도 궁금합니다!
답변 꼭 좀 부탁드립니다!
2021-07-01
1659
글번호 150455
시스템