커뮤니티

가격 박스차트...

프로필 이미지
자마이카
2010-10-14 21:15:57
1159
글번호 32830
답변완료
가격 박스차트를 시스템식으로 작성해 주시기 바랍니다. 대신증권에 있는 차트로서 엔빌로프와 유사합니다. 미리 감사드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2010-10-15 09:38:19

안녕하세요 예스스탁입니다. 봉갯수를 많이 띄우셔야 합니다. 유추해서 만든식이므로 정확하지 않을 수 있습니다. input: maPeriod(20), stddevPeriod(300); VAR : UPPERSUM(0), UpperNum(0),ii(0),LowerSum(0), LowerNum(0); If index >= MAPeriod - 1 then { Var1 = ma(close, MAPeriod); Var2 = close - Var1; If Var2 >= 0 then { Var3 = Var2; //upper Var7 = 0; //lower //0//값 입력 Var4 = Var4 + Var3; //upper의 합 Var5 = Var5 + 1; //nPlus } If Var2 < 0 then { Var7 = Var2; //lower Var3 = 0 ;//upper //0//값 입력 Var8 = Var8 + Var7; //lower의 합 Var9 = Var9 + 1; //nMinus } If index >= StdDevPeriod - 1 then { If index > StdDevPeriod - 1 then { UpperSum = Var4 - Var4[StdDevPeriod]; UpperNum = Var5 - Var5[StdDevPeriod]; Var6 = UpperSum / UpperNum; //upperMean } Else Var6 = Var4 / Var5; //upperMean Var11 = 0; For ii = index - StdDevPeriod + 1 To index { If Var3[ii] <> 0 then { Var11 = Var11 + (Var6 - Var3[ii]) ^ 2; } } If index == StdDevPeriod - 1 then Var11 = sqrt(Var11 / Var5); //upperstd Else Var11 = sqrt(Var11 / UpperNum); //upperstd Plot1(Var1 + Var6 + (2 * Var11),"upperLine" ); If index > StdDevPeriod - 1 then { LowerSum = Var8 - Var8[StdDevPeriod]; LowerNum = Var9 - Var9[StdDevPeriod]; Var10 = LowerSum / LowerNum; //lowerMean } Else Var10 = Var8 / Var9; //lowerMean Var12 = 0; For ii = index - StdDevPeriod + 1 To index { If Var7[ii] <> 0 then Var12 = Var12 + (Var10 - Var7[ii]) ^ 2; } If index == StdDevPeriod - 1 then Var12 = sqrt(Var12 / Var9); //upperstd Else Var12 = sqrt(Var12 / LowerNum); //upperstd Plot2( Var1 + Var10 - (2 * Var12),"lowerLine"); Plot3( Var1,"MA"); } } 즐거운 하루되세요 > 자마이카 님이 쓴 글입니다. > 제목 : 가격 박스차트... > 가격 박스차트를 시스템식으로 작성해 주시기 바랍니다. 대신증권에 있는 차트로서 엔빌로프와 유사합니다. 미리 감사드립니다.