커뮤니티

파인스크립트를 예스랭귀지로 부탁드려요~~

프로필 이미지
정보대국
2023-08-18 15:37:05
1012
글번호 171641
답변완료
이것저것 해보는데 능력부족인지라... 부탁드립니다~~ atrPeriod1 = input(10, "ATR Length") factor1 = input.float(1.0, "Factor", step = 0.01) [supertrend1, direction1] = ta.supertrend(factor1, atrPeriod1) bodyMiddle1 = plot((open + close) / 2, display=display.none) upTrend1 = plot(direction1 < 0 ? supertrend1 : na, "Up Trend", color = color.green, style=plot.style_linebr) downTrend1 = plot(direction1 < 0? na : supertrend1, "Down Trend", color = color.red, style=plot.style_linebr) //fill(bodyMiddle, upTrend, color.new(color.green, 90), fillgaps=false) //fill(bodyMiddle, downTrend, color.new(color.red, 90), fillgaps=false) atrPeriod2 = input(11, "ATR Length") factor2 = input.float(2.0, "Factor", step = 0.01) [supertrend2, direction2] = ta.supertrend(factor2, atrPeriod2) bodyMiddle2 = plot((open + close) / 2, display=display.none) upTrend2 = plot(direction2 < 0 ? supertrend2 : na, "Up Trend", color = color.green, style=plot.style_linebr) downTrend2 = plot(direction2 < 0? na : supertrend2, "Down Trend", color = color.red, style=plot.style_linebr) atrPeriod3 = input(12, "ATR Length") factor3 = input.float(3.0, "Factor", step = 0.01) [supertrend3, direction3] = ta.supertrend(factor3, atrPeriod3) bodyMiddle3 = plot((open + close) / 2, display=display.none) upTrend3 = plot(direction3 < 0 ? supertrend3 : na, "Up Trend", color = color.green, style=plot.style_linebr) downTrend3 = plot(direction3 < 0? na : supertrend3, "Down Trend", color = color.red, style=plot.style_linebr)
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-08-18 17:53:58

안녕하세요 예스스탁입니다. input : ATrPeriod1(10),factor1(1.0); var : src1(0),ATrv1(0),upperband1(0),lowerBand1(0),direction1(0),superTrend1(0); var : prevupperband1(0),prevlowerBand1(0),prevsupertrend1(0); src1 = (h+l)/2; atrv1 = atr(atrPeriod1); upperBand1 = src1 + factor1 * atrv1; lowerBand1 = src1 - factor1 * atrv1; prevLowerBand1 = iff(IsNan(lowerBand1[1])==False,lowerBand1[1],0); prevUpperBand1 = iff(IsNan(upperBand1[1])==false,upperBand1[1],0); lowerBand1 = iff(lowerBand1 > prevLowerBand1 or close[1] < prevLowerBand1 , lowerBand1 , prevLowerBand1); upperBand1 = iff(upperBand1 < prevUpperBand1 or close[1] > prevUpperBand1 , upperBand1 , prevUpperBand1); prevsupertrend1 = iff(IsNan(SuperTrend1[1])==false,SuperTrend1[1],0); if isnan(atrv1[1]) == true Then direction1 = 1; else if prevsupertrend1 == prevUpperBand1 Then direction1 = iff(close > upperBand1 , -1 , 1); else direction1 = iff(close < lowerBand1 , 1 , -1); superTrend1 = iff(direction1 == -1 , lowerBand1 , upperBand1); if direction1 < 0 Then Plot1(superTrend1,"upTrend1",Green); Else NoPlot(1); if direction1 > 0 Then Plot2(superTrend1,"downTrend1",Red); Else NoPlot(2); input : ATrPeriod2(11),factor2(2.0); var : src2(0),ATrv2(0),upperband2(0),lowerBand2(0),direction2(0),superTrend2(0); var : prevupperband2(0),prevlowerBand2(0),prevsupertrend2(0); src2 = (h+l)/2; atrv2 = atr(atrPeriod2); upperBand2 = src2 + factor2 * atrv2; lowerBand2 = src2 - factor2 * atrv2; prevLowerBand2 = iff(IsNan(lowerBand2[1])==False,lowerBand2[1],0); prevUpperBand2 = iff(IsNan(upperBand2[1])==false,upperBand2[1],0); lowerBand2 = iff(lowerBand2 > prevLowerBand2 or close[1] < prevLowerBand2 , lowerBand2 , prevLowerBand2); upperBand2 = iff(upperBand2 < prevUpperBand2 or close[1] > prevUpperBand2 , upperBand2 , prevUpperBand2); prevsupertrend2 = iff(IsNan(SuperTrend2[1])==false,SuperTrend2[1],0); if isnan(atrv2[1]) == true Then direction2 = 1; else if SuperTrend2[1] == UpperBand2[1] Then direction2 = iff(close > upperBand2 , -1 , 1); else direction2 = iff(close < lowerBand2 , 1 , -1); superTrend2 = iff(direction2 == -1 , lowerBand2 , upperBand2); if direction2 < 0 Then Plot3(superTrend2,"upTrend2",Green); Else NoPlot(3); if direction2 > 0 Then Plot4(superTrend2,"downTrend2",Red); Else NoPlot(4); input : ATrPeriod3(12),factor3(3.0); var : src3(0),ATrv3(0),upperband3(0),lowerBand3(0),direction3(0),superTrend3(0); var : prevupperband3(0),prevlowerBand3(0),prevsupertrend3(0); src3 = (h+l)/2; atrv3 = atr(atrPeriod3); upperBand3 = src3 + factor3 * atrv3; lowerBand3 = src3 - factor3 * atrv3; prevLowerBand3 = iff(IsNan(lowerBand3[1])==False,lowerBand3[1],0); prevUpperBand3 = iff(IsNan(upperBand3[1])==false,upperBand3[1],0); lowerBand3 = iff(lowerBand3 > prevLowerBand3 or close[1] < prevLowerBand3 , lowerBand3 , prevLowerBand3); upperBand3 = iff(upperBand3 < prevUpperBand3 or close[1] > prevUpperBand3 , upperBand3 , prevUpperBand3); prevsupertrend3 = iff(IsNan(SuperTrend3[1])==false,SuperTrend3[1],0); if isnan(atrv3[1]) == true Then direction3 = 1; else if prevsupertrend3 == prevUpperBand3 Then direction3 = iff(close > upperBand3 , -1 , 1); else direction3 = iff(close < lowerBand3 , 1 , -1); superTrend3 = iff(direction3 == -1 , lowerBand3 , upperBand3); if direction3 < 0 Then Plot5(superTrend3,"upTrend3",Green); Else NoPlot(5); if direction3 > 0 Then Plot6(superTrend3,"downTrend3",Red); Else NoPlot(6); 즐거운 하루되세요 > 정보대국 님이 쓴 글입니다. > 제목 : 파인스크립트를 예스랭귀지로 부탁드려요~~ > 이것저것 해보는데 능력부족인지라... 부탁드립니다~~ atrPeriod1 = input(10, "ATR Length") factor1 = input.float(1.0, "Factor", step = 0.01) [supertrend1, direction1] = ta.supertrend(factor1, atrPeriod1) bodyMiddle1 = plot((open + close) / 2, display=display.none) upTrend1 = plot(direction1 < 0 ? supertrend1 : na, "Up Trend", color = color.green, style=plot.style_linebr) downTrend1 = plot(direction1 < 0? na : supertrend1, "Down Trend", color = color.red, style=plot.style_linebr) //fill(bodyMiddle, upTrend, color.new(color.green, 90), fillgaps=false) //fill(bodyMiddle, downTrend, color.new(color.red, 90), fillgaps=false) atrPeriod2 = input(11, "ATR Length") factor2 = input.float(2.0, "Factor", step = 0.01) [supertrend2, direction2] = ta.supertrend(factor2, atrPeriod2) bodyMiddle2 = plot((open + close) / 2, display=display.none) upTrend2 = plot(direction2 < 0 ? supertrend2 : na, "Up Trend", color = color.green, style=plot.style_linebr) downTrend2 = plot(direction2 < 0? na : supertrend2, "Down Trend", color = color.red, style=plot.style_linebr) atrPeriod3 = input(12, "ATR Length") factor3 = input.float(3.0, "Factor", step = 0.01) [supertrend3, direction3] = ta.supertrend(factor3, atrPeriod3) bodyMiddle3 = plot((open + close) / 2, display=display.none) upTrend3 = plot(direction3 < 0 ? supertrend3 : na, "Up Trend", color = color.green, style=plot.style_linebr) downTrend3 = plot(direction3 < 0? na : supertrend3, "Down Trend", color = color.red, style=plot.style_linebr)