커뮤니티
다중매수 청산 관련 문의 드립니다
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
고맙습니다.
도움 많이되었습니다.
다음글
이전글