커뮤니티

첫봉의 문제

프로필 이미지
별자리
2013-04-03 10:52:26
293
글번호 61621
답변완료
늘 도움을 주셔서 감사합니다.한 가지 궁금한게 있어서 그러는데요.. pivot을 적용하는 식인데 첫봉에서 자꾸 진입신호가 발생해요.조건을 만족할때만 진입해야 하는데 첫봉에서 자꾸 역b,역s 신호가 발생하거든요. 데이트레이딩만 하는 식을 만들려고 하는데 식이 아래와 같으면 전일자에서 당일자로 넘어올때 첫봉에서 신호가 발생하는 문제점이 발생하는건지 알고 싶어요.. Var:피봇(0),저항1(0),저항2(0),지지1(0),지지2(0); 피봇=(DayHigh(1)+DayLow(1)+DayClose(1))/3;; 저항1=2*피봇-DayLow(1); 저항2=피봇+DayHigh(1)-DayLow(1); 지지1=2*피봇-DayHigh(1); 지지2=피봇-DayHigh(1)+DayLow(1); #진입 If CrossUp(c,저항2) Then Buy("추B"); If CrossDown(c,지지2) Then Sell("추S"); If CrossUp(c,지지1) Then buy("역B"); If CrossDown(c,저항1) Then Sell("역S"); #청산 Var1=Highest(H,BarsSinceEntry+1); Var2=Lowest(L,BarsSinceEntry+1); If IsEntryName("추b") or IsEntryName("추S") Then { ExitLong("EL1",AtStop,Var1-ATR(20)*4); ExitShort("ES1",AtStop,Var2+ATR(20)*4); } Else { ExitLong("EL2",AtStop,Var1-ATR(20)*5); ExitShort("ES2",AtStop,Var2+ATR(20)*5); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-04-03 13:38:05

안녕하세요 예스스탁입니다. crossup이나 crossdown함수는 2개봉을 보게 됩니다. 직전봉과 현재봉의 값을 비교하므로 첫봉에서 신호라 발생할 수 있습니다. 아래와 같이 작성하시면 당일 두번째 봉부터 발생하게 하시면 됩니다. Var:피봇(0),저항1(0),저항2(0),지지1(0),지지2(0); 피봇=(DayHigh(1)+DayLow(1)+DayClose(1))/3;; 저항1=2*피봇-DayLow(1); 저항2=피봇+DayHigh(1)-DayLow(1); 지지1=2*피봇-DayHigh(1); 지지2=피봇-DayHigh(1)+DayLow(1); if dayindex > 0 Then{ #진입 If CrossUp(c,저항2) Then Buy("추B"); If CrossDown(c,지지2) Then Sell("추S"); If CrossUp(c,지지1) Then buy("역B"); If CrossDown(c,저항1) Then Sell("역S"); } #청산 Var1=Highest(H,BarsSinceEntry+1); Var2=Lowest(L,BarsSinceEntry+1); If IsEntryName("추b") or IsEntryName("추S") Then { ExitLong("EL1",AtStop,Var1-ATR(20)*4); ExitShort("ES1",AtStop,Var2+ATR(20)*4); } Else { ExitLong("EL2",AtStop,Var1-ATR(20)*5); ExitShort("ES2",AtStop,Var2+ATR(20)*5); } 즐거운 하루되세요 > 별자리 님이 쓴 글입니다. > 제목 : 첫봉의 문제 > 늘 도움을 주셔서 감사합니다.한 가지 궁금한게 있어서 그러는데요.. pivot을 적용하는 식인데 첫봉에서 자꾸 진입신호가 발생해요.조건을 만족할때만 진입해야 하는데 첫봉에서 자꾸 역b,역s 신호가 발생하거든요. 데이트레이딩만 하는 식을 만들려고 하는데 식이 아래와 같으면 전일자에서 당일자로 넘어올때 첫봉에서 신호가 발생하는 문제점이 발생하는건지 알고 싶어요.. Var:피봇(0),저항1(0),저항2(0),지지1(0),지지2(0); 피봇=(DayHigh(1)+DayLow(1)+DayClose(1))/3;; 저항1=2*피봇-DayLow(1); 저항2=피봇+DayHigh(1)-DayLow(1); 지지1=2*피봇-DayHigh(1); 지지2=피봇-DayHigh(1)+DayLow(1); #진입 If CrossUp(c,저항2) Then Buy("추B"); If CrossDown(c,지지2) Then Sell("추S"); If CrossUp(c,지지1) Then buy("역B"); If CrossDown(c,저항1) Then Sell("역S"); #청산 Var1=Highest(H,BarsSinceEntry+1); Var2=Lowest(L,BarsSinceEntry+1); If IsEntryName("추b") or IsEntryName("추S") Then { ExitLong("EL1",AtStop,Var1-ATR(20)*4); ExitShort("ES1",AtStop,Var2+ATR(20)*4); } Else { ExitLong("EL2",AtStop,Var1-ATR(20)*5); ExitShort("ES2",AtStop,Var2+ATR(20)*5); }