커뮤니티

문의드립니다

프로필 이미지
맥스
2011-08-18 10:15:15
762
글번호 42003
답변완료
문의드립니다. 아래의 수식은 월봉의 수식입니다. 구하고자 하는 값은 주봉 및 일봉에서 월봉의 각 plot 값입니다. 1. 아래월봉의 각 plot 값을 주봉 및 일봉에서 지표로 나타내기 2. 각 plot값중 일부만 차트에 가격이 표시될 수 있는 방법을 알고 싶읍니다. input : p1(2),LENGTH1(3),LENGTH2(5),LENGTH3(10),LENGTH4(20),LENGTH5(40),LENGTH6(60), Period1(3),Period2(5),Period3(10),Period4(20),Period5(40),Period6(60); var : TCHAN1(0),TCHAN2(0),TCHAN3(0),TCHAN4(0),TCHAN5(0),TCHAN6(0); TCHAN1 = HIGHEST(High, LENGTH1)[1]; TCHAN2 = HIGHEST(High, LENGTH2)[1]; TCHAN3 = HIGHEST(High, LENGTH3)[1]; TCHAN4 = HIGHEST(High, LENGTH4)[1]; TCHAN5 = HIGHEST(High, LENGTH5)[1]; TCHAN6 = HIGHEST(High, LENGTH6)[1]; var1 = wma((H+L+C)/3, period1)[1]+(p1*stdw((H+L+C)/3, period1)[1]); var2 = wma((H+L+C)/3, period2)[1]+(p1*stdw((H+L+C)/3, period2)[1]); var3 = wma((H+L+C)/3, period3)[1]+(p1*stdw((H+L+C)/3, period3)[1]); var4 = wma((H+L+C)/3, period4)[1]+(p1*stdw((H+L+C)/3, period4)[1]); var5 = wma((H+L+C)/3, period5)[1]+(p1*stdw((H+L+C)/3, period5)[1]); var6 = wma((H+L+C)/3, period6)[1]+(p1*stdw((H+L+C)/3, period6)[1]); var7 = (H+L)/2; ##월봉 중간값 Value1 = Max((H[1]+L[1])/2,(H[1]+L[1]+C[1])/3,(H[2]+L[2])/2,(H[2]+L[2]+C[2])/3); Value2 = Min((H[1]+L[1])/2,(H[1]+L[1]+C[1])/3,(H[2]+L[2])/2,(H[2]+L[2]+C[2])/3); Value3 = (MAX(H[1],H[2])+Min(L[1],L[2])+C[1])/3; Plot1(TCHAN1, "pc3[1]"); Plot2(TCHAN2, "pc5[1]"); Plot3(TCHAN3, "pc10[1]"); Plot4(TCHAN4, "pc20[1]"); Plot5(TCHAN5, "pc40[1]"); Plot6(TCHAN6, "pc60[1]"); Plot7(var1, "bb3[1]"); Plot8(var2, "bb5[1]"); Plot9(var3, "bb10[1]"); Plot10(var4, "bb20[1]"); Plot11(var5, "bb40[1]"); Plot12(var6, "bb60[1]"); Plot13(Value1, "1"); Plot14(Value2, "2"); Plot15(Value3, "3");
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-08-18 14:39:40

안녕하세요 예스스탁입니다. 주봉의 경우 월이 변경되는 날짜가 하나의 주봉안에에 포함이 되어 있을 수 있으므로 월봉의 값을 주봉에서 구현할 수는 없습니다. 일봉에서 보셔야 합니다. input : p1(2),LENGTH1(3),LENGTH2(5),LENGTH3(10),LENGTH4(20),LENGTH5(40),LENGTH6(60), Period1(3),Period2(5),Period3(10),Period4(20),Period5(40),Period6(60); var : TCHAN1(0),TCHAN2(0),TCHAN3(0),TCHAN4(0),TCHAN5(0),TCHAN6(0),cnt(0); Var : Sum1(0), Counter1(0), CSum1(0),Wma1(0),SumSqrt1(0),Std1(0); Var : Sum2(0), Counter2(0), CSum2(0),Wma2(0),SumSqrt2(0),Std2(0); Var : Sum3(0), Counter3(0), CSum3(0),Wma3(0),SumSqrt3(0),Std3(0); Var : Sum4(0), Counter4(0), CSum4(0),Wma4(0),SumSqrt4(0),Std4(0); Var : Sum5(0), Counter5(0), CSum5(0),Wma5(0),SumSqrt5(0),Std5(0); Var : Sum6(0), Counter6(0), CSum6(0),Wma6(0),SumSqrt6(0),Std6(0); Array : HH[70](0),CC[70](0),LL[70](0); if sdate > sdate[1]+30 Then{ HH[0] = H; LL[0] = L; for cnt = 1 to 61{ HH[cnt] = HH[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; CC[0] = C; TCHAN1 = HH[1]; for cnt = 1 to LENGTH1 { if HH[cnt] > TCHAN1 Then TCHAN1 = HH[cnt]; } TCHAN2 = HH[1]; for cnt = 1 to LENGTH2 { if HH[cnt] > TCHAN2 Then TCHAN2 = HH[cnt]; } TCHAN3 = HH[1]; for cnt = 1 to LENGTH3 { if HH[cnt] > TCHAN3 Then TCHAN3 = HH[cnt]; } TCHAN4 = HH[1]; for cnt = 1 to LENGTH4 { if HH[cnt] > TCHAN4 Then TCHAN4 = HH[cnt]; } TCHAN5 = HH[1]; for cnt = 1 to LENGTH5 { if HH[cnt] > TCHAN5 Then TCHAN5 = HH[cnt]; } TCHAN6 = HH[1]; for cnt = 1 to LENGTH6 { if HH[cnt] > TCHAN6 Then TCHAN6 = HH[cnt]; } Sum1 = 0; CSum1 = 0; For counter1 = 1 To Period1{ Sum1 = Sum1 + ((HH[counter1]+LL[counter1]+CC[counter1])/3) * (Period1 - (counter1-1)); CSum1 = CSum1 + Period1 - (counter1-1); } WMA1 = Sum1/CSum1; SumSqrt1 = 0; For Counter1 = 1 To Period1 { SumSqrt1 = SumSqrt1 + (((HH[counter1]+LL[counter1]+CC[counter1])/3) - WMA1) * (((HH[counter1]+LL[counter1]+CC[counter1])/3) - WMA1); } Std1 = SquareRoot(SumSqrt1 / Period1); Sum2 = 0; CSum2 = 0; For counter2 = 1 To Period2{ Sum2 = Sum2 + ((HH[counter2]+LL[counter2]+CC[counter2])/3) * (Period2 - (counter2-1)); CSum2 = CSum2 + Period2 - (counter2-1); } WMA2 = Sum2/CSum2; SumSqrt2 = 0; For Counter2 = 1 To Period2 { SumSqrt2 = SumSqrt2 + (((HH[counter2]+LL[counter2]+CC[counter2])/3) - WMA2) * (((HH[counter2]+LL[counter2]+CC[counter2])/3) - WMA2); } Std2 = SquareRoot(SumSqrt2 / Period2); Sum3 = 0; CSum3 = 0; For counter3 = 1 To Period3 { Sum3 = Sum3 + ((HH[counter3]+LL[counter3]+CC[counter3])/3) * (Period3 - (counter3-1)); CSum3 = CSum3 + Period3 - (counter3-1); } WMA3 = Sum3/ CSum3; SumSqrt3 = 0; For Counter3 = 1 To Period3 { SumSqrt3 = SumSqrt3 + (((HH[counter3]+LL[counter3]+CC[counter3])/3) - WMA3) * (((HH[counter3]+LL[counter3]+CC[counter3])/3) - WMA3); } Std3 = SquareRoot(SumSqrt3 / Period3); Sum4 = 0; CSum4 = 0; For counter4 = 1 To Period4 { Sum4 = Sum4 + ((HH[counter4]+LL[counter4]+CC[counter4])/3) * (Period4 - (counter4-1)); CSum4 = CSum4 + Period4 - (counter4-1); } WMA4 = Sum4/ CSum4; SumSqrt4 = 0; For Counter4 = 1 To Period4 { SumSqrt4 = SumSqrt4 + (((HH[counter4]+LL[counter4]+CC[counter4])/3) - WMA4) * (((HH[counter4]+LL[counter4]+CC[counter4])/3) - WMA4); } Std4 = SquareRoot(SumSqrt4 / Period4); Sum5 = 0; CSum5 = 0; For counter5 = 1 To Period5 { Sum5 = Sum5 + ((HH[counter5]+LL[counter5]+CC[counter5])/3) * (Period5 - (counter5-1)); CSum5 = CSum5 + Period5 - (counter5-1); } WMA5 = Sum5/ CSum5; SumSqrt5 = 0; For Counter5 = 1 To Period5 { SumSqrt5 = SumSqrt5 + (((HH[counter5]+LL[counter5]+CC[counter5])/3) - WMA5) * (((HH[counter5]+LL[counter5]+CC[counter5])/3) - WMA5); } Std5 = SquareRoot(SumSqrt5 / Period5); Sum6 = 0; CSum6 = 0; For counter6 = 1 To Period6 { Sum6 = Sum6 + ((HH[counter6]+LL[counter6]+CC[counter6])/3) * (Period6 - (counter6-1)); CSum6 = CSum6 + Period6 - (counter6-1); } WMA6 = Sum6/ CSum6; SumSqrt6 = 0; For Counter6 = 1 To Period6 { SumSqrt6 = SumSqrt6 + (((HH[counter6]+LL[counter6]+CC[counter6])/3) - WMA6) * (((HH[counter6]+LL[counter6]+CC[counter6])/3) - WMA6); } Std6 = SquareRoot(SumSqrt6 / Period6); var1 = wma1+(p1*STD1); var2 = wma2+(p1*STD2); var3 = wma3+(p1*STD3); var4 = wma4+(p1*STD4); var5 = wma5+(p1*STD5); var6 = wma6+(p1*STD6); var7 = (HH[0]+LL[0])/2; ##주봉 중간값 Value1 = Max((HH[1]+LL[1])/2,(HH[1]+LL[1]+CC[1])/3,(HH[2]+LL[2])/2,(HH[2]+LL[2]+CC[2])/3); Value2 = Min((HH[1]+LL[1])/2,(HH[1]+LL[1]+CC[1])/3,(HH[2]+LL[2])/2,(HH[2]+LL[2]+CC[2])/3); Value3 = (MAX(HH[1],HH[2])+Min(LL[1],LL[2])+CC[1])/3; Plot1(TCHAN1, "pc3[1]"); Plot2(TCHAN2, "pc5[1]"); Plot3(TCHAN3, "pc10[1]"); Plot4(TCHAN4, "pc20[1]"); Plot5(TCHAN5, "pc40[1]"); Plot6(TCHAN6, "pc60[1]"); Plot7(var1, "bb3[1]"); Plot8(var2, "bb5[1]"); Plot9(var3, "bb10[1]"); Plot10(var4, "bb20[1]"); Plot11(var5, "bb40[1]"); Plot12(var6, "bb60[1]"); Plot13(Value1, "1"); Plot14(Value2, "2"); Plot15(Value3, "3"); 즐거운 하루되세요 > 맥스 님이 쓴 글입니다. > 제목 : 문의드립니다 > 문의드립니다. 아래의 수식은 월봉의 수식입니다. 구하고자 하는 값은 주봉 및 일봉에서 월봉의 각 plot 값입니다. 1. 아래월봉의 각 plot 값을 주봉 및 일봉에서 지표로 나타내기 2. 각 plot값중 일부만 차트에 가격이 표시될 수 있는 방법을 알고 싶읍니다. input : p1(2),LENGTH1(3),LENGTH2(5),LENGTH3(10),LENGTH4(20),LENGTH5(40),LENGTH6(60), Period1(3),Period2(5),Period3(10),Period4(20),Period5(40),Period6(60); var : TCHAN1(0),TCHAN2(0),TCHAN3(0),TCHAN4(0),TCHAN5(0),TCHAN6(0); TCHAN1 = HIGHEST(High, LENGTH1)[1]; TCHAN2 = HIGHEST(High, LENGTH2)[1]; TCHAN3 = HIGHEST(High, LENGTH3)[1]; TCHAN4 = HIGHEST(High, LENGTH4)[1]; TCHAN5 = HIGHEST(High, LENGTH5)[1]; TCHAN6 = HIGHEST(High, LENGTH6)[1]; var1 = wma((H+L+C)/3, period1)[1]+(p1*stdw((H+L+C)/3, period1)[1]); var2 = wma((H+L+C)/3, period2)[1]+(p1*stdw((H+L+C)/3, period2)[1]); var3 = wma((H+L+C)/3, period3)[1]+(p1*stdw((H+L+C)/3, period3)[1]); var4 = wma((H+L+C)/3, period4)[1]+(p1*stdw((H+L+C)/3, period4)[1]); var5 = wma((H+L+C)/3, period5)[1]+(p1*stdw((H+L+C)/3, period5)[1]); var6 = wma((H+L+C)/3, period6)[1]+(p1*stdw((H+L+C)/3, period6)[1]); var7 = (H+L)/2; ##월봉 중간값 Value1 = Max((H[1]+L[1])/2,(H[1]+L[1]+C[1])/3,(H[2]+L[2])/2,(H[2]+L[2]+C[2])/3); Value2 = Min((H[1]+L[1])/2,(H[1]+L[1]+C[1])/3,(H[2]+L[2])/2,(H[2]+L[2]+C[2])/3); Value3 = (MAX(H[1],H[2])+Min(L[1],L[2])+C[1])/3; Plot1(TCHAN1, "pc3[1]"); Plot2(TCHAN2, "pc5[1]"); Plot3(TCHAN3, "pc10[1]"); Plot4(TCHAN4, "pc20[1]"); Plot5(TCHAN5, "pc40[1]"); Plot6(TCHAN6, "pc60[1]"); Plot7(var1, "bb3[1]"); Plot8(var2, "bb5[1]"); Plot9(var3, "bb10[1]"); Plot10(var4, "bb20[1]"); Plot11(var5, "bb40[1]"); Plot12(var6, "bb60[1]"); Plot13(Value1, "1"); Plot14(Value2, "2"); Plot15(Value3, "3");