커뮤니티
지표식 문의
2011-08-10 09:15:22
682
글번호 41809
문의드립니다.
아래의 수식은 주봉의 수식입니다. 구하고자 하는 값은 일봉 및 분봉에서 주봉의 각 plot 값입니다.
1. 아래주봉의 각 plot 값을 일봉 및 20분봉에서 지표로 나타내기
2. 아래주봉의 수식을 일봉의 수식으로 간주하고 20분봉에서 일봉의 각 plot 값을
지표로 나타내기(var7 = (DayHigh+DayLow)/2; 일봉중간값)
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(C, period1)[1]+(p1*stdw(C, period1)[1]);
var2 = wma(C, period2)[1]+(p1*stdw(C, period2)[1]);
var3 = wma(C, period3)[1]+(p1*stdw(C, period3)[1]);
var4 = wma(C, period4)[1]+(p1*stdw(C, period4)[1]);
var5 = wma(C, period5)[1]+(p1*stdw(C, period5)[1]);
var6 = wma(C, period6)[1]+(p1*stdw(C, 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;
Value4 = Value1+Value2+Value3;
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");
Plot16(Value4, "4");
답변 1
예스스탁 예스스탁 답변
2011-08-10 13:55:28
안녕하세요
예스스탁입니다.
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 DayOfWeek(sdate) <= DayOfWeek(sdate[1]) and sdate > sdate[1] Then{
HH[0] = H;
for cnt = 1 to 61{
HH[cnt] = HH[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
}
var1 = value1[1];
var2 = value2[1];
var3 = value3[1];
var4 = value4[1];
var5 = value5[1];
var6 = value6[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 = 0 To Period1 - 1 {
Sum1= Sum1 + CC[counter1] * (Period1 - counter1);
CSum1 = CSum1 + Period1 - counter1;
}
WMA1 = Sum1/ CSum1;
SumSqrt1 = 0;
For Counter1 = 0 To Period1 - 1 {
SumSqrt1 = SumSqrt1 + (CC[Counter1] - WMA1) * (CC[Counter1] - WMA1);
}
Std1 = SquareRoot(SumSqrt1 / Period1);
Sum2 = 0;
CSum2 = 0;
For counter2 = 0 To Period2 - 1 {
Sum2 = Sum2 + CC[counter2] * (Period2 - counter2);
CSum2 = CSum2 + Period2 - counter2;
}
WMA2 = Sum2/ CSum2;
SumSqrt2 = 0;
For Counter2 = 0 To Period2 - 1 {
SumSqrt2 = SumSqrt2 + (CC[Counter2] - WMA2) * (CC[Counter2] - WMA2);
}
Std2 = SquareRoot(SumSqrt2 / Period2);
Sum3 = 0;
CSum3 = 0;
For counter3 = 0 To Period3 - 1 {
Sum3 = Sum3 + CC[counter3] * (Period3 - counter3);
CSum3 = CSum3 + Period3 - counter3;
}
WMA3 = Sum3/ CSum3;
SumSqrt3 = 0;
For Counter3 = 0 To Period3 - 1 {
SumSqrt3 = SumSqrt3 + (CC[Counter3] - WMA3) * (CC[Counter3] - WMA3);
}
Std3 = SquareRoot(SumSqrt3 / Period3);
Sum4 = 0;
CSum4 = 0;
For counter4 = 0 To Period4 - 1 {
Sum4 = Sum4 + CC[counter4] * (Period4 - counter4);
CSum4 = CSum4 + Period4 - counter4;
}
WMA4 = Sum4/ CSum4;
SumSqrt4 = 0;
For Counter4 = 0 To Period4 - 1 {
SumSqrt4 = SumSqrt4 + (CC[Counter4] - WMA4) * (CC[Counter4] - WMA4);
}
Std4 = SquareRoot(SumSqrt4 / Period4);
Sum5 = 0;
CSum5 = 0;
For counter5 = 0 To Period5 - 1 {
Sum5 = Sum5 + CC[counter5] * (Period5 - counter5);
CSum5 = CSum5 + Period5 - counter5;
}
WMA5 = Sum5/ CSum5;
SumSqrt5 = 0;
For Counter5 = 0 To Period5 - 1 {
SumSqrt5 = SumSqrt5 + (CC[Counter5] - WMA5) * (CC[Counter5] - WMA5);
}
Std5 = SquareRoot(SumSqrt5 / Period5);
Sum6 = 0;
CSum6 = 0;
For counter6 = 0 To Period6 - 1 {
Sum6 = Sum6 + CC[counter6] * (Period6 - counter6);
CSum6 = CSum6 + Period6 - counter6;
}
WMA6 = Sum6/ CSum6;
SumSqrt6 = 0;
For Counter6 = 0 To Period6 - 1 {
SumSqrt6 = SumSqrt6 + (CC[Counter6] - WMA6) * (CC[Counter6] - WMA6);
}
Std6 = SquareRoot(SumSqrt6 / Period6);
value1 = wma1+(p1*STD1);
value2 = wma2+(p1*STD2);
value3 = wma3+(p1*STD3);
value4 = wma4+(p1*STD4);
value5 = wma5+(p1*STD5);
value6 = 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;
Value4 = Value1+Value2+Value3;
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");
Plot16(Value4, "4");
즐거운 하루되세요
> 맥스 님이 쓴 글입니다.
> 제목 : 지표식 문의
> 문의드립니다.
아래의 수식은 주봉의 수식입니다. 구하고자 하는 값은 일봉 및 분봉에서 주봉의 각 plot 값입니다.
1. 아래주봉의 각 plot 값을 일봉 및 20분봉에서 지표로 나타내기
2. 아래주봉의 수식을 일봉의 수식으로 간주하고 20분봉에서 일봉의 각 plot 값을
지표로 나타내기(var7 = (DayHigh+DayLow)/2; 일봉중간값)
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(C, period1)[1]+(p1*stdw(C, period1)[1]);
var2 = wma(C, period2)[1]+(p1*stdw(C, period2)[1]);
var3 = wma(C, period3)[1]+(p1*stdw(C, period3)[1]);
var4 = wma(C, period4)[1]+(p1*stdw(C, period4)[1]);
var5 = wma(C, period5)[1]+(p1*stdw(C, period5)[1]);
var6 = wma(C, period6)[1]+(p1*stdw(C, 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;
Value4 = Value1+Value2+Value3;
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");
Plot16(Value4, "4");
다음글
이전글