커뮤니티
추가 질문입니다
2016-10-27 00:16:00
101
글번호 103403
안녕하세요
50270번 추가 질문입니다.
1. input 3번째줄 스토캐스틱 3-3-3에서 sto3(0)이 맞는지요?
2.5,15,40 이평선 정배열과 역배열시 같은값도 포함해주세요
( 5 >= 15>= 40 )
3. 이평선 배열이
40 >= 5 >= 15 일때 수식
4. 정리신호를
<매수시>
- 이격도(40) 100.15터치시
- RSI(기준선70) 위 + MACD 나 스토캐스틱 둘중 하나가 데드크로스될때
이 두 신호중 먼저 나오는 신호에 정리
< 매도시 >
- 이격도(40) 99.85터치시
- RSI(기준선30) 아래 + MACD 나 스토캐스틱 둘중 하나가 골드크로스될때
이 두 신호중 먼저 나오는 신호에 정리
5. 추가진입은 진입후 봉5개 이후 조건충족시 가능토록
감사합니다.
답변 1
예스스탁 예스스탁 답변
2016-10-27 10:10:09
안녕하세요
예스스탁입니다.
1
예 3이 맞습니다.
2
input : P11(5),P12(15),P13(40);
input : P2(20),P3(15);
input : short(3),long(9),sig(9),sto1(3),sto2(3),sto3(3),RSIP(14),DISP(40);
var : cnt(0),TF2(0),TF3(0);
var : sum2(0),mav2(0),sum3(0),mav3(0);
var : mav11(0),mav12(0),mav13(0);
var : MACDV(0),MACDS(0),stok(0),stod(0),RSIV(0),DIs(0);
Array : C2[100](0),C3[100](0);
TF2 = TimeToMinutes(stime)%30;
TF3 = TimeToMinutes(stime)%60;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) then{
for cnt = 1 to 99{
C2[cnt] = C2[cnt-1][1];
}
}
C2[0] = C;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF3 < TF3[1]) then{
for cnt = 1 to 99{
C3[cnt] = C3[cnt-1][1];
}
}
C3[0] = C;
if C2[P2] > 0 Then{
sum2 = 0;
for cnt = 0 to P2-1{
sum2 = sum2+C2[cnt];
}
mav2 = sum2/P2;
}
if C3[P3] > 0 Then{
sum3 = 0;
for cnt = 0 to P3-1{
sum3 = sum3+C3[cnt];
}
mav3 = sum3/P3;
}
mav11 = ma(c,P11);
mav12 = ma(c,P12);
mav13 = ma(c,P13);
MACDV = MACD(short,long);
MACDS = ema(MACDV,sig);
stok = StochasticsK(sto1,sto2);
stod = StochasticsD(sto1,sto2,sto3);
RSIV = RSI(RSIP);
Dis = Disparity(DISP);
if C2[P2] > 0 and C3[P3] > 0 and
C > mav2 and C > mav3 and
mav11 >= mav12 and mav12 >= mav13 and
crossup(MACDV,MACDS) and MACDV >= -0.1 and MACDV <= 5 and
crossup(stok,stod) and stok >= 40 and stok <= 100 and
RSIV >= 50 and RSIV <= 70 and
dis >= 99.98 and dis <= 100.10 and
C/mav2*100 >= 99.98 and C/mav2*100 <= 100.35 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == -1 and BarsSinceEntry >= 5) Then
buy("수1");
}
if C2[P2] > 0 and C3[P3] > 0 and
C > mav2 and C > mav3 and
mav11 <= mav12 and mav12 <= mav13 and
crossup(MACDV,MACDS) and MACDV >= -5.00 and MACDV <= 0.1 and
crossup(stok,stod) and stok >= 20 and stok <= 55 and
RSIV >= 30 and RSIV <= 50 and
dis >= 99.80 and dis <= 100.01 and
C/mav2*100 >= 99.98 and C/mav2*100 <= 100.35 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == -1 and BarsSinceEntry >= 5) Then
buy("수2");
}
if C2[P2] > 0 and C3[P3] > 0 and
C < mav2 and C < mav3 and
mav11 >= mav12 and mav12 >= mav13 and
CrossDown(MACDV,MACDS) and MACDV >= -0.1 and MACDV <= 5 and
CrossDown(stok,stod) and stok >= 45 and stok <= 80 and
RSIV >= 50 and RSIV <= 70 and
dis >= 99.98 and dis <= 100.10 and
C/mav2*100 >= 99.65 and C/mav2*100 <= 100.02 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == 1 and BarsSinceEntry >= 5) Then
sell("도1");
}
if C2[P2] > 0 and C3[P3] > 0 and
C < mav2 and C < mav3 and
mav11 <= mav12 and mav12 <= mav13 and
CrossDown(MACDV,MACDS) and MACDV >= -5.0 and MACDV <= 0.1 and
CrossDown(stok,stod) and stok >= 30 and stok <= 50 and
RSIV >= 30 and RSIV <= 50 and
dis >= 99.90 and dis <= 100.01 and
C/mav2*100 >= 99.65 and C/mav2*100 <= 100.02 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == 1 and BarsSinceEntry >= 5) Then
sell("도2");
}
if MarketPosition == 1 Then{
if crossup(dis,100.15) Then
ExitLong();
if RSIV >= 70 and (CrossDown(MACDV,MACDS) or CrossDown(stok,stod)) Then
ExitLong();
}
if MarketPosition == -1 Then{
if CrossDown(dis,99.85) Then
ExitShort();
if RSIV <= 70 and (CrossUp(MACDV,MACDS) or CrossUp(stok,stod)) Then
ExitShort();
}
SetStopLoss(PriceScale*30,PointStop);
3
input : P11(5),P12(15),P13(40);
input : P2(20),P3(15);
input : short(3),long(9),sig(9),sto1(3),sto2(3),sto3(3),RSIP(14),DISP(40);
var : cnt(0),TF2(0),TF3(0);
var : sum2(0),mav2(0),sum3(0),mav3(0);
var : mav11(0),mav12(0),mav13(0);
var : MACDV(0),MACDS(0),stok(0),stod(0),RSIV(0),DIs(0);
Array : C2[100](0),C3[100](0);
TF2 = TimeToMinutes(stime)%30;
TF3 = TimeToMinutes(stime)%60;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) then{
for cnt = 1 to 99{
C2[cnt] = C2[cnt-1][1];
}
}
C2[0] = C;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF3 < TF3[1]) then{
for cnt = 1 to 99{
C3[cnt] = C3[cnt-1][1];
}
}
C3[0] = C;
if C2[P2] > 0 Then{
sum2 = 0;
for cnt = 0 to P2-1{
sum2 = sum2+C2[cnt];
}
mav2 = sum2/P2;
}
if C3[P3] > 0 Then{
sum3 = 0;
for cnt = 0 to P3-1{
sum3 = sum3+C3[cnt];
}
mav3 = sum3/P3;
}
mav11 = ma(c,P11);
mav12 = ma(c,P12);
mav13 = ma(c,P13);
MACDV = MACD(short,long);
MACDS = ema(MACDV,sig);
stok = StochasticsK(sto1,sto2);
stod = StochasticsD(sto1,sto2,sto3);
RSIV = RSI(RSIP);
Dis = Disparity(DISP);
if C2[P2] > 0 and C3[P3] > 0 and
C > mav2 and C > mav3 and
mav13 >= mav11 and mav11 >= mav12 and
crossup(MACDV,MACDS) and MACDV >= -0.1 and MACDV <= 5 and
crossup(stok,stod) and stok >= 40 and stok <= 100 and
RSIV >= 50 and RSIV <= 70 and
dis >= 99.98 and dis <= 100.10 and
C/mav2*100 >= 99.98 and C/mav2*100 <= 100.35 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == -1 and BarsSinceEntry >= 5) Then
buy("수1");
}
if C2[P2] > 0 and C3[P3] > 0 and
C > mav2 and C > mav3 and
mav13 <= mav11 and mav11 <= mav12 and
crossup(MACDV,MACDS) and MACDV >= -5.00 and MACDV <= 0.1 and
crossup(stok,stod) and stok >= 20 and stok <= 55 and
RSIV >= 30 and RSIV <= 50 and
dis >= 99.80 and dis <= 100.01 and
C/mav2*100 >= 99.98 and C/mav2*100 <= 100.35 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == -1 and BarsSinceEntry >= 5) Then
buy("수2");
}
if C2[P2] > 0 and C3[P3] > 0 and
C < mav2 and C < mav3 and
mav13 >= mav11 and mav11 >= mav12 and
CrossDown(MACDV,MACDS) and MACDV >= -0.1 and MACDV <= 5 and
CrossDown(stok,stod) and stok >= 45 and stok <= 80 and
RSIV >= 50 and RSIV <= 70 and
dis >= 99.98 and dis <= 100.10 and
C/mav2*100 >= 99.65 and C/mav2*100 <= 100.02 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == 1 and BarsSinceEntry >= 5) Then
sell("도1");
}
if C2[P2] > 0 and C3[P3] > 0 and
C < mav2 and C < mav3 and
mav13 <= mav11 and mav11 <= mav12 and
CrossDown(MACDV,MACDS) and MACDV >= -5.0 and MACDV <= 0.1 and
CrossDown(stok,stod) and stok >= 30 and stok <= 50 and
RSIV >= 30 and RSIV <= 50 and
dis >= 99.90 and dis <= 100.01 and
C/mav2*100 >= 99.65 and C/mav2*100 <= 100.02 Then{
if TotalTrades == 0 or (MarketPosition == 0 and BarsSinceExit(1) >= 5) or (MarketPosition == 1 and BarsSinceEntry >= 5) Then
sell("도2");
}
if MarketPosition == 1 Then{
if crossup(dis,100.15) Then
ExitLong();
if RSIV >= 70 and (CrossDown(MACDV,MACDS) or CrossDown(stok,stod)) Then
ExitLong();
}
if MarketPosition == -1 Then{
if CrossDown(dis,99.85) Then
ExitShort();
if RSIV <= 70 and (CrossUp(MACDV,MACDS) or CrossUp(stok,stod)) Then
ExitShort();
}
SetStopLoss(PriceScale*30,PointStop);
즐거운 하루되세요
> 매의눈 님이 쓴 글입니다.
> 제목 : 추가 질문입니다
> 안녕하세요
50270번 추가 질문입니다.
1. input 3번째줄 스토캐스틱 3-3-3에서 sto3(0)이 맞는지요?
2.5,15,40 이평선 정배열과 역배열시 같은값도 포함해주세요
( 5 >= 15>= 40 )
3. 이평선 배열이
40 >= 5 >= 15 일때 수식
4. 정리신호를
<매수시>
- 이격도(40) 100.15터치시
- RSI(기준선70) 위 + MACD 나 스토캐스틱 둘중 하나가 데드크로스될때
이 두 신호중 먼저 나오는 신호에 정리
< 매도시 >
- 이격도(40) 99.85터치시
- RSI(기준선30) 아래 + MACD 나 스토캐스틱 둘중 하나가 골드크로스될때
이 두 신호중 먼저 나오는 신호에 정리
5. 추가진입은 진입후 봉5개 이후 조건충족시 가능토록
감사합니다.
다음글
이전글