커뮤니티

문의드립니다.

프로필 이미지
라떼처럼
2019-01-22 22:55:52
142
글번호 125496
답변완료
아래식 #지정시간 청산# 에서 지정시간(220000~230000) 청산식 수정부탁드립니다. 진입이후 지정시간이 되면 max 수익(20~29 틱) 대비 0.1(10%)이상 하락하면 청산하고 싶습니다. 아래식에서는 지정시간 전에 이미 진입이 있는 경우에는 max 수익을 인식하지 못합니다. 1.2.번이 가능하도록 부탁드립니다. 가능하시면 식 간결화도 부탁드리겠습니다. 1. 해당시간 전에 이미 진입이 있는 경우 - 지정시간에 지정시간 전 Max수익 포함하여 Max수익 대비 0.1(10%) 이상 하락 청산 예)해당시간 전 진입 max수익 21틱, 지정시간에 10틱 수익중, 0.1(10%)이상 하락이므로 바로 청산 예)해당시간 전 진입 max수익 21틱, 지정시간에 25틱 수익중 25틱대비 0.1(10%)하락시 청산 - 진입후 max 수익이 20이 안넘었다면 지정시간에 20틱이상 도달시 Max수익 대비 0.1(10%) 이상 하락 청산 예)해당시간 전 진입 max 수익 19틱, 지정시간에 20틱 수익중 20틱대비 0.1(10%)하락시 청산 2. 해당시간에 신규 진입이 되는경우 - 20틱이상 수익이면 Max수익 대비 0.1(10%) 이상 하락 청산 var : BH(0),SL(0),HE(0),LE(0); # 청산1 # if MarketPosition == 1 then { SetStopTrailing(0,30,PointStop); SetStopLoss(30,PointStop); } if Marketposition == -1 Then { SetStopTrailing(0,30,PointStop); SetStopLoss(30,PointStop); } # 지정시간 청산 # if ((sdate != sdate[1] and stime > 220000) or (sdate == sdate[1] and stime > 220000 and stime[1] <230000)) Then { if MarketPosition == 1 Then { BH = highest(H,BarsSinceEntry); if MaxEntries == 1 Then HE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) > HE Then HE = LatestEntryPrice(0); if BH >= EntryPrice+PriceScale*20 then{ ExitLong("T4",AtStop,BH-(BH-EntryPrice)*0.1); } } if MarketPosition == -1 Then { SL = Lowest(L,BarsSinceEntry); if MaxEntries == 1 Then LE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) < LE Then LE = LatestEntryPrice(0); if SL <= EntryPrice-PriceScale*20 then{ ExitShort(" T4",AtStop,SL+(EntryPrice-SL)*0.1); } } }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-01-24 11:06:30

안녕하세요 예스스탁입니다. if (stime > 220000 and stime < 230000) Then { if MarketPosition == 1 Then { BH = highest(H,BarsSinceEntry); if MaxEntries == 1 Then HE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) > HE Then HE = LatestEntryPrice(0); if BH >= EntryPrice+PriceScale*20 then { ExitLong("T4",AtStop,BH-(BH-EntryPrice)*0.1); } } if MarketPosition == -1 Then { SL = Lowest(L,BarsSinceEntry); if MaxEntries == 1 Then LE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) < LE Then LE = LatestEntryPrice(0); if SL <= EntryPrice-PriceScale*20 then { ExitShort(" T4",AtStop,SL+(EntryPrice-SL)*0.1); } } } 즐거운 하루되세요 > 라떼처럼 님이 쓴 글입니다. > 제목 : 문의드립니다. > 아래식 #지정시간 청산# 에서 지정시간(220000~230000) 청산식 수정부탁드립니다. 진입이후 지정시간이 되면 max 수익(20~29 틱) 대비 0.1(10%)이상 하락하면 청산하고 싶습니다. 아래식에서는 지정시간 전에 이미 진입이 있는 경우에는 max 수익을 인식하지 못합니다. 1.2.번이 가능하도록 부탁드립니다. 가능하시면 식 간결화도 부탁드리겠습니다. 1. 해당시간 전에 이미 진입이 있는 경우 - 지정시간에 지정시간 전 Max수익 포함하여 Max수익 대비 0.1(10%) 이상 하락 청산 예)해당시간 전 진입 max수익 21틱, 지정시간에 10틱 수익중, 0.1(10%)이상 하락이므로 바로 청산 예)해당시간 전 진입 max수익 21틱, 지정시간에 25틱 수익중 25틱대비 0.1(10%)하락시 청산 - 진입후 max 수익이 20이 안넘었다면 지정시간에 20틱이상 도달시 Max수익 대비 0.1(10%) 이상 하락 청산 예)해당시간 전 진입 max 수익 19틱, 지정시간에 20틱 수익중 20틱대비 0.1(10%)하락시 청산 2. 해당시간에 신규 진입이 되는경우 - 20틱이상 수익이면 Max수익 대비 0.1(10%) 이상 하락 청산 var : BH(0),SL(0),HE(0),LE(0); # 청산1 # if MarketPosition == 1 then { SetStopTrailing(0,30,PointStop); SetStopLoss(30,PointStop); } if Marketposition == -1 Then { SetStopTrailing(0,30,PointStop); SetStopLoss(30,PointStop); } # 지정시간 청산 # if ((sdate != sdate[1] and stime > 220000) or (sdate == sdate[1] and stime > 220000 and stime[1] <230000)) Then { if MarketPosition == 1 Then { BH = highest(H,BarsSinceEntry); if MaxEntries == 1 Then HE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) > HE Then HE = LatestEntryPrice(0); if BH >= EntryPrice+PriceScale*20 then{ ExitLong("T4",AtStop,BH-(BH-EntryPrice)*0.1); } } if MarketPosition == -1 Then { SL = Lowest(L,BarsSinceEntry); if MaxEntries == 1 Then LE = LatestEntryPrice(0); if MaxEntries >= 2 and LatestEntryPrice(0) < LE Then LE = LatestEntryPrice(0); if SL <= EntryPrice-PriceScale*20 then{ ExitShort(" T4",AtStop,SL+(EntryPrice-SL)*0.1); } } }