커뮤니티

수식 수정 부탁드립니다.

프로필 이미지
미완
2022-03-02 23:07:19
1066
글번호 156884
답변완료
크루드오일에 적용하고자 아래 내용과 같이 수식을 작성해 주셨는데 아래 기준이 되는 설명과 같이 진입이 되질 않아 다시 한번 수식 수정 부탁드립니다. 오일 2/28일자 일봉이 양봉으로 마감되었으면 3/1일 진입은 매수로 지정 틱수만큼 낮게 진입되어야 하는데 매도로 진입되고 3/2일도 전일자가 일봉이 양봉으로 마감되었는데도 매도로 진입이 되고 있습니다. 확인 부탁드립니다. 참고로 전일자 양봉, 음봉은 일봉 기준이고 당일 진입 및 청산은 일분봉으로 하고 있습니다. [ 기준시간은 시장시간으로 ] 1. 일봉상 전일자 봉이 양봉으로 마감시 금일 진입은 시작가 보다 지정틱수(input) 만큼 낮게 매수 진입. 2. 일봉상 전일자 봉이 음봉으로 마감시 금일 진입은 시작가 보다 지정틱수(input) 만큼 높게 매도 진입. 3. 청산은 지정틱수(input) 만큼 수익 도달시 청산 4. 진입후 미청산시 당일 마감 1분전(155900) 청산 5. 일일 진입횟수는 지정횟수(input) 만큼 진입 input : n(1),익절틱수(20),진입횟수(2); var : entry(0); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { if C > DayOpen Then Buy("b1",AtLimit,NextBarOpen-n); if C < DayOpen Then Sell("S1",AtLimit,NextBarOpen+n); } Else { if MarketPosition <= 0 and L > DayOpen-n and entry < 진입횟수 Then Buy("b",AtLimit,DayOpen-n); if MarketPosition >= 0 and L < DayOpen+n and entry < 진입횟수 Then Sell("s",AtLimit,DayOpen+n); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(153000);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-03-03 09:06:09

안녕하세요 예스스탁입니다. 식을 수정했습니다. input : n(10),익절틱수(20),진입횟수(2); var : entry(0); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { if C > DayOpen Then Buy("b1",AtLimit,NextBarOpen-n*PriceScale); if C < DayOpen Then Sell("S1",AtLimit,NextBarOpen+n*PriceScale); } Else { if MarketPosition <= 0 and DayClose(1) > DayOpen(1) and L > DayOpen-n and entry < 진입횟수 Then Buy("b",AtLimit,DayOpen-n*PriceScale); if MarketPosition >= 0 and DayClose(1) < DayOpen(1) and H < DayOpen+n and entry < 진입횟수 Then Sell("s",AtLimit,DayOpen+n*PriceScale); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(153000); 즐거운 하루되세요 > 미완 님이 쓴 글입니다. > 제목 : 수식 수정 부탁드립니다. > 크루드오일에 적용하고자 아래 내용과 같이 수식을 작성해 주셨는데 아래 기준이 되는 설명과 같이 진입이 되질 않아 다시 한번 수식 수정 부탁드립니다. 오일 2/28일자 일봉이 양봉으로 마감되었으면 3/1일 진입은 매수로 지정 틱수만큼 낮게 진입되어야 하는데 매도로 진입되고 3/2일도 전일자가 일봉이 양봉으로 마감되었는데도 매도로 진입이 되고 있습니다. 확인 부탁드립니다. 참고로 전일자 양봉, 음봉은 일봉 기준이고 당일 진입 및 청산은 일분봉으로 하고 있습니다. [ 기준시간은 시장시간으로 ] 1. 일봉상 전일자 봉이 양봉으로 마감시 금일 진입은 시작가 보다 지정틱수(input) 만큼 낮게 매수 진입. 2. 일봉상 전일자 봉이 음봉으로 마감시 금일 진입은 시작가 보다 지정틱수(input) 만큼 높게 매도 진입. 3. 청산은 지정틱수(input) 만큼 수익 도달시 청산 4. 진입후 미청산시 당일 마감 1분전(155900) 청산 5. 일일 진입횟수는 지정횟수(input) 만큼 진입 input : n(1),익절틱수(20),진입횟수(2); var : entry(0); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { if C > DayOpen Then Buy("b1",AtLimit,NextBarOpen-n); if C < DayOpen Then Sell("S1",AtLimit,NextBarOpen+n); } Else { if MarketPosition <= 0 and L > DayOpen-n and entry < 진입횟수 Then Buy("b",AtLimit,DayOpen-n); if MarketPosition >= 0 and L < DayOpen+n and entry < 진입횟수 Then Sell("s",AtLimit,DayOpen+n); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopEndofday(153000);