커뮤니티

매도 청산식 요청드립니다.

프로필 이미지
맴맴잉
2022-05-23 19:41:48
955
글번호 159183
답변완료
얼마전에 현물관련 분할매도 관련 시스템식을 요청드린적이 있었습니다. 관련 내용은 아래와 같습니다. 근데 매수가 한번만 되었을때는 아래와 같이 잘 적용 되는데.... 2차 매수, 3차 매수가 된다면 아래와 같이 동일한 비중으로 매도도 안되고, 10분뒤 익절한 금액 보다 아래에 있을경우 매도청산하는 식도 적용이 안되는걸 발견하였습니다. 수정 확인 부탁드리겠습니다. 추가적인 질문으로 MaxContracts 수식은 포지션의 최대 누적 수량이라고 써있던데 예를 들면 3,4,5,7,10 동일 비중으로 매도를 진행하려면 maxcontracts/5 하는게 맞는지도 확인 부탁드리겠습니다. 제가 좀 헷갈리는데.. 만약에 100주 사서 3%에 20주 팔면, 80주가 남는데... 80주에 나누기 5하면 80/5 = 16주가 팔리게 되는건지 ..아니면 앞의 수량 /5 100 / 5 = 해서 20주가 되는지 잘 이해가 안갑니다. 설명도 부탁드리겠습니다. 그리고 100주 사서 20주 한번 팔리면 80주 남는데 거기서 추가매수 되어서 180주가 된다면 그 180주에 대한 동일한 비중으로 분할매도가 되게 하려면 어떻게 가능한지.궁금합니다. 아래의 식으로는 안되더라구요..ㅜ.ㅜ --------------------------------------------------------------- 안녕하세요 예스스탁입니다. if MarketPosition == 1 Then { if CurrentContracts < CurrentContracts[1] Then { var1 = LatestExitPrice(0); Var2 = TimeToMinutes(sTime); } if var1 > 0 and TimeToMinutes(sTime) >= Var2+10 and C < var1 then ExitLong("bx"); ExitLong("3%익절",AtLimit,AVGEntryPrice*1.03,"",Floor(MaxContracts*0.20)); ExitLong("4%익절",AtLimit,AVGEntryPrice*1.04,"",Floor(MaxContracts*0.20)); ExitLong("5%익절",AtLimit,AVGEntryPrice*1.05,"",Floor(MaxContracts*0.20)); ExitLong("7%익절",AtLimit,AVGEntryPrice*1.06,"",Floor(MaxContracts*0.20)); ExitLong("10%익절",AtLimit,AVGEntryPrice*1.10); } Else { var1 = 0; Var2 = 0; } 즐거운 하루되세요 > 맴맴잉 님이 쓴 글입니다. > 제목 : 청산 관련 시스템식 요청 드립니다. > 현물 매도 청산 식을 작성하려고 합니다. 3%, 4% , 5%, 7%, 10% 분할로 매도식을 작성하려고 합니다. ExitLong("3%익절",AtLimit,AVGEntryPrice*1.03,"",Floor(MaxContracts*0.20)); ExitLong("4%익절",AtLimit,AVGEntryPrice*1.04,"",Floor(MaxContracts*0.20)); ExitLong("5%익절",AtLimit,AVGEntryPrice*1.05,"",Floor(MaxContracts*0.20)); ExitLong("7%익절",AtLimit,AVGEntryPrice*1.06,"",Floor(MaxContracts*0.20)); ExitLong("10%익절",AtLimit,AVGEntryPrice*1.10); 이런식으로 작성을 했는데 여기서 추가되는 조건은 만약에 3%익절 하고 10분 뒤에.. 3% 익절한금액 (AVGEntryPrice*1.03) 보다 밑에 있으면 현재가 전량 매도 만약에 4%익절 하고 10분 뒤에.. 4% 익절한금액 (AVGEntryPrice*1.04) 보다 밑에 있으면 현재가 전량 매도 만약에 5%익절 하고 10분 뒤에.. 5% 익절한금액 (AVGEntryPrice*1.05) 보다 밑에 있으면 현재가 전량 매도 만약에 7%익절 하고 10분 뒤에.. 7% 익절한금액 (AVGEntryPrice*1.07) 보다 밑에 있으면 현재가 전량 매도 이런식으로 작성하려고 하는데 어떻게 작성해야 할지 궁금합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-05-24 13:24:07

안녕하세요 예스스탁입니다. MaxContracts는 진입이 후 최대누적된 수량입니다. 일부청산이후에 다시 진입이 발생하는 내용이면 아래와 같이 수정하시면 됩니다. if MarketPosition == 1 Then { if CurrentContracts < CurrentContracts[1] Then { var1 = LatestExitPrice(0); Var2 = TimeToMinutes(sTime); } if CurrentContracts > CurrentContracts[1] Then { Var3 = CurrentContracts; Var4 = H; } if h > Var4 Then Var4 = h; if var1 > 0 and TimeToMinutes(sTime) >= Var2+10 and C < var1 then ExitLong("bx"); if Var4 < AvgEntryPrice*1.03 Then ExitLong("3%익절",AtLimit,AvgEntryPrice*1.03,"",Floor(Var3*0.20)); if Var4 < AvgEntryPrice*1.04 Then ExitLong("4%익절",AtLimit,AvgEntryPrice*1.04,"",Floor(Var3*0.20)); if Var4 < AvgEntryPrice*1.05 Then ExitLong("5%익절",AtLimit,AvgEntryPrice*1.05,"",Floor(Var3*0.20)); if Var4 < AvgEntryPrice*1.06 Then ExitLong("7%익절",AtLimit,AvgEntryPrice*1.06,"",Floor(Var3*0.20)); if Var4 < AvgEntryPrice*1.10 Then ExitLong("10%익절",AtLimit,AvgEntryPrice*1.10); } Else { var1 = 0; Var2 = 0; } 즐거운 하루되세요 > 맴맴잉 님이 쓴 글입니다. > 제목 : 매도 청산식 요청드립니다. > 얼마전에 현물관련 분할매도 관련 시스템식을 요청드린적이 있었습니다. 관련 내용은 아래와 같습니다. 근데 매수가 한번만 되었을때는 아래와 같이 잘 적용 되는데.... 2차 매수, 3차 매수가 된다면 아래와 같이 동일한 비중으로 매도도 안되고, 10분뒤 익절한 금액 보다 아래에 있을경우 매도청산하는 식도 적용이 안되는걸 발견하였습니다. 수정 확인 부탁드리겠습니다. 추가적인 질문으로 MaxContracts 수식은 포지션의 최대 누적 수량이라고 써있던데 예를 들면 3,4,5,7,10 동일 비중으로 매도를 진행하려면 maxcontracts/5 하는게 맞는지도 확인 부탁드리겠습니다. 제가 좀 헷갈리는데.. 만약에 100주 사서 3%에 20주 팔면, 80주가 남는데... 80주에 나누기 5하면 80/5 = 16주가 팔리게 되는건지 ..아니면 앞의 수량 /5 100 / 5 = 해서 20주가 되는지 잘 이해가 안갑니다. 설명도 부탁드리겠습니다. 그리고 100주 사서 20주 한번 팔리면 80주 남는데 거기서 추가매수 되어서 180주가 된다면 그 180주에 대한 동일한 비중으로 분할매도가 되게 하려면 어떻게 가능한지.궁금합니다. 아래의 식으로는 안되더라구요..ㅜ.ㅜ --------------------------------------------------------------- 안녕하세요 예스스탁입니다. if MarketPosition == 1 Then { if CurrentContracts < CurrentContracts[1] Then { var1 = LatestExitPrice(0); Var2 = TimeToMinutes(sTime); } if var1 > 0 and TimeToMinutes(sTime) >= Var2+10 and C < var1 then ExitLong("bx"); ExitLong("3%익절",AtLimit,AVGEntryPrice*1.03,"",Floor(MaxContracts*0.20)); ExitLong("4%익절",AtLimit,AVGEntryPrice*1.04,"",Floor(MaxContracts*0.20)); ExitLong("5%익절",AtLimit,AVGEntryPrice*1.05,"",Floor(MaxContracts*0.20)); ExitLong("7%익절",AtLimit,AVGEntryPrice*1.06,"",Floor(MaxContracts*0.20)); ExitLong("10%익절",AtLimit,AVGEntryPrice*1.10); } Else { var1 = 0; Var2 = 0; } 즐거운 하루되세요 > 맴맴잉 님이 쓴 글입니다. > 제목 : 청산 관련 시스템식 요청 드립니다. > 현물 매도 청산 식을 작성하려고 합니다. 3%, 4% , 5%, 7%, 10% 분할로 매도식을 작성하려고 합니다. ExitLong("3%익절",AtLimit,AVGEntryPrice*1.03,"",Floor(MaxContracts*0.20)); ExitLong("4%익절",AtLimit,AVGEntryPrice*1.04,"",Floor(MaxContracts*0.20)); ExitLong("5%익절",AtLimit,AVGEntryPrice*1.05,"",Floor(MaxContracts*0.20)); ExitLong("7%익절",AtLimit,AVGEntryPrice*1.06,"",Floor(MaxContracts*0.20)); ExitLong("10%익절",AtLimit,AVGEntryPrice*1.10); 이런식으로 작성을 했는데 여기서 추가되는 조건은 만약에 3%익절 하고 10분 뒤에.. 3% 익절한금액 (AVGEntryPrice*1.03) 보다 밑에 있으면 현재가 전량 매도 만약에 4%익절 하고 10분 뒤에.. 4% 익절한금액 (AVGEntryPrice*1.04) 보다 밑에 있으면 현재가 전량 매도 만약에 5%익절 하고 10분 뒤에.. 5% 익절한금액 (AVGEntryPrice*1.05) 보다 밑에 있으면 현재가 전량 매도 만약에 7%익절 하고 10분 뒤에.. 7% 익절한금액 (AVGEntryPrice*1.07) 보다 밑에 있으면 현재가 전량 매도 이런식으로 작성하려고 하는데 어떻게 작성해야 할지 궁금합니다.