커뮤니티
안녕하세요
2015-03-05 08:13:01
144
글번호 83712
안녕하세요.반갑습니다
2가지 문의 드립니다.
1)
**매수신호
1.이동평균선 정배열: (5> 20> 40> 60>)이후
2.그때 스토케스틱수치.(8.4.4)%K와%D모두50과85의 사이에 존재하면서...(50~85)
3.%k의 수치가%D의 수치보다 크다라고 한다면...
4.그러한 이후에1/6챠트의5일선이 10일선을 데드크로스 즉시:매수
**매도신호
1.이동평균선.5.20.40.60일선이 모두볼린져벤드 내에존재하면서
2.5일선<20<40<60 역배열후
3.그때 스토케스틱수치.(8.4.4)%K와%D모두50과15의 사이에 존재하면서...(50~15)
4.%K의수치가%D의수치보다 작다라고 한다면..
5.그러한 이후 1/6챠트의 5일선이 10일선을 골든크로스 즉시:매도
2).
매수
1.이동평균선 정배열:8평 >20평
2.macd만족:0선돌파=macd>시그널 곡선이면서 우상향
(macd 0선을 못미쳐도 무방함)(macd수치 12.26.15)
(단.절대 시그널 곡선은 0선아래=0>시그널)
상기조건반대:매도
항상 고맙고 감사합니다
답변 2
예스스탁 예스스탁 답변
2015-03-05 10:25:42
안녕하세요
예스스탁입니다.
1.
문의중에 1/6차트는 사용하시는 차트 주기보다 낮은 주기를 언급하시것으로 보입니다.
수식에서 사용하는 차트보다 낮은 주기는 계산이 되지 않습니다.
차트보다 배수로 큰 주기만 계산이 가능하고 아랫주기는 가능하지 않습니다.
그러므로 문의하신 내용은 1/6차트의 주기를 띄우시고
1~3번 내용을 6배 큰 주기의 차트 내용으로 구현해야 합니다.
input : P1(5),P2(10),P3(40),P4(60),BBP(20),dv(2);
input : StoPeriod(10), StoPeriod1(6), StoPeriod2(6);
var : cnt(0),count(0);
var : sum1(0),sum2(0),sum3(0),sum4(0);
var : Tmav1(0),Tmav2(0),Tmav3(0),Tmav4(0);
var : highVal(0), lowVal(0), StoFastK(0), StoK(0), StoD(0);
var : Ep(0), EP1(0), JISU(0), DINDEX(0), PreStoK(0), PreStoD(0);
var : mav1(0),mav2(0),BBsum(0),mid(0);
var : SumSqrt(0),Stdv(0),BBup(0),BBdn(0);
Array : CC[100](0),HH[100](0),LL[100](0);
var1 = dayindex%(BarInterval*6);
if dayindex() == 0 or (var1 <= var1[1] and stime > stime[1]) Then{
HH[0] = H;
LL[0] = L;
for cnt = 1 to 99{
CC[cnt] = CC[cnt-1][1];
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
}
}
CC[0] = C;
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
BBsum = 0;
for cnt = 0 to P4{
if count < P1 Then
sum1 = sum1+CC[cnt];
if count < P2 Then
sum2 = sum2+CC[cnt];
if count < P3 Then
sum3 = sum3+CC[cnt];
if count < P4 Then
sum4 = sum4+CC[cnt];
if count < BBP Then
BBsum = BBsum+CC[cnt];
}
Tmav1 = sum1/P1;
Tmav2 = sum2/P2;
Tmav3 = sum3/P3;
Tmav4 = sum4/P4;
mid = BBsum/BBP;
SumSqrt = 0;
For cnt = 0 To BBP - 1 {
SumSqrt = SumSqrt + (CC[cnt] - mid) * (CC[cnt] - mid);
}
Stdv = SquareRoot(SumSqrt / BBP);
BBup = mid + (Dv * Stdv);
BBdn = mid - (Dv * Stdv);
highVal = HH[0];
lowVal = LL[0];
for count = 0 to StoPeriod-1 {
if HH[count] > highVal then
highVal = HH[count];
if LL[count] < lowVal then
lowVal = LL[count];
}
StoFastK = (C-lowVal)/(highVal-lowVal)*100;
#### Slow StochasticsK ####
Ep = 2/(StoPeriod1+1);
if DINDEX >= StoPeriod and (date != date[1] or var1 < var1[1]) then {
DINDEX = DINDEX + 1;
PreStoK = StoK[1];
}
if DINDEX <= 1 then
StoK = StoFastK ;
else
StoK = StoFastK * EP + PreStoK * (1-EP);
#### Slow StochasticsD ####
Ep1 = 2/(StoPeriod2+1);
if date != date[1] or var1 < var1[1] then {
DINDEX = DINDEX + 1;
PreStoD = StoD[1];
}
if DINDEX <= 1 then
StoD = StoK ;
else
StoD = StoK * EP1 + PreStoD * (1-EP1);
mav1 = ma(c,5);
mav2 = ma(c,10);
if Tmav1 > Tmav2 and Tmav2 > Tmav3 and Tmav3 > Tmav4 And
stok >= 50 and stok <= 85 and
stod >= 50 and stod <= 85 and
stok > stod and
crossup(mav1,mav2) Then
buy();
if BBup >= max(Tmav1,Tmav2,Tmav3,Tmav4) and min(Tmav1,Tmav2,Tmav3,Tmav4) >= BBdn and
Tmav1 < Tmav2 and Tmav2 < Tmav3 and Tmav3 < Tmav4 And
stok >= 15 and stok <= 50 and
stod >= 15 and stod <= 50 and
stok < stod and
CrossDown(mav1,mav2) Then
sell();
2.
input : P1(8),P2(20),short(12),Long(26),sig(9);
var1 = ma(c,P1);
var2 = ma(c,P2);
var3 = MACD(short,long);
var4 = ema(var3,sig);
if var1 > var2 And
var3 > var4 and var4 > var4[1] and var4 < 0 Then
buy();
if var1 < var2 And
var3 < var4 and var4 < var4[1] and var4 > 0 Then
sell();
즐거운 하루되세요
> jbouu123 님이 쓴 글입니다.
> 제목 : 안녕하세요
> 안녕하세요.반갑습니다
2가지 문의 드립니다.
1)
**매수신호
1.이동평균선 정배열: (5> 20> 40> 60>)이후
2.그때 스토케스틱수치.(8.4.4)%K와%D모두50과85의 사이에 존재하면서...(50~85)
3.%k의 수치가%D의 수치보다 크다라고 한다면...
4.그러한 이후에1/6챠트의5일선이 10일선을 데드크로스 즉시:매수
**매도신호
1.이동평균선.5.20.40.60일선이 모두볼린져벤드 내에존재하면서
2.5일선<20<40<60 역배열후
3.그때 스토케스틱수치.(8.4.4)%K와%D모두50과15의 사이에 존재하면서...(50~15)
4.%K의수치가%D의수치보다 작다라고 한다면..
5.그러한 이후 1/6챠트의 5일선이 10일선을 골든크로스 즉시:매도
2).
매수
1.이동평균선 정배열:8평 >20평
2.macd만족:0선돌파=macd>시그널 곡선이면서 우상향
(macd 0선을 못미쳐도 무방함)(macd수치 12.26.15)
(단.절대 시그널 곡선은 0선아래=0>시그널)
상기조건반대:매도
항상 고맙고 감사합니다
예스스탁 예스스탁 답변
2015-03-05 10:56:06
input : P1(5),P2(10),P3(40),P4(60),BBP(20),dv(2),sto1(8),sto2(4),sto3(4);
var : mav1(0),mav2(0),mav3(0),mav4(0);
var : BBup(0),BBdn(0);
var : Stok(0),stod(0);
mav1 = ma(C,P1);
mav2 = ma(C,P2);
mav3 = ma(C,P3);
mav4 = ma(C,P4);
bbup = BollBandUp(BBP,dv);
bbdn = BollBandDown(BBP,dv);
stok = StochasticsK(sto1,sto2);
stod = StochasticsD(sto1,sto2,sto3);
if mav1 > mav2 and mav2 > mav3 and mav3 > mav4 And
stok >= 50 and stok <= 80 And
stok > stod Then
buy();
if mav1 < mav2 and mav2 < mav3 and mav3 < mav4 And
BBup >= max(mav1,mav2,mav3,mav4) and min(mav1,mav2,mav3,mav4) >= BBdn and
stok >= 15 and stok <= 50 And
stok < stod Then
sell();
즐거운 하루되세요
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 안녕하세요
> 안녕하세요
예스스탁입니다.
1.
문의중에 1/6차트는 사용하시는 차트 주기보다 낮은 주기를 언급하시것으로 보입니다.
수식에서 사용하는 차트보다 낮은 주기는 계산이 되지 않습니다.
차트보다 배수로 큰 주기만 계산이 가능하고 아랫주기는 가능하지 않습니다.
그러므로 문의하신 내용은 1/6차트의 주기를 띄우시고
1~3번 내용을 6배 큰 주기의 차트 내용으로 구현해야 합니다.
input : P1(5),P2(10),P3(40),P4(60),BBP(20),dv(2);
input : StoPeriod(10), StoPeriod1(6), StoPeriod2(6);
var : cnt(0),count(0);
var : sum1(0),sum2(0),sum3(0),sum4(0);
var : Tmav1(0),Tmav2(0),Tmav3(0),Tmav4(0);
var : highVal(0), lowVal(0), StoFastK(0), StoK(0), StoD(0);
var : Ep(0), EP1(0), JISU(0), DINDEX(0), PreStoK(0), PreStoD(0);
var : mav1(0),mav2(0),BBsum(0),mid(0);
var : SumSqrt(0),Stdv(0),BBup(0),BBdn(0);
Array : CC[100](0),HH[100](0),LL[100](0);
var1 = dayindex%(BarInterval*6);
if dayindex() == 0 or (var1 <= var1[1] and stime > stime[1]) Then{
HH[0] = H;
LL[0] = L;
for cnt = 1 to 99{
CC[cnt] = CC[cnt-1][1];
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
}
}
CC[0] = C;
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
BBsum = 0;
for cnt = 0 to P4{
if count < P1 Then
sum1 = sum1+CC[cnt];
if count < P2 Then
sum2 = sum2+CC[cnt];
if count < P3 Then
sum3 = sum3+CC[cnt];
if count < P4 Then
sum4 = sum4+CC[cnt];
if count < BBP Then
BBsum = BBsum+CC[cnt];
}
Tmav1 = sum1/P1;
Tmav2 = sum2/P2;
Tmav3 = sum3/P3;
Tmav4 = sum4/P4;
mid = BBsum/BBP;
SumSqrt = 0;
For cnt = 0 To BBP - 1 {
SumSqrt = SumSqrt + (CC[cnt] - mid) * (CC[cnt] - mid);
}
Stdv = SquareRoot(SumSqrt / BBP);
BBup = mid + (Dv * Stdv);
BBdn = mid - (Dv * Stdv);
highVal = HH[0];
lowVal = LL[0];
for count = 0 to StoPeriod-1 {
if HH[count] > highVal then
highVal = HH[count];
if LL[count] < lowVal then
lowVal = LL[count];
}
StoFastK = (C-lowVal)/(highVal-lowVal)*100;
#### Slow StochasticsK ####
Ep = 2/(StoPeriod1+1);
if DINDEX >= StoPeriod and (date != date[1] or var1 < var1[1]) then {
DINDEX = DINDEX + 1;
PreStoK = StoK[1];
}
if DINDEX <= 1 then
StoK = StoFastK ;
else
StoK = StoFastK * EP + PreStoK * (1-EP);
#### Slow StochasticsD ####
Ep1 = 2/(StoPeriod2+1);
if date != date[1] or var1 < var1[1] then {
DINDEX = DINDEX + 1;
PreStoD = StoD[1];
}
if DINDEX <= 1 then
StoD = StoK ;
else
StoD = StoK * EP1 + PreStoD * (1-EP1);
mav1 = ma(c,5);
mav2 = ma(c,10);
if Tmav1 > Tmav2 and Tmav2 > Tmav3 and Tmav3 > Tmav4 And
stok >= 50 and stok <= 85 and
stod >= 50 and stod <= 85 and
stok > stod and
crossup(mav1,mav2) Then
buy();
if BBup >= max(Tmav1,Tmav2,Tmav3,Tmav4) and min(Tmav1,Tmav2,Tmav3,Tmav4) >= BBdn and
Tmav1 < Tmav2 and Tmav2 < Tmav3 and Tmav3 < Tmav4 And
stok >= 15 and stok <= 50 and
stod >= 15 and stod <= 50 and
stok < stod and
CrossDown(mav1,mav2) Then
sell();
2.
input : P1(8),P2(20),short(12),Long(26),sig(9);
var1 = ma(c,P1);
var2 = ma(c,P2);
var3 = MACD(short,long);
var4 = ema(var3,sig);
if var1 > var2 And
var3 > var4 and var4 > var4[1] and var4 < 0 Then
buy();
if var1 < var2 And
var3 < var4 and var4 < var4[1] and var4 > 0 Then
sell();
즐거운 하루되세요
> jbouu123 님이 쓴 글입니다.
> 제목 : 안녕하세요
> 안녕하세요.반갑습니다
2가지 문의 드립니다.
1)
**매수신호
1.이동평균선 정배열: (5> 20> 40> 60>)이후
2.그때 스토케스틱수치.(8.4.4)%K와%D모두50과85의 사이에 존재하면서...(50~85)
3.%k의 수치가%D의 수치보다 크다라고 한다면...
4.그러한 이후에1/6챠트의5일선이 10일선을 데드크로스 즉시:매수
**매도신호
1.이동평균선.5.20.40.60일선이 모두볼린져벤드 내에존재하면서
2.5일선<20<40<60 역배열후
3.그때 스토케스틱수치.(8.4.4)%K와%D모두50과15의 사이에 존재하면서...(50~15)
4.%K의수치가%D의수치보다 작다라고 한다면..
5.그러한 이후 1/6챠트의 5일선이 10일선을 골든크로스 즉시:매도
2).
매수
1.이동평균선 정배열:8평 >20평
2.macd만족:0선돌파=macd>시그널 곡선이면서 우상향
(macd 0선을 못미쳐도 무방함)(macd수치 12.26.15)
(단.절대 시그널 곡선은 0선아래=0>시그널)
상기조건반대:매도
항상 고맙고 감사합니다