커뮤니티

익절조건식 오류검증

프로필 이미지
조민철
2016-08-06 09:02:19
135
글번호 100786
답변완료
항상 감사드립니다 아래 조건식에서 오류가 나는것 같습니다 당일최대이익 102틱 ,최대손실 45틱으로 설정이 되어있는데 SL 신호가 -24틱(-45틱이 정상) SP 신호가 -45틱(-102틱이 정상) 지점에서 발생하고 있습니다 오류수정 부탁드립니다 ######################### ##### 당일익절 설정 ##### ######################### input : 당일수익틱수(102),당일손실틱수(45); var : NP(0),PreNP(0),dayPL(0),DollerToTick(0),당일수익(0),당일손실(0); NP = NetProfit; 당일수익 = PriceScale*당일수익틱수; 당일손실 = PriceScale*당일손실틱수; if stime == 170000 or (stime > 170000 and stime[1] < 170000) then PreNP = NP[1]; #당일 손익(포인트) DayPL = NetProfit-PreNP ; /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ ### 동일방향 재진입금지/전일 마지막신호와 무관하게 진입 ### var : entrycnt(0),Xcond(false); if stime == 170000 or (stime > 170000 and stime[1] < 170000) Then{ # 현지시간_뉴욕 17:00 장시작 # Entrycnt = 0; Xcond = false; } if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then ### 동일방향 재진입금지 설정식 ### Entrycnt = Entrycnt+1; if TotalTrades > TotalTrades[1] and (IsExitName("BP",1) or IsExitName("BL",1) or IsExitName("SP",1) or IsExitName("SL",1)) Then Xcond = true; if DayOfWeek(bdate) <= 5 and (stime >= 170000 or stime < 170000) and Xcond == false Then{ ### 일요일 17:00 ~ 금요일 매매and 매수매도조건식 } ########################################## ##### 당일수익,당일손실 조건청산 ##### ########################################## if MarketPosition == 1 Then{ ExitLong("BP",atlimit,EntryPrice+당일수익-dayPL); ExitLong("BL",AtStop,EntryPrice-당일손실-dayPL); } if MarketPosition == -1 Then{ ExitShort("SP",atlimit,EntryPrice-당일수익+dayPL); ExitShort("SL",AtStop,EntryPrice+당일손실+dayPL); } 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-08-08 09:53:44

안녕하세요 예스스탁입니다. 17시를 기준으로 발생한 신호의 총 누적수익이 102틱, 누적손실이 45틱이면 해당 청산이 발생하고 당일 진입을 중단하는 식입니다. 해당 계산식과 내용이 맞습니다. 해당식은 당일누적 수익과 손실입니다. 즐거운 하루되세요 > 조민철 님이 쓴 글입니다. > 제목 : 익절조건식 오류검증 > 항상 감사드립니다 아래 조건식에서 오류가 나는것 같습니다 당일최대이익 102틱 ,최대손실 45틱으로 설정이 되어있는데 SL 신호가 -24틱(-45틱이 정상) SP 신호가 -45틱(-102틱이 정상) 지점에서 발생하고 있습니다 오류수정 부탁드립니다 ######################### ##### 당일익절 설정 ##### ######################### input : 당일수익틱수(102),당일손실틱수(45); var : NP(0),PreNP(0),dayPL(0),DollerToTick(0),당일수익(0),당일손실(0); NP = NetProfit; 당일수익 = PriceScale*당일수익틱수; 당일손실 = PriceScale*당일손실틱수; if stime == 170000 or (stime > 170000 and stime[1] < 170000) then PreNP = NP[1]; #당일 손익(포인트) DayPL = NetProfit-PreNP ; /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ ### 동일방향 재진입금지/전일 마지막신호와 무관하게 진입 ### var : entrycnt(0),Xcond(false); if stime == 170000 or (stime > 170000 and stime[1] < 170000) Then{ # 현지시간_뉴욕 17:00 장시작 # Entrycnt = 0; Xcond = false; } if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then ### 동일방향 재진입금지 설정식 ### Entrycnt = Entrycnt+1; if TotalTrades > TotalTrades[1] and (IsExitName("BP",1) or IsExitName("BL",1) or IsExitName("SP",1) or IsExitName("SL",1)) Then Xcond = true; if DayOfWeek(bdate) <= 5 and (stime >= 170000 or stime < 170000) and Xcond == false Then{ ### 일요일 17:00 ~ 금요일 매매and 매수매도조건식 } ########################################## ##### 당일수익,당일손실 조건청산 ##### ########################################## if MarketPosition == 1 Then{ ExitLong("BP",atlimit,EntryPrice+당일수익-dayPL); ExitLong("BL",AtStop,EntryPrice-당일손실-dayPL); } if MarketPosition == -1 Then{ ExitShort("SP",atlimit,EntryPrice-당일수익+dayPL); ExitShort("SL",AtStop,EntryPrice+당일손실+dayPL); } 감사합니다