커뮤니티

연속 수익시 제어하는 방법

프로필 이미지
자마이카
2024-09-11 06:31:48
677
글번호 183351
답변완료
항상 감사드립니다. 2번 연속 수익시 100봉을 쉬고 다시 거래를 재개하라는 취지로 &&!(pp1>0 &&pp2>0 && BarsSinceExit(1)<100) 을 진입식에 넣었는데 예컨대 수익이 연속4회가 되면 1,2번 수익이후 100봉, 1,2,3번 수익이후 100봉,1,2,3,4번 수익이후에도 100봉을 쉬고 있습니다. 제 의도는 연속2회 이후에만 100봉을 쉬고, 그 다음번 부터는 진입조건에 맞으면 그냥 진입하되, 또다시 연속2회 수익이면 그때 100봉을 쉬라는 것입니다. 즉 연속4회 수익의 경우 1,2번 수익이후 100봉을 쉬고, 3,4번이후에 다시100봉을 쉬라는 것입니다. 어떻게 수식을 작성해야 하나요. 미리 감사드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-09-11 11:30:32

안녕하세요 예스스탁입니다. input : StartTime(170000),EndTime(050000); var : Tcond(False),Trade(False),entry(0),PLcnt(0); IF Endtime > starttime Then SetStopEndofday(Endtime); Else { if sDate != sDate[1] Then SetStopEndofday(Endtime); } #05시가 되면 if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; #17시가 되면 if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { Tcond = true; Trade = true; PLcnt = 0; entry = 0; IF Endtime <= starttime Then { SetStopEndofday(0); } } if (MarketPosition != 0 and MarketPosition != MarketPosition(0)[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; #17시~05시 사이 if Tcond == true Then { #청산발생 if TotalTrades > TotalTrades[1] then { #수익이면 PLcnt값 1증가 수익이 아니면 0으로 초기화 if positionProfit(1) > 0 Then PLcnt = PLcnt+1; Else PLcnt = 0; #PLcnt가 2이면 if PLcnt == 2 Then { #Trade는 False Trade = False; #PLcnt는 0으로 초기화 PLcnt = 0; } } #Trade가 False가 되고 직전청산후에 100봉이 경과하면 #Trade 변수는 true if Trade == False and BarsSinceExit(1) == 100 Then trade = true; if Trade == true Then { 진입수식 } } 즐거운 하루되세요 > 자마이카 님이 쓴 글입니다. > 제목 : 연속 수익시 제어하는 방법 > 항상 감사드립니다. 2번 연속 수익시 100봉을 쉬고 다시 거래를 재개하라는 취지로 &&!(pp1>0 &&pp2>0 && BarsSinceExit(1)<100) 을 진입식에 넣었는데 예컨대 수익이 연속4회가 되면 1,2번 수익이후 100봉, 1,2,3번 수익이후 100봉,1,2,3,4번 수익이후에도 100봉을 쉬고 있습니다. 제 의도는 연속2회 이후에만 100봉을 쉬고, 그 다음번 부터는 진입조건에 맞으면 그냥 진입하되, 또다시 연속2회 수익이면 그때 100봉을 쉬라는 것입니다. 즉 연속4회 수익의 경우 1,2번 수익이후 100봉을 쉬고, 3,4번이후에 다시100봉을 쉬라는 것입니다. 어떻게 수식을 작성해야 하나요. 미리 감사드립니다.