커뮤니티

수식 확인 좀 부탁 드립니다.

프로필 이미지
산수유
2024-10-22 17:45:09
688
글번호 184495
답변완료

첨부 이미지

아래 매수재진입금지 식을 주셔서 그대로 기존식에 적용하였으나 첨부파일처럼 계속 재진입이 되네요. 원인을 다시 확인좀 부탁드립니다. var : BX(False); #영업일 변경 if Bdate != Bdate[1] Then { BX = False; } #청산발생 if TotalTrades > TotalTrades[1] Then { #당일 진입한 매수진입이고 #손절(setstoploss)로 청산되면 #BX = true; if Bdate[BarsSinceEntry(1)] == Bdate and MarketPosition(1) == 1 and IsExitName("StopLoss",1) == true Then { BX = true; } else#아니면 BX는 false BX = False; } #현재 무포지션이고 BX는 false이면 진입 #현재 무포지션이고 BX는 true이면 직전거래 진입가+10포인트보다 크거나 직전거래진입가-55보다 작으면 진입 #매도포지션일때 진입 if (MarketPosition == 0 and BX == False) or (MarketPosition == 0 and BX == true and (C >= EntryPrice(1)+10 or C <= EntryPrice(1)-55)) Or MarketPosition == -1 Then { if 매수조건 Then Buy(); }
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2024-10-23 13:40:56

안녕하세요 예스스탁입니다. 1 수식에 보시면 손절매로 언급하셔서 SetStopLoss로 청산된것을 기준으로 작성이 되어 청산명이 StopLoss로 되어 있습니다. 올리신 그림에는 청산명이 Bx1,be1이고 아마 청산시 손실을 본 청산 모두를 지청하시는 것 같습니다. 손실이 발생하면 다음진입을 제한하는 내용으로 변경해 드립니다. 2 var : BX(False); #영업일 변경 if Bdate != Bdate[1] Then { BX = False; } #청산발생 if TotalTrades > TotalTrades[1] Then { #당일 진입한 매수진입이고 #손절(setstoploss)로 청산되면 #BX = true; if Bdate[BarsSinceEntry(1)] == Bdate and MarketPosition(1) == 1 and PositionProfit(1) < 0 Then { BX = true; } else#아니면 BX는 false BX = False; } #현재 무포지션이고 BX는 false이면 진입 #현재 무포지션이고 BX는 true이면 직전거래 진입가+10포인트보다 크거나 직전거래진입가-55보다 작으면 진입 #매도포지션일때 진입 if (MarketPosition == 0 and BX == False) or (MarketPosition == 0 and BX == true and (C >= EntryPrice(1)+10 or C <= EntryPrice(1)-55)) Or MarketPosition == -1 Then { if 매수조건 Then Buy(); } 즐거운 하루되세요 > 산수유 님이 쓴 글입니다. > 제목 : 수식 확인 좀 부탁 드립니다. > 아래 매수재진입금지 식을 주셔서 그대로 기존식에 적용하였으나 첨부파일처럼 계속 재진입이 되네요. 원인을 다시 확인좀 부탁드립니다. var : BX(False); #영업일 변경 if Bdate != Bdate[1] Then { BX = False; } #청산발생 if TotalTrades > TotalTrades[1] Then { #당일 진입한 매수진입이고 #손절(setstoploss)로 청산되면 #BX = true; if Bdate[BarsSinceEntry(1)] == Bdate and MarketPosition(1) == 1 and IsExitName("StopLoss",1) == true Then { BX = true; } else#아니면 BX는 false BX = False; } #현재 무포지션이고 BX는 false이면 진입 #현재 무포지션이고 BX는 true이면 직전거래 진입가+10포인트보다 크거나 직전거래진입가-55보다 작으면 진입 #매도포지션일때 진입 if (MarketPosition == 0 and BX == False) or (MarketPosition == 0 and BX == true and (C >= EntryPrice(1)+10 or C <= EntryPrice(1)-55)) Or MarketPosition == -1 Then { if 매수조건 Then Buy(); }
프로필 이미지

산수유

2024-10-23 16:12:58

너무 감사드립니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 확인 좀 부탁 드립니다. > 안녕하세요 예스스탁입니다. 1 수식에 보시면 손절매로 언급하셔서 SetStopLoss로 청산된것을 기준으로 작성이 되어 청산명이 StopLoss로 되어 있습니다. 올리신 그림에는 청산명이 Bx1,be1이고 아마 청산시 손실을 본 청산 모두를 지청하시는 것 같습니다. 손실이 발생하면 다음진입을 제한하는 내용으로 변경해 드립니다. 2 var : BX(False); #영업일 변경 if Bdate != Bdate[1] Then { BX = False; } #청산발생 if TotalTrades > TotalTrades[1] Then { #당일 진입한 매수진입이고 #손절(setstoploss)로 청산되면 #BX = true; if Bdate[BarsSinceEntry(1)] == Bdate and MarketPosition(1) == 1 and PositionProfit(1) < 0 Then { BX = true; } else#아니면 BX는 false BX = False; } #현재 무포지션이고 BX는 false이면 진입 #현재 무포지션이고 BX는 true이면 직전거래 진입가+10포인트보다 크거나 직전거래진입가-55보다 작으면 진입 #매도포지션일때 진입 if (MarketPosition == 0 and BX == False) or (MarketPosition == 0 and BX == true and (C >= EntryPrice(1)+10 or C <= EntryPrice(1)-55)) Or MarketPosition == -1 Then { if 매수조건 Then Buy(); } 즐거운 하루되세요 > 산수유 님이 쓴 글입니다. > 제목 : 수식 확인 좀 부탁 드립니다. > 아래 매수재진입금지 식을 주셔서 그대로 기존식에 적용하였으나 첨부파일처럼 계속 재진입이 되네요. 원인을 다시 확인좀 부탁드립니다. var : BX(False); #영업일 변경 if Bdate != Bdate[1] Then { BX = False; } #청산발생 if TotalTrades > TotalTrades[1] Then { #당일 진입한 매수진입이고 #손절(setstoploss)로 청산되면 #BX = true; if Bdate[BarsSinceEntry(1)] == Bdate and MarketPosition(1) == 1 and IsExitName("StopLoss",1) == true Then { BX = true; } else#아니면 BX는 false BX = False; } #현재 무포지션이고 BX는 false이면 진입 #현재 무포지션이고 BX는 true이면 직전거래 진입가+10포인트보다 크거나 직전거래진입가-55보다 작으면 진입 #매도포지션일때 진입 if (MarketPosition == 0 and BX == False) or (MarketPosition == 0 and BX == true and (C >= EntryPrice(1)+10 or C <= EntryPrice(1)-55)) Or MarketPosition == -1 Then { if 매수조건 Then Buy(); }