커뮤니티

수정 부탁드립니다.

프로필 이미지
올드송
2024-11-04 21:58:57
783
글번호 184965
답변완료
input : length(12),factor(4.236),smooth(12),weight(2),rsiCss(blue),tsBearCss(Red),tsBullCss(green); var : src(0); src = close; //-----------------------------------------------------------------------------} //Weighted QQE //-----------------------------------------------------------------------------{ var : delta(0), ts(0),rsiv(0),w(0); var : alpha(0),num(0),den(0),diff(0); var : crossover(False),crossunder(False); var : css(0); delta = src - src[1]; w = IFf(IsNan(iff(delta * (rsiv - ts) > 0 , weight , 1))==true, 1,iff(delta * (rsiv - ts) > 0 , weight , 1)); alpha = 1/length; num = iff(isnan(num[1]) == true, ma((delta * w), length) , alpha * (delta * w) + (1 - alpha) * iff(IsNaN(num[1])==true,0,num[1])); den = iff(isnan(den[1]) == true, ma(abs(delta * w), length) , alpha * abs(delta * w) + (1 - alpha) * iff(IsNaN(num[1])==true,0,den[1])); rsiv = 50 * ema(num / den, smooth) + 50; //Trailing stop diff = iff(isnan(diff[1]) == true, ma(abs(rsiv - rsiv[1]), length) , alpha * abs(rsiv - rsiv[1]) + (1 - alpha) * iff(IsNaN(num[1])==true,0,diff[1])); crossover = CrossUp(rsiv, ts); crossunder = CrossDown(rsiv, ts); var1 = iff(crossover , rsiv - diff * factor, iff(crossunder , rsiv + diff * factor, iff(rsiv > ts , max(rsiv - diff * factor, ts), min(rsiv + diff * factor, ts)))); ts = iff(isnan(var1)==true,rsiv,var1); css = iff(rsiv > ts , tsBullCss , tsBearCss); plot1(rsiv, "RSI", rsiCss); plot2(ts, "Traling Stop", css); PlotBaseLine1(70); PlotBaseLine2(30); 좋아하는 지표이고 잘 쓰던건데 타주기 참조를 할려고 합니다. data2 로 수정해 주시면 고맙겠습니다. 제가 해보니까.. 좀더 스무스해진것 같긴한데... 기본차트가 30틱 차트고 타주기가 300틱 차트면 지표길이가 10배 길어져야 할꺼 같은데... 그냥 조금더 스무스 해지고 마는군요;;
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-11-05 13:28:35

안녕하세요 예스스탁입니다. input : length(12),factor(4.236),smooth(12),weight(2),rsiCss(blue),tsBearCss(Red),tsBullCss(green); var : src(0,Data2); var : delta(0,Data2), ts(0,Data2),rsiv(0,Data2),w(0,Data2); var : alpha(0,Data2),num(0,Data2),den(0,Data2),diff(0,Data2); var : crossover(False,Data2),crossunder(False,Data2); var : css(0,Data2),v1(0,Data2); src = data2(close); delta = src - src[1]; w = data2(IFf(IsNan(iff(delta * (rsiv - ts) > 0 , weight , 1))==true, 1,iff(delta * (rsiv - ts) > 0 , weight , 1))); alpha = 1/length; num = data2(iff(isnan(num[1]) == true, ma((delta * w), length) , alpha * (delta * w) + (1 - alpha) * iff(IsNaN(num[1])==true,0,num[1]))); den = data2(iff(isnan(den[1]) == true, ma(abs(delta * w), length) , alpha * abs(delta * w) + (1 - alpha) * iff(IsNaN(num[1])==true,0,den[1]))); rsiv = 50 * data2(ema(num / den, smooth)) + 50; //Trailing stop diff = Data2(iff(isnan(diff[1]) == true, ma(abs(rsiv - rsiv[1]), length) , alpha * abs(rsiv - rsiv[1]) + (1 - alpha) * iff(IsNaN(num[1])==true,0,diff[1]))); crossover = CrossUp(rsiv, ts); crossunder = CrossDown(rsiv, ts); v1 = Data2(iff(crossover , rsiv - diff * factor, iff(crossunder , rsiv + diff * factor, iff(rsiv > ts , max(rsiv - diff * factor, ts), min(rsiv + diff * factor, ts))))); ts = data2(iff(isnan(v1)==true,rsiv,v1)); css = data2(iff(rsiv > ts , tsBullCss , tsBearCss)); plot1(rsiv, "RSI", rsiCss); plot2(ts, "Traling Stop", css); PlotBaseLine1(70); PlotBaseLine2(30); 즐거운 하루되세요 > 올드송 님이 쓴 글입니다. > 제목 : 수정 부탁드립니다. > input : length(12),factor(4.236),smooth(12),weight(2),rsiCss(blue),tsBearCss(Red),tsBullCss(green); var : src(0); src = close; //-----------------------------------------------------------------------------} //Weighted QQE //-----------------------------------------------------------------------------{ var : delta(0), ts(0),rsiv(0),w(0); var : alpha(0),num(0),den(0),diff(0); var : crossover(False),crossunder(False); var : css(0); delta = src - src[1]; w = IFf(IsNan(iff(delta * (rsiv - ts) > 0 , weight , 1))==true, 1,iff(delta * (rsiv - ts) > 0 , weight , 1)); alpha = 1/length; num = iff(isnan(num[1]) == true, ma((delta * w), length) , alpha * (delta * w) + (1 - alpha) * iff(IsNaN(num[1])==true,0,num[1])); den = iff(isnan(den[1]) == true, ma(abs(delta * w), length) , alpha * abs(delta * w) + (1 - alpha) * iff(IsNaN(num[1])==true,0,den[1])); rsiv = 50 * ema(num / den, smooth) + 50; //Trailing stop diff = iff(isnan(diff[1]) == true, ma(abs(rsiv - rsiv[1]), length) , alpha * abs(rsiv - rsiv[1]) + (1 - alpha) * iff(IsNaN(num[1])==true,0,diff[1])); crossover = CrossUp(rsiv, ts); crossunder = CrossDown(rsiv, ts); var1 = iff(crossover , rsiv - diff * factor, iff(crossunder , rsiv + diff * factor, iff(rsiv > ts , max(rsiv - diff * factor, ts), min(rsiv + diff * factor, ts)))); ts = iff(isnan(var1)==true,rsiv,var1); css = iff(rsiv > ts , tsBullCss , tsBearCss); plot1(rsiv, "RSI", rsiCss); plot2(ts, "Traling Stop", css); PlotBaseLine1(70); PlotBaseLine2(30); 좋아하는 지표이고 잘 쓰던건데 타주기 참조를 할려고 합니다. data2 로 수정해 주시면 고맙겠습니다. 제가 해보니까.. 좀더 스무스해진것 같긴한데... 기본차트가 30틱 차트고 타주기가 300틱 차트면 지표길이가 10배 길어져야 할꺼 같은데... 그냥 조금더 스무스 해지고 마는군요;;