커뮤니티
타주기참조시스템식문의
2007-10-28 05:30:03
1147
글번호 13888
수고하십니다.
첫번째 연결선물지수5분봉에서 타종목참조에 data2와 data3을 열었고
1.( 전일 종가시점에서 data2>data3 ) and (당일 첫5분봉의 data2이 양봉 )
and (당일 연결선물지수 시가 < 3시봉종가 )
위 3가지가 만족하면 3시봉종가이후(3시5분봉시가) 매수
2.(전일 종가시점에서 data2<data3 ) and (당일 첫 5분봉의 data3가 양봉)
and (당일 연결선물지수 시가 > 3시봉종가 )
위 3가지가 만족하면 3시봉 종가이후(3시5분봉시가) 매도
청산은 1.다음날 시가에 청산.
2.다음날 (전일의 1시부터 종가까지의 최고점과 최저점의 크기 = "a" )
매수면 청산당일의 시가이후 최저점대비 "a"만큼 상승한 시점에서 청산하고
매도면 청산당일의 시가이후 최고점대비 'a"만큼 하락한 시점에서 청산합니다.
#청산식이 두개인것은 각각 시뮬레이션 해보려 합니다.
손절은 매수일때는 청산당일의 시가에서 "a의 1/2"만큼 하락시점
매도일때는 청산당일의 시가에서 "a의 1/2"만큼 상승시점
두번째 연결선물지수5분봉과 타종목참조 data2과 data3열었고
-전일종가시점에서 data2 > data3 and 당일시가이후 첫5분봉의 data2이 양봉이면
다음봉에서 매수진입
-전일종가시점에서 data2 < data3 and 당일시가이후 첫5분봉의 data3가 양봉이면
다음봉에서 매도진입
청산은 연결선물지수의 전일 1시부터 2시까지의 최고점 - 최저점 = "a"라 하고
매수일때 진입이후 최저점 + "a" 되는 곳에서 청산
매도일때 진입이후 최고점 - "a" 되는 곳에서 청산
손절은 선물지수의 전일시가부터 11시까지의 최저점과 최고점의 1/2 지점 = "b"라 하고
매수일때 "b"하향돌파(5분봉종가가)하면 손절
매도일때 "b"상향돌파(5분봉종가가)하면 손절
부탁드립니다..감사합니다.
답변 3
예스스탁 예스스탁 답변
2007-10-29 16:35:11
안녕하세요
예스스탁입니다.
15시 5분은 정규장이 마감되고 정규장이후에는
시스템 트레이딩이 가능하지 않습니다.
1번식.5분봉 기준으로 15시 봉의 시가에 주문이 발생하는 식입니다.
또한 선물과 비교할 경우전일 종가시점에 참조종목은 데이터가 없을수도 있으니
유의하여 보시기 바랍니다.
1.
var : D2P(0,data2),D3P(0,data3),PreD2(0,data2),PreD3(0,data3);
var : Hval(0),Lval(0),Hval1(0),Lval1(0),HLdiff(0);
If data2(sdate) != data2(sdate[1]) Then{ //첫번째 참조종목 날자변경시
PreD2 = data2(C[1]);
if data2(C) > data2(O) Then
D2P = 1;
Else
D2P = 0;
}
If data3(sdate) != data3(sdate[1]) Then{ //두번째 참조종목 날자변경시
PreD3 = Data3(C[1]);
if data3(C) > data3(O) Then
D3P = 1;
Else
D3P = 0;
}
if date != date[1] Then{//주중목 날짜 변경시
Hval1 = Hval[1];
Lval1 = Lval[1];
HLdiff = Hval1-Lval1;
}
if stime >= 130000 Then{
Hval = H;
Lval = L;
if H > Hval Then
Hval = H;
if L < Lval Then
Lval = L;
}
if Stime == 145500 and C > dayopen() and PreD2 > PreD3 and D2P == 1 Then
buy("매수",AtMarket); //15시봉에 매수
if Stime == 145500 and C < dayopen() and PreD2 < PreD3 and D3P == 1 Then
Sell("매도",AtMarket);//15시봉에 매도
##청산1
if Stime == 151500 Then{//15시에 조건을 만족시켜 다음날 AtMarket으로 주문
exitlong("시가매수청산",AtMarket);
ExitShort("시가매도청산",AtMarket);
}
## 청산2
if Sdate != EntryDate() Then{
if C >= Hval Then
exitlong();
if C <= Lval Then
ExitShort();
}
## 손절
//정확한 내용을 모르겠습니다.
2.
var : D2P(0,data2),D3P(0,data3),PreD2(0,data2),PreD3(0,data3);
var : Hval(0),Lval(0),Hval1(0),Lval1(0),HLdiff(0),BB(0);
If data2(sdate) != data2(sdate[1]) Then{ //첫번째 참조종목 날자변경시
PreD2 = data2(C[1]);
if data2(C) > data2(O) Then
D2P = 1;
Else
D2P = 0;
}
If data3(sdate) != data3(sdate[1]) Then{ //두번째 참조종목 날자변경시
PreD3 = Data3(C[1]);
if data3(C) > data3(O) Then
D3P = 1;
Else
D3P = 0;
}
if date != date[1] Then{//주중목 날짜 변경시
Hval1 = Hval[1];
Lval1 = Lval[1];
HLdiff = Hval1-Lval1;
}
if stime >= 130000 and Stime < 140000 Then{
Hval = H;
Lval = L;
if H > Hval Then
Hval = H;
if L < Lval Then
Lval = L;
}
if Stime == 110000 Then{
var1 = max(DayHigh(1),DayHigh());
var2 = Min(DayLow(1),DayLow());
BB = var1-var2;
}
if Stime >= 90000 and Stime < 150000 and preD2 > PreD3 and D2P == 1 Then
buy("매수",AtMarket);
if preD2 < PreD3 and D3P == 1 Then
sell("매도",AtMarket);
if MarketPosition() == 1 and C >= Hval Then//최저점+a는 최고점입니다.
exitlong();
if MarketPosition() == -1 and C <= Hval Then//최고점-a는 최저점입니다.
exitshort();
if Stime > 110000 and MarketPosition() != 0 Then{
if crossdown(C,BB) Then
exitlong();
if CrossUp(c,BB) Then
ExitShort();
}
즐거운 하루되세요
> CJ_seecloud 님이 쓴 글입니다.
> 제목 : 타주기참조시스템식문의
> 수고하십니다.
첫번째 연결선물지수5분봉에서 타종목참조에 data2와 data3을 열었고
1.( 전일 종가시점에서 data2>data3 ) and (당일 첫5분봉의 data2이 양봉 )
and (당일 연결선물지수 시가 < 3시봉종가 )
위 3가지가 만족하면 3시봉종가이후(3시5분봉시가) 매수
2.(전일 종가시점에서 data2<data3 ) and (당일 첫 5분봉의 data3가 양봉)
and (당일 연결선물지수 시가 > 3시봉종가 )
위 3가지가 만족하면 3시봉 종가이후(3시5분봉시가) 매도
청산은 1.다음날 시가에 청산.
2.다음날 (전일의 1시부터 종가까지의 최고점과 최저점의 크기 = "a" )
매수면 청산당일의 시가이후 최저점대비 "a"만큼 상승한 시점에서 청산하고
매도면 청산당일의 시가이후 최고점대비 'a"만큼 하락한 시점에서 청산합니다.
#청산식이 두개인것은 각각 시뮬레이션 해보려 합니다.
손절은 매수일때는 청산당일의 시가에서 "a의 1/2"만큼 하락시점
매도일때는 청산당일의 시가에서 "a의 1/2"만큼 상승시점
두번째 연결선물지수5분봉과 타종목참조 data2과 data3열었고
-전일종가시점에서 data2 > data3 and 당일시가이후 첫5분봉의 data2이 양봉이면
다음봉에서 매수진입
-전일종가시점에서 data2 < data3 and 당일시가이후 첫5분봉의 data3가 양봉이면
다음봉에서 매도진입
청산은 연결선물지수의 전일 1시부터 2시까지의 최고점 - 최저점 = "a"라 하고
매수일때 진입이후 최저점 + "a" 되는 곳에서 청산
매도일때 진입이후 최고점 - "a" 되는 곳에서 청산
손절은 선물지수의 전일시가부터 11시까지의 최저점과 최고점의 1/2 지점 = "b"라 하고
매수일때 "b"하향돌파(5분봉종가가)하면 손절
매도일때 "b"상향돌파(5분봉종가가)하면 손절
부탁드립니다..감사합니다.
회원
2007-10-29 17:53:47
수고하십니다.
작성하여 주신 시스템식에 무슨 오류가 있는지 첨부사진과 같이 되네요.
현재 Yes3.0사용하고 있습니다.
예스스탁 예스스탁 답변
2007-10-30 08:30:08
안녕하세요
예스스탁입니다.
먼저올려드린 식은 예스트레이더3.1버전의 식이었습니다.
다시 올려드립니다.
1.
var : D2P(0),D3P(0),PreD2(0),PreD3(0);
var : Hval(0),Lval(0),Hval1(0),Lval1(0),HLdiff(0);
If sdate != sdate[1] Then{
PreD2 = data1("C")[1];
PreD3 = Data2("C")[1];
Hval1 = Hval[1];
Lval1 = Lval[1];
HLdiff = Hval1-Lval1;
if data1("C") > data1("O") Then
D2P = 1;
Else
D2P = 0;
if data2("C") > data2("O") Then
D3P = 1;
Else
D3P = 0;
}
if stime >= 130000 Then{
Hval = H;
Lval = L;
if H > Hval Then
Hval = H;
if L < Lval Then
Lval = L;
}
if Stime == 145500 and C > dayopen() and PreD2 > PreD3 and D2P == 1 Then
buy("매수",AtMarket); //15시봉에 매수
if Stime == 145500 and C < dayopen() and PreD2 < PreD3 and D3P == 1 Then
Sell("매도",AtMarket);//15시봉에 매도
##청산1
if Stime == 151500 Then{//15시에 조건을 만족시켜 다음날 AtMarket으로 주문
exitlong("시가매수청산",AtMarket);
ExitShort("시가매도청산",AtMarket);
}
## 청산2
if Sdate != EntryDate() Then{
if C >= Hval1 Then
exitlong();
if C <= Lval1 Then
ExitShort();
}
## 손절
//정확한 내용을 모르겠습니다.
2.
var : D2P(0),D3P(0),PreD2(0),PreD3(0);
var : Hval(0),Lval(0),Hval1(0),Lval1(0),HLdiff(0),BB(0);
If sdate != sdate[1] Then{ //첫번째 참조종목 날자변경시
PreD2 = data1("C")[1];
PreD3 = Data2("C")[1];
Hval1 = Hval[1];
Lval1 = Lval[1];
HLdiff = Hval1-Lval1;
if data1("C") > data1("O") Then
D2P = 1;
Else
D2P = 0;
if data2("C") > data2("O") Then
D3P = 1;
Else
D3P = 0;
}
if stime >= 130000 and Stime < 140000 Then{
Hval = H;
Lval = L;
if H > Hval Then
Hval = H;
if L < Lval Then
Lval = L;
}
if Stime == 110000 Then{
var1 = max(DayHigh(1),DayHigh());
var2 = Min(DayLow(1),DayLow());
BB = var1-var2;
}
if Stime >= 90000 and Stime < 150000 and preD2 > PreD3 and D2P == 1 Then
buy("매수",AtMarket);
if preD2 < PreD3 and D3P == 1 Then
sell("매도",AtMarket);
if MarketPosition() == 1 and C >= Hval1 Then//최저점+a는 최고점입니다.
exitlong();
if MarketPosition() == -1 and C <= Hval1 Then//최고점-a는 최저점입니다.
exitshort();
if Stime > 110000 and MarketPosition() != 0 Then{
if crossdown(C,BB) Then
exitlong();
if CrossUp(c,BB) Then
ExitShort();
}
즐거운 하루되세요