커뮤니티

70745번 추가 질문입니다.

프로필 이미지
하늘공원
2021-01-20 14:16:07
556
글번호 145634
답변완료
70745번 추가 질문입니다 수고하셨습니다. 추가 질문입니다. 수식 설정해 주신데 첨가하여 다음 (가).(나)항 각각 수식을 부탁합니다. - 다 음 - (가). 손절회수 제한 1. 손절구간 켄들이 각각 15개 이하에서 발생하는 손절이 연속해서 3회 발생했을 때 이후부터 자동매매가 정지되는 수식. 2. 손절수간이 켄들수량 관계없이 연속해서 3회 발생했을 때 이후부터 자동매매가 정지되는 수식. (나). 상승 및 하락폭에 의한 강제 청산 1. 매수 또는 매도 진입후 진입지점으로부터 10pt(40틱)이상 진행된 경우 최고점 으로부터 90% 하락점. 그리고 최저점 으로부터 90% 상승했을 때 청산한다. 즉. 진입 지점으로부터 10pt(40틱) 이상 진행된후 진행폭의 10%(진입 지점 으로부터)지점에서 청산한다. 2. 매수 또는 매도 진입후 진입지점으로부터 10pt(40틱)이상 진행된 경우 최고점 으로부터 100% 하락점. 즉 처음 진입점에서 청산한다. - 참 고 - 위 (가) (나)수식 설정중 각 1번항이 가능하면 2번항은 작성이 필요 없습니다. 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-01-20 14:29:04

안녕하세요 예스스탁입니다. 가-1 진입후 15봉 이내에 손절발생이 3회연속되면 당일진입 금지 input : P(5),Period(100); input : 익절틱수(50),손절틱수(50); var : loss(0),Xcond(False); if Bdate != Bdate[1] Then { loss = 0; Xcond = False; } if TotalTrades > TotalTrades[1] Then { if IsExitName("StopLoss",1) == true and (BarsSinceEntry(1)-BarsSinceExit(1)) < 15 Then loss = loss+1; Else loss = 0; if loss == 3 Then Xcond = true; } var1 = ma(C,P); Var2 = (Highest(H,Period)+Lowest(L,Period))/2; if Xcond == false Then { if CrossUp(var1,var2) Then Buy(); if CrossDown(var1,var2) Then Sell(); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); 가-2 당일 손절이 연속 3회 발생하면 당일진입금지 input : P(5),Period(100); input : 익절틱수(50),손절틱수(50); var : loss(0),Xcond(False); if Bdate != Bdate[1] Then { loss = 0; Xcond = False; } if TotalTrades > TotalTrades[1] Then { if IsExitName("StopLoss",1) == true Then loss = loss+1; Else loss = 0; if loss == 3 Then Xcond = true; } var1 = ma(C,P); Var2 = (Highest(H,Period)+Lowest(L,Period))/2; if Xcond == false Then { if CrossUp(var1,var2) Then Buy(); if CrossDown(var1,var2) Then Sell(); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); 나-1 진입이후 40틱(최소수익틱)이상 수익이후 수익이 90%(감소율)이상 감소하면 청산 input : P(5),Period(100); input : 익절틱수(50),손절틱수(50); input : 최소수익틱(40),감소율(90); var1 = ma(C,P); Var2 = (Highest(H,Period)+Lowest(L,Period))/2; if CrossUp(var1,var2) Then Buy(); if CrossDown(var1,var2) Then Sell(); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); if MarketPosition == 1 and Highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*최소수익틱 Then ExitLong("bx",AtStop,Highest(H,BarsSinceEntry)-(Highest(H,BarsSinceEntry)-EntryPrice)*(감소율/100)); if MarketPosition == -1 and lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*최소수익틱 Then ExitShort("sx",AtStop,lowest(L,BarsSinceEntry)-(EntryPrice-Lowest(L,BarsSinceEntry))*(감소율/100)); 나-2 위식에서 감소율을 100으로 지정하시면 됩니다. 즐거운 하루되세요 > 하늘공원 님이 쓴 글입니다. > 제목 : 70745번 추가 질문입니다. > 70745번 추가 질문입니다 수고하셨습니다. 추가 질문입니다. 수식 설정해 주신데 첨가하여 다음 (가).(나)항 각각 수식을 부탁합니다. - 다 음 - (가). 손절회수 제한 1. 손절구간 켄들이 각각 15개 이하에서 발생하는 손절이 연속해서 3회 발생했을 때 이후부터 자동매매가 정지되는 수식. 2. 손절수간이 켄들수량 관계없이 연속해서 3회 발생했을 때 이후부터 자동매매가 정지되는 수식. (나). 상승 및 하락폭에 의한 강제 청산 1. 매수 또는 매도 진입후 진입지점으로부터 10pt(40틱)이상 진행된 경우 최고점 으로부터 90% 하락점. 그리고 최저점 으로부터 90% 상승했을 때 청산한다. 즉. 진입 지점으로부터 10pt(40틱) 이상 진행된후 진행폭의 10%(진입 지점 으로부터)지점에서 청산한다. 2. 매수 또는 매도 진입후 진입지점으로부터 10pt(40틱)이상 진행된 경우 최고점 으로부터 100% 하락점. 즉 처음 진입점에서 청산한다. - 참 고 - 위 (가) (나)수식 설정중 각 1번항이 가능하면 2번항은 작성이 필요 없습니다. 감사합니다.