커뮤니티

지표식 문의합니다

프로필 이미지
dk3113
2018-01-29 11:09:44
127
글번호 116115
답변완료
늘 감사드립니다. 1. 기간값(20)의 일봉 band%b지표를 30분봉에 구현하는식 2. 타주기 30분봉 기간값(10)의 band%b지표를 5분봉에 구현하는식 부탁드립니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-01-29 15:49:29

안녕하세요 예스스탁입니다. 1. # 분봉에서 일봉 볼린져밴드 계산 시작 input : Period(20),Dv(2); var : sum(0),cnt(0),mav(0),SumSqrt(0),Stdv(0); var : BBup(0),BBdn(0),BandB(0); If DayClose(Period) > 0 Then { #일봉 이동평균 계산 sum = 0; for cnt = 0 to Period-1{ sum = sum + DayClose(cnt); } mav = sum/Period; #표준편차 계산 SumSqrt = 0; For cnt = 0 To Period - 1 { SumSqrt = SumSqrt + (DayClose(cnt) - mav)^2; } Stdv = SquareRoot(SumSqrt / Period); # 일봉 볼린져밴드 계산 BBup = mav + (Dv * Stdv); BBdn = mav - (Dv * Stdv); #%b BandB = ((C-BBDn)/(BBUp-BBDn))*100; Plot1(BandB, "Band %b"); PlotBaseLine1(10, "기준선10"); PlotBaseLine2(90, "기준선90"); } 2 input : 타주기분(30),P(10),Dv(2); var : S1(0),D1(0),TM(0),TF(0),cnt(0); var : SumSqrt(0),Stdv(0),sum(0),BBmd(0),Bbup(0),BBdn(0),BandB(0); Array : CC[100](0); if Bdate != Bdate[1] Then{ S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%타주기분; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then{ for cnt = 1 to 99{ CC[cnt] = CC[cnt-1][1]; } } CC[0] = C; if CC[P] > 0 then{ sum = 0; for cnt = 0 to P-1{ sum = sum + CC[cnt]; } BBmd = sum/P; SumSqrt = 0; For cnt = 0 To P - 1 { SumSqrt = SumSqrt + (CC[cnt] - BBmd)^2; } Stdv = SquareRoot(SumSqrt / P); BBup = BBmd + (Dv * Stdv); BBdn = BBmd - (Dv * Stdv); BandB = ((C-BBDn)/(BBUp-BBDn))*100; Plot1(BandB, "Band %b"); PlotBaseLine1(10, "기준선10"); PlotBaseLine2(90, "기준선90"); } } 즐거운 하루되세요 > dk3113 님이 쓴 글입니다. > 제목 : 지표식 문의합니다 > 늘 감사드립니다. 1. 기간값(20)의 일봉 band%b지표를 30분봉에 구현하는식 2. 타주기 30분봉 기간값(10)의 band%b지표를 5분봉에 구현하는식 부탁드립니다.