커뮤니티
대신에서 사용하던 것을 예스로 바꾸려고 합니다.
2008-12-26 19:22:06
869
글번호 19046
안녕하세요..
먼저 감사하다는 말씀을 드리겠습니다.
이번에 대신에서 하이투자 증권으로 시스템트레이딩을 바꾸려고 합니다.
대신에서 샘플로 제공하는 시스템인데 이것을 예스로 바꾸려고 하는데 결과가 다르게 나옵니다. 제가 어디서 잘못했는지 모르겠습니다.
2개의 시스템인데 바꿔 주시면 대단히 고맙겠습니다... ^^
시스템은 첨부문서로 보내드립니다.
다시한번 감사드립니다.
- 1. 시스템.txt (0.00 MB)
답변 1
예스스탁 예스스탁 답변
2008-12-29 11:37:50
안녕하세요
예스스탁입니다.
1.
input : ups(0.1),dns(0.1),gapup(0.3),gapfill(0.3),s2(3.0);
var : cond1(False),cond2(False),cnt(0),entrycount(0);
entrycount = 0;
for cnt = 0 to 10{
if sdate != EntryDate(cnt) Then
entrycount = entrycount +1;
}
If dayopen() > dayhigh(1) Then{ ##시가가 전일고가보다 크면
Var1=100*((dayopen()-dayhigh(1))/dayhigh(1)); ##전일고가대비 시가의 위치
}
If dayopen < daylow(1) Then{ ##시가가 전일저가보다 작으면
Var1=100*((daylow(1)-dayopen())/daylow(1)); ##전일저가대비 시가의 위치
}
Cond1=exitdate(1)==sdate And MarketPosition(1)==1; #최근청산날짜가 금일이고 직전이 매수
Cond2=exitdate(1)==sdate And MarketPosition(1)==-1; #최근청산날짜가 금일이고 직전이 매도
#하루에 3번만 진입
If entrycount < 3 Then{
If time < 150000 Then{
If dayopen() > dayhigh(1) And Var1 > ups Then{ #시가가 전일고가보다 크고 Var1이 ups보다 크면
If Cond1 == False Then{ #지정가 상향돌파시 매수
buy("GapUp매수",Atstop,dayopen()+(dayhigh(1)-daylow(1))*gapup);
}
If Cond2==False Then{
sell("GapFill매도",Atstop,max(dayhigh(1),dayopen()-(dayhigh(1)-daylow(1))*gapfill)); #지정가 하향돌파시 매도
}
}
If dayopen() < daylow(1) And Var1>dns Then{ #시가가 전일저가보다 작고 Var1이 dns보다 크면
If Cond2==False Then{ #지정가 하향돌파시 매도
sell("GapDown매도",Atstop,dayopen()-(dayhigh(1)-daylow(1))*gapup);
}
If Cond1==False Then{
buy("GapFill매수",Atstop,Def,min(daylow(1),dayopen()+(dayhigh(1)-daylow(1))*gapfill));#지정가 상향돌파시 매수
}
}
}
}
#청산
If MarketPosition <> 0 Then{
exitlong("매수추적",Atstop,NthHighest(1,high,BarsSinceEntry+1)-atr(20)*S2);
exitshort("매도추적",Atstop,NthLowest(1,low,BarsSinceEntry+1)+atr(20)*S2);
}
2.
input : len1(10),len2(20),ob1(90),os1(10),ob2(70),os2(30),level(0.01),s2(3.0);
var : cond1(False),cond2(False),cond50(False),cond49(False);
Var1=fastk(len1);
Var2=fastk(len2);
Cond1=var1>ob1 And Var2>ob2; ##과매수
Cond2=var1<os1 And Var2<os2; ##과매도
Cond50 = date==exitdate(1) And MarketPosition(1)==1; ##최근청산날짜가 금일이고 직전이 매수
Cond49 = date==exitdate(1) And MarketPosition(1)==-1;##최근청산날짜가 금일이고 직전이 매도
##'진입
If time<1500 Then{
If Cond50==False Then {
If Cond1 Then{
If dayopen()<close Then{ ##'종가가 시가보다 크면
buy("매수",Atstop,high+Atr(20)*level);##'지정가 상향돌파시 매수
}
}
}
If Cond49==False Then {
If Cond2 Then{
If dayopen()>close Then{ ##'종가가 시가보다 작으면
sell("매도",Atstop,low-Atr(20)*level);##'지정가 하향돌파시 매도
}
}
}
}
##'청산
If MarketPosition <> 0 Then{
exitlong("매수추적스탑",Atstop,NthHighest(1,high,BarsSinceEntry+1)-atr(20)*s2);
exitshort("매도추적스탑",Atstop,NthLowest(1,low,BarsSinceEntry+1)+atr(20)*S2);
}
새해 복 많이 받으세요~
> CJ_coco 님이 쓴 글입니다.
> 제목 : 대신에서 사용하던 것을 예스로 바꾸려고 합니다.
> 안녕하세요..
먼저 감사하다는 말씀을 드리겠습니다.
이번에 대신에서 하이투자 증권으로 시스템트레이딩을 바꾸려고 합니다.
대신에서 샘플로 제공하는 시스템인데 이것을 예스로 바꾸려고 하는데 결과가 다르게 나옵니다. 제가 어디서 잘못했는지 모르겠습니다.
2개의 시스템인데 바꿔 주시면 대단히 고맙겠습니다... ^^
시스템은 첨부문서로 보내드립니다.
다시한번 감사드립니다.
다음글