답변완료
보조지표 및 검색식 요청 드립니다
트레이딩뷰에 있는 지표 인데요.. 예스트레이더로 변환이 가능 할까요?가능 하다면 지표(아마 예스트레이더에선 강조가 될듯합니다)와 검색식을 부탁 드리고자 합니다 검색식은 첨부 그림처럼 buy신호가 뜰때 입니다source = closehilow = ((high - low)*100)openclose = ((close - open)*100)vol = (volume / hilow)spreadvol = (openclose * vol)VPT = spreadvol + cum(spreadvol)window_len = 28v_len = 14price_spread = stdev(high-low, window_len)v = spreadvol + cum(spreadvol)smooth = sma(v, v_len)v_spread = stdev(v - smooth, window_len)shadow = (v - smooth) / v_spread * price_spreadout = shadow > 0 ? high + shadow : low + shadow//plot(out, style=line,linewidth=3, color=color)len=input(10)vpt=ema(out,len)//lineColor = vpt > vpt[1] ? color.green : color.red//plot(vpt, linewidth=3, color=lineColor)//x=crossover(vpt , vpt[1]) and vpt > vpt[1]//z=crossunder(vpt , vpt[1]) and vpt <vpt[1]//plotshape(crossover(vpt , vpt[1]) and vpt > vpt[1], "up arrow", shape.triangleup, location.belowbar, color.green,size=size.tiny)//plotshape(crossunder(vpt , vpt[1]) and vpt <vpt[1] , "down arrow", shape.triangledown, location.abovebar, color.red,size=size.tiny)//// INPUTS //st_mult = input(1, title = 'SuperTrend Multiplier', minval = 0, maxval = 100, step = 0.01)st_period = input(100, title = 'SuperTrend Period', minval = 1)// CALCULATIONS //up_lev = vpt - (st_mult * atr(st_period))dn_lev = vpt + (st_mult * atr(st_period))up_trend = 0.0up_trend := close[1] > up_trend[1] ? max(up_lev, up_trend[1]) : up_levdown_trend = 0.0down_trend := close[1] < down_trend[1] ? min(dn_lev, down_trend[1]) : dn_lev// Calculate trend vartrend = 0trend := close > down_trend[1] ? 1: close < up_trend[1] ? -1 : nz(trend[1], 1)// Calculate SuperTrend Linest_line = trend ==1 ? up_trend : down_trend// Plottingplot(st_line[1], color = trend == 1 ? color.green : color.red , style = plot.style_cross, linewidth = 2, title = "SuperTrend")buy=crossover( close, st_line)sell=crossunder(close, st_line)//plotshape(crossover( close, st_line), location = location.belowbar, color = color.green,size=size.tiny)//plotshape(crossunder(close, st_line), location = location.abovebar, color = color.red,size=size.tiny)plotshape(buy,title="Buy", color=color.blue, style=shape.arrowup,location=location.belowbar, text="Buy")plotshape(sell,title="Sell", color=color.black, style=shape.arrowdown,text="Sell")/////// Alerts /////alertcondition(buy,title="buy")alertcondition(sell,title="sell")
2025-12-22
125
글번호 229260
지표
답변완료
종목 검색 수식 검토 부탁드립니다.
input : 기간1(120);VAR : B1(0),B2(0),B3(0),B4(0),B5(0),B6(0),B7(0),BB(0),BB1(0),A0(0);VAR : A(0),A1(0),EQ(0),Z(0),Z1(0),MA20(0),MA60(0),MM20(0),MM60(0); B1=ifF(Ema(C,12)-Ema(C,26) > Ema(Ema(C,12)-Ema(C,26),9), 1,-1);B2=ifF(C > MA(C, 20), 1, -1);B3=ifF((C - C[12]) / C[12] * 100 > 0, 1, -1);B4=ifF(ema((C-lowest(L, 5)) / (highest(H, 5) - lowest(L, 5)) * 100, 3)>50, 1, -1);B5=IfF(CCI(20) > 0,1,-1);B6=IfF(C > SAR(0.02,0.2),1,-1);B7=IfF((ema(Accum(((C -L)-(H- C))/ (H-L)*V), 3)-ema(Accum(((C -L)-(H- C))/(H-L)*V), 10))>0,1,-1);A0=B1+B2+B3+B4+B5+B6+B7;BB=ema(A0,9);BB1=(BB-lowest(BB,기간1))/(highest(BB,기간1)-lowest(BB,기간1))*100; A=LRL(C,50);A1=LRL(A,50);eq= A-A1;z =A+eq;Z1=(Z-lowest(Z,기간1))/(highest(Z,기간1)-lowest(Z,기간1))*100; MA20 = (C - EmA(C, 20)) / EMA(C, 20) * 100;MM20=(MA20-lowest(MA20,기간1))/(highest(MA20,기간1)-lowest(MA20,기간1))*100; MA60 = (C - EMA(C, 60)) / EMA(C, 60) * 100;MM60=(MA60-lowest(MA60,기간1))/(highest(MA60,기간1)-lowest(MA60,기간1))*100; 조건= (BB1>Z1 && BB1>MM20 && BB1>MM60) OR (BB1<Z1 && BB1<MM20 && BB1<MM60) OR BB1<1 OR BB1>99; IF 조건==TRUE TheNFind(1);윗 식으로 는 지표간 비교가 가능한지 검토 부탁드립니다
답변완료
지표문의
1.아래는 수식 검색하다 찾은 지표인데 TX = Text_New(sDate,sTime,L,"▲"); Text_SetStyle(tx,2,0); Text_SetSize(tx,20); Text_SetColor(tx,Red); 표시중 화살표시를 수평선(좌봉3개,우봉3개 총6개)길이로바꾸고 굵기두 조정 할수있게하고 ,"▲" 생길때 해당값 출력되도록 해 주세요. 아래는 반대로 TX = Text_New(sDate,sTime,H,"▼"); Text_SetStyle(tx,2,1); Text_SetSize(tx,20); Text_SetColor(tx,Blue); Else { if var4 > 0 and Index < var4+5 Then { TL_SetEnd(TL1,NextBarSdate,NextBarStime,var1); TL_SetEnd(TL2,NextBarSdate,NextBarStime,var2); TL_SetEnd(TL3,NextBarSdate,NextBarStime,var3); Box_SetEnd(box1,NextBarSdate,NextBarStime,var2); Box_SetEnd(box2,NextBarSdate,NextBarStime,var3); } } 위의 else 문장부분 무슨의미인가요? 설명두 부탁드릴께요. input : period1(10),multiplier1(3); input : period2(20),multiplier2(2); input : period3(30),multiplier3(3); var : src(0); var : AtrV1(0),upperBand1(0),lowerBand1(0), prevLowerBand1(0), prevUpperBand1(0); var : prevSuperTrend1(0), superTrend1(C), direction1(0),alpha1(0),source1(0); var : AtrV2(0),upperBand2(0),lowerBand2(0), prevLowerBand2(0), prevUpperBand2(0); var : prevSuperTrend2(0), superTrend2(C), direction2(0),alpha2(0),source2(0); var : AtrV3(0),upperBand3(0),lowerBand3(0), prevLowerBand3(0), prevUpperBand3(0); var : prevSuperTrend3(0), superTrend3(C), direction3(0),alpha3(0),source3(0); var : TL1(0),TL2(0),TL3(0),TL(0),box1(0),box2(0); src = (H+L)/2; if CurrentBar > 1 Then { alpha1 = 1 / period1; source1 = max(high - low, abs(high - close[1]), abs(low - close[1])); ATrV1 = alpha1 * source1 + (1 - alpha1) * ATrV1[1]; //지수가중이평방식 //ATrV = ma(source,AtrPeriod); //단순이평방식 upperBand1 = src + multiplier1 * AtrV1; lowerBand1 = src - multiplier1 * AtrV1; prevLowerBand1 = lowerBand1[1]; prevUpperBand1 = upperBand1[1]; if lowerBand1 > prevLowerBand1 or close[1] < prevLowerBand1 Then lowerBand1 = lowerBand1; Else lowerBand1 = prevLowerBand1; if upperBand1 < prevUpperBand1 or close[1] > prevUpperBand1 Then upperBand1 = upperBand1; Else upperBand1 = prevUpperBand1; if C > UpperBand1 Then direction1 = 1; if C < LowerBand1 Then direction1 = -1; if direction1 == 1 Then supertrend1 = lowerband1; Else supertrend1 = upperband1; alpha2 = 1 / period2; source2 = max(high - low, abs(high - close[1]), abs(low - close[1])); ATrV2 = alpha2 * source2 + (1 - alpha2) * ATrV2[1]; //지수가중이평방식 //ATrV = ma(source,AtrPeriod); //단순이평방식 upperBand2 = src + multiplier2 * AtrV2; lowerBand2 = src - multiplier2 * AtrV2; prevLowerBand2 = lowerBand2[1]; prevUpperBand2 = upperBand2[1]; if lowerBand2 > prevLowerBand2 or close[1] < prevLowerBand2 Then lowerBand2 = lowerBand2; Else lowerBand2 = prevLowerBand2; if upperBand2 < prevUpperBand2 or close[1] > prevUpperBand2 Then upperBand2 = upperBand2; Else upperBand2 = prevUpperBand2; if C > UpperBand2 Then direction2 = 1; if C < LowerBand2 Then direction2 = -1; if direction2 == 1 Then supertrend2 = lowerband2; Else supertrend2 = upperband2; alpha3 = 1 / period3; source3 = max(high - low, abs(high - close[1]), abs(low - close[1])); ATrV3 = alpha3 * source3 + (1 - alpha3) * ATrV3[1]; //지수가중이평방식 //ATrV = ma(source,AtrPeriod); //단순이평방식 upperBand3 = src + multiplier3 * AtrV3; lowerBand3 = src - multiplier3 * AtrV3; prevLowerBand3 = lowerBand3[1]; prevUpperBand3 = upperBand3[1]; if lowerBand3 > prevLowerBand3 or close[1] < prevLowerBand3 Then lowerBand3 = lowerBand3; Else lowerBand3 = prevLowerBand3; if upperBand3 < prevUpperBand3 or close[1] > prevUpperBand3 Then upperBand3 = upperBand3; Else upperBand3 = prevUpperBand3; if C > UpperBand3 Then direction3 = 1; if C < LowerBand3 Then direction3 = -1; if direction3 == 1 Then supertrend3 = lowerband3; Else supertrend3 = upperband3; if C > superTrend1 Then { Plot1(superTrend1,"매수1", rgb(247, 75, 201), 0, 1); NoPlot(2); } Else { Plot2(superTrend1,"매도1", Indigo, 0, 1); NoPlot(1); } if C > superTrend2 Then { Plot3(superTrend2,"매수2", rgb(247, 75, 201), 0, 2); NoPlot(4); } Else { Plot4(superTrend2,"매도2", Indigo, 0, 2); NoPlot(3); } if C > superTrend3 Then { Plot5(superTrend3,"매수3", rgb(247, 75, 201), 0, 7); NoPlot(6); } Else { Plot6(superTrend3,"매도3", Indigo, 0, 7); NoPlot(5); } } var : box(0),tx(0); if CrossUp(c,supertrend2) Then { TL = TL_New(sDate,sTime,0,sDate,sTime,99999999); TL_SetColor(TL,rgb(255, 215, 0)); TL_SetSize(TL,1); TL_SetStyle(TL,2); TX = Text_New(sDate,sTime,L,"▲"); Text_SetStyle(tx,2,0); Text_SetSize(tx,20); Text_SetColor(tx,Red); } Else if CrossDown(c,supertrend2) Then { TL = TL_New(sDate,sTime,0,sDate,sTime,999999999); TL_SetColor(TL, rgb(193, 216, 251)); TL_SetSize(TL,2); TL_SetStyle(TL,2); TX = Text_New(sDate,sTime,H,"▼"); Text_SetStyle(tx,2,1); Text_SetSize(tx,20); Text_SetColor(tx,Blue); } Else { if var4 > 0 and Index < var4+5 Then { TL_SetEnd(TL1,NextBarSdate,NextBarStime,var1); TL_SetEnd(TL2,NextBarSdate,NextBarStime,var2); TL_SetEnd(TL3,NextBarSdate,NextBarStime,var3); Box_SetEnd(box1,NextBarSdate,NextBarStime,var2); Box_SetEnd(box2,NextBarSdate,NextBarStime,var3); } } 2.그럼수고하세요
2025-12-21
120
글번호 229236
지표