커뮤니티

지표문의

프로필 이미지
성공예견
2025-12-21 11:36:27
122
글번호 229236
답변완료

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.그럼수고하세요

지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-12-23 10:56:32

안녕하세요 예스스탁입니다. 해당 수식에 box는 출력 내용이 없습니다. 아마 이전 수식에서 상용되었던 내용이 남아있는것 같습니다. 삭제해 드립니다. 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 { // ===================== SuperTrend 1 ===================== alpha1 = 1 / period1; source1 = max(high - low, abs(high - close[1]), abs(low - close[1])); AtrV1 = alpha1 * source1 + (1 - alpha1) * AtrV1[1]; 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; // ===================== SuperTrend 2 ===================== alpha2 = 1 / period2; source2 = max(high - low, abs(high - close[1]), abs(low - close[1])); AtrV2 = alpha2 * source2 + (1 - alpha2) * AtrV2[1]; 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; // ===================== SuperTrend 3 ===================== alpha3 = 1 / period3; source3 = max(high - low, abs(high - close[1]), abs(low - close[1])); AtrV3 = alpha3 * source3 + (1 - alpha3) * AtrV3[1]; 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; // ===================== Plot ===================== 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); var1 = C; var2 = Index; TL1 = TL_New(sdate[3],sTime[3],var1,sDate,sTime,var1); TL_SetColor(TL1,Red); TL_SetSize(TL1,1); } 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); var3 = C; var4 = Index; TL2 = TL_New(sdate[3],sTime[3],var3,sDate,sTime,var3); TL_SetColor(TL2,Blue); TL_SetSize(TL2,1); } else { if var2 > 0 and Index < var2 + 3 then { TL_SetEnd(TL1, NextBarSdate, NextBarStime, var1); } if var4 > 0 and Index < var4 + 3 then { TL_SetEnd(TL2, NextBarSdate, NextBarStime, var3); } } 즐거운 하루되세요