커뮤니티

수식 작성 요청드립니다.

프로필 이미지
은색
2025-12-24 10:18:36
99
글번호 229328
답변완료

다음 조건에 맞는 수식 요청드립니다.


-1차 매수조건

<1차 매수진입>

거래금액은 100만원이고 당일의 시가가 전일 종가대비 -3~+3% 이내이면 즉시매수


<1차 매수진입에 대한 수익청산>

1. 매수 후 매입가대비 +5%이상이면 청산

2. 매수 후 매입가대비 +4%이상 상승 후 다시 매입가대비 +0.5%까지 하락해도 청산

즉, 청산은 1또는 2의 경우가 발생하면 청산합니다.


<1차 매수진입에 대한 손절>

매수 후 매입가대비 -4%를 넘으면 손절


-2차 매수조건

<2차 매수진입>

거래금액은 100만원이고, 1차 매수가 손절이후 현재가가 시가를 돌파할 때 매수합니다. 1차 매수가 수익청산됐을경우에는 진입하지 않습니다.


<2차 매수진입에 대한 수익청산>

1. 매수 후 매입가대비 +5%이상이면 청산

2. 매수 후 매입가대비 +4%이상 상승 후 다시 매입가대비 +0.5%까지 하락해도 청산

즉, 청산은 1또는 2의 경우가 발생하면 청산합니다.


<2차 매수진입에 대한 손절>

매수 후 매입가대비 -4%를 넘으면 손절


-당일매매종료

1차든 2차든 수익도 손절도 되지 않은 상태면 당일 15시15분에 전량 매도


-끝



제가 수식에 대한 이해가 짧아서 1차 매수조건과 2차 매수조건을 순서대로 작성해주시면 좋겠습니다. 감사합니다.




시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-12-24 11:13:06

안녕하세요 예스스탁입니다. 주석 참고하시기 바랍니다. input : 금액(1000000),익절(5),손절(4),TR수익(4),TR수익보전(0.5); var : tt(0),t1(0),entry(0),hh(0); #봉완성시 시초가수신(다음봉시가의 영업일과 완성봉의 영업일이 다름) if NextBarBdate != Bdate Then { #다음봉시가가 완성봉의 종가 +3~-3사이 #백만원어치 매수 if NextBarOpen <= C*1.03 and NextBarOpen >= C*0.97 Then Buy("b1",AtMarket,Def,Floor(금액/NextBarOpen)); } #전체거래횟수 tt = TotalTrades; #t1에 전일 마지막봉까지의 전체거래횟수 저장 if Bdate != Bdate[1] Then t1 = tt[1]; #진입횟수 계산 = 현재총거래횟수에서 전일값 차감하고 현재 포지션이 진행중이면 1을 추가) entry = tt-t1+iff(MarketPosition != 0,1,0); #당일 첫봉이 아니고 #현재 무포지션이고 당일 1회 거래가 있었고 #직전 거래가 손절로 끝났으면 #시초가를 터치하면 매수 if NextBarBdate == Bdate and MarketPosition == 0 and entry == 1 and IsExitName("b손절",1) == true Then Buy("b2",AtStop,DayOpen,Floor(금액/DayOpen)); #매수 후 if MarketPosition == 1 Then { #최근 매수후 최고가 계산 if CurrentContracts > CurrentContracts[1] Then hh = h; Else { if h > hh Then hh = h; } #매수후 최고가가 평단가 +4% 이상이었다가 #평단가+0.05까지 하락하면 청산 if hh >= AvgEntryPrice*(1+TR수익/100) Then ExitLong("bTR",AtStop,AvgEntryPrice*(1+TR수익보전/100)); #평단가 +5% 이상이면 청산 ExitLong("b익절",AtLimit,AvgEntryPrice*(1+익절/100)); #평단가 -5% 이상이면 청산 ExitLong("b손절",AtStop,AvgEntryPrice*(1-손절/100)); } #당일 15시15분 청산 SetStopEndofday(151500); 즐거운 하루되세요