커뮤니티

질문드립니다

프로필 이미지
도롱이
2019-07-28 22:12:39
141
글번호 130711
답변완료
안녕하세요. 이제 분할청산 식은 조금 감이 잡히는데, '다른 진입신호 허용 피라미딩' 으로 들어간 각각의 신호에 대하여 각각의 청산을 적용할 수 있는 방법도 있을까요? 역시 예를 들어 주시면 좀 더 쉽게 이해 가능할 것 같습니다.. ------------------------------------------------------ input : 진입금액1(1000000),진입금액2(500000) ; var : 손절가(0); var1 = ma(C,5); var2 = ma(C,20); var3 = ma(C,60); var4 = ma(C,120); var5 = ma(C,240); var6 = ma(C,480); if crossup(c,var2) Then { buy("진입1",OnClose,def,floor(진입금액1/c)) ; } if crossup(c,var3) Then { buy("진입2",OnClose,def,floor(진입금액2/c)) ; } ------------------------------------------------------ 위와 같이 진입1, 진입2 진입명으로 진입한 후 1) 진입 1에 대한 청산은 1-1) 진입1 진입가 - 1틱에서 진입1 진입 전체 물량 전부 청산 1-2) CrossDown(c,var3) 에서 진입1 진입 전체 물량의 반 청산 1-3) CrossDown(c,var4) 에서 진입1 진입 전체 물량의 반 청산 2) 진입 2에 대한 청산은 2-1) 진입2 진입가 - 1틱에서 진입2 진입 전체 물량 전부 청산 2-2) CrossDown(c,var5) 에서 진입2 진입 전체 물량의 반 청산 2-3) CrossDown(c,var6) 에서 진입2 진입 전체 물량의 반 청산 저런 식으로 청산을 하려면 식을 어떻게 짜야 하는 건가요? -----------------------------------------------------------------
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-07-29 15:09:33

안녕하세요 예스스탁입니다. 1 청산함수에 진입명을 지정하면 해당 진입의 수량안에서만 청산됩니다. 진입명만 지정하면 해당이름으로 진입된 수량에 대해 전량 청산하고 진입명 지정후 청산수량을 지정하면 해당 이름의 진입에서 지정된 수량만 빼서 청산하게 됩니다. 2 청산함수는 기본적으로 진입의 횟수만큼 발동하게 됩니다. 분할청산이 각 1번만 발생할수 있도록 아래수식의 condition함수와 같이 변수로 적절히 제어하는 내용이 있어야 합니다. 3 input : 진입금액1(1000000),진입금액2(500000) ; var : 손절가(0); var : EP1(0),EV1(0),EP2(0),EV2(0); var : EV11(0),EV12(0),EV21(0),EV22(0); var1 = ma(C,5); var2 = ma(C,20); var3 = ma(C,60); var4 = ma(C,120); var5 = ma(C,240); var6 = ma(C,480); if crossup(c,var2) Then { buy("진입1",OnClose,def,floor(진입금액1/c)) ; } if crossup(c,var3) Then { buy("진입2",OnClose,def,floor(진입금액2/c)) ; } if MarketPosition == 1 then { if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "진입1" Then { EP1 = LatestExitPrice(0); EV1 = CurrentContracts-CurrentContracts[1]; EV11 = Floor(EV1*0.5); EV12 = EV1-EV11; } if LatestEntryName(0) == "진입2" Then { EP2 = LatestExitPrice(0); EV2 = CurrentContracts-CurrentContracts[1]; EV21 = Floor(EV2*0.5); EV22 = EV2-EV21; } if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "bx12" Then Condition12 = true; if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "bx13" Then Condition13 = true; if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "bx22" Then Condition22 = true; if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "bx23" Then Condition23 = true; if EP1 > 0 then { ExitLong("bx11",AtStop,EP1-PriceScale*1,"진입1"); if Condition12 == false and CrossDown(C,var3) Then ExitLong("bx12",OnClose,def,"진입1",EV11,1); if Condition13 == false and CrossDown(C,var4) Then ExitLong("bx13",OnClose,def,"진입1",EV12,1); } if EP2 > 0 then { ExitLong("bx21",AtStop,EP2-PriceScale*1,"진입2"); if Condition22 == false and CrossDown(C,var5) Then ExitLong("bx22",OnClose,def,"진입2",Floor(EV2*0.5),1); if Condition23 == false and CrossDown(C,var6) Then ExitLong("bx23",OnClose,def,"진입2",Floor(EV2*0.5),1); } } Else { EP1 = 0; EP2 = 0; EV2 = 0; EV2 = 0; Condition12 = false; Condition13 = false; Condition22 = false; Condition23 = false; } 즐거운 하루되세요 > 도롱이 님이 쓴 글입니다. > 제목 : 질문드립니다 > 안녕하세요. 이제 분할청산 식은 조금 감이 잡히는데, '다른 진입신호 허용 피라미딩' 으로 들어간 각각의 신호에 대하여 각각의 청산을 적용할 수 있는 방법도 있을까요? 역시 예를 들어 주시면 좀 더 쉽게 이해 가능할 것 같습니다.. ------------------------------------------------------ input : 진입금액1(1000000),진입금액2(500000) ; var : 손절가(0); var1 = ma(C,5); var2 = ma(C,20); var3 = ma(C,60); var4 = ma(C,120); var5 = ma(C,240); var6 = ma(C,480); if crossup(c,var2) Then { buy("진입1",OnClose,def,floor(진입금액1/c)) ; } if crossup(c,var3) Then { buy("진입2",OnClose,def,floor(진입금액2/c)) ; } ------------------------------------------------------ 위와 같이 진입1, 진입2 진입명으로 진입한 후 1) 진입 1에 대한 청산은 1-1) 진입1 진입가 - 1틱에서 진입1 진입 전체 물량 전부 청산 1-2) CrossDown(c,var3) 에서 진입1 진입 전체 물량의 반 청산 1-3) CrossDown(c,var4) 에서 진입1 진입 전체 물량의 반 청산 2) 진입 2에 대한 청산은 2-1) 진입2 진입가 - 1틱에서 진입2 진입 전체 물량 전부 청산 2-2) CrossDown(c,var5) 에서 진입2 진입 전체 물량의 반 청산 2-3) CrossDown(c,var6) 에서 진입2 진입 전체 물량의 반 청산 저런 식으로 청산을 하려면 식을 어떻게 짜야 하는 건가요? -----------------------------------------------------------------