커뮤니티

수식 수정 부탁드립니다.

프로필 이미지
트레이더365
2021-04-10 02:54:04
1030
글번호 147872
답변완료
저는 국내선물 데이트레이딩(오버나이트를 하지 않음)을 하고자 하는데요, 지난번에 아래와 같이 수식 만들어주셨었습니다. 지난번 수식을 적용해보니, 기준시각 근처의 마지막 신호가 매수진입 또는 매도진입인 경우 당일 청산신호가 발생될때까지 포지션을 갖고가는 문제가 있었습니다. 기준시각의 승률, 손익비가 기준에 미달하는 경우 마지막 신호가 매수청산 또는 매도청산으로 끝나서 기준시각 전에 당일 포지션을 청산할 수 있도록 하는 수식을 부탁드립니다. 항상 감사드립니다. ------------------------------------------------------------------- 안녕하세요 예스스탁입니다. 1 input : 기준시각(100000),승률(45); var : Wcount(0),Count(0),Trade(False); if Bdate != Bdate[1] Then { WCount = 0; Count = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { count = count+1; if PositionProfit(1) > 0 Then { WCount = WCount + 1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if WCount/Count*100 < 승률 Then Trade = False; } if Trade == true Then { 진입청산수식 } 2 input : 기준시각(100000),손익비(1.5); var : WP(0),Wcount(0),LP(0),LCount(0),Trade(False); if Bdate != Bdate[1] Then { WP = 0; WCount = 0; LP = 0; LCount = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { if PositionProfit(1) > 0 Then { WP = WP + PositionProfit(1); WCount = WCount+1; } if PositionProfit(1) < 0 Then { LP = LP + abs(PositionProfit(1)); LCount = LCount+1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if (WP/WCount)/(LP/LCount) < 손익비 Then Trade = False; } if Trade == true Then { 진입청산수식 } 3 input : 기준시각(100000),승률(45),손익비(1.5); var : WP(0),Wcount(0),LP(0),LCount(0),Count(0),Trade(False); if Bdate != Bdate[1] Then { WP = 0; WCount = 0; LP = 0; LCount = 0; Count = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { count = count+1; if PositionProfit(1) > 0 Then { WP = WP + PositionProfit(1); WCount = WCount+1; } if PositionProfit(1) < 0 Then { LP = LP + abs(PositionProfit(1)); LCount = LCount+1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if WCount/Count*100 < 승률 Then Trade = False; if (WP/WCount)/(LP/LCount) < 손익비 Then Trade = False; } if Trade == true Then { 진입청산수식 } 즐거운 하루되세요 > 트레이더365 님이 쓴 글입니다. > 제목 : 수식 부탁드립니다. > 국내선물 거래하려고 하는데요. 1. 당일 오전 10시까지 승률이 45% 미만이면 당일 거래를 종료하고, 45% 이상이면 기존 수식대로 거래를 하도록 하는 수식을 부탁드립니다. 2. 당일 오전 10시까지 거래의 손익비가 1.5 미만이면 당일 거래를 종료하고, 1.5이상이면 기존 수식대로 거래를 하도록 하는 수식을 부탁드립니다. 3. 오전 10시까지 승률이 45% 미만 또는 손익비가 1.5 미만이면 당일거래를 종료하고, 그렇지 않으면 기존 수식대로 거래를 하도록 하는 수식을 부탁드립니다. 기준시각, 승률, 손익비는 외부변수로 처리 부탁드립니다. 항상 감사드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-04-12 10:39:59

안녕하세요 예스스탁입니다. 1 if Trade == true Then { 진입식 } if MarketPosition == 1 Then { 매수청산식 } if MarketPosition == 1 Then { 매도청산식 } 청산식을 별로로 if Trade == true Then 조건에 포함되지 않게 작성하시면 지정한 시간에 승률이나 손익비에 조건에 해당되면 이후의 진입만 제어하게 됩니다. 기준시각이후에 청산조건이 만족하면 청산이 발생합니다. 2 기준시각각에 승률, 손익비조건이 충족하고 포지션을 보유하고 있다면 청산하고자 하시면 아래와 같이 수정하시면 됩니다. 2-1 input : 기준시각(100000),승률(45); var : Wcount(0),Count(0),Trade(False); if Bdate != Bdate[1] Then { WCount = 0; Count = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { count = count+1; if PositionProfit(1) > 0 Then { WCount = WCount + 1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if WCount/Count*100 < 승률 Then { Trade = False; if MarketPosition == 1 Then ExitLong(); if MarketPosition == -1 Then ExitShort(); } } if Trade == true Then { 진입청산수식 } 2-2 input : 기준시각(100000),손익비(1.5); var : WP(0),Wcount(0),LP(0),LCount(0),Trade(False); if Bdate != Bdate[1] Then { WP = 0; WCount = 0; LP = 0; LCount = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { if PositionProfit(1) > 0 Then { WP = WP + PositionProfit(1); WCount = WCount+1; } if PositionProfit(1) < 0 Then { LP = LP + abs(PositionProfit(1)); LCount = LCount+1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if (WP/WCount)/(LP/LCount) < 손익비 Then { Trade = False; if MarketPosition == 1 Then ExitLong(); if MarketPosition == -1 Then ExitShort(); } } if Trade == true Then { 진입청산수식 } 2-3 input : 기준시각(100000),승률(45),손익비(1.5); var : WP(0),Wcount(0),LP(0),LCount(0),Count(0),Trade(False); if Bdate != Bdate[1] Then { WP = 0; WCount = 0; LP = 0; LCount = 0; Count = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { count = count+1; if PositionProfit(1) > 0 Then { WP = WP + PositionProfit(1); WCount = WCount+1; } if PositionProfit(1) < 0 Then { LP = LP + abs(PositionProfit(1)); LCount = LCount+1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if WCount/Count*100 < 승률 Then { Trade = False; if MarketPosition == 1 Then ExitLong(); if MarketPosition == -1 Then ExitShort(); } if (WP/WCount)/(LP/LCount) < 손익비 Then { Trade = False; if MarketPosition == 1 Then ExitLong(); if MarketPosition == -1 Then ExitShort(); } } if Trade == true Then { 진입청산수식 } 즐거운 하루되세요 > 트레이더365 님이 쓴 글입니다. > 제목 : 수식 수정 부탁드립니다. > 저는 국내선물 데이트레이딩(오버나이트를 하지 않음)을 하고자 하는데요, 지난번에 아래와 같이 수식 만들어주셨었습니다. 지난번 수식을 적용해보니, 기준시각 근처의 마지막 신호가 매수진입 또는 매도진입인 경우 당일 청산신호가 발생될때까지 포지션을 갖고가는 문제가 있었습니다. 기준시각의 승률, 손익비가 기준에 미달하는 경우 마지막 신호가 매수청산 또는 매도청산으로 끝나서 기준시각 전에 당일 포지션을 청산할 수 있도록 하는 수식을 부탁드립니다. 항상 감사드립니다. ------------------------------------------------------------------- 안녕하세요 예스스탁입니다. 1 input : 기준시각(100000),승률(45); var : Wcount(0),Count(0),Trade(False); if Bdate != Bdate[1] Then { WCount = 0; Count = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { count = count+1; if PositionProfit(1) > 0 Then { WCount = WCount + 1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if WCount/Count*100 < 승률 Then Trade = False; } if Trade == true Then { 진입청산수식 } 2 input : 기준시각(100000),손익비(1.5); var : WP(0),Wcount(0),LP(0),LCount(0),Trade(False); if Bdate != Bdate[1] Then { WP = 0; WCount = 0; LP = 0; LCount = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { if PositionProfit(1) > 0 Then { WP = WP + PositionProfit(1); WCount = WCount+1; } if PositionProfit(1) < 0 Then { LP = LP + abs(PositionProfit(1)); LCount = LCount+1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if (WP/WCount)/(LP/LCount) < 손익비 Then Trade = False; } if Trade == true Then { 진입청산수식 } 3 input : 기준시각(100000),승률(45),손익비(1.5); var : WP(0),Wcount(0),LP(0),LCount(0),Count(0),Trade(False); if Bdate != Bdate[1] Then { WP = 0; WCount = 0; LP = 0; LCount = 0; Count = 0; Trade = true; } if TotalTrades > TotalTrades[1] Then { count = count+1; if PositionProfit(1) > 0 Then { WP = WP + PositionProfit(1); WCount = WCount+1; } if PositionProfit(1) < 0 Then { LP = LP + abs(PositionProfit(1)); LCount = LCount+1; } } if (sDate != sDate[1] and sTime >= 기준시각) or (sDate == sDate[1] and sTime >= 기준시각 and sTime[1] < 기준시각) Then { if WCount/Count*100 < 승률 Then Trade = False; if (WP/WCount)/(LP/LCount) < 손익비 Then Trade = False; } if Trade == true Then { 진입청산수식 } 즐거운 하루되세요 > 트레이더365 님이 쓴 글입니다. > 제목 : 수식 부탁드립니다. > 국내선물 거래하려고 하는데요. 1. 당일 오전 10시까지 승률이 45% 미만이면 당일 거래를 종료하고, 45% 이상이면 기존 수식대로 거래를 하도록 하는 수식을 부탁드립니다. 2. 당일 오전 10시까지 거래의 손익비가 1.5 미만이면 당일 거래를 종료하고, 1.5이상이면 기존 수식대로 거래를 하도록 하는 수식을 부탁드립니다. 3. 오전 10시까지 승률이 45% 미만 또는 손익비가 1.5 미만이면 당일거래를 종료하고, 그렇지 않으면 기존 수식대로 거래를 하도록 하는 수식을 부탁드립니다. 기준시각, 승률, 손익비는 외부변수로 처리 부탁드립니다. 항상 감사드립니다.