커뮤니티
검토해 주세요!
2015-12-17 06:42:04
116
글번호 93512
NO. 45517 과 관련 입니다.
당해 수식이 정확히 작동하지 않습니다.
다시 한번 검토 부탁드립니다.
참고사항 : 마지막 봉시간 16:00:00 (현지시간)
수식 끝부분 "매수포지션일때" 에서
if MarketPosition == -1 를 -------> if MarketPosition == 1 로 수정함
답변 1
예스스탁 예스스탁 답변
2015-12-17 13:31:38
안녕하세요
예스스탁입니다.
Tcond에 값할당 연산자가 잘못되어 수정했습니다.
마지막봉 시간은 반드시
plot1(stime);
으로 확인하시기 바랍니다.
CME종목의 경우 시장시간으로
1분봉이면 마지막봉이 155900,
5분봉이면 155500입니다.
당일 첫봉이 전일종가대비 +-까지 움직이면
첫봉에서 신호가 발생해야 하므로
시간값 정확히 지정하셔야 합니다.
Input : K(0),마지막봉시간(155900);
var : PL(0),Tcond(false);
var : T(0),S1(0),S2(0),TT(0);
if Bdate != Bdate[1] Then{
Tcond = true;
S1 = TimeToMinutes(stime);
T = 1;
}
if date != date[1] Then{
S2 = 1440-S1;
T = 2;
}
if T == 1 then
TT = TimeToMinutes(time)-S1;
if T == 2 Then
TT = TimeToMinutes(time)+S2;
PL = DayClose(1);
if stime == 마지막봉시간 Then
Tcond = false;
if MarketPosition == 0 and stime == 마지막봉시간 Then{
Buy("b1",AtStop,DayClose+K);
Sell("s1",AtStop,DayClose-K);
}
#두번째 봉부터 신호발생
#무포지션에서는 시간제한 없이 진입
if MarketPosition == 0 and Tcond == true Then{
Buy("b1.",AtStop,PL+K);
Sell("s1.",AtStop,PL-K);
}
#두번째 봉부터 신호발생
#매도포지션일때는 매도진입 후 60분이상 경과후 진입
If MarketPosition == -1 and TT > TT[BarsSinceEntry] + 60 and Tcond == true Then
Buy("b2",AtStop,PL+K);
#매수포지션일때는 매수진입 후 60분이상 경과후 진입
If MarketPosition == 1 and TT > TT[BarsSinceEntry] + 60 and Tcond == true Then
Sell("s2",AtStop,PL-K);
즐거운 하루되세요
> 너무조아 님이 쓴 글입니다.
> 제목 : 검토해 주세요!
> NO. 45517 과 관련 입니다.
당해 수식이 정확히 작동하지 않습니다.
다시 한번 검토 부탁드립니다.
참고사항 : 마지막 봉시간 16:00:00 (현지시간)
수식 끝부분 "매수포지션일때" 에서
if MarketPosition == -1 를 -------> if MarketPosition == 1 로 수정함