예스스탁
예스스탁 답변
2011-10-26 11:46:37
안녕하세요
예스스탁입니다.
var : cnt(0,data1),count(0,data1),cond(false,data1);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
Cond = ExitDate(1) == sdate And
(IsExitName("bbx1",1) or IsExitName("bbx2",1) or IsExitName("bbx3",1) or IsExitName("bbx4",1) or IsExitName("bbx5",1) Or
IsExitName("ssx1",1) or IsExitName("ssx2",1) or IsExitName("ssx3",1) or IsExitName("ssx4",1) or IsExitName("ssx5",1));
if data1((dayindex+1) >= 5 and (dayindex+1) <= 70) and count < 2 and Cond == False Then{
if data1(C > dayopen and C < dayopen*1.0075 and C > ma(c,20) and C > ma(c,60)) And
data2(C > openD(0) and C > ma(c,20) and C > ma(c,60)) And
data3(C > openD(0) and C > ma(c,20) and C > ma(c,60)) And
(data3(iff(C>OpenD(0)and C > ma(c,20) and C > ma(C,60),1,0)) +
data4(iff(C>OpenD(0)and C > ma(c,20) and C > ma(C,60),1,0)) +
data5(iff(C>OpenD(0)and C > ma(c,20) and C > ma(C,60),1,0)) +
data6(iff(C>OpenD(0)and C > ma(c,20) and C > ma(C,60),1,0))) >= 3 Then
buy("b1");
if data1(C < dayopen*1.0075 and C > dayopen and C > ma(c,20) and C > ma(c,60)) And
data2(C > openD(0) and C > ma(c,20) and C > ma(c,60)) And
data3(C >= openD(0) and C > ma(c,20) and C > ma(c,60)) And
(data4(iff(C>OpenD(0)and C > ma(c,20) and C > ma(C,60),1,0)) +
data5(iff(C>OpenD(0)and C > ma(c,20) and C > ma(C,60),1,0)) +
data6(iff(C>OpenD(0)and C > ma(c,20) and C > ma(C,60),1,0))) >= 1 Then
buy("b2");
if data1((dayindex+1) >= 18) And
data1(C > dayopen and C > ma(c,20) and C > ma(c,60)) And
data2(C > openD(0) and C > ma(c,20) and C > ma(c,60)) And
(data3(iff(C>OpenD(0),1,0)) +
data4(iff(C>OpenD(0),1,0)) +
data5(iff(C>OpenD(0),1,0)) +
data6(iff(C>OpenD(0),1,0))) >= 3 and
(data3(iff(C > min(ma(c,20),ma(C,60)),1,0)) +
data4(iff(C > min(ma(c,20),ma(C,60)),1,0)) +
data5(iff(C > min(ma(c,20),ma(C,60)),1,0)) +
data6(iff(C > min(ma(c,20),ma(C,60)),1,0))) >= 3 Then
buy("b3");
}
if MarketPosition == 1 then{
if data1(C < ma(c,20) and C < ma(c,60)) And
data2(C<OpenD(0) or ma(C,20)<ma(C,60)) and
(data3(iff(C < ma(c,20) and C < ma(C,60),1,0)) +
data4(iff(C < ma(c,20) and C < ma(C,60),1,0)) +
data5(iff(C < ma(c,20) and C < ma(C,60),1,0)) +
data6(iff(C < ma(c,20) and C < ma(C,60),1,0))) >= 3 Then
ExitLong("bx1");
if data1(C < ma(c,20) and C < ma(c,60)) And
data2(C < ma(c,20) and C < ma(c,60)) And
data3(C < ma(c,20) and C < ma(c,60)) And
data2(C<OpenD(0) or ma(C,20)<ma(C,60)) and
(data4(iff(C < ma(c,20) and C < ma(C,60),1,0)) +
data5(iff(C < ma(c,20) and C < ma(C,60),1,0)) +
data6(iff(C < ma(c,20) and C < ma(C,60),1,0))) >= 1 Then
ExitLong("bx2");
if data1(C < ma(c,20) and C < ma(c,60)) And
data2(C < ma(c,20) and C < ma(c,60)) And
data2(C<OpenD(0) or ma(C,20)<ma(C,60)) and
(data3(iff(C < OpenD(0) and C < ma(c,20) and C < ma(C,60),1,0)) +
data4(iff(C < OpenD(0) and C < ma(c,20) and C < ma(C,60),1,0)) +
data5(iff(C < OpenD(0) and C < ma(c,20) and C < ma(C,60),1,0)) +
data6(iff(C < OpenD(0) and C < ma(c,20) and C < ma(C,60),1,0))) >= 2 And
C < EntryPrice Then
ExitLong("bx3");
if BarsSinceEntry >= 6 And
(((data3(iff(C<OpenD(0),1,0)) +
data4(iff(C<OpenD(0),1,0)) +
data5(iff(C<OpenD(0),1,0)) +
data6(iff(C<OpenD(0),1,0))) >= 2) or
((data3(iff(C<=OpenD(0),1,0)) +
data4(iff(C<=OpenD(0),1,0)) +
data5(iff(C<=OpenD(0),1,0)) +
data6(iff(C<=OpenD(0),1,0))) >= 3)) And
data1(c< ma(C,20)) and data3(c<ma(C,20)) and C <= EntryPrice+0.9 Then
exitlong("bx4");
if data1((dayindex+1) < 32) And
data3(C < OpenD(0) and C < ma(c,20) and C < ma(c,60)) And
data3(C < OpenD(0) and C < ma(c,20) and C < ma(c,60)) And
C <= EntryPrice Then
exitlong("bx5");
if BarsSinceEntry >= 5 and
data1((dayindex+1) < 42) And
data1(C < OpenD(0) and C < ma(c,20) and C < ma(c,60)) And
(((data3(iff(C < ma(c,20) and ma(c,60),1,0)) +
data4(iff(C < ma(c,20) and ma(c,60),1,0)) +
data5(iff(C < ma(c,20) and ma(c,60),1,0)) +
data6(iff(C < ma(c,20) and ma(c,60),1,0))) >= 2) and
((data3(iff(C<OpenD(0),1,0)) +
data4(iff(C<OpenD(0),1,0)) +
data5(iff(C<OpenD(0),1,0)) +
data6(iff(C<OpenD(0),1,0))) >= 1)) And
C < EntryPrice Then
exitlong("bx6");
}
if data1((dayindex+1) >= 5 and (dayindex+70) <= 70) and count < 2 and Cond == False Then{
if data1(C < dayopen and C > dayopen*0.9925 and C < ma(c,20) and C < ma(c,60)) And
data2(C < openD(0) and C < ma(c,20) and C < ma(c,60)) And
data3(C < openD(0) and C < ma(c,20) and C < ma(c,60)) And
(data3(iff(C<OpenD(0)and C < ma(c,20) and C < ma(C,60),1,0)) +
data4(iff(C<OpenD(0)and C < ma(c,20) and C < ma(C,60),1,0)) +
data5(iff(C<OpenD(0)and C < ma(c,20) and C < ma(C,60),1,0)) +
data6(iff(C<OpenD(0)and C < ma(c,20) and C < ma(C,60),1,0))) >= 3 Then
Sell("s1");
if data1(C > dayopen*0.9925 and C < dayopen and C < ma(c,20) and C < ma(c,60)) And
data2(C < openD(0) and C < ma(c,20) and C < ma(c,60)) And
data3(C <= openD(0) and C < ma(c,20) and C < ma(c,60)) And
(data4(iff(C<OpenD(0)and C < ma(c,20) and C < ma(C,60),1,0)) +
data5(iff(C<OpenD(0)and C < ma(c,20) and C < ma(C,60),1,0)) +
data6(iff(C<OpenD(0)and C < ma(c,20) and C < ma(C,60),1,0))) >= 1 Then
Sell("s2");
if data1((dayindex+1) >= 18) And
data1(C < dayopen and C < ma(c,20) and C < ma(c,60)) And
data2(C < openD(0) and C < ma(c,20) and C < ma(c,60)) And
(data3(iff(C<OpenD(0),1,0)) +
data4(iff(C<OpenD(0),1,0)) +
data5(iff(C<OpenD(0),1,0)) +
data6(iff(C<OpenD(0),1,0))) >= 3 and
(data3(iff(C < max(ma(c,20),ma(C,60)),1,0)) +
data4(iff(C < max(ma(c,20),ma(C,60)),1,0)) +
data5(iff(C < max(ma(c,20),ma(C,60)),1,0)) +
data6(iff(C < max(ma(c,20),ma(C,60)),1,0))) >= 3 Then
sell("s3");
}
if MarketPosition == -1 then{
if data1(C > ma(c,20) and C > ma(c,60)) And
data2(!(C<OpenD(0) and C < ma(C,20) and C < ma(C,60))) and
(data3(iff(C > ma(c,20) and C > ma(C,60),1,0)) +
data4(iff(C > ma(c,20) and C > ma(C,60),1,0)) +
data5(iff(C > ma(c,20) and C > ma(C,60),1,0)) +
data6(iff(C > ma(c,20) and C > ma(C,60),1,0))) >= 3 Then
ExitShort("sx1");
if data1(C > ma(c,20) and C > ma(c,60)) And
data2(C > ma(c,20) and C > ma(c,60)) And
data3(C > ma(c,20) and C > ma(c,60)) And
data2(!(C<OpenD(0) and C < ma(C,20) and C < ma(C,60))) and
(data4(iff(C > ma(c,20) and C > ma(C,60),1,0)) +
data5(iff(C > ma(c,20) and C > ma(C,60),1,0)) +
data6(iff(C > ma(c,20) and C > ma(C,60),1,0))) >= 1 Then
ExitLong("sx2");
if data1(C > ma(c,20) and C > ma(c,60)) And
data2(C > ma(c,20) and C > ma(c,60)) And
data2(!(C<OpenD(0) and C < ma(C,20) and C < ma(C,60))) and
(data3(iff(C > OpenD(0) and C > ma(c,20) and C > ma(C,60),1,0)) +
data4(iff(C > OpenD(0) and C > ma(c,20) and C > ma(C,60),1,0)) +
data5(iff(C > OpenD(0) and C > ma(c,20) and C > ma(C,60),1,0)) +
data6(iff(C > OpenD(0) and C > ma(c,20) and C > ma(C,60),1,0))) >= 2 And
C > EntryPrice Then
ExitShort("sx3");
if BarsSinceEntry >= 6 And
(((data3(iff(C>OpenD(0),1,0)) +
data4(iff(C>OpenD(0),1,0)) +
data5(iff(C>OpenD(0),1,0)) +
data6(iff(C>OpenD(0),1,0))) >= 2) or
((data3(iff(C>=OpenD(0),1,0)) +
data4(iff(C>=OpenD(0),1,0)) +
data5(iff(C>=OpenD(0),1,0)) +
data6(iff(C>=OpenD(0),1,0))) >= 3)) And
data1(c>ma(C,20)) and data3(c>ma(C,20)) and C >= EntryPrice-0.9 Then
ExitShort("sx4");
if data1((dayindex+1) < 32) And
data2(C > OpenD(0) and C > ma(c,20) and C > ma(c,60)) And
data3(C > OpenD(0) and C > ma(c,20) and C > ma(c,60)) And
C >= EntryPrice Then
ExitShort("sx5");
if BarsSinceEntry >= 5 and
data1((dayindex+1) < 42) And
data1(C > OpenD(0) and C > ma(c,20) and C > ma(c,60)) And
(((data3(iff(C > ma(c,20) and C > ma(c,60),1,0)) +
data4(iff(C > ma(c,20) and C > ma(c,60),1,0)) +
data5(iff(C > ma(c,20) and C > ma(c,60),1,0)) +
data6(iff(C > ma(c,20) and C > ma(c,60),1,0))) >= 2) and
((data3(iff(C>OpenD(0),1,0)) +
data4(iff(C>OpenD(0),1,0)) +
data5(iff(C>OpenD(0),1,0)) +
data6(iff(C>OpenD(0),1,0))) >= 1)) And
C > EntryPrice Then
ExitShort("sx6");
}
if MarketPosition == 1 Then{
if BarsSinceEntry >= 9 And
data1(highest(H,8)-Lowest(L,8)) > 1.9 and C >= EntryPrice+1.1 Then
exitlong("bbx1");
if data1((dayindex+1) < 70) And
C >= EntryPrice+2.8 Then
exitlong("bbx2");
if C >= EntryPrice+3.5 Then
exitlong("bbx3");
if highest(H,BarsSinceEntry) >= EntryPrice+(dayopen*0.0035) Then
exitlong("bbx4",AtStop,EntryPrice);
}
if MarketPosition == -1 Then{
if BarsSinceEntry >= 9 And
data1(highest(H,8)-Lowest(L,8)) > 1.9 and C <= EntryPrice-1.1 Then
ExitShort("ssx1");
if data1((dayindex+1) < 70) And
C <= EntryPrice-2.8 Then
ExitShort("ssx2");
if C <= EntryPrice-3.5 Then
ExitShort("ssx3");
if Lowest(L,BarsSinceEntry) <= EntryPrice-(dayopen*0.0035) Then
ExitShort("ssx4",AtStop,EntryPrice);
}
if data1((dayindex+1) == 95) Then{
exitlong("bbx5");
ExitShort("ssx5");
}
즐거운 하루되세요
> 강태공3 님이 쓴 글입니다.
> 제목 : 수식 부탁드립니다.
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>제목없음</title>
<meta name="GENERATOR" content="Namo WebEditor v4.0">
</head>
<body>
<p><font color="black">안녕하세요.</font></p>
<p><font color="black">오랜만에 방문하네요.</font></p>
<p><font color="black">간단한 것들인데 조금 긴 복잡한 수식이여서 죄송합니다.</font></p>
<p><font color="black">시간이 좀 걸려도 괜찮으니 착오없이 한번에 잘 부탁드립니다.</font></p>
<p><b><font color="green"> </font></b></p>
<p><font color="green"> <b>* 모든 진입은 금일 5번째 봉부터 70째봉까지만
신규진입하고 매매는 매수+매도 합해서 하루에 2번만 진입</font></b></p>
<p><b><font color="green"> </font></b></p>
<p><b>1. 매주조건</b></p>
<p><font color="black"> (1), 선물이 시초가보다 크고 and 시초가*1.0075p
보다는 작고 20이평과 60이평보다 크고 데이터3,4,5,6 중 시초가보다 크면서 20이평과
60이평보다 큰 것이 3개 이상이면 매수</font></p>
<p><font color="black">(2). (선물이 시초가*1.0075p 보다 작고) and (선물과 데이터2가
각각 시초가보다 크고 20이평과 60이평보다 크고) and (데이타3 이 시초가보다 크거나
같고 20이평과 60이평보다 크고) and (데이타4,5,6 중 시초가보다 크면서 20이평과
60이평보다 큰 것이 1개 이상이면) 매수</font></p>
<p><font color="blue">* 단 (1), (2) 번 매수시 데이터2가 시초가보다 작고 20이평과
60이평 보다 작으면 진입금지</font></p>
<p><font color="blue"> 또는 데이터3가 시초가보다 작고 20이평과 60이평
보다 작아도 매수진입금지</font></p>
<p><font color="blue"> </font></p>
<p><font color="black">(3). 금일 18봉째부터 선물과 데이터2가 시초가보다 크고
20이평과 60이평보다 크면 데이터3,4,5,6 중 시초가보다 큰 것이 3개이상이고 20이평과
60이평중 작은값보다 큰 것이3개아상이면 매수</font></p>
<p><font color="black"> </font></p>
<P><B><FONT color=red><매수진입후 청산조건></FONT></B></P>
<p><FONT color="black">1. 선물이 20이평과 60이평보다 작고 </FONT><font color="black">데이터3,4,5,6
중 20이평과 60이평보다 작은 것이 3개 이상이면 청산</font></p>
<p><FONT color="black">2. 선물과 데이터2와 데이터3 이 20이평과 60이평 보다 작고
데이터4,5,6 중 20이평과 60이평보다 작은 것이 1개이상이면 청산.</FONT></p>
<p><FONT color="black">3. 선물과 데이터2가 20이평과 60이평보다 작고 데이터3,4,5,6
중 시초가보다 작으면서 20이평과 60이평보다 작은 것이 2개이상이고 현재 손실이면
청산</FONT></p>
<p><B><FONT color=red>** 단 위 1,2,3 청산시 데이터2가 시초가보다 크고 20이평과
60이보다 크면 청산금지.</FONT></B></p>
<p><B><FONT color=red> </FONT></B></p>
<p><FONT color="black">4. 매수진입후 6봉째부터 데이터3,4,5,6 중 시초가보다 작은
것이 2개이상이거나 시초가보다 작거나 같은 것이 3개이상이면</FONT></p>
<p><FONT color="black"> 선물과 데이터3이 20이평보다 작으면서
현재 손실이거나 수익이 0.9p 이하이면 청산</FONT></p>
<p><FONT color="black">5, 현재 매수이고 금일 장시작후 32봉이전이고 데이터2와
데이터3이 모두 시초가보다 작고 20이평과 60이평 보다 작고 현재 본절이거나 손실이면
청산</FONT></p>
<p><FONT color="black">6. 매수진입후 5봉이상이 지난후 금일 장시작으로는 42봉
이내이고 선물이 시초가보다 작고 20이평과 60이평보다 작고 데이터3,4,5,6 중 20이평과
60이평보다 작은 것이 2개이상이고 시초가보다 작은 것이 1개이상이면서 현재 손실이면
청산</FONT></p>
<p><FONT color="black"> </FONT></p>
<p><b><font color="blue">2. 매도조건</font></b></p>
<p><font color="black"> (1), 선물이 시초가보다 작고 and 시초가*0.9925p
보다는 크고 20이평과 60이평보다 작고 데이터3,4,5,6 중 시초가보다 작으면서 20이평과
60이평보다 작은 것이 3개 이상이면 매도</font></p>
<p><font color="black">(2). (선물이 시초가*0.9925p 보다 크고) and (선물과 데이터2가
각각 시초가보다 작고 20이평과 60이평보다 작고) and (데이타3 이 시초가보다 작거나
같고 20이평과 60이평보다 작고) and (데이타4,5,6 중 시초가보다 작으면서 20이평과
60이평보다 작은 것이 1개 이상이면) 매도</font></p>
<p><font color="blue">* 단 (1), (2) 번 매도시 데이터2가 시초가보다 크고 20이평과
60이평 보다 크면 매도진입금지</font></p>
<p><font color="blue"> 또는 데이터3가 시초가보다 크고 20이평과 60이평
보다 커도 매도진입금지</font></p>
<p><font color="blue"> </font></p>
<p><font color="black">(3). 금일 18봉째부터 선물과 데이터2가 시초가보다 작고
20이평과 60이평보다 작으면 데이터3,4,5,6 중 시초가보다 작은 것이 3개이상이고
20이평과 60이평중 큰값보다 작은 것이 3개아상이면 매도</font></p>
<p> </p>
<P><B><FONT color=red><매도진입후 청산조건></FONT></B></P>
<p><FONT color="black">1. 선물이 20이평과 60이평보다 크고 </FONT><font color="black">데이터3,4,5,6
중 20이평과 60이평보다 큰 것이 3개 이상이면 청산</font></p>
<p><FONT color="black">2. 선물과 데이터2와 데이터3 이 20이평과 60이평 보다 크고
데이터4,5,6 중 20이평과 60이평보다 큰 것이 1개이상이면 청산.</FONT></p>
<p><FONT color="black">3. 선물과 데이터2가 20이평과 60이평보다 크고 데이터3,4,5,6
중 시초가보다 크면서 20이평과 60이평보다 큰 것이 2개이상이고 현재 손실이면 청산</FONT></p>
<p><B><FONT color=red>** 단 위 1,2,3 청산시 데이터2가 시초가보다 작고 20이평과
60이보다 작으면 청산금지.</FONT></B></p>
<p> </p>
<p><FONT color="black">4. 매도진입후 6봉째부터 데이터3,4,5,6 중 시초가보다 큰
것이 2개이상이거나 시초가보다 크거나 같은 것이 3개이상이면</FONT></p>
<p><FONT color="black"> 선물과 데이터3이 20이평보다 크면서
현재 손실이거나 수익이 0.9p 이하이면 청산</FONT></p>
<p><FONT color="black">5, 현재 매도이고 금일 장시작후 32봉이전이고 데이터2와
데이터3이 모두 시초가보다 크고 20이평과 60이평 보다 크고 현재 본절이거나 손실이면
청산</FONT></p>
<p><FONT color="black">6. 매도진입후 5봉이상이 지난후이고 금일 장시작으로는
42봉 이내이고 선물이 시초가보다 크고 20이평과 60이평보다 크고 데이터3,4,5,6
중 20이평과 60이평보다 큰 것이 2개이상이고 시초가보다 큰 것이 1개이상이면서
현재 손실이면 청산</FONT></p>
<p> </p>
<p><b><font color="blue">3. 공통 익절 및 청산조건</font></b></p>
<p>(1) 진입후 9봉 이상이 지난후 현재부터 7봉전까지의 <b><font color="red">종가로</b>
</font>최고가-최저가>1.9p 이상이면서 현재 수익이 1.1p 이상이면 청산후 금일
매매종료. 추가진입 금지.</p>
<p>(2) 금일 장시작후 70봉 이내에서 종가로 수익이 2.8p 이상이면 청산후 금일 매매종료,
추가진입금지.</p>
<p>(3) 종가로 수익이 3.5p 이상이면 청산후 금일 매매종료 , 추가진입 금지.</p>
<p>(4) <FONT color="black">진입후 최고수익이 금일시초가*0.0035 이상이면 stop으로
본절에서 청산</FONT></p>
<p>(5) 모든 포지션은 금일 장시작후 95봉에서는 청산후 금일 매매종료, 추가 진입금지.</p>
<p> </p>
<p>* 이해 안되는 부분이 있으면 얀락주세요. 010-3044-6622</p>
<p> </p>
</body>
</html>