커뮤니티

문의 드립니다.

프로필 이미지
느와르
2020-04-01 11:03:39
618
글번호 137410
답변완료
항상 빠르고 친절한 답변 감사드립니다. 배움이 성장하는게 느껴져 재미가 있네요 ㅎㅎ 일봉상 상한가,하한가 표시를 하고 싶어 게시판 검색을 통해 2008년에 답변을 확인하였으나 15% => 30% 변경 전 지표식인듯 합니다. 30%로 변경된 일봉상 상한가,하한가 지표식을 요청 드립니다. (아래 검색된 지표식) var : uplimit(0),downlimit(0); downlimit = iff(C >= 500000, int((baseprice * 0.85) / 1000 + 0.999) * 1000, iff(C >= 100000, int((baseprice * 0.85) / 500+0.999) * 500, iff(C >= 50000, int((baseprice * 0.85) / 100+0.999) * 100, iff(C >= 10000, int((baseprice* 0.85) / 50+0.999) * 50, iff(C >= 5000, int((baseprice * 0.85) / 10+0.999) * 10, int((baseprice * 0.85) / 5+0.999) * 5))))) ; uplimit = iff(C >= 500000, int((basePrice * 1.15) / 1000 + 0.00001) * 1000, iff(C >= 100000, int((basePrice * 1.15) / 500 + 0.00001) * 500, iff(C >= 50000, int((basePrice * 1.15) / 100 + 0.00001) * 100, iff(C >= 10000, int((basePrice *1.15) / 50 + 0.00001) * 50, iff(C >= 5000, int((basePrice * 1.15) / 10 + 0.00001) * 10, int((basePrice * 1.15) / 5 + 0.00001) * 5))))) ; if C >= uplimit Then plot1(H*1.05,"상한",red); if C <= downlimit Then plot2(L*0.95,"하한",blue); 2. 혹시 3분봉에 시스템식을 적용하고 진입은 1분봉을 참조하여 진입 할 수 있는지요? 가능하다면 예시 요청 드립니다. 3, 추가로 거래량 5이평선이 20이평선 상승돌파식를 공부하다 상승형 체결거래량 UpVol 이라는 함수가 거래량 이평돌파와 비교해서 설명 부탁드리며 거래량 5이평선이 20이평선 상승돌파식도 요청드립니다. 그럼 좋은 하루 되세요^^ 차이점을
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-04-01 19:05:58

안녕하세요 예스스탁입니다. 1 var : 하한가(0), DnLimit(0); var : dn1(0), dn2(0), dn3(0), dn4(0), dn5(0),dn6(0),dn7(0); var : 상한가(0), UpLimit(0); var : up1(0), up2(0), up3(0), up4(0), up5(0),up6(0),Up7(0); if date >= 19981207 then { if date < 20050328 && CodeCategory() == 2 then DnLimit = (BP * 0.12); Else if date >= 20050328 and date < 20150615 Then DnLimit = (BP * 0.15); Else DnLimit = (BP * 0.30); if CodeCategory() == 2 then { if date >= 20030721 then { dn1 = int(DnLimit/100)*100; dn2 = int(DnLimit/100)*100; dn3 = int(DnLimit/100)*100; dn4 = int(DnLimit/50)*50; dn5 = int(DnLimit/10)*10; dn6 = int(DnLimit/5)*5; dn7 = int(DnLimit/1)*1; } else { dn1 = int(DnLimit/1000)*1000; dn2 = int(DnLimit/500)*500; dn3 = int(DnLimit/100)*100; dn4 = int(DnLimit/50)*50; dn5 = int(DnLimit/10)*10; dn6 = int(DnLimit/10)*10; dn7 = int(DnLimit/1)*1; } } Else { dn1 = int(DnLimit/1000)*1000; dn2 = int(DnLimit/500)*500; dn3 = int(DnLimit/100)*100; dn4 = int(DnLimit/50)*50; dn5 = int(DnLimit/10)*10; dn6 = int(DnLimit/5)*5; dn7 = int(DnLimit/1)*1; } if CodeCategory() == 1 or CodeCategory() == 2 then { if sdate < 20101004 Then{ If BP >= 500000 Then 하한가 = BP-dn1; Else If BP >= 100000 Then 하한가 = BP-dn2; Else If BP >= 50000 Then 하한가 = BP-dn3; Else If BP >= 10000 Then 하한가 = BP-dn4; Else If BP >= 5000 Then 하한가 = BP-dn5; Else If BP >= 1000 Then 하한가 = BP-dn6; Else 하한가 = BP-dn6; } else{ If BP >= 500000 Then 하한가 = BP-dn1; Else If BP >= 100000 Then 하한가 = BP-dn2; Else If BP >= 50000 Then 하한가 = BP-dn3; Else If BP >= 10000 Then 하한가 = BP-dn4; Else If BP >= 5000 Then 하한가 = BP-dn5; Else If BP >= 1000 Then 하한가 = BP-dn6; Else 하한가 = BP-dn7; } } else if CodeCategory() == 8 or CodeCategory() == 9 then { 하한가 = BP-dn6; } } if date >= 19981207 then { if date < 20050328 && CodeCategory() == 2 then UpLimit = (BP[0] * 1.12); Else if date >= 20050328 and date < 20150615 Then UpLimit = (BP[0] * 1.15); Else UpLimit = (BP[0] * 1.30); if CodeCategory() == 2 then { if date >= 20030721 then { up1 = int(UpLimit/100+0.00001)*100; up2 = int(UpLimit/100+0.00001)*100; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/10+0.00001)*10; up7 = int(UpLimit/1+0.00001)*1; } } Else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } if CodeCategory() == 1 || CodeCategory() == 2 then { if sdate < 20101004 Then{ If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up6); } Else{ If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up7); } } else if CodeCategory() == 8 || CodeCategory() == 9 then { // ETF 상한가 = up6; } } plot1(상한가); plot2(하한가); 2 참조데이타를 이용하시면 됩니다. 차트상단의 종목선택버튼 중 왼쪽버튼은 차트의 기본종목, 오른쪽 버튼은 참조데이타를 선택해서 차트에 추가하는 버튼입니다. 기본종목과 같은 종목을 다른주기로 지정할수도 있습니다. 기본차트는 1분봉으로 참조데이타는 3분봉으로 지정하시면 됩니다. 참조데이타는 차트에 추가되는 순서로 data2부터 data99까지 데이타번호가 자동부여되고 수식에서 데이타번호로 값지정해 사용할수 있습니다. 아래는 참조데이타 data2의 이평크로스일때 기본차트에 신호를 발생하는 식입니다 var : mav1(0,data1),mav2(0,data2); mav1 = data2(ma(c,5)); mav2 = data2(ma(c,20)); if crossup(mav1,mav2) Then buy(); if CrossDown(mav1,mav2) Then sell(); 3 upvol/downvol은 상승형/하락형 거래량입니다. 거래량을 세분화해 제공하는 데이타입니다. 직전 체결가격보다 현재 체결가격이 높으면 해당체결거래량은 upvol 직전 체결가격보다 현재 체결가격이 낮으면 해당체결거래량은 downvol 입니다. 체결가격이 같으면 최근이 상승이었으면 모두 upvol, 최근 하락이었으면 downvol로 집계됩니다. 보통 거래량으로 봉의 매수/매도 강도를 측정할대 사용합니다. var1 = upvol/downvol*100; plot1(var1); 아래는 거래량5-20 골드식입니다. var1 = ma(v,5); var2 = ma(v,20); if crossup(var1,var2) Then buy(); 즐거운 하루되세요 > 느와르 님이 쓴 글입니다. > 제목 : 문의 드립니다. > 항상 빠르고 친절한 답변 감사드립니다. 배움이 성장하는게 느껴져 재미가 있네요 ㅎㅎ 일봉상 상한가,하한가 표시를 하고 싶어 게시판 검색을 통해 2008년에 답변을 확인하였으나 15% => 30% 변경 전 지표식인듯 합니다. 30%로 변경된 일봉상 상한가,하한가 지표식을 요청 드립니다. (아래 검색된 지표식) var : uplimit(0),downlimit(0); downlimit = iff(C >= 500000, int((baseprice * 0.85) / 1000 + 0.999) * 1000, iff(C >= 100000, int((baseprice * 0.85) / 500+0.999) * 500, iff(C >= 50000, int((baseprice * 0.85) / 100+0.999) * 100, iff(C >= 10000, int((baseprice* 0.85) / 50+0.999) * 50, iff(C >= 5000, int((baseprice * 0.85) / 10+0.999) * 10, int((baseprice * 0.85) / 5+0.999) * 5))))) ; uplimit = iff(C >= 500000, int((basePrice * 1.15) / 1000 + 0.00001) * 1000, iff(C >= 100000, int((basePrice * 1.15) / 500 + 0.00001) * 500, iff(C >= 50000, int((basePrice * 1.15) / 100 + 0.00001) * 100, iff(C >= 10000, int((basePrice *1.15) / 50 + 0.00001) * 50, iff(C >= 5000, int((basePrice * 1.15) / 10 + 0.00001) * 10, int((basePrice * 1.15) / 5 + 0.00001) * 5))))) ; if C >= uplimit Then plot1(H*1.05,"상한",red); if C <= downlimit Then plot2(L*0.95,"하한",blue); 2. 혹시 3분봉에 시스템식을 적용하고 진입은 1분봉을 참조하여 진입 할 수 있는지요? 가능하다면 예시 요청 드립니다. 3, 추가로 거래량 5이평선이 20이평선 상승돌파식를 공부하다 상승형 체결거래량 UpVol 이라는 함수가 거래량 이평돌파와 비교해서 설명 부탁드리며 거래량 5이평선이 20이평선 상승돌파식도 요청드립니다. 그럼 좋은 하루 되세요^^ 차이점을