커뮤니티

시스템식 부탁드립니다.

프로필 이미지
묘선낭자
2014-08-02 04:09:02
232
글번호 77335
답변완료
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번의 실현손익이 (4연속손실+1회이익+1회손실) 또는 직전5번의 실현손익이 (5연속손실)일 때에만 가상매매조건의 매수(매도)조건에 매수(매도). 가상매매조건의 매수(매도)청산조건에 청산. 1포인트 익절. 청산되고 나면 다시 가상매매조건의 손익순서와 횟수를 카운트하여 맞는 조건에 진입 [가상거래 수익(승)손실(패)거래와 실제매매(0)의 예 가상거래 : 승패패패패승패승승승패패패패패패승패승 실제거래 : 0 0 0 0 3. 위와 같은 방법을 전제로 하는 시스템식을 부탁드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-08-04 11:44:03

안녕하세요 예스스탁입니다. 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 : PL[20](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; } If cond2 == false and var4[1]<var5[1] and H[1]>=var7[1] and H >= var7 Then{ Pst = -1; } if Pst != 0 and PST != PST[1] Then EP = C; if PST == 1 Then{ If L < var3-0.07 Then{ PST = 0; PL[0] = C-EP; for cnt = 1 to 19{ PL[cnt] = Pl[cnt-1][1]; } } If H > EP+1 Then{ PST = 0; PL[0] = 1; for cnt = 1 to 19{ PL[cnt] = Pl[cnt-1][1]; } } } if PST == -1 Then{ If H > var2+0.07 Then{ PST = 0; PL[0] = EP-C; for cnt = 1 to 19{ PL[cnt] = Pl[cnt-1][1]; } } if L <= EP-1 Then{ PST = 0; PL[0] = 1; for cnt = 1 to 19{ PL[cnt] = Pl[cnt-1][1]; } } } //가상손익계산 끝 condition1=Marketposition(1)==1 and Marketposition==0; condition2=Marketposition(1)==-1 and Marketposition==0; if (PL[0] < 0 and PL[1] < 0 and PL[2] < 0 and PL[3] < 0 and PL[4] < 0) Or (PL[0] < 0 and PL[1] > 0 and PL[2] < 0 and PL[3] < 0 and PL[4] < 0 and PL[5] < 0) Then{ If condition1==false and var4>var5 and L<=var6 Then{ Buy("b",atlimit,var6,1); } If condition2==false and var4<var5 and H>=var7 Then{ Sell("s",atlimit,var7,1); } } 즐거운 하루되세요 > 묘선낭자 님이 쓴 글입니다. > 제목 : 시스템식 부탁드립니다. > 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번의 실현손익이 (4연속손실+1회이익+1회손실) 또는 직전5번의 실현손익이 (5연속손실)일 때에만 가상매매조건의 매수(매도)조건에 매수(매도). 가상매매조건의 매수(매도)청산조건에 청산. 1포인트 익절. 청산되고 나면 다시 가상매매조건의 손익순서와 횟수를 카운트하여 맞는 조건에 진입 [가상거래 수익(승)손실(패)거래와 실제매매(0)의 예 가상거래 : 승패패패패승패승승승패패패패패패승패승 실제거래 : 0 0 0 0 3. 위와 같은 방법을 전제로 하는 시스템식을 부탁드립니다.