커뮤니티

검토 부탁합니다.

프로필 이미지
코스모
2016-05-24 09:28:59
112
글번호 98402
답변완료
47851번 수식 변경 문의에 답변해 주신 아래의 수식을 지표로 차트에 표시하였습니다. 수식을 참조차트에서 일봉으로 열고 적용하면 일봉차트 스토캐스틱과 정확히 같습니다. 그러나 참조차트를 분봉으로 열고 적용하면 모양은 일봉 스토캐스틱과 비슷하게 움직이는데 수치는 차이가 많습니다. 타종목 참조의 한계인지 저로서는 정확히 알 수가 없어 검토를 부탁드리겠습니다. input&nbsp;:&nbsp;Period(10),&nbsp;Period1(6),&nbsp;Period2(6),sto1(5),sto2(3),sto3(3); var&nbsp;:&nbsp;cnt(0,data2),cond1(false,data2),cond2(false,data2); var&nbsp;:&nbsp;shighVal(0,data2),&nbsp;slowVal(0,data2),&nbsp;sFK(0,data2),&nbsp;sSK(0,data2),&nbsp;sSD(0,data2);&nbsp; var&nbsp;:&nbsp;sEp1(0,data2),&nbsp;sEp2(0,data2),&nbsp;sPreSK(0,data2),&nbsp;sPreSD(0,data2); var&nbsp;:&nbsp;highVal(0,data2),&nbsp;lowVal(0,data2),&nbsp;FK(0,data2),&nbsp;SK(0,data2),&nbsp;SD(0,data2);&nbsp; var&nbsp;:&nbsp;Ep1(0,data2),&nbsp;Ep2(0,data2),&nbsp;PreSK(0,data2),&nbsp;PreSD(0,data2); Array&nbsp;:&nbsp;HH[100](0,data2),LL[100](0,data2),CC[100](0,data2); if&nbsp;data2(date&nbsp;!=&nbsp;date[1])&nbsp;Then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HH[0]&nbsp;=&nbsp;data2(H); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LL[0]&nbsp;=&nbsp;data2(L); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;cnt&nbsp;=&nbsp;1&nbsp;to&nbsp;99{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HH[cnt]&nbsp;=&nbsp;HH[cnt-1][1]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LL[cnt]&nbsp;=&nbsp;LL[cnt-1][1]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sPreSK&nbsp;=&nbsp;sSK[1]; &nbsp;&nbsp;&nbsp;&nbsp;sPreSD&nbsp;=&nbsp;sSD[1]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PreSK&nbsp;=&nbsp;SK[1];&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;PreSD&nbsp;=&nbsp;SD[1]; &nbsp;&nbsp;&nbsp;&nbsp;Cond1&nbsp;=&nbsp;false; &nbsp;&nbsp;&nbsp;&nbsp;Cond2&nbsp;=&nbsp;false; } if&nbsp;HH[sto1-1]&nbsp;>&nbsp;0&nbsp;then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#일봉&nbsp;스토&nbsp;5-3-3 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shighVal&nbsp;=&nbsp;HH[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;slowVal&nbsp;=&nbsp;LL[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;cnt&nbsp;=&nbsp;0&nbsp;to&nbsp;sto1-1&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;HH[cnt]&nbsp;>&nbsp;shighVal&nbsp;then&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shighVal&nbsp;=&nbsp;HH[cnt]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;LL[cnt]&nbsp;<&nbsp;slowVal&nbsp;then &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;slowVal&nbsp;=&nbsp;LL[cnt];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sfK&nbsp;=&nbsp;data2((C-slowVal)/(shighVal-slowVal)*100); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sEp1&nbsp;=&nbsp;2/(sto2+1);&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sEp2&nbsp;=&nbsp;2/(sto3+1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sSK&nbsp;=&nbsp;sFK&nbsp;&nbsp;*&nbsp;sEP1&nbsp;+&nbsp;sPreSK&nbsp;*&nbsp;(1-sEP1);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sSD&nbsp;=&nbsp;sSK&nbsp;&nbsp;*&nbsp;sEP2&nbsp;+&nbsp;sPreSD&nbsp;*&nbsp;(1-sEP2);&nbsp; } if&nbsp;HH[Period-1]&nbsp;>&nbsp;0&nbsp;then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#일봉&nbsp;스토&nbsp;10-6-6 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;highVal&nbsp;=&nbsp;HH[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lowVal&nbsp;=&nbsp;LL[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;cnt&nbsp;=&nbsp;0&nbsp;to&nbsp;Period-1&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;HH[cnt]&nbsp;>&nbsp;highVal&nbsp;then&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;highVal&nbsp;=&nbsp;HH[cnt]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;LL[cnt]&nbsp;<&nbsp;lowVal&nbsp;then &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lowVal&nbsp;=&nbsp;LL[cnt];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fK&nbsp;=&nbsp;data2((C-lowVal)/(highVal-lowVal)*100); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ep1&nbsp;=&nbsp;2/(Period1+1);&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ep2&nbsp;=&nbsp;2/(Period2+1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SK&nbsp;=&nbsp;FK&nbsp;&nbsp;*&nbsp;EP1&nbsp;+&nbsp;PreSK&nbsp;*&nbsp;(1-EP1);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SD&nbsp;=&nbsp;SK&nbsp;&nbsp;*&nbsp;EP2&nbsp;+&nbsp;PreSD&nbsp;*&nbsp;(1-EP2);&nbsp; } if&nbsp;Cond1&nbsp;==&nbsp;false&nbsp;and&nbsp;sk&nbsp;>&nbsp;Sd&nbsp;&nbsp;and&nbsp;preSK&nbsp;<&nbsp;preSD&nbsp;and&nbsp;PreSK&nbsp;>&nbsp;0&nbsp;and&nbsp;PreSD&nbsp;>&nbsp;0&nbsp;Then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cond1&nbsp;=&nbsp;true; &nbsp;&nbsp;&nbsp;&nbsp;sell("sP10"); } if&nbsp;MarketPosition&nbsp;==&nbsp;-1&nbsp;and&nbsp;ssk&nbsp;<&nbsp;sSd&nbsp;&nbsp;and&nbsp;spreSK&nbsp;>&nbsp;spreSD&nbsp;and&nbsp;sPreSK&nbsp;>&nbsp;0&nbsp;and&nbsp;sPreSD&nbsp;>&nbsp;0&nbsp;Then &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exitshort("xP5");
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-05-24 14:14:36

안녕하세요 예스스탁입니다. 스토케스틱과 같이 계산식 안에 지수이평과 같은 내용이 사용되는 경우에는 차트에 과거데이터가 몇개인지에 따라 현재값에 차이가 있습니다. 과거의 값이 시간이 갈수록 영향력이 작아져 봉이 많으면 차이가 거의 없지만 해당 식은 분봉에서 일봉의 값을 계산하는 내용이므로 차트 전체에서 날짜수가 많이 않으므로 실제 일봉차트에서 과거데이터를 충분히 둔 상태에서 보시는 값과 차이가 있습니다. 이는 지수이평을 기본이평방법으로 사용하는 모든 지표식에서 발생하는 내용입니다. 즐거운 하루되세요 > 코스모 님이 쓴 글입니다. > 제목 : 검토 부탁합니다. > 47851번 수식 변경 문의에 답변해 주신 아래의 수식을 지표로 차트에 표시하였습니다. 수식을 참조차트에서 일봉으로 열고 적용하면 일봉차트 스토캐스틱과 정확히 같습니다. 그러나 참조차트를 분봉으로 열고 적용하면 모양은 일봉 스토캐스틱과 비슷하게 움직이는데 수치는 차이가 많습니다. 타종목 참조의 한계인지 저로서는 정확히 알 수가 없어 검토를 부탁드리겠습니다. input&nbsp;:&nbsp;Period(10),&nbsp;Period1(6),&nbsp;Period2(6),sto1(5),sto2(3),sto3(3); var&nbsp;:&nbsp;cnt(0,data2),cond1(false,data2),cond2(false,data2); var&nbsp;:&nbsp;shighVal(0,data2),&nbsp;slowVal(0,data2),&nbsp;sFK(0,data2),&nbsp;sSK(0,data2),&nbsp;sSD(0,data2);&nbsp; var&nbsp;:&nbsp;sEp1(0,data2),&nbsp;sEp2(0,data2),&nbsp;sPreSK(0,data2),&nbsp;sPreSD(0,data2); var&nbsp;:&nbsp;highVal(0,data2),&nbsp;lowVal(0,data2),&nbsp;FK(0,data2),&nbsp;SK(0,data2),&nbsp;SD(0,data2);&nbsp; var&nbsp;:&nbsp;Ep1(0,data2),&nbsp;Ep2(0,data2),&nbsp;PreSK(0,data2),&nbsp;PreSD(0,data2); Array&nbsp;:&nbsp;HH[100](0,data2),LL[100](0,data2),CC[100](0,data2); if&nbsp;data2(date&nbsp;!=&nbsp;date[1])&nbsp;Then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HH[0]&nbsp;=&nbsp;data2(H); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LL[0]&nbsp;=&nbsp;data2(L); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;cnt&nbsp;=&nbsp;1&nbsp;to&nbsp;99{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HH[cnt]&nbsp;=&nbsp;HH[cnt-1][1]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LL[cnt]&nbsp;=&nbsp;LL[cnt-1][1]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sPreSK&nbsp;=&nbsp;sSK[1]; &nbsp;&nbsp;&nbsp;&nbsp;sPreSD&nbsp;=&nbsp;sSD[1]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PreSK&nbsp;=&nbsp;SK[1];&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;PreSD&nbsp;=&nbsp;SD[1]; &nbsp;&nbsp;&nbsp;&nbsp;Cond1&nbsp;=&nbsp;false; &nbsp;&nbsp;&nbsp;&nbsp;Cond2&nbsp;=&nbsp;false; } if&nbsp;HH[sto1-1]&nbsp;>&nbsp;0&nbsp;then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#일봉&nbsp;스토&nbsp;5-3-3 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shighVal&nbsp;=&nbsp;HH[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;slowVal&nbsp;=&nbsp;LL[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;cnt&nbsp;=&nbsp;0&nbsp;to&nbsp;sto1-1&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;HH[cnt]&nbsp;>&nbsp;shighVal&nbsp;then&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shighVal&nbsp;=&nbsp;HH[cnt]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;LL[cnt]&nbsp;<&nbsp;slowVal&nbsp;then &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;slowVal&nbsp;=&nbsp;LL[cnt];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sfK&nbsp;=&nbsp;data2((C-slowVal)/(shighVal-slowVal)*100); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sEp1&nbsp;=&nbsp;2/(sto2+1);&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sEp2&nbsp;=&nbsp;2/(sto3+1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sSK&nbsp;=&nbsp;sFK&nbsp;&nbsp;*&nbsp;sEP1&nbsp;+&nbsp;sPreSK&nbsp;*&nbsp;(1-sEP1);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sSD&nbsp;=&nbsp;sSK&nbsp;&nbsp;*&nbsp;sEP2&nbsp;+&nbsp;sPreSD&nbsp;*&nbsp;(1-sEP2);&nbsp; } if&nbsp;HH[Period-1]&nbsp;>&nbsp;0&nbsp;then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#일봉&nbsp;스토&nbsp;10-6-6 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;highVal&nbsp;=&nbsp;HH[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lowVal&nbsp;=&nbsp;LL[0]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;cnt&nbsp;=&nbsp;0&nbsp;to&nbsp;Period-1&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;HH[cnt]&nbsp;>&nbsp;highVal&nbsp;then&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;highVal&nbsp;=&nbsp;HH[cnt]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;LL[cnt]&nbsp;<&nbsp;lowVal&nbsp;then &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lowVal&nbsp;=&nbsp;LL[cnt];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fK&nbsp;=&nbsp;data2((C-lowVal)/(highVal-lowVal)*100); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ep1&nbsp;=&nbsp;2/(Period1+1);&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ep2&nbsp;=&nbsp;2/(Period2+1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SK&nbsp;=&nbsp;FK&nbsp;&nbsp;*&nbsp;EP1&nbsp;+&nbsp;PreSK&nbsp;*&nbsp;(1-EP1);&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SD&nbsp;=&nbsp;SK&nbsp;&nbsp;*&nbsp;EP2&nbsp;+&nbsp;PreSD&nbsp;*&nbsp;(1-EP2);&nbsp; } if&nbsp;Cond1&nbsp;==&nbsp;false&nbsp;and&nbsp;sk&nbsp;>&nbsp;Sd&nbsp;&nbsp;and&nbsp;preSK&nbsp;<&nbsp;preSD&nbsp;and&nbsp;PreSK&nbsp;>&nbsp;0&nbsp;and&nbsp;PreSD&nbsp;>&nbsp;0&nbsp;Then{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cond1&nbsp;=&nbsp;true; &nbsp;&nbsp;&nbsp;&nbsp;sell("sP10"); } if&nbsp;MarketPosition&nbsp;==&nbsp;-1&nbsp;and&nbsp;ssk&nbsp;<&nbsp;sSd&nbsp;&nbsp;and&nbsp;spreSK&nbsp;>&nbsp;spreSD&nbsp;and&nbsp;sPreSK&nbsp;>&nbsp;0&nbsp;and&nbsp;sPreSD&nbsp;>&nbsp;0&nbsp;Then &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exitshort("xP5");