커뮤니티

수식 문의2

프로필 이미지
엔돌핀
2025-09-16 01:18:36.0
60
글번호 194032
답변완료
[진입] 1)당일 첫봉이 양봉이면 매수진입하고 음봉이면 매도진입(1분봉기준임) 진입횟수는 100회차까지 진입 2)현재가가 전회차 진입봉대비 5틱 수익이면 계속 불타기 진입 (이렇게 5틱 수익 날때마다 N회차 계속 진입해서 최종100회차까지 진입) 3)트레일일스탑 청산후 당일 목표수익이 1% 안되었을경우 다시 진입하되 현재가가 당일 시가보다 작으면 매도 진입후 진입과 청산 반복루팅 매매 현재가가 당일 시가보다 크면 매수 진입후 진입과 청산 반복루팅 매매 [청산] 1)목표수익청산1 : 진입금액대비 2%면 목표수익청산 2)목표수익청산2 : 잔고대비 1% 수익이면 목표수익청산 3)트레일링스탑청산 : 0.5%부터 트레일링스탑 가동후 고점대비 30% 밀리면 트레일링스탑청산 4)트레일링스탑청산이 반복되서 당일목표수익 1%달성시 매매 종료 5)손절매1 : 진입금액대비 -10%면 손실청산 6)손절매2 : 잔고대비 -10% 손실청산 7)당일7시 시작해서 익일06일 일괄청산
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-09-16 13:17:13.0

안녕하세요 예스스탁입니다. 피라미딩을 모든진입신호 허용으로 설정하고 적용하시면 됩니다. input : StartTime(70000),EndTime(60000); input : 변동틱(5),진입수량(1),최소수익(0.5),고점대비(30),익절(2),손절(10),당일목표수익(2); var : Tcond(False),sumPL(0),Xcond(False),B(0); IF Endtime > starttime Then SetStopEndofday(Endtime); Else { if sDate != sDate[1] Then SetStopEndofday(Endtime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } sumPL = 0; if MarketPosition == 0 and C > O Then Buy("b",OnClose,Def,진입수량); if MarketPosition == 0 and C < O Then Sell("s",OnClose,Def,진입수량); b = 0; } b = b+1; if TotalTrades > TotalTrades[1] Then { if MarketPosition(1) == 1 Then sumPL = sumPL + ((ExitPrice(1)-AvgEntryPrice[1])/AvgEntryPrice[1]*100); if MarketPosition(1) == -1 Then sumPL = sumPL + ((ExitPrice(1)-AvgEntryPrice[1])/AvgEntryPrice[1]*100); } if Tcond == true and sumPL < 당일목표수익 Then { if MarketPosition == 0 and b > 1 Then { if C > DayOpen Then Buy("b.",OnClose,Def,진입수량); if C < DayOpen Then Sell("s.",OnClose,Def,진입수량); } if MarketPosition == 1 Then { if MaxEntries < 100 Then Buy("bb",AtStop,LatestEntryPrice(0)+PriceScale*변동틱,진입수량); if highest(H,BarsSinceEntry) >= EntryPrice*(1+최소수익/100) Then ExitLong("bx",AtStop,highest(H,BarsSinceEntry)-abs(highest(H,BarsSinceEntry)-EntryPrice)*(고점대비/100)); ExitLong("bp",AtLimit,AvgEntryPrice*(1+익절/100)); ExitLong("bl",AtStop,AvgEntryPrice*(1-손절/100)); } if MarketPosition == -1 Then { if MaxEntries < 100 Then Sell("ss",AtStop,LatestEntryPrice(0)-PriceScale*변동틱,진입수량); if lowest(L,BarsSinceEntry) <= EntryPrice*(1-최소수익/100) Then ExitShort("sx",AtStop,lowest(L,BarsSinceEntry)+abs(lowest(L,BarsSinceEntry)-EntryPrice)*(고점대비/100)); ExitShort("sp",AtLimit,AvgEntryPrice*(1-익절/100)); ExitShort("sl",AtStop,AvgEntryPrice*(1+손절/100)); } } 즐거운 하루되세요 > 엔돌핀 님이 쓴 글입니다. > 제목 : 수식 문의2 > [진입] 1)당일 첫봉이 양봉이면 매수진입하고 음봉이면 매도진입(1분봉기준임) 진입횟수는 100회차까지 진입 2)현재가가 전회차 진입봉대비 5틱 수익이면 계속 불타기 진입 (이렇게 5틱 수익 날때마다 N회차 계속 진입해서 최종100회차까지 진입) 3)트레일일스탑 청산후 당일 목표수익이 1% 안되었을경우 다시 진입하되 현재가가 당일 시가보다 작으면 매도 진입후 진입과 청산 반복루팅 매매 현재가가 당일 시가보다 크면 매수 진입후 진입과 청산 반복루팅 매매 [청산] 1)목표수익청산1 : 진입금액대비 2%면 목표수익청산 2)목표수익청산2 : 잔고대비 1% 수익이면 목표수익청산 3)트레일링스탑청산 : 0.5%부터 트레일링스탑 가동후 고점대비 30% 밀리면 트레일링스탑청산 4)트레일링스탑청산이 반복되서 당일목표수익 1%달성시 매매 종료 5)손절매1 : 진입금액대비 -10%면 손실청산 6)손절매2 : 잔고대비 -10% 손실청산 7)당일7시 시작해서 익일06일 일괄청산