커뮤니티

한가지만 더 추가로

프로필 이미지
만복이
2021-05-09 08:19:32
864
글번호 148834
답변완료
한가지만 더 부탁드리겠습니다. 아래는 시가기준 1포인트 돌파나 이탈시 진입해서 1포인트수익손절을 원하는 시스템인데, 여기서 <1포인트)가 아니라 시가에서 1포인트 대신 <어떤 설정값을 정의하고 > 그걸 돌파하느냐 이탈하느냐를 할려고 하는데, 그 <어떤 설정값을 정의할때 if를 쓰는건지 var를 사용하는건지 즉, 어떻게 정의하는지>를 좀 부탁드립니다. ============================================================================ var : entry(0); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { Buy("b1",AtStop,NextBarOpen+1); Sell("s1",AtStop,NextBarOpen-1); } Else { if entry < 1 Then { if MarketPosition == 0 and DayHigh < DayOpen+1 Then Buy("b",AtStop,DayOpen+1); if MarketPosition == 0 and DayLow > DayOpen-1 Then Sell("s",AtStop,DayOpen-1); } } SetStopLoss(1,PointStop); SetStopProfittarget(1,PointStop); SetStopEndofday(153000);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-05-10 13:27:44

안녕하세요 예스스탁입니다. 1 시가대비 다른포인트를 지정하신 다면 아래와 같이 1을 외부변수 처리해서 지정하시면 됩니다. input : pt(1); var : entry(0); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { Buy("b1",AtStop,NextBarOpen+ pt); Sell("s1",AtStop,NextBarOpen- pt); } Else { if entry < 1 Then { if MarketPosition == 0 and DayHigh < DayOpen+1 Then Buy("b",AtStop,DayOpen+ pt); if MarketPosition == 0 and DayLow > DayOpen-1 Then Sell("s",AtStop,DayOpen- pt); } } SetStopLoss(1,PointStop); SetStopProfittarget(1,PointStop); SetStopEndofday(153000); 2 매수기준과 매도기준으로 특정값을 지정하신 다면 아래와 같이 값 지정해 주시면 됩니다. input : 매수기준(432),매도기준(429); var : entry(0); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { Buy("b1",AtStop,매수기준); Sell("s1",AtStop,매도기준); } Else { if entry < 1 Then { if MarketPosition == 0 and DayHigh < DayOpen+1 Then Buy("b",AtStop,매수기준); if MarketPosition == 0 and DayLow > DayOpen-1 Then Sell("s",AtStop,매도기준); } } SetStopLoss(1,PointStop); SetStopProfittarget(1,PointStop); SetStopEndofday(153000); 3 매수기준값과 매도기준값이 별도로 계산이면 아래와 같이 계산식을 내부변수에 저장해서 지정하시면 됩니다. 아래는 시초가+전일변동폭, 시초가-전일변동폭으로 지정한 내용입니다. var : entry(0),BuyPrice(0),SellPrice(0); BuyPrice = DayOpen+(DayHigh(1)-DayLow(1)); sellPrice = DayOpen-(DayHigh(1)-DayLow(1)); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { Buy("b1",AtStop,BuyPrice); Sell("s1",AtStop,sellPrice); } Else { if entry < 1 Then { if MarketPosition == 0 and DayHigh < DayOpen+1 Then Buy("b",AtStop,BuyPrice); if MarketPosition == 0 and DayLow > DayOpen-1 Then Sell("s",AtStop,sellPrice); } } SetStopLoss(1,PointStop); SetStopProfittarget(1,PointStop); SetStopEndofday(153000); 즐거운 하루되세요 > 만복이 님이 쓴 글입니다. > 제목 : 한가지만 더 추가로 > 한가지만 더 부탁드리겠습니다. 아래는 시가기준 1포인트 돌파나 이탈시 진입해서 1포인트수익손절을 원하는 시스템인데, 여기서 <1포인트)가 아니라 시가에서 1포인트 대신 <어떤 설정값을 정의하고 > 그걸 돌파하느냐 이탈하느냐를 할려고 하는데, 그 <어떤 설정값을 정의할때 if를 쓰는건지 var를 사용하는건지 즉, 어떻게 정의하는지>를 좀 부탁드립니다. ============================================================================ var : entry(0); if Bdate != Bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if NextBarSdate != sDate Then { Buy("b1",AtStop,NextBarOpen+1); Sell("s1",AtStop,NextBarOpen-1); } Else { if entry < 1 Then { if MarketPosition == 0 and DayHigh < DayOpen+1 Then Buy("b",AtStop,DayOpen+1); if MarketPosition == 0 and DayLow > DayOpen-1 Then Sell("s",AtStop,DayOpen-1); } } SetStopLoss(1,PointStop); SetStopProfittarget(1,PointStop); SetStopEndofday(153000);