커뮤니티

문의드립니다.

프로필 이미지
카르마다
2024-04-12 12:48:47
830
글번호 178511
답변완료

첨부 이미지

늘 고노에 감사드립니다. 1. 매수/매도 신호 나올 조건이 만족하더라도 해당봉이 50틱 이상을 넘어간다면 신호가 나오지 않다가 직후부터 5개봉 내에서 해당봉의 종가보다 10틱 더 위로(매수신호인 경우) 또는 더 아래로(매도신호인 경우) 갈 때 즉시 신호가 나오게 하는 수식을 부탁드립니다. 이 경우 봉의 종가가 아닌 50틱이상 나온 봉보다 10틱 위나 아래로 갈 경우 즉시입니다. 만일 해당봉 발생후 5개봉을 넘어가면 신호조건 만족시 신호가 나오면 됩니다. 2. 바로 전 86692번으로 문의한 내용입니다. 매도 진입후 진입봉의 그 다음봉이 50틱 이상 되돌림이 나오면 종가가 아니라 진입가 대비 해당봉의 50틱에서 즉시 손절하고 싶습니다. 아래는 답변을 참고해서 만든 청산식입니다. if MarketPosition == 1 Then{ if MarketPosition != 1 Then{ Exitlong("B_되돌림청",AtStop,NextBarOpen-PriceScale*50); } } if MarketPosition == -1 Then{ if MarketPosition != -1 Then ExitShort("S_되돌림청",AtStop,NextBarOpen+PriceScale*50); } } 스샷 이미지에 있듯이 매도 신호 발생후 진입가에서 다음봉에서 되돌림이 50틱이 넘었는데도 즉시 손절이 안되고 한참뒤 따로 잡아 둔 손절매 틱수에서 청산됩니다. 그럼 확인 부탁드립니다~
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-04-12 15:14:04

안녕하세요 예스스탁입니다. 1 if MarketPosition <= 0 Then { if 매수조건 Then { if abs(H-L) < PriceScale*50 Then { Buy("b1"); var1 = 0; Var2 = 0; } Else { var1 = Index; Var2 = C; } } if var2 > 0 and Index < var1+5 Then Buy("b2",AtStop,Var2+PriceScale*10); } if MarketPosition >= 0 Then { if 매도조건 Then { if abs(H-L) < PriceScale*50 Then { Sell("s1"); var3 = 0; Var4 = 0; } Else { var3 = Index; Var4 = C; } } if var4 > 0 and Index < var3+5 Then Sell("s2",AtStop,Var4-PriceScale*10); } 2 if MarketPosition != -1 Then ExitShort("S_되돌림청1",AtStop,NextBarOpen+PriceScale*50); 이전에 답변드린 내용은 위와 같습니다. 매도진입이 발생하면 값이 셋팅되서 첫봉에만 발생하기 위해 if MarketPosition != -1 Then라는 조건을 주었습니다. 청산은 진입이 발생하지 않으면 발생하지 않고 포지션 변경은 봉완성시로 판단하므로 매도청산이지만 조건으로 무포지션이거나 매수포지션일때로 지정한 내용입니다. 변형하신 수식에서 if MarketPosition == -1 Then라는 조건을 추가하셔서 발생을 하지 못하는 조건으로 만드셨습니다. #현재봉이 매도포지션이고 if MarketPosition == -1 Then{ #현재봉이 매도포지션이 아니고 if MarketPosition != -1 Then ExitShort("S_되돌림청",AtStop,NextBarOpen+PriceScale*50); } } 다른 조건 추가 없이 아래내용으로만 사용하셔야 합니다. if MarketPosition != 1 Then Exitlong("B_되돌림청",AtStop,NextBarOpen-PriceScale*50); if MarketPosition != -1 Then ExitShort("S_되돌림청",AtStop,NextBarOpen+PriceScale*50); 즐거운 하루되세요 > 카르마다 님이 쓴 글입니다. > 제목 : 문의드립니다. > 늘 고노에 감사드립니다. 1. 매수/매도 신호 나올 조건이 만족하더라도 해당봉이 50틱 이상을 넘어간다면 신호가 나오지 않다가 직후부터 5개봉 내에서 해당봉의 종가보다 10틱 더 위로(매수신호인 경우) 또는 더 아래로(매도신호인 경우) 갈 때 즉시 신호가 나오게 하는 수식을 부탁드립니다. 이 경우 봉의 종가가 아닌 50틱이상 나온 봉보다 10틱 위나 아래로 갈 경우 즉시입니다. 만일 해당봉 발생후 5개봉을 넘어가면 신호조건 만족시 신호가 나오면 됩니다. 2. 바로 전 86692번으로 문의한 내용입니다. 매도 진입후 진입봉의 그 다음봉이 50틱 이상 되돌림이 나오면 종가가 아니라 진입가 대비 해당봉의 50틱에서 즉시 손절하고 싶습니다. 아래는 답변을 참고해서 만든 청산식입니다. if MarketPosition == 1 Then{ if MarketPosition != 1 Then{ Exitlong("B_되돌림청",AtStop,NextBarOpen-PriceScale*50); } } if MarketPosition == -1 Then{ if MarketPosition != -1 Then ExitShort("S_되돌림청",AtStop,NextBarOpen+PriceScale*50); } } 스샷 이미지에 있듯이 매도 신호 발생후 진입가에서 다음봉에서 되돌림이 50틱이 넘었는데도 즉시 손절이 안되고 한참뒤 따로 잡아 둔 손절매 틱수에서 청산됩니다. 그럼 확인 부탁드립니다~