커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

연장선 좀 요청 드림니다.

ㅇ 아래 수식 상기 그림 처럼 연장선 좀 요청 드림니다.## 아래 수식input:method(1);//1:"ADX",2:"Volatility"input:len(10);input:band_mult(1.8);input:upper_col(Blue);input:lower_col(Cyan);input:pos_col(Blue);input:neg_col(cyan);input:showTP(true);input:cooldown(20);input:sl_mult(0.4);input:showsl(true);input:tp1_mult(0.5);input:showtp1(true);input:tp2_mult(1.0);input:showtp2(false);input:tp3_mult(2.0);input:showtp3(false);input:entry_col(blue);input:sl_col(Red);input:bullColor(Lime);input:bearColor(Rgb(0,110,0));input:adx_thresh(17);input:adx_smooth(10);input:vol_mult_std(0.8);input:vol_mult_var(0.8);input:vol_mult_atr(0.9);var : A(0),isADX(False);A = ADX(len);#adx_smoothisADX = A < adx_thresh;var : logret(0),std_now(0),std_avg(0),atr_now(0),atr_avg(0),var_now(0),var_avg(0);var : isVolatility(False),methodDetected(False);logret = log(close / close[1]);std_now = std(logret, len);std_avg = ma(std_now, len);atr_now = atr(len);atr_avg = ma(atr_now, len);var_now = variance(logret, len,1);var_avg = ma(var_now, len);isVolatility = std_now < std_avg * vol_mult_std and var_now < var_avg * vol_mult_var and atr_now < atr_avg * vol_mult_atr;methodDetected = (method == 1 and isADX) or (method == 2 and isVolatility);var :rngfilt(close);var :trendColor(nan);var :rangeVisible(false);var :prev_hi(nan);var :prev_lo(nan);var :rangeStartBar(Nan);var :rangeBarsActive(0);var :lastBreakoutBar(nan);if methodDetected and rangeStartBar == False Then rangeStartBar = index;else if methodDetected == False Then rangeStartBar = Nan;if methodDetected Then rangeVisible = true;var : diff(0),r(0);diff = abs(high - low[1]);r = ma(2.618 * diff, 2000) * band_mult;var : prev(0),hhj(0),llj(0);prev = iff(isnan(rngfilt[1])==true,0,rngfilt[1]);hhJ = prev + abs(close - prev) / r * r;llJ = prev - abs(close - prev) / r * r;//rngfilt := rangefilter(hhJ, llJ, prev)var : hhBreak(False),hhTooClose(False),hhShift(0),llTooClose(False),llShift(0);var : step1(0),hhAbove(False),llBelow(False),prev_rngfilt(0);var : rngfilt_step_up(False),rngfilt_step_down(False);hhBreak = close > prev;hhTooClose = close - r < prev;hhShift = close - r;llTooClose = close + r > prev;llShift = close + r;step1 = iff(hhBreak , IFf(hhTooClose , prev , hhShift) , IFf(llTooClose , prev , llShift));hhAbove = close >= prev + r;llBelow = close <= prev - r;rngfilt = iff(hhAbove , hhJ , IFf(llBelow , llJ , step1));prev_rngfilt = iff(isnan(rngfilt[1])==true,0,rngfilt[1]);rngfilt_step_up = rngfilt > prev_rngfilt;rngfilt_step_down = rngfilt < prev_rngfilt;var : hiband(0),loband(0);var : up(False),down(False);var : TrendFast(0),TrendMed(0),TrendLong(0);#trendcomp(filt) => [filt, ta.sma(filt, 2), ta.sma(filt, 4)]hiband = rngfilt+r;loband = rngfilt-r;up = rngfilt > prev_rngfilt;down = rngfilt < prev_rngfilt;TrendFast = rngfilt;TrendMed = ma(rngfilt,2);TrendLong = ma(rngfilt,4);if methodDetected Then{ prev_hi = hiband; prev_lo = loband;}if methodDetected == False and (close[1] > prev_hi or close[1] < prev_lo) Then rangeVisible = false;var : MIDX1(0),MID1(0),MID2(0),MIDX2(0),MID3(0),MID4(0);MIDX1 = (hiband - rngfilt) / 3;MID1 = rngfilt + MIDX1;MID2 = MID1 + MIDX1;MIDX2 = (rngfilt - loband) / 3;MID3 = rngfilt - MIDX2;MID4 = MID3 - MIDX2;trendColor = iff(up , pos_col ,IFf( down , neg_col , trendColor[1]));////if rangeVisible == true Then//{// plot1(TrendFast, "Trend", trendColor);// plot2(MID1, "MID1", upper_col); // plot3(MID2, "MID2", upper_col); // plot4(MID3, "MID3", lower_col); // plot5(MID4, "MID4", lower_col); //}//Else//{// NoPlot(1);// NoPlot(2);// NoPlot(3);// NoPlot(4);// NoPlot(5);//}var : canTriggerBreakout(False),enterLong(False),enterShort(False);rangeBarsActive = iff(rangeStartBar, 0 , index - rangeStartBar);canTriggerBreakout = lastBreakoutBar or index - lastBreakoutBar >= cooldown;enterLong = rangeVisible and rngfilt_step_up and canTriggerBreakout;enterShort = rangeVisible and rngfilt_step_down and canTriggerBreakout;var : base(0),offset(0),tp1off(0),tp2off(0),tp3off(0);var : s(0),t1_(0),t2_(0),t3_(0);base = rngfilt;offset = r * sl_mult;tp1off = r * tp1_mult;tp2off = r * tp2_mult;tp3off = r * tp3_mult;var : sl(0),tp1(0),tp2(0),tp3(0),CC(0);var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0);if enterLong and showTP /*and (lastBreakoutBar == False or index - lastBreakoutBar >= cooldown)*/ Then{ TL_New(sDate,stime,0,sDate,sTime,999999999); s = base - offset; t1_ = base + tp1off; t2_ = base + tp2off; t3_ = base + tp3off; CC = close; SL = s; TP1 = t1_; TP2 = t2_; TP3 = t3_; TL1 = TL_New(sDate,sTime,CC,NextBarSdate,NextBarStime,CC); if showsl == true Then TL2 = TL_New(sDate,sTime,SL,NextBarSdate,NextBarStime,SL); if showtp1 == true Then TL3 = TL_New(sDate,sTime,TP1,NextBarSdate,NextBarStime,TP1); if showtp2 == true Then TL4 = TL_New(sDate,sTime,TP2,NextBarSdate,NextBarStime,TP2); if showtp3 == true Then TL5 = TL_New(sDate,sTime,TP3,NextBarSdate,NextBarStime,TP3); TL_SetColor(TL1,entry_col); TL_SetColor(TL2,sl_col); TL_SetColor(TL3,bullColor); TL_SetColor(TL4,bullColor); TL_SetColor(TL5,bullColor); TL_SetSize(TL1,5); TL_SetSize(TL2,5); TL_SetSize(TL3,5); TL_SetSize(TL4,5); TL_SetSize(TL5,5); lastBreakoutBar = index;}Else{ if Index < lastBreakoutBar+20 Then { TL_SetEnd(TL1,NextBarSdate,NextBarStime,CC); TL_SetEnd(TL2,NextBarSdate,NextBarStime,SL); TL_SetEnd(TL3,NextBarSdate,NextBarStime,TP1); TL_SetEnd(TL4,NextBarSdate,NextBarStime,TP2); TL_SetEnd(TL5,NextBarSdate,NextBarStime,TP3); }}if enterShort and showTP and (lastBreakoutBar == False or index - lastBreakoutBar >= cooldown) Then{ TL_New(sDate,stime,0,sDate,sTime,999999999); s = base + offset; t1_ = base - tp1off; t2_ = base - tp2off; t3_ = base - tp3off; CC = close; SL = s; TP1 = t1_; TP2 = t2_; TP3 = t3_; TL1 = TL_New(sDate,sTime,CC,NextBarSdate,NextBarStime,CC); if showsl == true Then TL2 = TL_New(sDate,sTime,SL,NextBarSdate,NextBarStime,SL); if showtp1 == true Then TL3 = TL_New(sDate,sTime,TP1,NextBarSdate,NextBarStime,TP1); if showtp2 == true Then TL4 = TL_New(sDate,sTime,TP2,NextBarSdate,NextBarStime,TP2); if showtp3 == true Then TL5 = TL_New(sDate,sTime,TP3,NextBarSdate,NextBarStime,TP3); TL_SetColor(TL1,entry_col); TL_SetColor(TL2,sl_col); TL_SetColor(TL3,bearColor); TL_SetColor(TL4,bearColor); TL_SetColor(TL5,bearColor); TL_SetSize(TL1,5); TL_SetSize(TL2,5); TL_SetSize(TL3,5); TL_SetSize(TL4,5); TL_SetSize(TL5,5); lastBreakoutBar = index;}매번 고맙습니다.
프로필 이미지
요타
2025-11-23
46
글번호 228327
지표
답변완료

글번호 228232 문의입니다

안녕하세요 .답변 2번 을 시스템(전략)으로 만들어 주시면 감사하겠습니다. 아래 -- shortSignal 의 정의가 있어야 될것 같긴한대데요.....2input : emaFastLen(8);input : emaSlowLen(21);input : atrPeriod(7);input : atrMult(1.8);input : squeezeLen(20);input : showVWAP(true);var : Emafast(0),Emaslow(0),Golden(False),death(False);var : src(0), alpha(0),ATRV(0),upperBand(0),lowerBand(0),direction(0),SuperTrend(C);emaFast = ema(close, emaFastLen);emaSlow = ema(close, emaSlowLen);golden = CrossUp(emaFast, emaSlow);death = CrossDown(emaFast, emaSlow);if CurrentBar > 1 Then { src = (H+L)/2; alpha = 1 / atrperiod ; ATRV = IFf(IsNan(ATRV[1]) == true, ma(TrueRange,atrperiod) , alpha * TrueRange + (1 - alpha) * IFf(isnan(ATRV[1])==true,0,ATRV[1])); upperBand = src + atrMult * AtrV; lowerBand = src - atrMult * AtrV; if lowerBand > lowerBand[1] or close[1] < lowerBand[1] Then lowerBand = lowerBand; Else lowerBand = lowerBand[1]; if upperBand < upperBand[1] or close[1] > upperBand[1] Then upperBand = upperBand; Else upperBand = upperBand[1]; if C > UpperBand Then direction = 1; if C < LowerBand Then direction = -1; if direction == 1 Then SuperTrend = lowerband; Else SuperTrend = upperband;}var : basis_sqz(0),dev_sqz(0),kcUpper(0),kcLower(0);var : squeezeOn(False),squeezeOff(False),mom(0),momCol(0),volSurge(False);basis_sqz = ma(close, squeezeLen);dev_sqz = std(close, squeezeLen);kcUpper = basis_sqz + 1.5 * dev_sqz;kcLower = basis_sqz - 1.5 * dev_sqz;squeezeOn = (kcLower > supertrend) or (kcUpper < supertrend);squeezeOff = squeezeOn == False;mom = close - (basis_sqz + kcUpper + kcLower) / 2;momCol = iff(mom > 0 , IFF(mom > mom[1], lime , green) , IFf(mom < mom[1], red , maroon));volSurge = volume > ma(volume, 20) * 2;var : hlc3(0),sum1(0),sum2(0),aboveVWAP(False),vwapVal(0),longSignal(False);hlc3 = (h+l+c)/3;if Bdate != Bdate[1] Then{ sum1 = 0; sum2 = 0;} sum1 = sum1 + (hlc3*v);sum2 = sum2 + v;vwapVal = sum1/sum2;aboveVWAP = close > vwapVal;longSignal = golden and direction < 0 and squeezeOff and volSurge and aboveVWAP;if longSignal == true Then Find(1);
프로필 이미지
knoll
2025-11-23
46
글번호 228326
시스템
답변완료

부탁합니다

아래수식에서 상하밴드의 중간선이 나올수있게 부탁합니다.(중간선의 색상을 상승하락으로 구분할수 있게 부탁합니다) 또하나 가상선의 선굵기를 속성에서 변경헐수 있도록 부탁합니다.* 글을 수정하니 칸바뀜없이 이상하게 되어버립니다. input : len(88),mult(2.0);input : cu(cyan),cl(cyan);input : dashed(false);input : transp(true);var : src(0),crr(0),k(0),sum(0),i(0),dev(0);var : nmid(0),nupper(0),nlower(0);var : upper(0),lower(0);Array : dizii[500](0);src = (h+l+c)/3;Function cr Numeric input : x(Numeric),y(Numeric); var : z(0),weight(0),i(0); z = 0.0; weight = 0.0; for i = 0 to y - 1 step 1 { z = z + x[i] * ((y - 1) / 2 + 1 -abs(i - (y - 1) / 2)); } cr = z / ((y + 1) / 2 * (y + 1) / 2);EndFunctioncrr = cr(src, 2 * len - 1);for k = 0 to len - 1 step 1{ sum = 0.0; for i = 0 to 2 * len - 2 - k step 1 { sum = sum + (len - abs(len - 1 - k - i)) * src[i] / (len * len - k * (k + 1) / 2); } dizii[k] = sum;}dev = mult * std(src, len);nmid = wma(src, len);nupper = nmid + wma(dev,len);nlower = nmid - wma(dev,len);upper = crr + cr(dev, 2 * len - 1);lower = crr - cr(dev, 2 * len - 1);plot1(lower,"lowr",cl);plot2(upper,"upper",cu);FixPlotShift(1,1 - len);FixPlotShift(2,1 - len);var : d(0),tra(0);d = iff(dashed , 2 , 1);tra = iff(transp , 1 , 0);Array : diz[500](0),lin[500](0),diz2[500](0),lin2[500](0);var : dv(0);if index > len Then{ For i = 0 to 499 { TL_Delete(lin[i]); TL_Delete(lin2[i]); } for k = 0 to len - 1 step 1 { sum = 0.0; dv = 0.0; for i = 0 to 2 * len - 2 - k step 1 { sum = sum + (len - abs(len - 1 - k - i)) * src[i] / (len * len - k * (k + 1) / 2); dv = dv + (len - abs(len - 1 - k - i)) * dev[i] / (len * len - k * (k + 1) / 2); } diz[k] = sum + dv; diz2[k] = sum - dv; } for i = 0 to len / d - 2 step 1 { var1 = index + i * d + 1 - len; var2 = index + i * d + 2 - len; lin[i] = TL_new(sDate[Index-var1],sTime[Index-var1],diz[i*d],sDate[Index-var2],sTime[Index-var2],diz[i * d + 1]); TL_SetColor(lin[i],cu); var3 = index + i * d + 1 - len; var4 = index + i * d + 2 - len; lin2[i] = TL_new(sDate[Index-var3],sTime[Index-var3],diz2[i*d],sDate[Index-var4],sTime[Index-var4],diz2[i * d + 1]); TL_SetColor(lin2[i],cl); }}
프로필 이미지
as8282
2025-11-22
53
글번호 228325
지표
답변완료

수정문의

input : 기간(15); var : myema(0),correction(0),myZLMA (0); myEMA = Ema(C, 기간); correction = C + (C - myEMA); myZLMA = Ema(correction, 기간) ; var1 = Ema(C,200); if CrossUp(myZLMA ,myEMA) and CountIf(CrossUp(myZLMA ,var1),2) >= 1 and countif(myZLMA > myZLMA[1] and myEMA > myEMA[1] and var1 > var1[1],2) == 2 Then Find(1); 위의 수식을 아래 사항을 반영한 수식으로 수정코자 하오니 한번 봐주세요. 1. ZLMA가 EMA15를 Crossup(0봉전)+RSI(14)가 60돌파(0봉전)+1봉전~5봉전 RSI(14)<59.9 + 거래량 전일대비 200%이상(0봉전)+종가 전일대비 3%이상 상승(0봉전) or 2. ZLMA가 EMA15를 Crossup(1봉전)+RSI(14)<59.9(1봉전~5봉전)+RSI(14)가 60돌파(0봉전)+거래량 전일대비 200%이상(0봉전)+종가 전일대비 3%이상 상승(0봉전) or 3. ZLMA가 EMA15를 Crossup(0봉전)+RSI(14)>60(0봉전)+RSI(14)가 60돌파(1봉전)+2봉전~6봉전 RSI(14)<59.9 + 거래량 전일대비 200%이상(1봉전)+종가 전일대비 3%이상 상승(1봉전) =====>RSI(14)가 60돌파일을 기준으로 돌파일 1봉전에 ZLMA가 EMA15돌파 OR 0봉전에 돌파 OR 1봉 후에 돌파하는 케이스.(단, 거래량/가격상승은 모두 RSI 60돌파일) 4. 200지수이평; 2봉연속 상승(상승추세) 5. myZLMA, myEMA ; 2봉연속 상승 6. 200EMA돌파는 삭제
프로필 이미지
ksks
2025-11-22
73
글번호 228323
종목검색
답변완료

문의 드립니다

복합차트에서 주간선물의 시가를 표시하고 싶습니다 (아침 8시45분 시가)감사합니다
프로필 이미지
러블리
2025-11-22
48
글번호 228322
지표
답변완료

문의드림니다

Inputs: FastLen(5), MedLen(20), SlowLen(60); Variables: FastAvg(0), MedAvg(0), SlowAvg(0); FastAvg = MA(Close, FastLen); MedAvg = MA(Close, MedLen); SlowAvg = MA(Close, SlowLen); If (FastAvg[1] < MedAvg[1] OR MedAvg[1] < SlowAvg[1]) AND (FastAvg > MedAvg AND MedAvg > SlowAvg) Then Buy ("MAC3_LE"); If (FastAvg[1] > MedAvg[1] OR MedAvg[1] > SlowAvg[1]) AND (FastAvg < MedAvg AND MedAvg < SlowAvg) Then Sell ("MAC3_SE");죄송합니다 ~ 아까 매수진입 매도 청산만 물어봣네요 해외선물 ma3 정배열 매도진입 매수청산 부탁드립니다 감사합니다 수고하세요~~~
프로필 이미지
okguy778
2025-11-21
66
글번호 228318
시스템
답변완료

문의 드립니다.

몇 % 수익이 발생한 후 부터 체크해서 수익의 몇%가 떨어지면 즉 트레일링 성격으로 익절을 하고 싶습니다.감사합니다.
프로필 이미지
그리움
2025-11-21
62
글번호 228301
시스템
답변완료

문의드립니다

아래수식은 data2파라볼릭매도시 data1매수식인데요.즉 파라볼반대로수식입니다.1. n%강제청산식 과강제청산후 data1재진입금지식부탁드립니다.if data2(C < sar(0.02,0.2)) Then Buy(); if data2(C > sar(0.02,0.2)) Then Sell();
프로필 이미지
2685up
2025-11-21
58
글번호 228300
시스템
답변완료

문의드림니다

Inputs: FastLen(5), MedLen(20), SlowLen(60); Variables: FastAvg(0), MedAvg(0), SlowAvg(0); FastAvg = MA(Close, FastLen); MedAvg = MA(Close, MedLen); SlowAvg = MA(Close, SlowLen); If (FastAvg[1] < MedAvg[1] OR MedAvg[1] < SlowAvg[1]) AND (FastAvg > MedAvg AND MedAvg > SlowAvg) Then Buy ("MAC3_LE"); If (FastAvg[1] > MedAvg[1] OR MedAvg[1] > SlowAvg[1]) AND (FastAvg < MedAvg AND MedAvg < SlowAvg) Then Sell ("MAC3_SE");해외선물 ma3 정배열 역배열에서 매수 신호에는 진입 매도 신호에는 청산 수식 부탁드립니다~~ 즐거운 하루 되세요~~~
프로필 이미지
okguy778
2025-11-21
60
글번호 228297
시스템
답변완료

228262관련입니다.

글번호 228262의 답변2는 지표수식 아닌가요?그렇다면 chandelier exit을 검색하는 종목검색 수식이 가능할까요?예를들면 60분봉에서.
프로필 이미지
ksks
2025-11-21
53
글번호 228296
종목검색