커뮤니티

개장 후 첫번째 봉에서 진입

프로필 이미지
엠씨용가
2020-08-11 01:06:20
838
글번호 141386
답변완료
안녕하세요 ^^ 예전에 코딩하다가 너무 어려워서 포기할까 하다가 ,,, 다시 돌아왔습니다, 처음부터 다시 해보려고 합니다 ^^ # ENTRY IF H < LTR THEN BUY("L",ATSTOP,LTR); # EXIT IF MARKETPOSITION == 1 and NextBarSdate != sdate then exitlong("EL",ATMARKET); 상기 수식을 입력할 경우 개장 후 첫번째 봉에서 진입 시그널이 발생하지 않습니다. 어떻게 수정해야 될까요?
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2020-08-11 14:51:51

안녕하세요 예스스탁입니다. 1 atstop은 봉완성시에 if조건이 만족하면 지정한 값을 셋팅하고 다음봉에서 셋팅된 값과 현재가를 비교해 신호가 발생합니다. iF H < LTR THEN BUY("L",ATSTOP,LTR); 작성하신식은 봉완성시 고가가 LTR값보다 작으면 해당봉의 LTR값을 셋팅하고 다음봉에서 LTR이상의 시세가 발생하면 신호가 발생합니다. 첫봉에서 신호가 발생하기 위해서는 전일 마지막봉에서 if문이 만족해야 하는데 작성하신 식에서 첫봉에 신호가 발생하지 않으면 전일 마지막봉에서 if문이 충족되지 않기 때문입니다. 2 LTR을 당일시가+(전일진폭)*0.5로 가정하고 식을 답변드리면 당일 첫봉에서 매수가능한 식과 당일 두번째부터 발생가능한 식을 분리해서 구현하셔야 합니다. var : LTR(0); LTR = DayOpen+(DayHigh(1)+DayLow(1))*0.5; #첫봉에만 발생하는 매수 #봉완성은 다음봉시가가 수신될때이고 다음봉시가는 NextBarOpen,다음봉시가의날짜는 NextBarSdate입니다. #일간 마지막봉이 완성(NextBarSdate != sDate) #다음봉시가+(당일고가-당일저가)*0.5로 가격셋팅 #일간마지막봉 완성이므로 다음봉시가는 다음날 시가입니다. #다음봉에서 셋팅된 가격 이상의 시세가 발생하면 매수 IF NextBarSdate != sDate THEN BUY("L1",ATSTOP,NextBarOpen+(DayHigh(0)-DayLow(0))*0.5); #두번째봉 이후에만 발생하는 매수 IF NextBarSdate == sDate and H < LTR THEN BUY("L2",ATSTOP,LTR); IF MARKETPOSITION == 1 and NextBarSdate != sdate then exitlong("EL",ATMARKET); 즐거운 하루되세요 > 엠씨용가 님이 쓴 글입니다. > 제목 : 개장 후 첫번째 봉에서 진입 > 안녕하세요 ^^ 예전에 코딩하다가 너무 어려워서 포기할까 하다가 ,,, 다시 돌아왔습니다, 처음부터 다시 해보려고 합니다 ^^ # ENTRY IF H < LTR THEN BUY("L",ATSTOP,LTR); # EXIT IF MARKETPOSITION == 1 and NextBarSdate != sdate then exitlong("EL",ATMARKET); 상기 수식을 입력할 경우 개장 후 첫번째 봉에서 진입 시그널이 발생하지 않습니다. 어떻게 수정해야 될까요?