커뮤니티

수식작성 부탁드립니다.

프로필 이미지
고박사122
2023-03-15 07:47:19
1885
글번호 167169
답변완료
안녕하세요. 이번에 요청드릴 사항은 아래의 트레이딩 지표 2가지를 예스트레이더 형식으로 변환을 부탁드립니다. 감사합니다. 지표1) //@version=3 study(title="GDAX EMA Cross[26,12]",shorttitle ="GDAX EMA", overlay=true) short = ema(close, 12) long = ema(close, 26) plota = plot(short, color = #6f92ce, linewidth=2, title="Ema 12", editable = true) plot(long, color = #e08937, linewidth=2, title="Ema 26", editable = true) plot (cross(short, long) ? short : na, style = circles, color = red, linewidth = 4, title="Cross", trackprice = false) trendup= long <= short trendDn= long > short emaUpColor() => trendup emaDownColor() => trendDn col = trendup ? blue : trendDn ? red : white barcolor(emaUpColor() ? blue: emaDownColor() ? red : na, title="Highlights Trend") 지표2) //@version=4 // this indicator gives you the angles of different moving averages // this can give an indication of the momentum of a move increasing or decreasing // you can also set a threshold for a minimum angle to filter out "no trade" zones // JD. // #NotTradingAdvice #DYOR study("ma angles - JD") src = input(ohlc4, title="source") th = input(2, minval=1, title="threshold for -no trade zones- in degrees") color_bars = input(false, title="color bars?") no_trade = input(false, title="black out bars in no trade zones?") // definition of "Jurik Moving Average", by Everget jma(_src, _length, _phase, _power) => phaseRatio = _phase < -100 ? 0.5 : _phase > 100 ? 2.5 : _phase / 100 + 1.5 beta = 0.45 * (_length - 1) / (0.45 * (_length - 1) + 2) alpha = pow(beta, _power) jma = 0.0 e0 = 0.0 e0 := (1 - alpha) * _src + alpha * nz(e0[1]) e1 = 0.0 e1 := (_src - e0) * (1 - beta) + beta * nz(e1[1]) e2 = 0.0 e2 := (e0 + phaseRatio * e1 - nz(jma[1])) * pow(1 - alpha, 2) + pow(alpha, 2) * nz(e2[1]) jma := e2 + nz(jma[1]) jma //// //// Determine Angle by KyJ //// //// angle(_src) => rad2degree = 180 / 3.14159265359 //pi ang = rad2degree * atan((_src[0] - _src[1]) / atr(14)) ang jma_line = jma(src, 10, 50, 1) jma_line_fast = jma(src, 10, 50, 2) ma27 = ema(src, 27) ma83 = ema(src, 83) ma278 = ema(src, 278) jma_slope = angle(jma_line) jma_fast_slope = angle(jma_line_fast) ma27_slope = angle(ma27) ma83_slope = angle(ma83) ma278_slope = angle(ma278) hline(0) rising_1 = rising(ma27, 1) color_1 = color.new(color.green, 75) falling_1 = falling(ma27, 1) plot(jma_slope, title="jma slope", style=plot.style_area, color=jma_slope >= 0 ? rising_1 ? color.green : color_1 : falling_1 ? color.red : color.maroon) plot(jma_fast_slope, title="jma slope", style=plot.style_line, color=jma_fast_slope >= 0 ? color.green : color.red, transp=0) plot(ma27_slope, title="ma27 slope filter", style=plot.style_area, color=abs(ma27_slope) > th ? na : color.yellow) plot(ma83_slope, title="ma83 slope filter", style=plot.style_area, color=abs(ma83_slope) > th ? na : color.yellow) plot(ma278_slope, title="ma278 slope filter", style=plot.style_area, color=abs(ma278_slope) > th ? na : color.yellow) plot(ma27_slope, title="ma27 slope", style=plot.style_line, linewidth=2, color=ma27_slope >= 0 ? color.lime : color.fuchsia) color_2 = color.new(color.green, 0) color_3 = color.new(color.red, 0) plot(ma83_slope, title="ma83 slope", style=plot.style_line, color=ma83_slope >= 0 ? color_2 : color_3) plot(ma278_slope, title="ma278 slope", style=plot.style_line, color=ma278_slope >= 0 ? color.green : color.red) plotshape(ma27_slope >= 0 ? ma27 : na, style=shape.triangleup, location=location.bottom, color=color.green) plotshape(ma27_slope < 0 ? ma27 : na, style=shape.triangledown, location=location.top, color=color.red) plotshape(ma27_slope >= 0 and not(ma27_slope[1] >= 0) ? ma27 : na, style=shape.triangleup, location=location.bottom, size=size.tiny, color=color.green) plotshape(ma27_slope < 0 and not(ma27_slope[1] < 0) ? ma27 : na, style=shape.triangledown, location=location.top, size=size.tiny, color=color.red) rising_2 = rising(ma27, 1) falling_2 = falling(ma27, 1) barcolor(color_bars ? no_trade and abs(ma27_slope) <= th ? color.white : jma_slope >= 0 ? rising_2 ? color.lime : color.green : falling_2 ? color.fuchsia : color.red : na)
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-03-15 14:48:03

안녕하세요 예스스탁입니다. 1 var : short(0),long(0); short = ema(close, 12); long = ema(close, 26); plot2(short); plot2(long); 2 input : th(2),color_bars(False),no_trade(False); var : src(0); var : phaseRatio1(0),beta1(0),alpha1(0),jma1(0),a1(0),b1(0),c1(0); var : phaseRatio2(0),beta2(0),alpha2(0),jma2(0),a2(0),b2(0),c2(0); var : jma_line(0),jma_line_fast(0); var : ma27(0),ma83(0),ma278(0); var : rad2degree(0),ma27_slope(0),ma83_slope(0),ma278_slope(0); var : jma_slope(0),jma_fast_slope(0); var : rising_1(False),falling_1(False); src = (o+h+l+c)/4; phaseRatio1 = iff(50 < -100 , 0.5 , IFf( 50 > 100 , 2.5 , 50 / 100 + 1.5)); beta1 = 0.45 * (10 - 1) / (0.45 * (10 - 1) + 2); alpha1 = pow(beta1, 1); jma1 = 0.0; a1 = 0.0; a1 = (1 - alpha1) * src + alpha1 * iff(isnan(a1[1])==False,a1[1],0); b1 = 0.0; b1 = (src - a1) * (1 - beta1) + beta1 * iff(isnan(b1[1])==False,b1[1],0); c1 = 0.0; c1 = (a1 + phaseRatio1 * b1 - iff(isnan(jma1[1])==False,jma1[1],0)) * pow(1 - alpha1, 2) + pow(alpha1, 2) * iff(isnan(c1[1])==False,c1[1],0); jma1 = c1 + iff(isnan(jma1[1])==False,jma1[1],0); phaseRatio2 = iff(50 < -100 , 0.5 , IFf( 50 > 100 , 2.5 , 50 / 100 + 1.5)); beta2 = 0.45 * (10 - 1) / (0.45 * (10 - 1) + 2); alpha2 = pow(beta2, 2); jma2 = 0.0; a2 = 0.0; a2 = (1 - alpha2) * src + alpha2 * iff(isnan(a2[1])==False,a2[1],0); b2 = 0.0; b2 = (src - a2) * (1 - beta2) + beta2 * iff(isnan(b2[1])==False,b2[1],0); c2 = 0.0; c2 = (a2 + phaseRatio2 * b2 - iff(isnan(jma2[1])==False,jma2[1],0)) * pow(1 - alpha2, 2) + pow(alpha2, 2) * iff(isnan(c2[1])==False,c2[1],0); jma2 = c2 + iff(isnan(jma2[1])==False,jma2[1],0); jma_line = jma1; jma_line_fast = jma2; ma27 = ema(src, 27); ma83 = ema(src, 83); ma278 = ema(src, 278); rad2degree = 180 / Pie; jma_slope = rad2degree * atan((jma_line - jma_line[1]) / atr(14)); jma_fast_slope = rad2degree * atan((jma_line_fast - jma_line_fast[1]) / atr(14)); ma27_slope = rad2degree * atan((ma27 - ma27[1]) / atr(14)); ma83_slope = rad2degree * atan((ma83[0] - ma83[1]) / atr(14)); ma278_slope = rad2degree * atan((ma278[0] - ma278[1]) / atr(14)); rising_1 = ma27 > ma27[1]; falling_1 = ma27 > ma27[1]; plot1(jma_slope, "jma slope", iff(jma_slope >= 0 ,IFf(rising_1 , green , LGreen),iff(falling_1 ,red ,maroon))); plot2(jma_fast_slope, "jma slope", iff(jma_fast_slope >= 0 ,green , red)); plot3(ma27_slope, "ma27 slope filter", iff(abs(ma27_slope) > th , Def , yellow)); plot4(ma83_slope, "ma83 slope filter", iff(abs(ma83_slope) > th , def , yellow)); plot5(ma278_slope, "ma278 slope filter", iff(abs(ma278_slope) > th , Def , yellow)); plot6(ma27_slope, "ma27 slope", iff(ma27_slope >= 0 ,lime ,Magenta)); plot7(ma83_slope, "ma83 slope", iff(ma83_slope >= 0 , Green , red)); plot8(ma278_slope, "ma278 slope", iff(ma278_slope >= 0 , green , red)); PlotBaseLine1(0); 즐거운 하루되세요 > 고박사122 님이 쓴 글입니다. > 제목 : 수식작성 부탁드립니다. > 안녕하세요. 이번에 요청드릴 사항은 아래의 트레이딩 지표 2가지를 예스트레이더 형식으로 변환을 부탁드립니다. 감사합니다. 지표1) //@version=3 study(title="GDAX EMA Cross[26,12]",shorttitle ="GDAX EMA", overlay=true) short = ema(close, 12) long = ema(close, 26) plota = plot(short, color = #6f92ce, linewidth=2, title="Ema 12", editable = true) plot(long, color = #e08937, linewidth=2, title="Ema 26", editable = true) plot (cross(short, long) ? short : na, style = circles, color = red, linewidth = 4, title="Cross", trackprice = false) trendup= long <= short trendDn= long > short emaUpColor() => trendup emaDownColor() => trendDn col = trendup ? blue : trendDn ? red : white barcolor(emaUpColor() ? blue: emaDownColor() ? red : na, title="Highlights Trend") 지표2) //@version=4 // this indicator gives you the angles of different moving averages // this can give an indication of the momentum of a move increasing or decreasing // you can also set a threshold for a minimum angle to filter out "no trade" zones // JD. // #NotTradingAdvice #DYOR study("ma angles - JD") src = input(ohlc4, title="source") th = input(2, minval=1, title="threshold for -no trade zones- in degrees") color_bars = input(false, title="color bars?") no_trade = input(false, title="black out bars in no trade zones?") // definition of "Jurik Moving Average", by Everget jma(_src, _length, _phase, _power) => phaseRatio = _phase < -100 ? 0.5 : _phase > 100 ? 2.5 : _phase / 100 + 1.5 beta = 0.45 * (_length - 1) / (0.45 * (_length - 1) + 2) alpha = pow(beta, _power) jma = 0.0 e0 = 0.0 e0 := (1 - alpha) * _src + alpha * nz(e0[1]) e1 = 0.0 e1 := (_src - e0) * (1 - beta) + beta * nz(e1[1]) e2 = 0.0 e2 := (e0 + phaseRatio * e1 - nz(jma[1])) * pow(1 - alpha, 2) + pow(alpha, 2) * nz(e2[1]) jma := e2 + nz(jma[1]) jma //// //// Determine Angle by KyJ //// //// angle(_src) => rad2degree = 180 / 3.14159265359 //pi ang = rad2degree * atan((_src[0] - _src[1]) / atr(14)) ang jma_line = jma(src, 10, 50, 1) jma_line_fast = jma(src, 10, 50, 2) ma27 = ema(src, 27) ma83 = ema(src, 83) ma278 = ema(src, 278) jma_slope = angle(jma_line) jma_fast_slope = angle(jma_line_fast) ma27_slope = angle(ma27) ma83_slope = angle(ma83) ma278_slope = angle(ma278) hline(0) rising_1 = rising(ma27, 1) color_1 = color.new(color.green, 75) falling_1 = falling(ma27, 1) plot(jma_slope, title="jma slope", style=plot.style_area, color=jma_slope >= 0 ? rising_1 ? color.green : color_1 : falling_1 ? color.red : color.maroon) plot(jma_fast_slope, title="jma slope", style=plot.style_line, color=jma_fast_slope >= 0 ? color.green : color.red, transp=0) plot(ma27_slope, title="ma27 slope filter", style=plot.style_area, color=abs(ma27_slope) > th ? na : color.yellow) plot(ma83_slope, title="ma83 slope filter", style=plot.style_area, color=abs(ma83_slope) > th ? na : color.yellow) plot(ma278_slope, title="ma278 slope filter", style=plot.style_area, color=abs(ma278_slope) > th ? na : color.yellow) plot(ma27_slope, title="ma27 slope", style=plot.style_line, linewidth=2, color=ma27_slope >= 0 ? color.lime : color.fuchsia) color_2 = color.new(color.green, 0) color_3 = color.new(color.red, 0) plot(ma83_slope, title="ma83 slope", style=plot.style_line, color=ma83_slope >= 0 ? color_2 : color_3) plot(ma278_slope, title="ma278 slope", style=plot.style_line, color=ma278_slope >= 0 ? color.green : color.red) plotshape(ma27_slope >= 0 ? ma27 : na, style=shape.triangleup, location=location.bottom, color=color.green) plotshape(ma27_slope < 0 ? ma27 : na, style=shape.triangledown, location=location.top, color=color.red) plotshape(ma27_slope >= 0 and not(ma27_slope[1] >= 0) ? ma27 : na, style=shape.triangleup, location=location.bottom, size=size.tiny, color=color.green) plotshape(ma27_slope < 0 and not(ma27_slope[1] < 0) ? ma27 : na, style=shape.triangledown, location=location.top, size=size.tiny, color=color.red) rising_2 = rising(ma27, 1) falling_2 = falling(ma27, 1) barcolor(color_bars ? no_trade and abs(ma27_slope) <= th ? color.white : jma_slope >= 0 ? rising_2 ? color.lime : color.green : falling_2 ? color.fuchsia : color.red : na)