커뮤니티

기존 수식에 기능 추가( 청산후 일정(특정)봉 이후에 조건발생시 진입하는 수식 부여)

프로필 이미지
이형지
2019-12-05 10:11:09
197
글번호 134132
답변완료
역추세 매매 수식인데요... 문제는 익절시에는 그러한 현상이 없는데 ( 역추세 매매이므로 ) 손절시에는 거의 바로 체결되는 경우가 많아.... 노빠구 원웨이시장에서 연속으로 손실이 발생하는 경우가 발생하네요... 그래서 하루 거래 횟수로 조정하려고 했는데 1-2일간 노빠꾸 원웨이시장에선 누적손실이 많네요.. 각설하고 아래 수식에 다음 기능을 부여 부탁드려요... 1번 수식 요청 ) 청산후 10개 봉이후에 조건 발생시 진입하는 기능 추가 10개봉은 : 변수로 최적화 예정 (변수지정은 제가 할께요) 10으로 표기 요청 손실 청산되는 시점이 매수되는 조건이 되는 경우가 있어서 바로 진입되는 경우가 있더라고요 특히 급락할때.... 청산후 일정 봉이 지난후 조건시 진입되는 수식 요청 2번 수식 요청) 같은 컨셉이구요... 몇개봉 지난후 재진입 가능이아니라... 아예 손절하는 상황이 발생시에는 그날은아예 추가 진입이 되지 않도록 하는 수식부탁드려요... 거래 횟수 제한 수식이 기존 수식에 있는데요... 거래 횟수 제한 수치값과 별개로 이익시에는 거래횟수 제한 으로만 반영 손실시에는 거래횟수 제한 과 상관없이 해당일 추가 거래 안되게 요청합니다. 만약 2번 요청 수식이 물리적으로 복잡하고 어렵다면 ... 1번 수식만이라도 부탁드려요 사용 수식 - 해외선물 1분봉 매매 Input : RSIPeriod(14),RSI매수값(10),SimPeriod(14),심리도값(10); Input : N1(2); Input : 즉시익절1(100),즉시손절1(500); input : 진입횟수(1); Input : CCI기간(20),CCI값(200); input : 분할매수횟수(2),분할매수틱수(115); Var : value(0); var : BBmd(0),BBup(0),BBdn(0),CCIv(0),entry(0); var :DNline1(0),RSIV(0),Simri(0),RSIVV(0); RSIV = RSI(RSIPeriod); Simri = Simrido(SimPeriod); value = CCI(CCI기간); if bdate != bdate[1] Then Entry = 0; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; if entry < 진입횟수 then { if MarketPosition <= 0 and countif( RSIV < RSI매수값 and Simri < 심리도값 ,N1 ) == N1 Then buy("매수"); #추가진입 if MarketPosition == 1 and MaxEntries < 분할매수횟수 Then buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1); } if MarketPosition == 1 then { if CrossDown(value,CCI값) Then ExitLong("CCI청산"); ExitLong("즉시익절1",AtLimit,EntryPrice+PriceScale*즉시익절1); ExitLong("즉시손절1",AtStop,EntryPrice-PriceScale*즉시손절1); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-12-05 11:46:25

안녕하세요 예스스탁입니다. 1 Input : RSIPeriod(14),RSI매수값(10),SimPeriod(14),심리도값(10); Input : N1(2); Input : 즉시익절1(100),즉시손절1(500); input : 진입횟수(1); Input : CCI기간(20),CCI값(200); input : 분할매수횟수(2),분할매수틱수(115); input : N(10); Var : value(0); var : BBmd(0),BBup(0),BBdn(0),CCIv(0),entry(0); var :DNline1(0),RSIV(0),Simri(0),RSIVV(0); RSIV = RSI(RSIPeriod); Simri = Simrido(SimPeriod); value = CCI(CCI기간); if bdate != bdate[1] Then Entry = 0; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; Condition1 = MarketPosition == 0 and (IsExitName("즉시손절1",1) == false or (IsExitName("즉시손절1",1) == true and BarsSinceExit(1) > N)); if entry < 진입횟수 then { if Condition1 == true and MarketPosition <= 0 and TotalTrades == TotalTrades[1] and countif( RSIV < RSI매수값 and Simri < 심리도값 ,N1 ) == N1 Then buy("매수"); #추가진입 if MarketPosition == 1 and MaxEntries < 분할매수횟수 and LatestEntryPrice(0)-PriceScale*분할매수틱수 > EntryPrice-PriceScale*즉시손절1 Then buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1); } if MarketPosition == 1 then { if CrossDown(value,CCI값) Then ExitLong("CCI청산"); ExitLong("즉시익절1",AtLimit,EntryPrice+PriceScale*즉시익절1); ExitLong("즉시손절1",AtStop,EntryPrice-PriceScale*즉시손절1); } 2 Input : RSIPeriod(14),RSI매수값(10),SimPeriod(14),심리도값(10); Input : N1(2); Input : 즉시익절1(100),즉시손절1(500); input : 진입횟수(1); Input : CCI기간(20),CCI값(200); input : 분할매수횟수(2),분할매수틱수(115); input : N(10); Var : value(0); var : BBmd(0),BBup(0),BBdn(0),CCIv(0),entry(0); var :DNline1(0),RSIV(0),Simri(0),RSIVV(0); RSIV = RSI(RSIPeriod); Simri = Simrido(SimPeriod); value = CCI(CCI기간); if bdate != bdate[1] Then { Entry = 0; Condition1 = false; } if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; if TotalTrades > TotalTrades[1] and IsExitName("즉시손절1",1) == true Then Condition1 = false; if entry < 진입횟수 then { if Condition1 == false and MarketPosition <= 0 and TotalTrades == TotalTrades[1] and countif( RSIV < RSI매수값 and Simri < 심리도값 ,N1 ) == N1 Then buy("매수"); #추가진입 if MarketPosition == 1 and MaxEntries < 분할매수횟수 and LatestEntryPrice(0)-PriceScale*분할매수틱수 > EntryPrice-PriceScale*즉시손절1 Then buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1); } if MarketPosition == 1 then { if CrossDown(value,CCI값) Then ExitLong("CCI청산"); ExitLong("즉시익절1",AtLimit,EntryPrice+PriceScale*즉시익절1); ExitLong("즉시손절1",AtStop,EntryPrice-PriceScale*즉시손절1); } 즐거운 하루되세요 > 이형지 님이 쓴 글입니다. > 제목 : 기존 수식에 기능 추가( 청산후 일정(특정)봉 이후에 조건발생시 진입하는 수식 부여) > 역추세 매매 수식인데요... 문제는 익절시에는 그러한 현상이 없는데 ( 역추세 매매이므로 ) 손절시에는 거의 바로 체결되는 경우가 많아.... 노빠구 원웨이시장에서 연속으로 손실이 발생하는 경우가 발생하네요... 그래서 하루 거래 횟수로 조정하려고 했는데 1-2일간 노빠꾸 원웨이시장에선 누적손실이 많네요.. 각설하고 아래 수식에 다음 기능을 부여 부탁드려요... 1번 수식 요청 ) 청산후 10개 봉이후에 조건 발생시 진입하는 기능 추가 10개봉은 : 변수로 최적화 예정 (변수지정은 제가 할께요) 10으로 표기 요청 손실 청산되는 시점이 매수되는 조건이 되는 경우가 있어서 바로 진입되는 경우가 있더라고요 특히 급락할때.... 청산후 일정 봉이 지난후 조건시 진입되는 수식 요청 2번 수식 요청) 같은 컨셉이구요... 몇개봉 지난후 재진입 가능이아니라... 아예 손절하는 상황이 발생시에는 그날은아예 추가 진입이 되지 않도록 하는 수식부탁드려요... 거래 횟수 제한 수식이 기존 수식에 있는데요... 거래 횟수 제한 수치값과 별개로 이익시에는 거래횟수 제한 으로만 반영 손실시에는 거래횟수 제한 과 상관없이 해당일 추가 거래 안되게 요청합니다. 만약 2번 요청 수식이 물리적으로 복잡하고 어렵다면 ... 1번 수식만이라도 부탁드려요 사용 수식 - 해외선물 1분봉 매매 Input : RSIPeriod(14),RSI매수값(10),SimPeriod(14),심리도값(10); Input : N1(2); Input : 즉시익절1(100),즉시손절1(500); input : 진입횟수(1); Input : CCI기간(20),CCI값(200); input : 분할매수횟수(2),분할매수틱수(115); Var : value(0); var : BBmd(0),BBup(0),BBdn(0),CCIv(0),entry(0); var :DNline1(0),RSIV(0),Simri(0),RSIVV(0); RSIV = RSI(RSIPeriod); Simri = Simrido(SimPeriod); value = CCI(CCI기간); if bdate != bdate[1] Then Entry = 0; if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; if entry < 진입횟수 then { if MarketPosition <= 0 and countif( RSIV < RSI매수값 and Simri < 심리도값 ,N1 ) == N1 Then buy("매수"); #추가진입 if MarketPosition == 1 and MaxEntries < 분할매수횟수 Then buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1); } if MarketPosition == 1 then { if CrossDown(value,CCI값) Then ExitLong("CCI청산"); ExitLong("즉시익절1",AtLimit,EntryPrice+PriceScale*즉시익절1); ExitLong("즉시손절1",AtStop,EntryPrice-PriceScale*즉시손절1); }