커뮤니티

수식문의요

프로필 이미지
고구미
2014-01-28 16:43:03
145
글번호 71994
답변완료
갭보정DMI수식과 위 갭보정DMJ를 다른 분봉에서 볼수있을까요.. 예를들어 일반5분봉에 갭5분DMI 또는 갭10분DMI 를 볼수 있을까요.....
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-01-28 17:22:37

안녕하세요 예스스탁입니다. 해당식의 경우 값을 그대로 계산하기는 어렵습니다. 모든 식이 문의하신 내용으로 변환이 되지는 않습니다 아래식은 비슷하게 나오는 식입니다. 이용에 참고하시기 바랍니다. input : Atime(10),Length(14); var : TL(0),TH(0),cnt(0),Dcnt(0),preTRange(0),prePlusDM14(0),DMinus(0),MinusDM14(0),TRange1(0),preMinusDM14(0); Var : Counter(0), TRange(0), MyRange(Length), PlusDM14(0), PlusDM(0), MinusDM(0),Dplus(0); Var : CummDMI(0), Return(0),TF(0); var : sumGap(0), gap(0), GO(0), GH(0), GL(0), GC(0); Array : HH[61](0),LL[61](0),CC[61](0),TR[61](0),DMIv[61](0); if date!=date[1] then { gap = Open-Close[1]; sumGap = sumGap+gap; } GO = O - sumGap; GH = H - sumGap; GL = L - sumGap; GC = C - sumGap; TF = TimeToMinutes(stime)%Atime; if dayindex == 0 or (TF< TF[1] and stime > stime[1]) Then{ Dcnt = Dcnt+1; HH[0] = GH; LL[0] = GL; CC[0] = GC; preTRange = TRange[1]; prePlusDM14 = PlusDM14[1]; preMinusDM14 = MinusDM14[1]; for cnt = 1 to 60{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; TR[cnt] = TR[cnt-1][1]; DMIv[cnt] = DMIv[cnt-1][1]; } } if GH > HH[0] Then HH[0] = GH; if GL < LL[0] Then LL[0] = GL; CC[0] = GC; if CC[1] > 0 Then{ If CC[1] > HH[0] then TH = CC[1]; else TH = HH[0]; If CC[1] < LL[0] then TL = CC[1]; else TL = LL[0]; TR[0] = TH-TL; } If Dcnt == Length+1 Then { MyRange = Length; DPlus = 0; PlusDM14 = 0; TRange = 0; DMinus = 0; MinusDM14 = 0; TRange1 = 0; For Counter = 0 To MyRange - 1 { If HH[Counter] - HH[Counter+1] < 0 Then PlusDM = 0 ; Else PlusDM = HH[Counter] - HH[Counter+1]; If LL[Counter+1] - LL[Counter] < 0 Then MinusDM = 0; Else MinusDM = LL[Counter+1] - LL[Counter]; If MinusDM >= PlusDM Then PlusDM = 0; If PlusDM >= MinusDM Then MinusDM = 0; TRange = TRange + TR[Counter]; PlusDM14 = PlusDM14 + PlusDM; MinusDM14 = MinusDM14 + MinusDM; } If TRange <> 0 Then DPlus = 100 * PlusDM14 / TRange; Else DPlus = 0 ; If TRange <> 0 Then DMinus = 100 * MinusDM14 / TRange; Else DMinus = 0; If Dplus + Dminus == 0 Then DMIv[0] = 0; Else DMIv[0] = 100 * AbsValue(Dplus - Dminus) / (Dplus + Dminus); } Else If Dcnt > Length+1 Then { If HH[0] - HH[1] < 0 Then PlusDM = 0; Else PlusDM = HH[0] - HH[1]; If LL[1] - LL[0] < 0 Then MinusDM = 0; Else MinusDM = LL[1] - LL[0]; If MinusDM >= PlusDM Then PlusDM = 0; If PlusDM >= MinusDM Then MinusDM = 0 ; If MyRange > 0 Then { TRange = preTRange - (preTRange / MyRange) + TR[0]; PlusDM14 = prePlusDM14 - (prePlusDM14 / MyRange) + PlusDM; MinusDM14 = preMinusDM14 - (preMinusDM14 / MyRange) + MinusDM; } If TRange <> 0 Then DPlus = 100 * PlusDM14 / TRange; Else DPlus = 0 ; If TRange <> 0 Then DMinus = 100 * MinusDM14 / TRange; Else DMinus = 0; If Dplus + Dminus == 0 Then DMIv[0] = 0; Else DMIv[0] = 100 * AbsValue(Dplus - Dminus) / (Dplus + Dminus); } plot2(DMIV[0],"DMI"); plot3(DPlus[0],"+di"); plot4(DMinus[0],"-di"); 즐거운 하루되세요 > 고구미 님이 쓴 글입니다. > 제목 : 수식문의요 > 갭보정DMI수식과 위 갭보정DMJ를 다른 분봉에서 볼수있을까요.. 예를들어 일반5분봉에 갭5분DMI 또는 갭10분DMI 를 볼수 있을까요.....