커뮤니티

피라미딩 청산

프로필 이미지
대가들의매매
2022-09-04 20:49:59
1060
글번호 161962
답변완료

첨부 이미지

안녕하세요? 하나의 프로그램에 두개의 Sell 전략이 있을경우 S1 S2 청산로직이 다를 경우 문제가 있는것 같네요. - 예를 들어 Sell 이 S1 S2 두개를 피라미딩으로 진입하게 되면 - 그후 하나가 청산하면 두번째 진입이 청산될때 대부분 S1 청산로직으로 청산됩니다. S1이 익절하고 청산됬는대 나머지 진입(s2)이 대부분 S1 청산로직으로 청산됩니다. S2 청산로직으로 청산할수 있나요? 첨부 파일에서 s1 이 청산될때 s-atr 청산명으로 청산되었는데.. s2 가 청산될때 또다시 s-atr 청산으로 청산됬습니다. S2는 S2-ATR 청산명으로 청산되어야 합니다. 청산로직 if IsEntryName("S1") then { If Data1(C) > Data1(Lowest(C, BarsSinceEntry+1) + Data1(ATR(NATR)) * ATRStopS) Then ExitShort("S-ATR",AtMarket,def,DEF,TdQ); } if IsEntryName("S2") then { If Data1(C) > Data1(Lowest(C, BarsSinceEntry+1) + Data1(ATR(NATR2)) * ATRStopS2) Then exitshort("S2-ATR",AtMarket,def,DEF,TdQ); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-09-05 11:32:45

안녕하세요 예스스탁입니다. 각 청산은 진입의 횟수만큼 동작을 합니다. 2번 진입을 하면 각 청산함수도 2번씩 동작할 수 있습니다. 청산함수에 4번째 매개변수가 진입명을 지정하는 옵션입니다. 함수안에 진입명을 지정하면 청산 조건만족시 해당진입명으로 진입이 있을때만 해당진입으로 들어간 수량 전량으로 청산이 됩니다. if MarketPosition == -1 Then { If Data1(C) > Data1(Lowest(C, BarsSinceEntry+1) + Data1(ATR(NATR)) * ATRStopS) Then ExitShort("S-ATR",AtMarket,def,"S1"); If Data1(C) > Data1(Lowest(C, BarsSinceEntry+1) + Data1(ATR(NATR2)) * ATRStopS2) Then exitshort("S2-ATR",AtMarket,def,"S2"); } 즐거운 하루되세요 > 대가들의매매 님이 쓴 글입니다. > 제목 : 피라미딩 청산 > 안녕하세요? 하나의 프로그램에 두개의 Sell 전략이 있을경우 S1 S2 청산로직이 다를 경우 문제가 있는것 같네요. - 예를 들어 Sell 이 S1 S2 두개를 피라미딩으로 진입하게 되면 - 그후 하나가 청산하면 두번째 진입이 청산될때 대부분 S1 청산로직으로 청산됩니다. S1이 익절하고 청산됬는대 나머지 진입(s2)이 대부분 S1 청산로직으로 청산됩니다. S2 청산로직으로 청산할수 있나요? 첨부 파일에서 s1 이 청산될때 s-atr 청산명으로 청산되었는데.. s2 가 청산될때 또다시 s-atr 청산으로 청산됬습니다. S2는 S2-ATR 청산명으로 청산되어야 합니다. 청산로직 if IsEntryName("S1") then { If Data1(C) > Data1(Lowest(C, BarsSinceEntry+1) + Data1(ATR(NATR)) * ATRStopS) Then ExitShort("S-ATR",AtMarket,def,DEF,TdQ); } if IsEntryName("S2") then { If Data1(C) > Data1(Lowest(C, BarsSinceEntry+1) + Data1(ATR(NATR2)) * ATRStopS2) Then exitshort("S2-ATR",AtMarket,def,DEF,TdQ); }