커뮤니티

문의드립니다.

프로필 이미지
종호
2025-10-20 15:35:09
51
글번호 227052
답변완료
if marketposition == 1 then
{
    var: barSinceEntry(0);
    barSinceEntry = BarsSinceEntry;

    # 조건1: 진입봉 저가 이하로 내려가면 즉시 시장가 청산
    if L <= L[barSinceEntry] then
    {
        ExitLong("bx1", atmarket);
        buy1 = 0;
        buy2 = 0;
    }};

봉안에서 현재봉내애서 전봉 저가를 하향 이탈 하자마자 봉내 즉시 청산 되도록 하고 싶습니다.
위와같이 해 보았는데 현재봉 청산이 안되고 다음봉 시가 청산이 되는 것 같습니다. 현재봉에서 즉시
청산 되도록 부탁
드립니다.
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2025-10-20 16:27:43

안녕하세요 예스스탁입니다. if marketposition == 1 then {   if L <= L[BarsSinceEntry] then   {   ExitLong("bx1",AtStop,L[BarsSinceEntry]);   buy1 = 0;   buy2 = 0;   } } 올리신 수식은 봉완성시 저가가 진입봉의 저가 이하이면 다음봉 시가에 청산하는 내용입니다. 미완성시 즉시 청산하고자 하시면 위와 같이 작성해 사용하시면 됩니다. onclose타입의 진입일 경우 marketposition이 신호표시봉 다음봉부터 변경되므로 해당청산이 진입봉 다음봉에 나오지 못합니다. 그러므로 진입봉 다음봉에 나올수 있는 내용도 아래와 같이 추가해야 합니다. if marketposition == 1 then { if L <= L[BarsSinceEntry] then { ExitLong("bx1",AtStop,L[BarsSinceEntry]); buy1 = 0; buy2 = 0; } } Else { ExitLong("bx2",AtStop,L); } 즐거운 하루되세요
프로필 이미지

예스스탁 예스스탁 답변

2025-10-20 17:00:58

안녕하세요 예스스탁입니다. Buy1,buy2가 0이 되는 것은 매수포지션 청산발생으로 조건을 변경하고 bx1에 if L <= L[BarsSinceEntry] then 조건을 삭제합니다. if marketposition == 1 then { ExitLong("bx1",AtStop,L[BarsSinceEntry]); } Else { ExitLong("bx2",AtStop,L); } if TotalTrades > TotalTrades[1] Then { buy1 = 0; buy2 = 0; } 즐거운 하루되세요