커뮤니티

부탁드립니다.

프로필 이미지
vmfha
2015-09-30 06:18:42
134
글번호 90765
답변완료
if bdate != bdate[1] Then entry = 0; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; Condition1 = MarketPosition(1) == 1 and IsExitName("StopProfittarget",1) == true; Condition2 = MarketPosition(1) == -1 and IsExitName("StopProfittarget",1) == true; If T == 1 and TRIXsig > TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { if entry == 0 or (entry >= 1 and MarketPosition == -1) or (entry >= 1 and MarketPosition == 0 and Condition1 == false) or (entry >= 1 and MarketPosition == 0 and Condition1 == true and countif( SMIS < SMIS[1] ,BarsSinceExit(1)) >= 1) Then Buy(); } # 매도/매수청산 If T == -1 and TRIXsig < TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { MessageLog("%s %s %.f",Condition1,Condition2,entry); if entry == 0 or (entry >= 1 and MarketPosition == 1) or (entry >= 1 and MarketPosition == 0 and Condition2 == false) or (entry >= 1 and MarketPosition == 0 and Condition2 == true and countif( SMIS > SMIS[1] ,BarsSinceExit(1)) >= 1) Then { Sell(); } } if MarketPosition == 1 and TRIXsig < TRIXsig[1] and SMIv < SMIv[1] Then{ ExitLong(); } if MarketPosition == -1 and TRIXsig > TRIXsig[1] and SMIv > SMIv[1] Then{ ExitShort(); } SetStopProfittarget(PriceScale*익절틱수, PointStop); SetStopLoss(PriceScale*손절틱수, PointStop); if stime == 050000 or (stime > 050000 and stime < 050000) Then{ exitlong(); ExitShort(); } ** 상기 시스템에서 몇가지 진입조건을 추가 부탁드립니다. 1) 신호발생시 ( 완성봉기준 ) 10일 이평선과의 차이가 20틱이상이되면 신호발생이 안되게 가능하면 부탁드립니다. ( 이후에 진입조건이 만족되어있는 상태에서 10일이평선과의 차이가 20틱이내로 줄어들면 신호발생이 되게 부탁드립니다.) 2) 종가가 시가보다 20틱이상되면 신호발생이 안되게 부탁드립니다.( 매수신호의 경우 ) 공히 1), 2) 의 조건은 신호발생봉 5봉이상이 경과되면서 조건이 안되어 신호가 발생되지 않으면 그신호는 취소되게 부탁드립니다. 3) 신호발생봉 전3봉에서 10일, 20일 이평선이 ( 데드일경우 이격이커지면 골드일경우 이격이 작아지면 ) 신호발생이 안되게 부탁드립니다. ( 매수의 경우 ) 4) SMIv = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5, r),s) * 100 / (0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s)) ; SMIS = ema(SMIV,p); plot1(SMIV); plot2(SMIS); PlotBaseLine1(50,"과열"); PlotBaseLine2(-50,"침체"); 상기 지표에서 plot2가 과열구간 (50) 이상에서는 신호발생 안되게 부탁드립니다.( 매수의경우) 5) SetStopProfittarget 로 연속 5번익절이 성공되면 이후 당일은 신호발생이 안되게 부탁드립니다. 6) 당일손실 80틱, 당일손실 80틱 이상이면 이후 당일은 신호발생이 안되게 부탁드립니다. 공히 매도는 반대. ## 매매 종료시간을 180000 으로 바꾸어도 6시이후에 신호가 계속 발생이 되는데... 다른 조건이 있나요? ( 종료시간을 24시 이후로 하면 시작 ,종료시간은 제대로 됩니다.) 많은 조건을 부탁드렸는데... 미리 감사드립니다.
시스템
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2015-09-30 16:10:00

> vmfha 님이 쓴 글입니다. > 제목 : 부탁드립니다. > if bdate != bdate[1] Then entry = 0; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; Condition1 = MarketPosition(1) == 1 and IsExitName("StopProfittarget",1) == true; Condition2 = MarketPosition(1) == -1 and IsExitName("StopProfittarget",1) == true; If T == 1 and TRIXsig > TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { if entry == 0 or (entry >= 1 and MarketPosition == -1) or (entry >= 1 and MarketPosition == 0 and Condition1 == false) or (entry >= 1 and MarketPosition == 0 and Condition1 == true and countif( SMIS < SMIS[1] ,BarsSinceExit(1)) >= 1) Then Buy(); } # 매도/매수청산 If T == -1 and TRIXsig < TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { MessageLog("%s %s %.f",Condition1,Condition2,entry); if entry == 0 or (entry >= 1 and MarketPosition == 1) or (entry >= 1 and MarketPosition == 0 and Condition2 == false) or (entry >= 1 and MarketPosition == 0 and Condition2 == true and countif( SMIS > SMIS[1] ,BarsSinceExit(1)) >= 1) Then { Sell(); } } if MarketPosition == 1 and TRIXsig < TRIXsig[1] and SMIv < SMIv[1] Then{ ExitLong(); } if MarketPosition == -1 and TRIXsig > TRIXsig[1] and SMIv > SMIv[1] Then{ ExitShort(); } SetStopProfittarget(PriceScale*익절틱수, PointStop); SetStopLoss(PriceScale*손절틱수, PointStop); if stime == 050000 or (stime > 050000 and stime < 050000) Then{ exitlong(); ExitShort(); } ** 상기 시스템에서 몇가지 진입조건을 추가 부탁드립니다. 1) 신호발생시 ( 완성봉기준 ) 10일 이평선과의 차이가 20틱이상이되면 신호발생이 안되게 가능하면 부탁드립니다. ( 이후에 진입조건이 만족되어있는 상태에서 10일이평선과의 차이가 20틱이내로 줄어들면 신호발생이 되게 부탁드립니다.) 2) 종가가 시가보다 20틱이상되면 신호발생이 안되게 부탁드립니다.( 매수신호의 경우 ) 공히 1), 2) 의 조건은 신호발생봉 5봉이상이 경과되면서 조건이 안되어 신호가 발생되지 않으면 그신호는 취소되게 부탁드립니다. 3) 신호발생봉 전3봉에서 10일, 20일 이평선이 ( 데드일경우 이격이커지면 골드일경우 이격이 작아지면 ) 신호발생이 안되게 부탁드립니다. ( 매수의 경우 ) 4) SMIv = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5, r),s) * 100 / (0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s)) ; SMIS = ema(SMIV,p); plot1(SMIV); plot2(SMIS); PlotBaseLine1(50,"과열"); PlotBaseLine2(-50,"침체"); 상기 지표에서 plot2가 과열구간 (50) 이상에서는 신호발생 안되게 부탁드립니다.( 매수의경우) 5) SetStopProfittarget 로 연속 5번익절이 성공되면 이후 당일은 신호발생이 안되게 부탁드립니다. 6) 당일손실 80틱, 당일손실 80틱 이상이면 이후 당일은 신호발생이 안되게 부탁드립니다. 공히 매도는 반대. ## 매매 종료시간을 180000 으로 바꾸어도 6시이후에 신호가 계속 발생이 되는데... 다른 조건이 있나요? ( 종료시간을 24시 이후로 하면 시작 ,종료시간은 제대로 됩니다.) 많은 조건을 부탁드렸는데... 미리 감사드립니다.
프로필 이미지

예스스탁 예스스탁 답변

2015-10-01 15:08:22

안녕하세요 예스스탁입니다. input : g(10),r(5),s(5),P(10),익절틱수(20),손절틱수(20),시작시간(90000),끝시간(33000); var : entry(0),T(0),TRIXSig(0),SMIv(0),SMIS(0),Tcond(false); var : mav1(0),mav2(0),diff(0),dis(0),Profitcount(0),cnt(0),dayPL(0),NP(0),pre(0); SMIv = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5, r),s) * 100 / (0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s)) ; SMIS = ema(SMIV,p); NP = NetProfit; if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{ entry = 0; pre = NP[1]; Tcond = true; } dayPl = NP-Pre; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; mav1 = ma(C,10); mav2 = ma(c,20); diff = mav1-mav2;#이평이격 dis = Disparity(20);#이격도 Profitcount = 0; for cnt = 1 to 5{ if sdate == ExitDate(cnt) and IsExitName("StopProfitTarget",1) == true Then Profitcount = Profitcount+1; } Condition1 = MarketPosition(1) == 1 and IsExitName("StopProfittarget",1) == true; Condition2 = MarketPosition(1) == -1 and IsExitName("StopProfittarget",1) == true; If T == 1 and TRIXsig > TRIXsig[1] and Tcond == true and #기존조건 C < mav1+PriceScale*20 and C > mav1-PriceScale*20 and #10이평과 20틱 이내 C < O+PriceScale*20 and #종가가 시가대비 20틱이상 크지 않음 (CountIF(mav1 > mav2 and diff > diff[1],3) == 3 or CountIF(mav1 < mav2 and diff < diff[1],3) == 3) and #골드인 경우 이평이격이 3봉연속 커지고 데드일경우 3봉연속 작아짐 SMIS < 50 and #SMIS가 50보다 작음 Profitcount < 5 and #당일 5번 연속 익절은 아님 dayPL > -PriceScale*50 Then #당일손실이 80틱이상은 아님 { if entry == 0 or (entry >= 1 and MarketPosition == -1) or (entry >= 1 and MarketPosition == 0 and Condition1 == false) or (entry >= 1 and MarketPosition == 0 and Condition1 == true and countif( SMIS < SMIS[1] ,BarsSinceExit(1)) >= 1) Then Buy(); } # 매도/매수청산 If T == -1 and TRIXsig < TRIXsig[1] and (stime >= 090000 or stime < 033000) and C < mav1+PriceScale*20 and C > mav1-PriceScale*20 and #10이평과 20틱 이내 C > O-PriceScale*20 and #종가가 시가대비 20틱이상 작지 않음 (CountIF(mav1 > mav2 and diff < diff[1],3) == 3 or CountIF(mav1 < mav2 and diff > diff[1],3) == 3) and #골드인 경우 이평이격이 3봉연속 작아지고 데드일경우 3봉연속 커짐 SMIS > -50 and #SMIS가 -50보다 큼 Profitcount < 5 and #당일 5번 연속 익절은 아님 dayPL > -PriceScale*50 Then #당일손실이 80틱이상은 아님 { if entry == 0 or (entry >= 1 and MarketPosition == 1) or (entry >= 1 and MarketPosition == 0 and Condition2 == false) or (entry >= 1 and MarketPosition == 0 and Condition2 == true and countif( SMIS > SMIS[1] ,BarsSinceExit(1)) >= 1) Then { Sell(); } } if MarketPosition == 1 and TRIXsig < TRIXsig[1] and SMIv < SMIv[1] Then{ ExitLong(); } if MarketPosition == -1 and TRIXsig > TRIXsig[1] and SMIv > SMIv[1] Then{ ExitShort(); } SetStopProfittarget(PriceScale*익절틱수, PointStop); SetStopLoss(PriceScale*손절틱수, PointStop); if stime == 끝시간 or (stime > 끝시간 and stime < 끝시간) Then{ Tcond = false; exitlong(); ExitShort(); } #매수진입 후 10이평 대비 30틱이상 커지면 매수포지션 청산 if MarketPosition == 1 and C >= mav1+PriceScale*30 Then exitlong(); #매수진입 후 이격이 100.70이상인 상태에서 이격이 하락하면 청산 if MarketPosition == 1 and dis >= 100.70 and dis < dis[1] Then exitlong(); #매수진입 후 SMIS가 50이상이서 하락하면 청산 if MarketPosition == 1 and SMIS >= 50 and SMIV < SMIV[1] Then exitlong(); #매도진입 후 10이평 대비 30틱이상 작아지면 매도포지션 청산 if MarketPosition == -1 and C <= mav1-PriceScale*30 Then ExitShort(); #매도진입 후 이격이 99.30 이하인 상태에서 이격이 상승하면 매도포지션 청산 if MarketPosition == -1 and dis <= 99.30 and dis > dis[1] Then ExitShort(); #매도진입 후 SMIS가 -50이하에서 상승하면 매도포지션 청산 if MarketPosition == -1 and SMIS <= -50 and SMIV > SMIV[1] Then ExitShort(); 즐거운 하루되세요 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 전화주시기 바랍니다.(02-3453-1060) > > vmfha 님이 쓴 글입니다. > 제목 : 부탁드립니다. > if bdate != bdate[1] Then entry = 0; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; Condition1 = MarketPosition(1) == 1 and IsExitName("StopProfittarget",1) == true; Condition2 = MarketPosition(1) == -1 and IsExitName("StopProfittarget",1) == true; If T == 1 and TRIXsig > TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { if entry == 0 or (entry >= 1 and MarketPosition == -1) or (entry >= 1 and MarketPosition == 0 and Condition1 == false) or (entry >= 1 and MarketPosition == 0 and Condition1 == true and countif( SMIS < SMIS[1] ,BarsSinceExit(1)) >= 1) Then Buy(); } # 매도/매수청산 If T == -1 and TRIXsig < TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { MessageLog("%s %s %.f",Condition1,Condition2,entry); if entry == 0 or (entry >= 1 and MarketPosition == 1) or (entry >= 1 and MarketPosition == 0 and Condition2 == false) or (entry >= 1 and MarketPosition == 0 and Condition2 == true and countif( SMIS > SMIS[1] ,BarsSinceExit(1)) >= 1) Then { Sell(); } } if MarketPosition == 1 and TRIXsig < TRIXsig[1] and SMIv < SMIv[1] Then{ ExitLong(); } if MarketPosition == -1 and TRIXsig > TRIXsig[1] and SMIv > SMIv[1] Then{ ExitShort(); } SetStopProfittarget(PriceScale*익절틱수, PointStop); SetStopLoss(PriceScale*손절틱수, PointStop); if stime == 050000 or (stime > 050000 and stime < 050000) Then{ exitlong(); ExitShort(); } ** 상기 시스템에서 몇가지 진입조건을 추가 부탁드립니다. 1) 신호발생시 ( 완성봉기준 ) 10일 이평선과의 차이가 20틱이상이되면 신호발생이 안되게 가능하면 부탁드립니다. ( 이후에 진입조건이 만족되어있는 상태에서 10일이평선과의 차이가 20틱이내로 줄어들면 신호발생이 되게 부탁드립니다.) 2) 종가가 시가보다 20틱이상되면 신호발생이 안되게 부탁드립니다.( 매수신호의 경우 ) 공히 1), 2) 의 조건은 신호발생봉 5봉이상이 경과되면서 조건이 안되어 신호가 발생되지 않으면 그신호는 취소되게 부탁드립니다. 3) 신호발생봉 전3봉에서 10일, 20일 이평선이 ( 데드일경우 이격이커지면 골드일경우 이격이 작아지면 ) 신호발생이 안되게 부탁드립니다. ( 매수의 경우 ) 4) SMIv = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5, r),s) * 100 / (0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s)) ; SMIS = ema(SMIV,p); plot1(SMIV); plot2(SMIS); PlotBaseLine1(50,"과열"); PlotBaseLine2(-50,"침체"); 상기 지표에서 plot2가 과열구간 (50) 이상에서는 신호발생 안되게 부탁드립니다.( 매수의경우) 5) SetStopProfittarget 로 연속 5번익절이 성공되면 이후 당일은 신호발생이 안되게 부탁드립니다. 6) 당일손실 80틱, 당일손실 80틱 이상이면 이후 당일은 신호발생이 안되게 부탁드립니다. 공히 매도는 반대. ## 매매 종료시간을 180000 으로 바꾸어도 6시이후에 신호가 계속 발생이 되는데... 다른 조건이 있나요? ( 종료시간을 24시 이후로 하면 시작 ,종료시간은 제대로 됩니다.) 많은 조건을 부탁드렸는데... 미리 감사드립니다.
프로필 이미지

예스스탁 예스스탁 답변

2015-10-01 17:28:53

안녕하세요 예스스탁입니다. input : g(10),r(5),s(5),P(10),익절틱수(20),손절틱수(20),시작시간(90000),끝시간(33000); var : entry(0),T(0),TRIXSig(0),SMIv(0),SMIS(0),Tcond(false); var : mav1(0),mav2(0),diff(0),dis(0),Profitcount(0),cnt(0),dayPL(0),NP(0),pre(0); Input : Period(12), sigPeriod(9); var : TRIXv(0); TRIXv = TRIX(Period); TRIXsig = ema(TRIX(Period),sigPeriod); if crossup(Trixv,Trixsig) Then T = 1; if CrossDown(Trixv,Trixsig) Then T = -1; SMIv = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5, r),s) * 100 / (0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s)) ; SMIS = ema(SMIV,p); NP = NetProfit; if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{ entry = 0; pre = NP[1]; Tcond = true; } dayPl = NP-Pre; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; mav1 = ma(C,10); mav2 = ma(c,20); diff = mav1-mav2;#이평이격 dis = Disparity(20);#이격도 Profitcount = 0; for cnt = 1 to 5{ if sdate == ExitDate(cnt) and IsExitName("StopProfitTarget",1) == true Then Profitcount = Profitcount+1; } Condition1 = MarketPosition(1) == 1 and IsExitName("StopProfitTarget",1) == true; Condition2 = MarketPosition(1) == -1 and IsExitName("StopProfitTarget",1) == true; If SMIS > SMIS[1] and TRIXsig > TRIXsig[1] and Tcond == true and #기존조건 C < mav1+PriceScale*20 and C > mav1-PriceScale*20 and #10이평과 20틱 이내 C < O+PriceScale*20 and #종가가 시가대비 20틱이상 크지 않음 (CountIF(mav1 > mav2 and diff > diff[1],3) == 3 or CountIF(mav1 < mav2 and diff < diff[1],3) == 3) and #골드인 경우 이평이격이 3봉연속 커지고 데드일경우 3봉연속 작아짐 SMIS < 50 and #SMIS가 50보다 작음 Profitcount < 5 and #당일 5번 연속 익절은 아님 dayPL > -PriceScale*50 Then #당일손실이 80틱이상은 아님 { if entry == 0 or (entry >= 1 and MarketPosition == -1) or (entry >= 1 and MarketPosition == 0 and Condition1 == false) or (entry >= 1 and MarketPosition == 0 and Condition1 == true and countif( SMIS < SMIS[1] ,BarsSinceExit(1)) >= 1) Then Buy(); } # 매도/매수청산 If SMIS < SMIS[1] and TRIXsig < TRIXsig[1] and Tcond == true and C < mav1+PriceScale*20 and C > mav1-PriceScale*20 and #10이평과 20틱 이내 C > O-PriceScale*20 and #종가가 시가대비 20틱이상 작지 않음 (CountIF(mav1 > mav2 and diff < diff[1],3) == 3 or CountIF(mav1 < mav2 and diff > diff[1],3) == 3) and #골드인 경우 이평이격이 3봉연속 작아지고 데드일경우 3봉연속 커짐 SMIS > -50 and #SMIS가 -50보다 큼 Profitcount < 5 and #당일 5번 연속 익절은 아님 dayPL > -PriceScale*50 Then #당일손실이 80틱이상은 아님 { if entry == 0 or (entry >= 1 and MarketPosition == 1) or (entry >= 1 and MarketPosition == 0 and Condition2 == false) or (entry >= 1 and MarketPosition == 0 and Condition2 == true and countif( SMIS > SMIS[1] ,BarsSinceExit(1)) >= 1) Then { Sell(); } } if MarketPosition == 1 and TRIXsig < TRIXsig[1] and SMIv < SMIv[1] Then{ ExitLong(); } if MarketPosition == -1 and TRIXsig > TRIXsig[1] and SMIv > SMIv[1] Then{ ExitShort(); } SetStopProfittarget(PriceScale*익절틱수, PointStop); SetStopLoss(PriceScale*손절틱수, PointStop); if stime == 끝시간 or (stime > 끝시간 and stime < 끝시간) Then{ Tcond = false; exitlong(); ExitShort(); } #매수진입 후 10이평 대비 30틱이상 커지면 매수포지션 청산 if MarketPosition == 1 and C >= mav1+PriceScale*30 Then exitlong(); #매수진입 후 이격이 100.70이상인 상태에서 이격이 하락하면 청산 if MarketPosition == 1 and dis >= 100.70 and dis < dis[1] Then exitlong(); #매수진입 후 SMIS가 50이상이서 하락하면 청산 if MarketPosition == 1 and SMIS >= 50 and SMIV < SMIV[1] Then exitlong(); #매도진입 후 10이평 대비 30틱이상 작아지면 매도포지션 청산 if MarketPosition == -1 and C <= mav1-PriceScale*30 Then ExitShort(); #매도진입 후 이격이 99.30 이하인 상태에서 이격이 상승하면 매도포지션 청산 if MarketPosition == -1 and dis <= 99.30 and dis > dis[1] Then ExitShort(); #매도진입 후 SMIS가 -50이하에서 상승하면 매도포지션 청산 if MarketPosition == -1 and SMIS <= -50 and SMIV > SMIV[1] Then ExitShort(); 즐거운 하루되세요 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : Re : 전화주시기 바랍니다.(02-3453-1060) > 안녕하세요 예스스탁입니다. input : g(10),r(5),s(5),P(10),익절틱수(20),손절틱수(20),시작시간(90000),끝시간(33000); var : entry(0),T(0),TRIXSig(0),SMIv(0),SMIS(0),Tcond(false); var : mav1(0),mav2(0),diff(0),dis(0),Profitcount(0),cnt(0),dayPL(0),NP(0),pre(0); SMIv = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5, r),s) * 100 / (0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s)) ; SMIS = ema(SMIV,p); NP = NetProfit; if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then{ entry = 0; pre = NP[1]; Tcond = true; } dayPl = NP-Pre; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; mav1 = ma(C,10); mav2 = ma(c,20); diff = mav1-mav2;#이평이격 dis = Disparity(20);#이격도 Profitcount = 0; for cnt = 1 to 5{ if sdate == ExitDate(cnt) and IsExitName("StopProfitTarget",1) == true Then Profitcount = Profitcount+1; } Condition1 = MarketPosition(1) == 1 and IsExitName("StopProfittarget",1) == true; Condition2 = MarketPosition(1) == -1 and IsExitName("StopProfittarget",1) == true; If T == 1 and TRIXsig > TRIXsig[1] and Tcond == true and #기존조건 C < mav1+PriceScale*20 and C > mav1-PriceScale*20 and #10이평과 20틱 이내 C < O+PriceScale*20 and #종가가 시가대비 20틱이상 크지 않음 (CountIF(mav1 > mav2 and diff > diff[1],3) == 3 or CountIF(mav1 < mav2 and diff < diff[1],3) == 3) and #골드인 경우 이평이격이 3봉연속 커지고 데드일경우 3봉연속 작아짐 SMIS < 50 and #SMIS가 50보다 작음 Profitcount < 5 and #당일 5번 연속 익절은 아님 dayPL > -PriceScale*50 Then #당일손실이 80틱이상은 아님 { if entry == 0 or (entry >= 1 and MarketPosition == -1) or (entry >= 1 and MarketPosition == 0 and Condition1 == false) or (entry >= 1 and MarketPosition == 0 and Condition1 == true and countif( SMIS < SMIS[1] ,BarsSinceExit(1)) >= 1) Then Buy(); } # 매도/매수청산 If T == -1 and TRIXsig < TRIXsig[1] and (stime >= 090000 or stime < 033000) and C < mav1+PriceScale*20 and C > mav1-PriceScale*20 and #10이평과 20틱 이내 C > O-PriceScale*20 and #종가가 시가대비 20틱이상 작지 않음 (CountIF(mav1 > mav2 and diff < diff[1],3) == 3 or CountIF(mav1 < mav2 and diff > diff[1],3) == 3) and #골드인 경우 이평이격이 3봉연속 작아지고 데드일경우 3봉연속 커짐 SMIS > -50 and #SMIS가 -50보다 큼 Profitcount < 5 and #당일 5번 연속 익절은 아님 dayPL > -PriceScale*50 Then #당일손실이 80틱이상은 아님 { if entry == 0 or (entry >= 1 and MarketPosition == 1) or (entry >= 1 and MarketPosition == 0 and Condition2 == false) or (entry >= 1 and MarketPosition == 0 and Condition2 == true and countif( SMIS > SMIS[1] ,BarsSinceExit(1)) >= 1) Then { Sell(); } } if MarketPosition == 1 and TRIXsig < TRIXsig[1] and SMIv < SMIv[1] Then{ ExitLong(); } if MarketPosition == -1 and TRIXsig > TRIXsig[1] and SMIv > SMIv[1] Then{ ExitShort(); } SetStopProfittarget(PriceScale*익절틱수, PointStop); SetStopLoss(PriceScale*손절틱수, PointStop); if stime == 끝시간 or (stime > 끝시간 and stime < 끝시간) Then{ Tcond = false; exitlong(); ExitShort(); } #매수진입 후 10이평 대비 30틱이상 커지면 매수포지션 청산 if MarketPosition == 1 and C >= mav1+PriceScale*30 Then exitlong(); #매수진입 후 이격이 100.70이상인 상태에서 이격이 하락하면 청산 if MarketPosition == 1 and dis >= 100.70 and dis < dis[1] Then exitlong(); #매수진입 후 SMIS가 50이상이서 하락하면 청산 if MarketPosition == 1 and SMIS >= 50 and SMIV < SMIV[1] Then exitlong(); #매도진입 후 10이평 대비 30틱이상 작아지면 매도포지션 청산 if MarketPosition == -1 and C <= mav1-PriceScale*30 Then ExitShort(); #매도진입 후 이격이 99.30 이하인 상태에서 이격이 상승하면 매도포지션 청산 if MarketPosition == -1 and dis <= 99.30 and dis > dis[1] Then ExitShort(); #매도진입 후 SMIS가 -50이하에서 상승하면 매도포지션 청산 if MarketPosition == -1 and SMIS <= -50 and SMIV > SMIV[1] Then ExitShort(); 즐거운 하루되세요 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 전화주시기 바랍니다.(02-3453-1060) > > vmfha 님이 쓴 글입니다. > 제목 : 부탁드립니다. > if bdate != bdate[1] Then entry = 0; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; Condition1 = MarketPosition(1) == 1 and IsExitName("StopProfittarget",1) == true; Condition2 = MarketPosition(1) == -1 and IsExitName("StopProfittarget",1) == true; If T == 1 and TRIXsig > TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { if entry == 0 or (entry >= 1 and MarketPosition == -1) or (entry >= 1 and MarketPosition == 0 and Condition1 == false) or (entry >= 1 and MarketPosition == 0 and Condition1 == true and countif( SMIS < SMIS[1] ,BarsSinceExit(1)) >= 1) Then Buy(); } # 매도/매수청산 If T == -1 and TRIXsig < TRIXsig[1] and (stime >= 090000 or stime < 033000) Then { MessageLog("%s %s %.f",Condition1,Condition2,entry); if entry == 0 or (entry >= 1 and MarketPosition == 1) or (entry >= 1 and MarketPosition == 0 and Condition2 == false) or (entry >= 1 and MarketPosition == 0 and Condition2 == true and countif( SMIS > SMIS[1] ,BarsSinceExit(1)) >= 1) Then { Sell(); } } if MarketPosition == 1 and TRIXsig < TRIXsig[1] and SMIv < SMIv[1] Then{ ExitLong(); } if MarketPosition == -1 and TRIXsig > TRIXsig[1] and SMIv > SMIv[1] Then{ ExitShort(); } SetStopProfittarget(PriceScale*익절틱수, PointStop); SetStopLoss(PriceScale*손절틱수, PointStop); if stime == 050000 or (stime > 050000 and stime < 050000) Then{ exitlong(); ExitShort(); } ** 상기 시스템에서 몇가지 진입조건을 추가 부탁드립니다. 1) 신호발생시 ( 완성봉기준 ) 10일 이평선과의 차이가 20틱이상이되면 신호발생이 안되게 가능하면 부탁드립니다. ( 이후에 진입조건이 만족되어있는 상태에서 10일이평선과의 차이가 20틱이내로 줄어들면 신호발생이 되게 부탁드립니다.) 2) 종가가 시가보다 20틱이상되면 신호발생이 안되게 부탁드립니다.( 매수신호의 경우 ) 공히 1), 2) 의 조건은 신호발생봉 5봉이상이 경과되면서 조건이 안되어 신호가 발생되지 않으면 그신호는 취소되게 부탁드립니다. 3) 신호발생봉 전3봉에서 10일, 20일 이평선이 ( 데드일경우 이격이커지면 골드일경우 이격이 작아지면 ) 신호발생이 안되게 부탁드립니다. ( 매수의 경우 ) 4) SMIv = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5, r),s) * 100 / (0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s)) ; SMIS = ema(SMIV,p); plot1(SMIV); plot2(SMIS); PlotBaseLine1(50,"과열"); PlotBaseLine2(-50,"침체"); 상기 지표에서 plot2가 과열구간 (50) 이상에서는 신호발생 안되게 부탁드립니다.( 매수의경우) 5) SetStopProfittarget 로 연속 5번익절이 성공되면 이후 당일은 신호발생이 안되게 부탁드립니다. 6) 당일손실 80틱, 당일손실 80틱 이상이면 이후 당일은 신호발생이 안되게 부탁드립니다. 공히 매도는 반대. ## 매매 종료시간을 180000 으로 바꾸어도 6시이후에 신호가 계속 발생이 되는데... 다른 조건이 있나요? ( 종료시간을 24시 이후로 하면 시작 ,종료시간은 제대로 됩니다.) 많은 조건을 부탁드렸는데... 미리 감사드립니다.