커뮤니티
수식 검토바랍니다.
2011-02-08 10:08:22
744
글번호 35525
elw매매시 기초자산 참고하여 매매시
오전9시5분30초부터~오후2시48분 까지만 거래를 하고
기본차트는 elw 30분봉
타종목data2는 기초자산 30분봉
타종목data3는 기초자산 1분봉으로 설정하고
기초자산 1분봉이 전봉고가 갱신시 매수하고 30분봉에서 5이평선과 20이평선이 데드가
날경우 매도하고자 합니다.
아래와 같이 수식를 작성하고 오류검증도 했는데 매수가 안됩니다.
input : period1(5),Period2(20);
var1 = ma(data2("c"),Period1);
var2 = ma(data2("c"),Period2);
var3 = data3("c");
var4 = data3(h[1]);
if stime >= 090530 and stime < 144800 and (var3 > var4) then
buy();
if stime >= 090530 and stime < 144800 and crossdown(var1,var2) or var1 < var2 then
sell();
1분봉에서 고가갱신시 매수를 하려는 이유는 시스템적용과 함께 현재가로
매수하고자 하기 위함입니다. 시스템 적용과 함께 매수를 하려는 경우 다른 좋은
방법이 있을까요? 수식 부탁드립니다.
답변 2
예스스탁 예스스탁 답변
2011-02-08 11:18:20
안녕하세요
예스스탁입니다.
1.
주종목이 30분봉이므로 시간설정도 그에 맞게 하셔야 합니다.
기본적으로 수식에서는 하나의 봉안에서 시간은 감시할 수 없습니다.
그러므로 9시 5분 30초부터라는 조건은 성립될 수 없고
stime >= 090530와 같이 작성하시면 당일 두번째 봉 93000부터 신호발생됩니다.
30분 단위의 시간으로 설정하시기 바랍니다.
2.
신호와 주문은 모두 주종목의 봉이 완성되어야 나가게 됩니다.
즉 주종목이 30분봉이면 30분봉 완성시마다 다른 조건을 판단해서 신호와 함께
주문이 발생됩니다.
만일 참조종목 datat3에서 전봉고가 갱신시에 신호가 발생하고자 하시면
주종목도 1분봉으로 하셔야 합니다.
3.
식을 수정했습니다.
기본적으로 하나의 봉에서 매수와 청산이 동시에 나올 수 있는 식입니다.
하나의 봉에서 하나의 신호만 발생되게 수정했습니다.
input : period1(5),Period2(20);
if MarketPosition == 0 and stime >= 090500 and stime < 144800 and data3(C > H[1]) then
buy();
if MarketPosition == 1 and stime >= 090500 and stime < 144800 and data2(crossdown(ma(c,Period1),ma(c,Period2)) or ma(c,Period1) < ma(c,Period2)) then
ExitLong();
4.
신호는 모두 주종목의 봉이 완성이 되어야 발생하게 됩니다.
봉의 완성은 다음봉의 시가가 수신될 때이며
참조종목을 이용하시는 경우에는 참조종목의 데이터의 도달 시차에 의해
시뮬레이션과 실제 매매사이에 차이가 발생될 수 있습니다
해댕내용은 예스스탁 게시판 중 전문가마당 게시판의 38번글을 참고하시기 바랍니다.
즐거운 하루되세요
> 참맛 님이 쓴 글입니다.
> 제목 : 수식 검토바랍니다.
> elw매매시 기초자산 참고하여 매매시
오전9시5분30초부터~오후2시48분 까지만 거래를 하고
기본차트는 elw 30분봉
타종목data2는 기초자산 30분봉
타종목data3는 기초자산 1분봉으로 설정하고
기초자산 1분봉이 전봉고가 갱신시 매수하고 30분봉에서 5이평선과 20이평선이 데드가
날경우 매도하고자 합니다.
아래와 같이 수식를 작성하고 오류검증도 했는데 매수가 안됩니다.
input : period1(5),Period2(20);
var1 = ma(data2("c"),Period1);
var2 = ma(data2("c"),Period2);
var3 = data3("c");
var4 = data3(h[1]);
if stime >= 090530 and stime < 144800 and (var3 > var4) then
buy();
if stime >= 090530 and stime < 144800 and crossdown(var1,var2) or var1 < var2 then
sell();
1분봉에서 고가갱신시 매수를 하려는 이유는 시스템적용과 함께 현재가로
매수하고자 하기 위함입니다. 시스템 적용과 함께 매수를 하려는 경우 다른 좋은
방법이 있을까요? 수식 부탁드립니다.
참맛
2011-02-08 17:35:43
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식 검토바랍니다.
> 안녕하세요
예스스탁입니다.
1.
주종목이 30분봉이므로 시간설정도 그에 맞게 하셔야 합니다.
기본적으로 수식에서는 하나의 봉안에서 시간은 감시할 수 없습니다.
그러므로 9시 5분 30초부터라는 조건은 성립될 수 없고
stime >= 090530와 같이 작성하시면 당일 두번째 봉 93000부터 신호발생됩니다.
30분 단위의 시간으로 설정하시기 바랍니다.
2.
신호와 주문은 모두 주종목의 봉이 완성되어야 나가게 됩니다.
즉 주종목이 30분봉이면 30분봉 완성시마다 다른 조건을 판단해서 신호와 함께
주문이 발생됩니다.
만일 참조종목 datat3에서 전봉고가 갱신시에 신호가 발생하고자 하시면
주종목도 1분봉으로 하셔야 합니다.
3.
식을 수정했습니다.
기본적으로 하나의 봉에서 매수와 청산이 동시에 나올 수 있는 식입니다.
하나의 봉에서 하나의 신호만 발생되게 수정했습니다.
input : period1(5),Period2(20);
if MarketPosition == 0 and stime >= 090500 and stime < 144800 and data3(C > H[1]) then
buy();
if MarketPosition == 1 and stime >= 090500 and stime < 144800 and data2(crossdown(ma(c,Period1),ma(c,Period2)) or ma(c,Period1) < ma(c,Period2)) then
ExitLong();
4.
신호는 모두 주종목의 봉이 완성이 되어야 발생하게 됩니다.
봉의 완성은 다음봉의 시가가 수신될 때이며
참조종목을 이용하시는 경우에는 참조종목의 데이터의 도달 시차에 의해
시뮬레이션과 실제 매매사이에 차이가 발생될 수 있습니다
해댕내용은 예스스탁 게시판 중 전문가마당 게시판의 38번글을 참고하시기 바랍니다.
즐거운 하루되세요
> 참맛 님이 쓴 글입니다.
> 제목 : 수식 검토바랍니다.
> elw매매시 기초자산 참고하여 매매시
오전9시5분30초부터~오후2시48분 까지만 거래를 하고
기본차트는 elw 30분봉
타종목data2는 기초자산 30분봉
타종목data3는 기초자산 1분봉으로 설정하고
기초자산 1분봉이 전봉고가 갱신시 매수하고 30분봉에서 5이평선과 20이평선이 데드가
날경우 매도하고자 합니다.
아래와 같이 수식를 작성하고 오류검증도 했는데 매수가 안됩니다.
input : period1(5),Period2(20);
var1 = ma(data2("c"),Period1);
var2 = ma(data2("c"),Period2);
var3 = data3("c");
var4 = data3(h[1]);
if stime >= 090530 and stime < 144800 and (var3 > var4) then
buy();
if stime >= 090530 and stime < 144800 and crossdown(var1,var2) or var1 < var2 then
sell();
1분봉에서 고가갱신시 매수를 하려는 이유는 시스템적용과 함께 현재가로
매수하고자 하기 위함입니다. 시스템 적용과 함께 매수를 하려는 경우 다른 좋은
방법이 있을까요? 수식 부탁드립니다.
다음글
이전글