커뮤니티

수정부탁드려요..

프로필 이미지
팽구
2015-12-22 00:23:20
116
글번호 93671
답변완료
아래의 전략은 일봉 국내선물기준으로 되어있는데요. 이걸 주봉 해외선물기준으로 수정해주세요.. 주봉은 data2를 참조해서 할건데요 day!##%^$#(1) 부분들과 sdate==exitdate(1) 부분 stime<150000 부분 dayOpen 부분 atr(20) 등을 주봉 해외선물기준으로 Atstop을 Atmarket으로 바꿔주세요^^ //////////////////////////////////////////// input : s1(0.48), s2(2.7); Var1=dayhigh(1); Var2=dayclose(1); Var3=dayLow(1); Var4=dayclose(1); //패턴설정 If abs(Var1-var4)>=abs(Var2-var3) then //전일고가와 종가폭이 전일저가와 종가폭보다 크면 Var10=abs(Var1-var4); Else Var10=abs(Var2-var3); condition1= sdate==exitdate(1) And marketposition(1)==1; //최근청산날짜가 금일이고 직전이 매수 condition2= sdate==exitdate(1) And marketposition(1)==-1;//최근청산날짜가 금일이고 직전이 매도 If stime<150000 then { If condition1==False and MarketPosition <> 1 then { buy("매수",Atstop,dayOpen+var10*S1);//지정가 상향돌파시 매수 } If condition2==False and MarketPosition <> -1 then { sell("매도",Atstop,dayOpen-var10*S1);//지정가 하향돌파시 매도 } } //청산 If marketposition<>0 then { exitlong("매수청산",Atstop,highest(high,BarsSinceEntry+1)-atr(20)*s2); exitshort("매도청산",Atstop,lowest(low,BarsSinceEntry+1)+atr(20)*s2);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-12-22 13:39:34

안녕하세요 예스스탁입니다. 해당식 data2 참조데이터를 이용해 주간시고저종가를 이용하게 변경했습니다. 시간관련해서는 사용자분이 끝시간을 지정하셔야 합니다. 원본식도 단순 15시까지 진입한다는 내용입니다. 외부변수로 추리해 드립니다. input : s1(0.48), s2(2.7),끝시간(050000); var : HH(0,data2),LL(0,data2),CC(0,data2),OO(0,data2); var : H1(0,data2),L1(0,data2),C1(0,data2),O1(0,data2); var : V1(0,data2),V2(0,data2),V3(0,data2),V4(0,data2),V10(0,data2); var : ATRV(0,data2),X(0,data1),Cond1(false,data1),cond2(false,data1); var : H2(0,data1),L2(0,data1),Tcond(false,data1); if data2(DayOfWeek(sdate)< DayOfWeek(sdate[1])) Then{ OO = data2(O); HH = data2(H); LL = data2(L); O1 = OO[1]; H1 = HH[1]; L1 = LL[1]; C1 = CC[1]; X = 0; } if data2(H) > HH Then HH = data2(H); if data2(L) < LL Then LL = data2(L); CC = data2(C); V1 = H1; V2 = C1; V3 = L1; V4 = C1; ATRV = data2(ATR(20)); //패턴설정 If abs(V1-v4)>=abs(V2-v3) then //전일고가와 종가폭이 전일저가와 종가폭보다 크면 V10=abs(V1-v4); Else V10=abs(V2-v3); if TotalTrades > TotalTrades[1] and MarketPosition(1) == 1 Then X = 1; if TotalTrades > TotalTrades[1] and MarketPosition(1) == -1 Then X = -1; cond1 = X == 1 ; cond2 = X == -1 ; if Bdate != Bdate[1] Then Tcond = true; if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간) Then Tcond = false; If Tcond == true then { If cond1 == False and MarketPosition <> 1 and data2(C) >= OO+V10*S1 then { buy("매수",AtMarket);//지정가 상향돌파시 매수 } If cond2 == False and MarketPosition <> -1 and data2(C) <= OO-V10*S1 then { sell("매도",AtMarket);//지정가 하향돌파시 매도 } } H2 = data2(H); L2 = data2(L); //청산 If marketposition<>0 then { if data2(c) <= highest(H2,BarsSinceEntry+1)-atrv*s2 Then exitlong("매수청산",AtMarket); if data2(c) >= Lowest(L2,BarsSinceEntry+1)+atrv*s2 Then exitshort("매도청산",AtMarket); } 즐거운 하루되세요 > 팽구 님이 쓴 글입니다. > 제목 : 수정부탁드려요.. > 아래의 전략은 일봉 국내선물기준으로 되어있는데요. 이걸 주봉 해외선물기준으로 수정해주세요.. 주봉은 data2를 참조해서 할건데요 day!##%^$#(1) 부분들과 sdate==exitdate(1) 부분 stime<150000 부분 dayOpen 부분 atr(20) 등을 주봉 해외선물기준으로 Atstop을 Atmarket으로 바꿔주세요^^ //////////////////////////////////////////// input : s1(0.48), s2(2.7); Var1=dayhigh(1); Var2=dayclose(1); Var3=dayLow(1); Var4=dayclose(1); //패턴설정 If abs(Var1-var4)>=abs(Var2-var3) then //전일고가와 종가폭이 전일저가와 종가폭보다 크면 Var10=abs(Var1-var4); Else Var10=abs(Var2-var3); condition1= sdate==exitdate(1) And marketposition(1)==1; //최근청산날짜가 금일이고 직전이 매수 condition2= sdate==exitdate(1) And marketposition(1)==-1;//최근청산날짜가 금일이고 직전이 매도 If stime<150000 then { If condition1==False and MarketPosition <> 1 then { buy("매수",Atstop,dayOpen+var10*S1);//지정가 상향돌파시 매수 } If condition2==False and MarketPosition <> -1 then { sell("매도",Atstop,dayOpen-var10*S1);//지정가 하향돌파시 매도 } } //청산 If marketposition<>0 then { exitlong("매수청산",Atstop,highest(high,BarsSinceEntry+1)-atr(20)*s2); exitshort("매도청산",Atstop,lowest(low,BarsSinceEntry+1)+atr(20)*s2);