커뮤니티

문의 드립니다

프로필 이미지
푸른
2025-03-06 21:01:06
322
글번호 188875
답변완료
아래 3가지 수식어의 수정을 부탁드립니다. 1. 1선 5선 데드크로스 이후 매수 진입신호금지 및 손절 100틱 input : StartTime(80000),EndTime(40000); var : Tcond(false); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == 1 and MarketPosition <= 0 Then buy("b0",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b1",AtStop,LL+(HH-LL)*1.310); if T == 1 and MarketPosition <= 0 Then buy("b2",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b3",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b4",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b5",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 Then buy("b6",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b7",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b8",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 Then buy("b00",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b11",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition <= 0 Then buy("b22",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b33",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b44",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b55",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 Then buy("b66",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b77",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b88",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b99",AtStop,LL+(HH-LL)*0.100); } 2. 1선 5선 골든크로스 이후 매도 진입신호금지 및 손절 100틱 input : StartTime(80000),EndTime(40000); var : Tcond(false); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == -1 and MarketPosition >= 0 Then Sell("s0",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s1",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s2",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s3",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s4",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s5",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s6",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s7",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s8",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s00",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s11",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s22",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s33",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s44",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s55",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s66",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s77",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s88",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s99",AtStop,LL+(HH-LL)*0.100); } 3. 1선 5선 골든크로스 이후 매도 진입신호금지 및 손절 100틱 1선 5선 데드크로스 이후 매수 진입신호금지 및 손절 100틱 input : StartTime(190000),EndTime(40000); var : Tcond(false); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == 1 and MarketPosition <= 0 Then buy("b0",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then buy("b1",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition >= 0 Then Sell("s0",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s1",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b2",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b3",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s2",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s3",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b4",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b5",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s4",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s5",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b6",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b7",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s6",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s7",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b8",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s8",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s9",AtStop,LL+(HH-LL)*0.100); if T == 1 and MarketPosition <= 0 Then buy("b00",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then buy("b11",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition >= 0 Then Sell("s00",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s11",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b22",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b33",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s22",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s33",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b44",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b55",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s44",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s55",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b66",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b77",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s66",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s77",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b88",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b99",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s88",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s99",AtStop,LL+(HH-LL)*0.100); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-03-10 09:33:58

안녕하세요 예스스탁입니다. 1 input : StartTime(80000),EndTime(40000); input : P1(1),P2(5),손절틱수(100); var : Tcond(false),mav1(0),mav2(0); mav1 = ma(C,P1); mav2 = ma(C,P2); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b0",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b1",AtStop,LL+(HH-LL)*1.310); if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b2",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b3",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b4",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b5",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b6",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b7",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b8",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b00",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b11",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b22",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b33",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b44",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b55",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b66",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b77",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b88",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b99",AtStop,LL+(HH-LL)*0.100); } SetStopLoss(PriceScale*손절틱수,PointStop); 2 input : StartTime(80000),EndTime(40000); input : P1(1),P2(5),손절틱수(100); var : Tcond(false); var : mav1(0),mav2(0); mav1 = ma(C,P1); mav2 = ma(C,P2); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s0",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s1",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s2",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s3",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s4",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s5",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s6",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s7",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s8",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s00",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s11",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s22",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s33",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s44",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s55",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s66",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s77",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s88",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s99",AtStop,LL+(HH-LL)*0.100); } SetStopLoss(PriceScale*손절틱수,PointStop); 3 input : StartTime(190000),EndTime(40000); input : P1(1),P2(5),손절틱수(100); var : Tcond(false); var : mav1(0),mav2(0); mav1 = ma(C,P1); mav2 = ma(C,P2); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b0",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b1",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s0",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s1",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b2",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b3",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s2",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s3",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b4",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b5",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 and mav1 > mav2 Then Sell("s4",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s5",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b6",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b7",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s6",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s7",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b8",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s8",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s9",AtStop,LL+(HH-LL)*0.100); if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b00",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b11",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s00",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s11",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b22",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b33",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s22",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s33",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b44",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b55",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s44",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s55",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b66",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b77",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s66",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s77",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 and mav1 > mav2 Then buy("b88",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 and mav1 > mav2 Then buy("b99",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 and mav1 < mav2 Then Sell("s88",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 and mav1 < mav2 Then Sell("s99",AtStop,LL+(HH-LL)*0.100); } SetStopLoss(PriceScale*손절틱수,PointStop); 즐거운 하루되세요 > 푸른 님이 쓴 글입니다. > 제목 : 문의 드립니다 > 아래 3가지 수식어의 수정을 부탁드립니다. 1. 1선 5선 데드크로스 이후 매수 진입신호금지 및 손절 100틱 input : StartTime(80000),EndTime(40000); var : Tcond(false); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == 1 and MarketPosition <= 0 Then buy("b0",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b1",AtStop,LL+(HH-LL)*1.310); if T == 1 and MarketPosition <= 0 Then buy("b2",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b3",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b4",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b5",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 Then buy("b6",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b7",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b8",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 Then buy("b00",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b11",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition <= 0 Then buy("b22",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b33",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b44",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b55",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition <= 0 Then buy("b66",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b77",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition <= 0 Then buy("b88",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then ExitLong("b99",AtStop,LL+(HH-LL)*0.100); } 2. 1선 5선 골든크로스 이후 매도 진입신호금지 및 손절 100틱 input : StartTime(80000),EndTime(40000); var : Tcond(false); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == -1 and MarketPosition >= 0 Then Sell("s0",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s1",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s2",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s3",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s4",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s5",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s6",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s7",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s8",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s00",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s11",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s22",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s33",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s44",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s55",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s66",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s77",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition >= 0 Then Sell("s88",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then ExitShort("s99",AtStop,LL+(HH-LL)*0.100); } 3. 1선 5선 골든크로스 이후 매도 진입신호금지 및 손절 100틱 1선 5선 데드크로스 이후 매수 진입신호금지 및 손절 100틱 input : StartTime(190000),EndTime(40000); var : Tcond(false); IF Endtime > starttime 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 { Tcond = true; IF Endtime <= starttime Then { SetStopEndofday(0); } } var : HH(0),LL(0),MM(0),t(0); HH = DayHigh; LL = DayLow; MM = (HH+LL)/2; if bdate != Bdate[1] Then T = 0; Else { if CrossUp(H,MM) Then T = 1; if CrossDown(L,MM) Then T = -1; if T == 1 and MarketPosition <= 0 Then buy("b0",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then buy("b1",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition >= 0 Then Sell("s0",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s1",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b2",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b3",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s2",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s3",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b4",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b5",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s4",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s5",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b6",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b7",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s6",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s7",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b8",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b9",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s8",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s9",AtStop,LL+(HH-LL)*0.100); if T == 1 and MarketPosition <= 0 Then buy("b00",AtStop,LL+(HH-LL)*0.110); if MarketPosition == 1 and MaxEntries == 1 Then buy("b11",AtStop,LL+(HH-LL)*1.310); if T == -1 and MarketPosition >= 0 Then Sell("s00",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s11",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b22",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b33",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s22",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s33",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b44",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b55",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s44",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s55",AtStop,LL+(HH-LL)*-0.300); if T == 1 and MarketPosition <= 0 Then buy("b66",AtStop,LL+(HH-LL)*0.680); if MarketPosition == 1 and MaxEntries == 1 Then buy("b77",AtStop,LL+(HH-LL)*0.750); if T == -1 and MarketPosition >= 0 Then Sell("s66",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s77",AtStop,LL+(HH-LL)*-0.300); if T == -1 and MarketPosition <= 0 Then buy("b88",AtStop,LL+(HH-LL)*0.900); if MarketPosition == 1 and MaxEntries == 1 Then buy("b99",AtStop,LL+(HH-LL)*0.100); if T == -1 and MarketPosition >= 0 Then Sell("s88",AtStop,LL+(HH-LL)*0.600); if MarketPosition == 1 and MaxEntries == 1 Then Sell("s99",AtStop,LL+(HH-LL)*0.100); }