커뮤니티

다중매수 청산 관련 문의 드립니다

프로필 이미지
뱅갈로장금이
2010-11-04 10:12:36
984
글번호 33303
답변완료
매번 감사합니다. 매수 진입을 1계약씩 4번에 걸쳐 진입을 했습니다. Buy("b1",AtLimit,value1); //1번 Buy("b2",AtLimit,value2); //2번 Buy("b3",AtLimit,value3); //3번 Buy("b4",AtLimit,value4); //4번 매수 진입가에서 0.20포인트를 수익을 내면 순차적으로 청산을 시키려고 합니다. b1의 목표가가 value5, b2의 목표가가 value6, b3의 목표가가 value7, b4의 목표가가 value8 라고 할때, b1~b4까지 순차적으로 청산하는 방법이 궁금합니다. 제가 구현한 방법은 아래와 같습니다. if MarketPosition == 1 Then { if (entryname == "b1") Then { ExitLong("bx1",AtStop,Value1); } if (entryname == "b2") Then { ExitLong("bx2",AtStop,Value1); } if (entryname == "b3") Then { ExitLong("bx3",AtStop,Value1); } if (entryname == "b4") Then { ExitLong("bx4",AtStop,Value1); } 이렇게 하니깐, 진입은 b1~b4 까지 되는데 청산은 b1만 호출이 되거나 청산이 안되는 경우도 발생을 했습니다. 순차적으로 b1~b4까지 청산을 시킬려면, 단순히 ExitLong을 4번 호출하면 되는지, 아니면 다른 방법이 있는지 궁금합니다.
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2010-11-04 13:25:42

안녕하세요 예스스탁입니다. 분할매수/분할청산하는 경우는 경우의 수를 파악하여 식을 작성해서 해당 내용만으로는 정확한 답변을 드리기 어렵습니다. if MarketPosition == 1 Then{ if H < value5 then ExitLong("bx1",AtLimit,value5,"b1"); if H < value6 then ExitLong("bx2",AtLimit,value6,"b2"); if H < value7 then ExitLong("bx3",AtLimit,value7,"b3"); if H < value8 then ExitLong("bx4",AtLimit,value8,"b4"); } 시스템에서 진입명칭은 포지션이 시작하는 첫신호의 명칭만이 리턴됩니다. 그러므로 청산식안에 명칭을 사용해 주시거나 혹은 식에서 변수를 이용해 지정해야 합니다. 위식을 참고하시고 원하시는 내용이 제어가 안되시면 식 전체를 올려주시기 바랍니다. 즐거운 하루되세요 > 뱅갈로장금이 님이 쓴 글입니다. > 제목 : 다중매수 청산 관련 문의 드립니다 > 매번 감사합니다. 매수 진입을 1계약씩 4번에 걸쳐 진입을 했습니다. Buy("b1",AtLimit,value1); //1번 Buy("b2",AtLimit,value2); //2번 Buy("b3",AtLimit,value3); //3번 Buy("b4",AtLimit,value4); //4번 매수 진입가에서 0.20포인트를 수익을 내면 순차적으로 청산을 시키려고 합니다. b1의 목표가가 value5, b2의 목표가가 value6, b3의 목표가가 value7, b4의 목표가가 value8 라고 할때, b1~b4까지 순차적으로 청산하는 방법이 궁금합니다. 제가 구현한 방법은 아래와 같습니다. if MarketPosition == 1 Then { if (entryname == "b1") Then { ExitLong("bx1",AtStop,Value1); } if (entryname == "b2") Then { ExitLong("bx2",AtStop,Value1); } if (entryname == "b3") Then { ExitLong("bx3",AtStop,Value1); } if (entryname == "b4") Then { ExitLong("bx4",AtStop,Value1); } 이렇게 하니깐, 진입은 b1~b4 까지 되는데 청산은 b1만 호출이 되거나 청산이 안되는 경우도 발생을 했습니다. 순차적으로 b1~b4까지 청산을 시킬려면, 단순히 ExitLong을 4번 호출하면 되는지, 아니면 다른 방법이 있는지 궁금합니다.
프로필 이미지

뱅갈로장금이

2010-11-04 13:48:32

고맙습니다. 도움 많이되었습니다.