커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

수식요청

input : N(120),Per(30); var : A1(0),A2(0),mav(0),hh(0),ll(0); A1=LRL(C,20); A2=LRL(C,40); if CrossUp(A1,A2) Then var1 = A1; mav = ma(C,10); if var1[1] > mav[1] and var1 < mav and var1[1] > var1*1.15 and mav[1] < mav and C<var1 and C>C[1]*1.05 Then Find(1); ============================================= 상기 수식은 며칠 전 작성해 주신 상승LRL을 반대로 이용, 15%이상 하락LRL의 종목검색을 만들어봤읍니다. 예스랭귀지 검증은 통과하는데 한번 봐주십시요. 별도로, LRL이 위와같이 15%이상 하락 시 그 하락일로부터 1 ~ 20일 이내에 (이 기간, LRL은 동일) RSI(20)이 70을 돌파하는 시점을 검색하려면 수식을 어찌해야 하는지요. 이 경우 위의 마지막부분 "mav[1] < mav and C<var1 and C>C[1]*1.05"은 빼도 될거같네요.
프로필 이미지
ksks
2025-03-31
505
글번호 189700
종목검색
답변완료

안녕하세요.. 이평선 위치 문의입니다.

안녕하세요.. 전일종가대비종가 15%이상 양봉이 발생 했을 때 위 아래 꼬리 제외 한 몸통의 1/2지점과 시가 사이에 120 지수 이평이 위치 하는 검색식을 알고 싶습니다. 항상 감사드립니다.
프로필 이미지
손느린주식
2025-03-31
397
글번호 189699
검색
답변완료

수식전환 부탁드립니다.

1. Hu = ma( 가격, 기간 ) ; UP = HU < HU(1) && HU(1) > HU(2) ; LL = Valuewhen(1, UP, L(1) ); DN = HU > HU(1) && HU(1) < HU(2) ; HH = ValueWhen(1, DN, H(1) ) ; bsUp = Barssince( UP )+1 ; BsM = valueWhen(1, crossdown( HU, LL ), bsUp ) ; Cnt = Countsince( crossdown( HU, LL ), HU < LL ) ; C1 = BsM < Cnt && crossup( C, HH ) 2. M = ma( C, 기간, 삼각 ) ; HH = highestsince(1, crossup( c, M ), H ) ; MM = highestsince(1, crossup( c, M ), M ) ; C1 = crossup( c, M ) ; bs = barssince( C1 ) + 1 ; Cnt = countsince( C1, C > M ) ; CC1 = Bs == Cnt && Bs > 20 && crossup( C, ( HH + MM)/2 ) ; Signal = Countsince( C1, CC1 ) ; c2 = Signal == 1 && Signal(1) ==0 c1과 c2를 각각 만족하는 종목검색 수식 감사합니다
프로필 이미지
예그리나
2025-03-30
451
글번호 189698
종목검색
답변완료

종목 검색 부탁드립니다.

기준=C>O&&V>V(1)*비율; 정의V=Valuewhen(1,기준,V/2); 캔들기준=if(BarsSince(기준)<봉수,정의V,0); 음거=if(C<O&&C<C(1),V,0); 범위=sum(음거); 음거10=범위-Valuewhen(1,기준,범위(1)); 최종=if(BarsSince(기준)<봉수,음거10,0); Crossup(최종,캔들기준) 지표변수 비율 20 봉수 5 종목 검색식 부탁 드립니다
프로필 이미지
골든도라도
2025-03-30
396
글번호 189697
종목검색
답변완료

종목 검색식 변환 부탁드립니다

안녕하세요 트레이딩뷰 수식 예스 검색식으로 0선 밑에서 골든크로스 검색되게 변환 부탁드립니다 // INPUTS ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――{ int length = input.int(20, minval=1, title="Filter Length") bool disp_lvl = input.bool(true, "Levels") color up_color = input.color(#55ffda, "", inline = "color") color dn_color = input.color(#8c5bff, "", inline = "color") var buy_line = line(na) var sell_line = line(na) // } // CALCULATIONS――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――{ float sma1 = ta.sma(close, 25) float sma_n1 = ((close - sma1) - ta.sma(close - sma1, 25)) / ta.stdev(close - sma1, 25) float area = ta.sma(high-low, 100) // Two-pole smooth filter function f_two_pole_filter(source, length) => var float smooth1 = na var float smooth2 = na alpha = 2.0 / (length + 1) if na(smooth1) smooth1 := source else smooth1 := (1 - alpha) * smooth1 + alpha * source if na(smooth2) smooth2 := smooth1 else smooth2 := (1 - alpha) * smooth2 + alpha * smooth1 // Oscillator two_p = f_two_pole_filter(sma_n1, length) two_pp = two_p[4] // Colors color buy_col1 = color.from_gradient(two_p, -1, 0.5, up_color, na) color buy_col2 = color.from_gradient(two_p, -1, 0.5, color.new(up_color, 50), na) color sell_col1 = color.from_gradient(two_p, -0.5, 1, na, dn_color) color sell_col2 = color.from_gradient(two_p, -0.5, 1, na, color.new(dn_color, 50)) color color = two_p > two_pp ? color.from_gradient(two_p, -1,1, up_color, color.new(up_color, 0)) : color.from_gradient(two_p, -1,1,color.new(dn_color, 0), dn_color) // Signals bool buy = ta.crossover(two_p, two_pp) and two_p < 0 and barstate.isconfirmed bool sell = ta.crossunder(two_p, two_pp) and two_p > 0 and barstate.isconfirmed // } 항상 감사합니다
프로필 이미지
신의천기사
2025-03-30
440
글번호 189696
종목검색
답변완료

문의드립니다

var : xClose(0),xOpen(0),xHigh(0),xLow(0); if Bdate != Bdate[1] Then { xOpen = open; xClose = (O+H+L+C+c)/5; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C+c)/5; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } if XClose > Xopen Then Plot1(xclose, "1", Red); Else Plot1(xclose, "1", Blue); ------------------------------ 라인 색상이 블루로 바뀌면 위에 블루색 화살표, 라인 색상이 레드로 바뀌면 아래에 레드색 화살표가 나오게 부탁합니다 tx = Text_New(sDate,sTime,up,"▲"); Text_SetStyle(tx,2,0); Text_SetColor(tx,Red);
프로필 이미지
러블리
2025-03-30
404
글번호 189695
지표
답변완료

수식 문의 드립니다

안녕하세요. 항상 수고 하십니다. 아래차트는 그림의 화살표시된 것 처럼 보조차트란에 설정되어 제가 임의로 차트 색상을 수정하거나 하나의 분봉 차트에 아래 지표를 두 개이상 추가해서 사용하기가 불편한바(지표 두개 이상 추가시 지표 색 또는 굵기 구별이 안됨) 동그라미 친 것처럼 주차트에서 사용하도록 지표를 수정해 주세요. input : 분(60),n(10); var : S1(0),D1(0),TM(0),TF(0),HH(0),LL(0),cnt(0),hcnt(0),lcnt(0),bar(0); Array : HTL[100](0),HTLV[100](0),LTL[100](0),LTLV[100](0); if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; HH = H; LL = L; Condition1 = true; Condition2 = true; bar = 0; hcnt = 0; lcnt = 0; } if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분; if (Bdate == Bdate[1] and 분 > 1 and TF < TF[1]) or (Bdate == Bdate[1] and 분 > 1 and TM >= TM[1]+분) or (Bdate == Bdate[1] and 분 == 1 and TM > TM[1]) Then { bar = bar+1; Condition1 = False; Condition2 = False; Condition3 = true; if Condition1[1] == true Then { HTLV[hcnt] = Open; HTL[hcnt] = TL_New(Sdate,Stime,HTLV[hcnt],NextBarSdate,NextBarStime,HTLV[hcnt]); TL_SetColor(HTL[hcnt],Red); hcnt = Hcnt+1; } if Condition2[1] == true Then { LTLV[lcnt] = O; LTL[lcnt] = TL_New(Sdate,Stime,LTLV[lcnt],NextBarSdate,NextBarStime,LTLV[lcnt]); TL_SetColor(LTL[hcnt],Blue); lcnt = lcnt+1; } } if H > HH then { HH = H; Condition1 = true; } if L < LL then { LL = L; Condition2 = true; } if bar >= 1 Then { for cnt = 0 to Hcnt { TL_SetEnd(HTL[cnt],NextBarSdate,NextBarStime,HTLV[cnt]); } for cnt = 0 to Lcnt { TL_SetEnd(LTL[cnt],NextBarSdate,NextBarStime,LTLV[cnt]); } if Hcnt >= n Then TL_Delete(HTL[n]); if Lcnt >= n Then TL_Delete(LTL[n]); } }
프로필 이미지
부활
2025-03-30
399
글번호 189694
지표
답변완료

수식좀 요청 드립니다.

항상 많은 도움에 고맙습니다. 아래 수식에서 고점 저점 중간선 2등분인데 이것을 4등분선 으로 수정 좀 요청 드림니다. (그림1) (저가 , 25% 50% 75% 고가) ## 아래 수식 input : n(20); var : idx(0),TF(0),box(0); var : HH(0),LL(0),TL1(0),TL2(0),TX1(0),str(""); var : DD(0),TT(0),half(0),mav(0),halfval(0); if Bdate != Bdate[1] Then idx = 0; Else idx = idx+1; TF = idx%n; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then { HH = H; LL = L; DD = sDate; TT = sTime; Box = Box_New(DD,TT,HH,NextBarSdate,NextBarStime,LL); Box_SetColor(box,Rgb(150,150,150)); Box_SetFill(box,true); half = Ceiling(TF/2); halfval = (HH+LL)/2; TL1 = TL_New(sDate[half],sTime[half],HH,sdate[half],Stime[half],LL); TL2 = TL_New(DD,TT,mav,NextBarSdate,NextBarStime,mav); TL_SetColor(TL1,Rgb(255,0,255)); TL_SetColor(TL2,Rgb(255,0,255)); TL_SetSize(TL1,1); TL_SetSize(TL2,1); } Else { if HH > 0 and H > HH Then { HH = H; } if LL > 0 and L < LL Then { LL = L; } half = Ceiling(TF/2); halfval = (HH+LL)/2; Box_SetBegin(box,dd,tt,HH); Box_SetEnd(box,sDate,sTime,LL); TL_SetBegin(TL1,sDate[half],sTime[half],HH); TL_SetEnd(TL1,sDate[half],sTime[half],LL); TL_SetBegin(TL2,DD,TT,halfval); TL_SetEnd(TL2,sDate,sTime,halfval); str = "최고가:"+NumToStr(HH,2)+"(+"+NumToStr((HH-C)/PriceScale,0)+"틱)"+ NewLine+"최저가:"+NumToStr(LL,2)+"(-"+NumToStr((C-LL)/PriceScale,0)+"틱)"+ NewLine+"현재가:"+NumToStr(C,2); Text_SetString(TX1,str); Text_SetLocation(TX1,sDate[half],sTime[half],halfval); } 고맙습니다 수고 하십시요.
프로필 이미지
요타
2025-03-31
422
글번호 189693
지표
답변완료

2000틱 차트 구현문의

예스차트의 최대 틱차트 구현이 1000틱밖에 되지 않아 2000틱 차트를 만들고 싶습니다 어떤 방법이 있지요? 아래는 예시인데 쉽지가 않습니다. 예시) VARS: TICK_CNT(0), NEW_BAR(FALSE); { 틱 카운트 증가 } TICK_CNT = TICK_CNT + 1; { 2000틱이 되면 새로운 봉을 생성 } IF TICK_CNT >= 2000 THEN BEGIN NEW_BAR = TRUE; TICK_CNT = 0; { 초기화 } END ELSE BEGIN NEW_BAR = FALSE; END; { 새로운 봉이 생성될 때만 차트 갱신 } PLOT1(NEW_BAR, "2000TICK_CHART");
프로필 이미지
정구지
2025-03-30
381
글번호 189692
지표
답변완료

검색식 부탁드립니다

이런건 어떻게 하는지 부탁드립니다. a 조건을 만족하면 b b 조건을 만족하면(a,b조건을 모두 만족) c crossup(c,ma20) 발생이후--- (v1)*2 && c(1) *2 앞의 두 조건이 만족하면 첫째,둘째 crossup(c,ma5) 부탁드립니다
프로필 이미지
nams60
2025-03-30
383
글번호 189691
종목검색