커뮤니티

분할청산 추가 질문 드립니다...

프로필 이미지
일목초인
2009-07-08 17:31:29
559
글번호 23319
답변완료
아래의 식처럼 하나의 조건으로 선물 3계약을 동시에 매수하고 청산식은 3종류로 하여 각각 1계약씩 청산하고자 합니다. 문제는 스톱청산을 봉완성 기준이 아니라 즉시 청산으로 각각 다르게 적용하고 싶은데 아래의 식이 맞는지 문의드립니다. 실제 적용한 결과 SetStopLoss(0.5, PointStop)에서 3계약이 모두 청산되는 거 같아서... 부탁드립니다....^^ // B.U.Y if marketposition()==0 then{ if cond1 then buy("B1",Atmarket,def,3); } // E.X.I.T if IsEntryName("B1") && MarketPosition == 1 Then{ if Cond2 && Condition1 == false Then{ exitlong("B1-1",Atmarket,def,"",1,1); SetStopLoss(0.5, PointStop); Condition1 = true; } if Cond3 && Condition2 == false Then{ exitlong("B1-2",Atmarket,def,"",1,1); SetStopLoss(0.7, PointStop); Condition2 = true; } if Cond4 && Condition3 == false Then{ exitlong("B1-3",Atmarket,def,"",1,1); SetStopLoss(0.9, PointStop); Condition3 = true; } } Else{ Condition1 = false; Condition2 = false; Condition3 = false; }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2009-07-08 23:27:18

안녕하세요 예스스탁입니다. 진입이 파라미딩으로 3번 진입되어 3계약이 되었다면 손절매도 개별 진입을 인지해 1계약씩 청산되지만 진입이 한번에 3계약이 들어갔으므로 모두 청산이 됩니다. 식을 풀어서 작성하셔야 합니다. SetStopLoss함수를 각 청산조건식 안에 넣으신 정확한 이유를 모르겠습니다. 가격이 하락하면 순차적으로 한계약씩 청산할 의도셨다면 아래와 같은 식을 사용하시면 됩니다. // E.X.I.T if IsEntryName("B1") && MarketPosition == 1 Then{ if Cond2 && Condition1 == false Then{ exitlong("B1-1",Atmarket,def,"",1,1); Condition1 = true; } if Cond3 && Condition2 == false Then{ exitlong("B1-2",Atmarket,def,"",1,1); Condition2 = true; } if Cond4 && Condition3 == false Then{ exitlong("B1-3",Atmarket,def,"",1,1); Condition3 = true; } } Else{ Condition1 = false; Condition2 = false; Condition3 = false; } if MarketPosition == 1 Then{ if CurrentContracts == 3 Then exitlong("bx1",AtStop,EntryPrice-0.5,"",1,1); if CurrentContracts == 3 Then exitlong("bx2",AtStop,EntryPrice-0.7,"",1,1); if CurrentContracts == 3 Then exitlong("bx3",AtStop,EntryPrice-0.9,"",1,1); } 즐거운 하루되세요 > 일목초인 님이 쓴 글입니다. > 제목 : 분할청산 추가 질문 드립니다... > 아래의 식처럼 하나의 조건으로 선물 3계약을 동시에 매수하고 청산식은 3종류로 하여 각각 1계약씩 청산하고자 합니다. 문제는 스톱청산을 봉완성 기준이 아니라 즉시 청산으로 각각 다르게 적용하고 싶은데 아래의 식이 맞는지 문의드립니다. 실제 적용한 결과 SetStopLoss(0.5, PointStop)에서 3계약이 모두 청산되는 거 같아서... 부탁드립니다....^^ // B.U.Y if marketposition()==0 then{ if cond1 then buy("B1",Atmarket,def,3); } // E.X.I.T if IsEntryName("B1") && MarketPosition == 1 Then{ if Cond2 && Condition1 == false Then{ exitlong("B1-1",Atmarket,def,"",1,1); SetStopLoss(0.5, PointStop); Condition1 = true; } if Cond3 && Condition2 == false Then{ exitlong("B1-2",Atmarket,def,"",1,1); SetStopLoss(0.7, PointStop); Condition2 = true; } if Cond4 && Condition3 == false Then{ exitlong("B1-3",Atmarket,def,"",1,1); SetStopLoss(0.9, PointStop); Condition3 = true; } } Else{ Condition1 = false; Condition2 = false; Condition3 = false; }