커뮤니티

수식작성

프로필 이미지
푸른
2021-05-08 08:05:46
939
글번호 148823
답변완료
input : StartTime(080000),EndTime(035000),진입횟수(5),익절틱수(120),손절틱수(25); var : Tcond(false),entry(0),T(0),S(0); if StartTime < EndTime Then { SetStopEndofday(EndTime); } Else { if sDate != sDate[1] Then SetStopEndofday(EndTime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { if StartTime > EndTime Then SetStopEndofday(0); Tcond = true; entry = 0; T = 0; } if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if Tcond == true Then { if MarketPosition == 0 and entry < 진입횟수 Then { if T == 0 and C > O Then { T = 1; S = C; } if T == 0 and C < O Then { T = 1; S = C; } if T == 1 Then Buy("b",AtLimit,S-PriceScale*30); if T == -1 Then Sell("s",AtLimit,S+PriceScale*30); } if MarketPosition != 0 Then T = 0; } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); ---------------- 위 수식어는 72340번의 예스스탁의 수식어 답변입니다. sell 진입신호가 예비 포함 2가지 다 전혀 잡히지 않습니다. 기존 진입시 저점과 숫자갭이 상존해서 수식작성을 잘 못해서 부탁 드린건데 답변 확인하고 저렇게 된다는게 참 놀라웠어요. 추가로 강제청산중 허용범위 100봉 이내 최소가격변화 80틱의 수식어를 포함 하고자 합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-05-10 10:49:20

안녕하세요 예스스탁입니다. 기존수식은 무포지션에서 양봉에 매수진입신호, 음봉에 매도진입신호입니다. 이후 지정한 틱수에 손절/익절입니다. 수정한 식이 기존수식의 내용을 따라가 무포지션에서 최초 발생한 봉을 기준으로 하게 되어 있습니다. 무포지션일때 최초 양봉이 발생하면 -30틱 하락만 감시하고 되고 음봉이 발생하면 +30틱 상승만 감시하게 됩니다.지정한 틱수의 변수가 없으면 신호발생이 없게 됩니다. 무포지션에서 최근 발생한 양봉과 최근 발생한 음봉 기준으로 변경해 드립니다. 각각 감시해서 먼저 만족한 조건으로 진입하게 수정해 드립니다. input : StartTime(080000),EndTime(035000),진입횟수(5),익절틱수(120),손절틱수(25); var : Tcond(false),entry(0),P(0),N(0); if StartTime < EndTime Then { SetStopEndofday(EndTime); } Else { if sDate != sDate[1] Then SetStopEndofday(EndTime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { if StartTime > EndTime Then SetStopEndofday(0); Tcond = true; entry = 0; P = 0; N = 0; } if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if Tcond == true Then { if MarketPosition == 0 and entry < 진입횟수 Then { if C > O Then { P = C; } if C < O Then { N = C; } if P > 0 Then Buy("b",AtLimit,P-PriceScale*30); if N > 0 Then Sell("s",AtLimit,N+PriceScale*30); } if MarketPosition != 0 Then { P = 0; N = 0; } } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); SetStopInactivity(PriceScale*80,100,PointStop); 즐거운 하루되세요 > 푸른 님이 쓴 글입니다. > 제목 : 수식작성 > input : StartTime(080000),EndTime(035000),진입횟수(5),익절틱수(120),손절틱수(25); var : Tcond(false),entry(0),T(0),S(0); if StartTime < EndTime Then { SetStopEndofday(EndTime); } Else { if sDate != sDate[1] Then SetStopEndofday(EndTime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { if StartTime > EndTime Then SetStopEndofday(0); Tcond = true; entry = 0; T = 0; } if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if Tcond == true Then { if MarketPosition == 0 and entry < 진입횟수 Then { if T == 0 and C > O Then { T = 1; S = C; } if T == 0 and C < O Then { T = 1; S = C; } if T == 1 Then Buy("b",AtLimit,S-PriceScale*30); if T == -1 Then Sell("s",AtLimit,S+PriceScale*30); } if MarketPosition != 0 Then T = 0; } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); ---------------- 위 수식어는 72340번의 예스스탁의 수식어 답변입니다. sell 진입신호가 예비 포함 2가지 다 전혀 잡히지 않습니다. 기존 진입시 저점과 숫자갭이 상존해서 수식작성을 잘 못해서 부탁 드린건데 답변 확인하고 저렇게 된다는게 참 놀라웠어요. 추가로 강제청산중 허용범위 100봉 이내 최소가격변화 80틱의 수식어를 포함 하고자 합니다.