커뮤니티
부탁드립니다.
2014-08-09 01:25:59
190
글번호 77537
늘 감사드립니다.
1. 가상매매조건은 다음과 같습니다.
var : SH(0),SL(0),SHi(0),SLi(0);
var : var1(0),var2(9999999999999),var3(9999999999999);
SH = SwingHigh(1,H,3,3,7);
SL = SwingLow(1,L,3,3,7);
var1 = round(ma((H+L+O+C)/4,60)*20,0)/20;
if SH != -1 and SH > var1 Then{
if SH > var2 Then{
var2 = SH;
SHi = index;
}
if SH < var2 and index > SLi and SLi > SHi Then{
var2 = SH;
}
}
if SL != -1 and SL < var1 Then{
if SL < var3 Then{
var3 = SL;
SLi = index;
}
if SL > var3 and index > SHi and SHi > SLi Then{
var3 = SL;
}
}
If H>var2+0.07 Then{
var4=Index;
Exitshort("sx1");
Playsound("K:₩음성₩드럼소리.wav");
}
If Marketposition==1 and L<var1-0.47 Then{
Playsound("K:₩음성₩드럼소리.wav");
}
If L<var3-0.07 Then{
var5=Index;
Exitlong("bx1");
Playsound("K:₩음성₩유리.wav");
}
If Marketposition==1 and L<var1-0.47 Then{
Playsound("K:₩음성₩유리.wav");
}
condition1=Marketposition(1)==1 and Marketposition==0;
condition2=Marketposition(1)==-1 and Marketposition==0;
If SL>var1 Then
var6=SL;
If SH<var1 Then
var7=SH;
If condition1==false and var4>var5 and L<=var6 Then{
Buy("b",atlimit,var6,1);
Playsound("K:₩음성₩종소리.wav");
}
If condition2==false and var4<var5 and H>=var7 Then{
Sell("s",atlimit,var7,1);
Playsound("K:₩음성₩종소리.wav");
}
2. 실제진입조건
위의 가상매매조건에서 발생하는 최근 매수가 6개와 최근매도가 6개를 각각 기억하게 합니다.
매수가는 매수가끼리, 매도가는 매도가끼리 지금 발생한 값에서 직전발생한 값을 빼서 그 값을
+,0,-로 표시합니다.(각각 최근4번의 값 저장)
(1) 매수조건
최근 3번씩 양쪽다 - - -(각각 3연속 마이너스)이거나
- - -
- - -
최근 4번씩 양쪽다 중간에 0이 하나 끼어있거나(처음과 끝은 양쪽다 -여야 함)
- 0 - - 또는 - 0 - - 또는 - - 0 - 또는 - - 0 -
- 0 - - - - 0 - - 0 - - - - 0 -
최근 상대방 4번은 중간에 0이 하나 낀 -3개이고
지금(최종) 발생한 쪽은 3연속마이너스일 때
- 0 - - 또는 - - 0 -
- - - - - -
최종발생한 마이너스신호가 가상매매의 매수신호건 매도신호건 관계없이 그 값에 매수합니다
(b1)
또 최종적으로 발생한 신호쪽이 5연속마이너스(- - - - -)이면 그 신호값에 매수합니다.
(매수신호쪽만 5연속마이너스이거나 매도신호쪽만 5연속마이너스인 경우를 말함)
(b2)
(2) 매수청산조건 : 매수가+0.60포인트 익절(그 전에 가상매매에서 매수청산신호 나오면 청산)
(가상매매의 매도신호가에 매수한 경우는 +0.60이 되기전에 가상매매에서
매도청산신호나 매수신호가 나오는 것은 무시하고 매수청산신호에 청산)
(3) 매도조건 : 위 매수조건의 마이너스(-)를 모두 플러스(+)로 바꾼 조건에 부합하면
최종발생한 플러스신호가 가상매매의 매수신호건 매도신호건 관계없이 그 값에 매도합니다
(s1)
또 최종적으로 발생한 신호쪽이 5연속플러스(+ + + + +)이면 그 신호값에 매도합니다.
(매수신호쪽만 5연속플러스이거나 매도신호쪽만 5연속플러스인 경우를 말함)
(s2)
(4) 매도청산조건 : 매도가-0.60포인트 익절(그 전에 가상매매에서 매도청산신호 나오면 청산)
(가상매매의 매수신호가에 매도한 경우는 -0.60이 되기전에 가상매매에서
매수청산신호나 매도신호가 나오는 것은 무시하고 매도청산신호에 청산)
부탁드립니다.
가상신호의 매수값차와 매도값차를 각 5개씩 볼 수 있는 방법도 함께 부탁드립니다.
감사합니다.
답변 1
예스스탁 예스스탁 답변
2014-08-11 14:40:11
안녕하세요
예스스탁입니다.
문의하신 내용의 경우 수식작성에 너무 많은 시간이 소모가 됩니다.
작성에 시간이 많이 걸리는 내용은 저희쪽에서 답변을 드리기 어렵습니다.
아래 내용 참고하셔서 수정보완해 사용하시기 바랍니다.
1.
var : SH(0),SL(0),SHi(0),SLi(0);
var : var1(0),var2(9999999999999),var3(9999999999999),Pst(0),cnt(0),EP(0),PST1(0);
var : cond1(false),cond2(false);
Array : BEP[10](0),SEP[10](0),BB[5](0),SS[5](0);
SH = SwingHigh(1,H,3,3,7);
SL = SwingLow(1,L,3,3,7);
var1 = round(ma((H+L+O+C)/4,60)*20,0)/20;
if SH != -1 and SH > var1 Then{
if SH > var2 Then{
var2 = SH;
SHi = index;
}
if SH < var2 and index > SLi and SLi > SHi Then{
var2 = SH;
}
}
if SL != -1 and SL < var1 Then{
if SL < var3 Then{
var3 = SL;
SLi = index;
}
if SL > var3 and index > SHi and SHi > SLi Then{
var3 = SL;
}
}
If H > var2+0.07 Then{
var4=Index;
}
If L < var3-0.07 Then{
var5=Index;
}
If SL>var1 Then
var6=SL;
If SH<var1 Then
var7=SH;
cond1 = Pst1 == 1 and Pst == 0;
cond2 = Pst1 == -1 and Pst == 0;
If cond1 == false and var4[1]>var5[1] and L[1]<=var6[1] and L <= var6 Then{
Pst = 1;
BEP[0] = var6;
for cnt = 1 to 9{
BEP[cnt] = BEP[cnt-1][1];
}
if BEP[5] > 0 and SEP[5] > 0 Then{
for cnt = 0 to 4{
if BEP[cnt]-BEP[cnt+1] < 0 Then{
BB[cnt] = -1;
}
if BEP[cnt]-BEP[cnt+1] > 0 Then{
BB[cnt] = 1;
}
if BEP[cnt]-BEP[cnt+1] == 0 Then{
BB[cnt] = 0;
}
if SEP[cnt]-SEP[cnt+1] < 0 Then{
SS[cnt] = -1;
}
if SEP[cnt]-SEP[cnt+1] > 0 Then{
SS[cnt] = 1;
}
if SEP[cnt]-SEP[cnt+1] == 0 Then{
SS[cnt] = 0;
}
}
if ((BB[0]+BB[1]+BB[2]) == -3 and (SS[0]+SS[1]+SS[2]) == -3) Or
(BB[0] == -1 and BB[3] == -1 and (BB[0]+BB[1]+BB[2]+BB[3]) == -3 and
SS[0] == -1 and SS[3] == -1 and (SS[0]+SS[1]+SS[2]+SS[3]) == -3) Or
((BB[0]+BB[1]+BB[2]) == -3 and
SS[0] == -1 and SS[3] == -1 and (SS[0]+SS[1]+SS[2]+SS[3]) == -3) Then
buy("B1");
if ((BB[0]+BB[1]+BB[2]+BB[3]+BB[4]) == -5) Then
buy("B2");
if ((BB[0]+BB[1]+BB[2]) == 3 and (SS[0]+SS[1]+SS[2]) == 3) Or
(BB[0] == 1 and BB[3] == 1 and (BB[0]+BB[1]+BB[2]+BB[3]) == 3 and
SS[0] == 1 and SS[3] == 1 and (SS[0]+SS[1]+SS[2]+SS[3]) == 3) Or
((SS[0]+SS[1]+SS[2]) == 3 and
BB[0] == 1 and BB[3] == 1 and (BB[0]+BB[1]+BB[2]+BB[3]) == 3) Then
Sell("S1");
if ((SS[0]+SS[1]+SS[2]+SS[3]+SS[4]) == 5) Then
Sell("S2");
}
}
If cond2 == false and var4[1]<var5[1] and H[1]>=var7[1] and H >= var7 Then{
Pst = -1;
SEP[0] = var6;
for cnt = 1 to 9{
SEP[cnt] = SEP[cnt-1][1];
}
if BEP[5] > 0 and SEP[5] > 0 Then{
for cnt = 0 to 4{
if BEP[cnt]-BEP[cnt+1] < 0 Then{
BB[cnt] = -1;
}
if BEP[cnt]-BEP[cnt+1] > 0 Then{
BB[cnt] = 1;
}
if BEP[cnt]-BEP[cnt+1] == 0 Then{
BB[cnt] = 0;
}
if SEP[cnt]-SEP[cnt+1] < 0 Then{
SS[cnt] = -1;
}
if SEP[cnt]-SEP[cnt+1] > 0 Then{
SS[cnt] = 1;
}
if SEP[cnt]-SEP[cnt+1] == 0 Then{
SS[cnt] = 0;
}
}
if ((BB[0]+BB[1]+BB[2]) == -3 and (SS[0]+SS[1]+SS[2]) == -3) Or
(BB[0] == -1 and BB[3] == -1 and (BB[0]+BB[1]+BB[2]+BB[3]) == -3 and
SS[0] == -1 and SS[3] == -1 and (SS[0]+SS[1]+SS[2]+SS[3]) == -3) Or
((BB[0]+BB[1]+BB[2]) == -3 and
SS[0] == -1 and SS[3] == -1 and (SS[0]+SS[1]+SS[2]+SS[3]) == -3) Then
buy("B11");
if ((BB[0]+BB[1]+BB[2]+BB[3]+BB[4]) == -5) Then
buy("B12");
if ((BB[0]+BB[1]+BB[2]) == 3 and (SS[0]+SS[1]+SS[2]) == 3) Or
(BB[0] == 1 and BB[3] == 1 and (BB[0]+BB[1]+BB[2]+BB[3]) == 3 and
SS[0] == 1 and SS[3] == 1 and (SS[0]+SS[1]+SS[2]+SS[3]) == 3) Or
((SS[0]+SS[1]+SS[2]) == 3 and
BB[0] == 1 and BB[3] == 1 and (BB[0]+BB[1]+BB[2]+BB[3]) == 3) Then
Sell("S11");
if ((SS[0]+SS[1]+SS[2]+SS[3]+SS[4]) == 5) Then
Sell("S12");
}
}
if Pst != 0 and PST != PST[1] Then
EP = C;
if PST == 1 Then{
If L < var3-0.07 Then{
PST = 0;
if MarketPosition == 1 Then
exitlong();
}
}
if PST == -1 Then{
If H > var2+0.07 Then{
PST = 0;
if MarketPosition == -1 Then
ExitShort();
}
}
SetStopProfittarget(0.60,PointStop);
2.
var : SH(0),SL(0),SHi(0),SLi(0);
var : var1(0),var2(9999999999999),var3(9999999999999),Pst(0),cnt(0),EP(0),PST1(0);
var : cond1(false),cond2(false);
Array : BEP[10](0),SEP[10](0),BB[5](0),SS[5](0);
SH = SwingHigh(1,H,3,3,7);
SL = SwingLow(1,L,3,3,7);
var1 = round(ma((H+L+O+C)/4,60)*20,0)/20;
if SH != -1 and SH > var1 Then{
if SH > var2 Then{
var2 = SH;
SHi = index;
}
if SH < var2 and index > SLi and SLi > SHi Then{
var2 = SH;
}
}
if SL != -1 and SL < var1 Then{
if SL < var3 Then{
var3 = SL;
SLi = index;
}
if SL > var3 and index > SHi and SHi > SLi Then{
var3 = SL;
}
}
If H > var2+0.07 Then{
var4=Index;
}
If L < var3-0.07 Then{
var5=Index;
}
If SL>var1 Then
var6=SL;
If SH<var1 Then
var7=SH;
cond1 = Pst1 == 1 and Pst == 0;
cond2 = Pst1 == -1 and Pst == 0;
If cond1 == false and Pst <= 0 and var4[1]>var5[1] and L[1]<=var6[1] and L <= var6 Then{
Pst = 1;
BEP[0] = var6;
for cnt = 1 to 9{
BEP[cnt] = BEP[cnt-1][1];
}
if BEP[5] > 0 and SEP[5] > 0 Then{
for cnt = 0 to 4{
if BEP[cnt]-BEP[cnt+1] < 0 Then{
BB[cnt] = -1;
}
if BEP[cnt]-BEP[cnt+1] > 0 Then{
BB[cnt] = 1;
}
if BEP[cnt]-BEP[cnt+1] == 0 Then{
BB[cnt] = 0;
}
if SEP[cnt]-SEP[cnt+1] < 0 Then{
SS[cnt] = -1;
}
if SEP[cnt]-SEP[cnt+1] > 0 Then{
SS[cnt] = 1;
}
if SEP[cnt]-SEP[cnt+1] == 0 Then{
SS[cnt] = 0;
}
}
}
}
If cond2 == false and Pst >= 0 and var4[1]<var5[1] and H[1]>=var7[1] and H >= var7 Then{
Pst = -1;
SEP[0] = var6;
for cnt = 1 to 9{
SEP[cnt] = SEP[cnt-1][1];
}
if BEP[5] > 0 and SEP[5] > 0 Then{
for cnt = 0 to 4{
if BEP[cnt]-BEP[cnt+1] < 0 Then{
BB[cnt] = -1;
}
if BEP[cnt]-BEP[cnt+1] > 0 Then{
BB[cnt] = 1;
}
if BEP[cnt]-BEP[cnt+1] == 0 Then{
BB[cnt] = 0;
}
if SEP[cnt]-SEP[cnt+1] < 0 Then{
SS[cnt] = -1;
}
if SEP[cnt]-SEP[cnt+1] > 0 Then{
SS[cnt] = 1;
}
if SEP[cnt]-SEP[cnt+1] == 0 Then{
SS[cnt] = 0;
}
}
}
}
if BEP[5] > 0 and SEP[5] > 0 Then{
plot1(BB[0]);
plot2(BB[1]);
plot3(BB[2]);
plot4(BB[3]);
plot5(BB[4]);
plot6(SS[0]);
plot7(SS[1]);
plot8(SS[2]);
plot9(SS[3]);
plot10(SS[4]);
}
즐거운 하루되세요
> 묘선낭자 님이 쓴 글입니다.
> 제목 : 부탁드립니다.
> 늘 감사드립니다.
1. 가상매매조건은 다음과 같습니다.
var : SH(0),SL(0),SHi(0),SLi(0);
var : var1(0),var2(9999999999999),var3(9999999999999);
SH = SwingHigh(1,H,3,3,7);
SL = SwingLow(1,L,3,3,7);
var1 = round(ma((H+L+O+C)/4,60)*20,0)/20;
if SH != -1 and SH > var1 Then{
if SH > var2 Then{
var2 = SH;
SHi = index;
}
if SH < var2 and index > SLi and SLi > SHi Then{
var2 = SH;
}
}
if SL != -1 and SL < var1 Then{
if SL < var3 Then{
var3 = SL;
SLi = index;
}
if SL > var3 and index > SHi and SHi > SLi Then{
var3 = SL;
}
}
If H>var2+0.07 Then{
var4=Index;
Exitshort("sx1");
Playsound("K:₩음성₩드럼소리.wav");
}
If Marketposition==1 and L<var1-0.47 Then{
Playsound("K:₩음성₩드럼소리.wav");
}
If L<var3-0.07 Then{
var5=Index;
Exitlong("bx1");
Playsound("K:₩음성₩유리.wav");
}
If Marketposition==1 and L<var1-0.47 Then{
Playsound("K:₩음성₩유리.wav");
}
condition1=Marketposition(1)==1 and Marketposition==0;
condition2=Marketposition(1)==-1 and Marketposition==0;
If SL>var1 Then
var6=SL;
If SH<var1 Then
var7=SH;
If condition1==false and var4>var5 and L<=var6 Then{
Buy("b",atlimit,var6,1);
Playsound("K:₩음성₩종소리.wav");
}
If condition2==false and var4<var5 and H>=var7 Then{
Sell("s",atlimit,var7,1);
Playsound("K:₩음성₩종소리.wav");
}
2. 실제진입조건
위의 가상매매조건에서 발생하는 최근 매수가 6개와 최근매도가 6개를 각각 기억하게 합니다.
매수가는 매수가끼리, 매도가는 매도가끼리 지금 발생한 값에서 직전발생한 값을 빼서 그 값을
+,0,-로 표시합니다.(각각 최근4번의 값 저장)
(1) 매수조건
최근 3번씩 양쪽다 - - -(각각 3연속 마이너스)이거나
- - -
- - -
최근 4번씩 양쪽다 중간에 0이 하나 끼어있거나(처음과 끝은 양쪽다 -여야 함)
- 0 - - 또는 - 0 - - 또는 - - 0 - 또는 - - 0 -
- 0 - - - - 0 - - 0 - - - - 0 -
최근 상대방 4번은 중간에 0이 하나 낀 -3개이고
지금(최종) 발생한 쪽은 3연속마이너스일 때
- 0 - - 또는 - - 0 -
- - - - - -
최종발생한 마이너스신호가 가상매매의 매수신호건 매도신호건 관계없이 그 값에 매수합니다
(b1)
또 최종적으로 발생한 신호쪽이 5연속마이너스(- - - - -)이면 그 신호값에 매수합니다.
(매수신호쪽만 5연속마이너스이거나 매도신호쪽만 5연속마이너스인 경우를 말함)
(b2)
(2) 매수청산조건 : 매수가+0.60포인트 익절(그 전에 가상매매에서 매수청산신호 나오면 청산)
(가상매매의 매도신호가에 매수한 경우는 +0.60이 되기전에 가상매매에서
매도청산신호나 매수신호가 나오는 것은 무시하고 매수청산신호에 청산)
(3) 매도조건 : 위 매수조건의 마이너스(-)를 모두 플러스(+)로 바꾼 조건에 부합하면
최종발생한 플러스신호가 가상매매의 매수신호건 매도신호건 관계없이 그 값에 매도합니다
(s1)
또 최종적으로 발생한 신호쪽이 5연속플러스(+ + + + +)이면 그 신호값에 매도합니다.
(매수신호쪽만 5연속플러스이거나 매도신호쪽만 5연속플러스인 경우를 말함)
(s2)
(4) 매도청산조건 : 매도가-0.60포인트 익절(그 전에 가상매매에서 매도청산신호 나오면 청산)
(가상매매의 매수신호가에 매도한 경우는 -0.60이 되기전에 가상매매에서
매수청산신호나 매도신호가 나오는 것은 무시하고 매도청산신호에 청산)
부탁드립니다.
가상신호의 매수값차와 매도값차를 각 5개씩 볼 수 있는 방법도 함께 부탁드립니다.
감사합니다.
이전글