커뮤니티

손절 기응 추가

프로필 이미지
정구지
2024-11-17 15:55:08
574
글번호 185340
답변완료
1 아래 시스템 수식에서 손절값을 추가하고 싶습니다(물론 손절값 전에 반대 신호가 나오면 반대신호로 손절하고 진입합니다) 2. 손절값은 매도 경우 과거봉(일단 12개 봉으로 가정, 변수로 변경가능토록 설정)12개 값의 최대값에서 한틱위에(설정으로 값을 조정할 수 있게)로 매수 경우는 반대입니다. 아래는 시스템 식입니다. Input: Period(42), D(2), period2(0.17); Input : shortPeriod(12), longPeriod(26); input : n1(3);//강조표시 없는 구간 진입횟수 input : n2(3);//동시조건 충족 후 진입횟수 Var : BBTop(0), BBMid(0), BBBot(0),Bwidth(0), BWidth2(0), BWidth3(0); Var : value(0),cnt(0),T(0); BBTop = BollBandUp(Period,D); BBMid = ma(C,Period); BBBot = BollBandDown(Period,D); BWidth = ((BBTop - BBBot)/ BBMid)*100; value = MACD(shortPeriod, longPeriod); #강조조건 만족하면 true 아니면 False if BWidth<period2 Then Condition1 = true; Else Condition1 = False; #강조조건 불만족 구간 시작 #T는 1 #cnt는 0으로 초기화 if (Condition1 == False and Condition1 != Condition1[1]) Then { T = 1; cnt = 0; } #강조조건 만족 구간 시작 #T는 2 #cnt는 0으로 초기화 if (Condition1 == true and Condition1 != Condition1[1]) Then { T = 2; cnt = 0; } If CrossUP(value, 0) Then { #횟수카운트 cnt = cnt+1; #T가 1인구간에서 n1횟수까지만 신호발생, n1이 0이면 신호발생 없음 #T가 2인구간에서 n2횟수까지만 신호발생, n2가 0이면 신호발생 없음 if (n1 > 0 and T == 1 and cnt < n1) or (n2 > 0 and T == 2 and cnt < n2) Then Buy("b"); } If CrossDown(value, 0) Then { #횟수카운트 cnt = cnt+1; #T가 1인구간에서 n1횟수까지만 신호발생, n1이 0이면 신호발생 없음 #T가 2인구간에서 n2횟수까지만 신호발생, n2가 0이면 신호발생 없음 if (n1 > 0 and T == 1 and cnt < n1) or (n2 > 0 and T == 2 and cnt < n2) Then Sell("s"); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-11-18 13:35:07

안녕하세요 예스스탁입니다. Input: Period(42), D(2), period2(0.17); Input : shortPeriod(12), longPeriod(26); input : n1(3);//강조표시 없는 구간 진입횟수 input : n2(3);//동시조건 충족 후 진입횟수 input : xbar(12),xtick(1); Var : BBTop(0), BBMid(0), BBBot(0),Bwidth(0), BWidth2(0), BWidth3(0); Var : value(0),cnt(0),T(0); BBTop = BollBandUp(Period,D); BBMid = ma(C,Period); BBBot = BollBandDown(Period,D); BWidth = ((BBTop - BBBot)/ BBMid)*100; value = MACD(shortPeriod, longPeriod); #강조조건 만족하면 true 아니면 False if BWidth<period2 Then Condition1 = true; Else Condition1 = False; #강조조건 불만족 구간 시작 #T는 1 #cnt는 0으로 초기화 if (Condition1 == False and Condition1 != Condition1[1]) Then { T = 1; cnt = 0; } #강조조건 만족 구간 시작 #T는 2 #cnt는 0으로 초기화 if (Condition1 == true and Condition1 != Condition1[1]) Then { T = 2; cnt = 0; } If CrossUP(value, 0) Then { #횟수카운트 cnt = cnt+1; #T가 1인구간에서 n1횟수까지만 신호발생, n1이 0이면 신호발생 없음 #T가 2인구간에서 n2횟수까지만 신호발생, n2가 0이면 신호발생 없음 if (n1 > 0 and T == 1 and cnt < n1) or (n2 > 0 and T == 2 and cnt < n2) Then Buy("b"); } If CrossDown(value, 0) Then { #횟수카운트 cnt = cnt+1; #T가 1인구간에서 n1횟수까지만 신호발생, n1이 0이면 신호발생 없음 #T가 2인구간에서 n2횟수까지만 신호발생, n2가 0이면 신호발생 없음 if (n1 > 0 and T == 1 and cnt < n1) or (n2 > 0 and T == 2 and cnt < n2) Then Sell("s"); } if MarketPosition == 1 Then ExitLong("bx",AtStop,lowest(L,xBar)-PriceScale*xtick); if MarketPosition == -1 Then ExitShort("sx",AtStop,highest(H,xBar)+PriceScale*xtick); 즐거운 하루되세요 > 정구지 님이 쓴 글입니다. > 제목 : 손절 기응 추가 > 1 아래 시스템 수식에서 손절값을 추가하고 싶습니다(물론 손절값 전에 반대 신호가 나오면 반대신호로 손절하고 진입합니다) 2. 손절값은 매도 경우 과거봉(일단 12개 봉으로 가정, 변수로 변경가능토록 설정)12개 값의 최대값에서 한틱위에(설정으로 값을 조정할 수 있게)로 매수 경우는 반대입니다. 아래는 시스템 식입니다. Input: Period(42), D(2), period2(0.17); Input : shortPeriod(12), longPeriod(26); input : n1(3);//강조표시 없는 구간 진입횟수 input : n2(3);//동시조건 충족 후 진입횟수 Var : BBTop(0), BBMid(0), BBBot(0),Bwidth(0), BWidth2(0), BWidth3(0); Var : value(0),cnt(0),T(0); BBTop = BollBandUp(Period,D); BBMid = ma(C,Period); BBBot = BollBandDown(Period,D); BWidth = ((BBTop - BBBot)/ BBMid)*100; value = MACD(shortPeriod, longPeriod); #강조조건 만족하면 true 아니면 False if BWidth<period2 Then Condition1 = true; Else Condition1 = False; #강조조건 불만족 구간 시작 #T는 1 #cnt는 0으로 초기화 if (Condition1 == False and Condition1 != Condition1[1]) Then { T = 1; cnt = 0; } #강조조건 만족 구간 시작 #T는 2 #cnt는 0으로 초기화 if (Condition1 == true and Condition1 != Condition1[1]) Then { T = 2; cnt = 0; } If CrossUP(value, 0) Then { #횟수카운트 cnt = cnt+1; #T가 1인구간에서 n1횟수까지만 신호발생, n1이 0이면 신호발생 없음 #T가 2인구간에서 n2횟수까지만 신호발생, n2가 0이면 신호발생 없음 if (n1 > 0 and T == 1 and cnt < n1) or (n2 > 0 and T == 2 and cnt < n2) Then Buy("b"); } If CrossDown(value, 0) Then { #횟수카운트 cnt = cnt+1; #T가 1인구간에서 n1횟수까지만 신호발생, n1이 0이면 신호발생 없음 #T가 2인구간에서 n2횟수까지만 신호발생, n2가 0이면 신호발생 없음 if (n1 > 0 and T == 1 and cnt < n1) or (n2 > 0 and T == 2 and cnt < n2) Then Sell("s"); }