커뮤니티

피라미딩 손절 개별로

프로필 이미지
건곤대
2022-10-13 14:52:20
1224
글번호 162939
답변완료
진입별 손절을 다르게 하고싶습니다. 피라미빙 허용해서 매도1, 매도2 를 진입하도록 하였고 각각 다른 손절이 적용하려고 아래와 같이 작성했는데, 당일에 매도1이 먼저 진입하면, CUT1만 작동하고, 매도2가 먼저 진입하면 CUT2만 작동하는것 같습니다. 어떻게 수정하면 될까요? ----------------------- IF {...} else if Marketposition() == -1 then{ if IsEntryName("매도1") == true Then SetStopLoss(cut1,PercentStop); Else if IsEntryName("매도2") == true Then { SetStopLoss(cut2,PercentStop); SetStopProfittarget(gain,PercentStop); } Else SetStopLoss(0); } else{ SetStopProfittarget(0); /*0을 쓰면 작동안한다는 뜻임*/ setstoploss(0); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-10-13 15:40:29

안녕하세요 예스스탁입니다. 강제청산은 한번 셋팅이 되면 해당 설정 하나로 유지됩니다. 진입명 별로 설정을 달리 하신다면 강제청산함수로 가능하지 않습니다. 일반청산 함수로 아래와 같이 풀어서 작성하셔야 합니다. var : SP1(0),SP2(0); if MarketPosition == 1 Then { if CurrentContracts > CurrentContracts[1] Then { if LatestEntryName(0) == "매도1" Then SP1 = LatestEntryPrice(0); if LatestEntryName(0) == "매도2" Then SP2 = LatestEntryPrice(0); } if SP1 > 0 Then ExitShort("slx1",AtStop,SP1*(1+cut1/100),"매도1"); if SP2 > 0 Then { ExitShort("slx2",AtStop,SP2*(1+cut2/100),"매도2"); ExitShort("spx2",AtLimit,SP2*(1-gain/100),"매도2"); } } Else { SP1 = 0; SP2 = 0; } 즐거운 하루되세요 > 건곤대 님이 쓴 글입니다. > 제목 : 피라미딩 손절 개별로 > 진입별 손절을 다르게 하고싶습니다. 피라미빙 허용해서 매도1, 매도2 를 진입하도록 하였고 각각 다른 손절이 적용하려고 아래와 같이 작성했는데, 당일에 매도1이 먼저 진입하면, CUT1만 작동하고, 매도2가 먼저 진입하면 CUT2만 작동하는것 같습니다. 어떻게 수정하면 될까요? ----------------------- IF {...} else if Marketposition() == -1 then{ if IsEntryName("매도1") == true Then SetStopLoss(cut1,PercentStop); Else if IsEntryName("매도2") == true Then { SetStopLoss(cut2,PercentStop); SetStopProfittarget(gain,PercentStop); } Else SetStopLoss(0); } else{ SetStopProfittarget(0); /*0을 쓰면 작동안한다는 뜻임*/ setstoploss(0); }