커뮤니티

부탁드립니다

프로필 이미지
마르뚝
2019-11-04 15:22:58
1033
글번호 133380
답변완료
예스스탁에서 가격박스에 대한 수식이 없길래 키움에 문의하여 다음과 같은 데이터를 받았습니다 이 데이터를 근거로 가격박스 수식 부탁드립니다 ----가격박스 중심선---- A = MA( 가격, 이평기간, 이평방법 ); //변수A는 24이평선입니다. ----가격박스 상한선---- A + AvgIf( 가격 - A, 1, 0.0 ) // AvgIf함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 큰값을 모두더한 후 해당 기간값으로 나눈 값입니다. 이값을 24이평선에 더해 계산합니다. 즉, 차트내에서 24이평선보다 종가가 더클때, 종가와 24이평선의 차이의 평균을 구한후, 24이평선에 더한 값입니다. + 2 * StdevIf( 가격 - A, 1, 0.0 ) stdevif함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 큰값들에 대해 표준편차를 구합니다. 수식관리자에서는 표준편차를 계산하는 구조가 제공되고 있지 않으므로 내부적으로 프로그래밍된 함수로 계산하여 결과값을 도출합니다. 즉, 차트내에서 24이평선보다 종가가 더클때, "종가-24이평선값"들의 표준편차을 구한후 2를 곱한값입니다. 위에서 계산된 2,3번값을 더하여 가격박스 상한선이 계산됩니다. ----가격박스 하한선---- 2. A + AvgIf( 가격 - A, -1, 0.0 ) // AvgIf함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 작은값을 모두더한 후 해당 기간값으로 나눈 값입니다. 이값을 24이평선에 더해 계산합니다. 즉, 차트내에서 24이평선보다 종가가 더 작을때, 종가와 24이평선의 차이의 평균을 구한후, 24이평선에 더한 값입니다. 3. + 2 * StdevIf( 가격 - A, -1, 0.0 ) stdevif함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 작은값들에 대해 표준편차를 구합니다. 수식관리자에서는 표준편차를 계산하는 구조가 제공되고 있지 않으므로 내부적으로 프로그래밍된 함수로 계산하여 결과값을 도출합니다. 즉, 차트내에서 24이평선보다 종가가 더작을때, "종가-24이평선값"들의 표준편차을 구한후 2를 곱한값입니다. 위에서 계산된 2번값에서 3번값을 뺀값이 가격박스 하한선이 계산됩니다
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-11-04 19:29:31

안녕하세요 예스스탁입니다. StdevIf의 계산로직이 정확치 않아 아래 내용이 정확한지 모르겠습니다. 내용 읽어 보시고 수정보완해 사용하시기 바랍니다. input : 이평기간(24); var : mav(0),SumSqrt1(0),SumSqrt2(0),std1(0),std2(0),ii(0),cnt(0); mav = ma(C,이평기간); if mav > 0 then { ii = ii+1; if C-mav > 0 then { value1 = value1 + C-mav; value2 = value2 + 1; value3 = value1/value2; } if C- mav < 0 then { value4 = value4 + C-mav; value5 = value5 + 1; value6 = value4/value5; } SumSqrt1 = 0; SumSqrt2 = 0; for cnt = 0 to ii-1 { if value2 >= 1 and C[cnt] > mav[cnt] Then { SumSqrt1 = SumSqrt1 + ((C[cnt]-mav[cnt])-value3)^2; } if value5 >= 1 and C[cnt] < mav[cnt] Then { SumSqrt2 = SumSqrt2 + ((C[cnt]-mav[cnt])-value6)^2; } } Std1 = SquareRoot(SumSqrt1 / value2); Std2 = SquareRoot(SumSqrt2 / value5); plot1(mav); plot2(mav+value3); plot3(mav+std1*2); plot4(mav); plot5(mav+value6); plot6(mav-std2*2); } 즐거운 하루되세요 > 마르뚝 님이 쓴 글입니다. > 제목 : 부탁드립니다 > 예스스탁에서 가격박스에 대한 수식이 없길래 키움에 문의하여 다음과 같은 데이터를 받았습니다 이 데이터를 근거로 가격박스 수식 부탁드립니다 ----가격박스 중심선---- A = MA( 가격, 이평기간, 이평방법 ); //변수A는 24이평선입니다. ----가격박스 상한선---- A + AvgIf( 가격 - A, 1, 0.0 ) // AvgIf함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 큰값을 모두더한 후 해당 기간값으로 나눈 값입니다. 이값을 24이평선에 더해 계산합니다. 즉, 차트내에서 24이평선보다 종가가 더클때, 종가와 24이평선의 차이의 평균을 구한후, 24이평선에 더한 값입니다. + 2 * StdevIf( 가격 - A, 1, 0.0 ) stdevif함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 큰값들에 대해 표준편차를 구합니다. 수식관리자에서는 표준편차를 계산하는 구조가 제공되고 있지 않으므로 내부적으로 프로그래밍된 함수로 계산하여 결과값을 도출합니다. 즉, 차트내에서 24이평선보다 종가가 더클때, "종가-24이평선값"들의 표준편차을 구한후 2를 곱한값입니다. 위에서 계산된 2,3번값을 더하여 가격박스 상한선이 계산됩니다. ----가격박스 하한선---- 2. A + AvgIf( 가격 - A, -1, 0.0 ) // AvgIf함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 작은값을 모두더한 후 해당 기간값으로 나눈 값입니다. 이값을 24이평선에 더해 계산합니다. 즉, 차트내에서 24이평선보다 종가가 더 작을때, 종가와 24이평선의 차이의 평균을 구한후, 24이평선에 더한 값입니다. 3. + 2 * StdevIf( 가격 - A, -1, 0.0 ) stdevif함수는 차트에 조회된 기간(기본적으로 일봉은 600봉, 분봉은 900봉)중 "종가-24이평선"값이 0보다 작은값들에 대해 표준편차를 구합니다. 수식관리자에서는 표준편차를 계산하는 구조가 제공되고 있지 않으므로 내부적으로 프로그래밍된 함수로 계산하여 결과값을 도출합니다. 즉, 차트내에서 24이평선보다 종가가 더작을때, "종가-24이평선값"들의 표준편차을 구한후 2를 곱한값입니다. 위에서 계산된 2번값에서 3번값을 뺀값이 가격박스 하한선이 계산됩니다