커뮤니티

예스랭귀지 Q&A

글쓰기

촌동네선생 님에 의해서 삭제되었습니다.

프로필 이미지
촌동네선생
2025-03-01
5
글번호 188687
지표
답변완료

수식부탁드립니다.

1. Input : af(0.02), maxAF(0.2); var1 = SAR(af,maxAF); if var1 > C Then Plot1(var1, "SAR",BLUE); Else Plot1(var1, "SAR",RED); 위의 지표식은 파라볼릭 지표식입니다. 연속해서 점이 그려지는 데 전환시에만 좀 큰 점으로 매도신호는 봉위에 파란 동그라미 와 '매도' 텍스트표시 매수신호는 봉아래에 빨간 동그라미 와 '매수' 텍스트 표시 부탁합니다. 2. var : Xidx(0); if Tcond == true and 300< H-L Then { Trade = False; Xidx = Index; } if Tcond == False and Index == Xind+5 Then Trade = true; 장대봉에는 진입금지하고 이후 5번째 봉부터 진입식인데 검증하면 Xind 가 선언되지 않았다고 오류 나오는데 혹시 Xidx을 잘못 오기 하신건지요? 3. if Tcond == true and ((300<H-L) Or (270 <abs(o - c))) Then { trade = False; } 장대봉출현하면 진입금지 라는 식이 어떤 전략에서는 적용이 되는데 다른 전략에서는 적용이 안됩니다. 원인을 못 찾겠습니다.
프로필 이미지
산수유
2025-03-02
378
글번호 188685
지표
답변완료

예스 종목검색식으로 부탁합니다.

안녕하세요.운영자님- 다음과 같은 수식이 있습니다. 아래수식에서 지표가 15%이하 다운되고 덧붙여 키움 지표수식 RSI저점보다 이하일때 그리고 시가대비 1% 이하이면 매수조건으로 종목검색식을 완성해 주시면 고맙겠습니다. A=RSI(14); RSI저점=ValueWhen(1,CrossUp(A,30),O); input : 배분1(0.236),배분2(1.02),DN(1.05); var : 중최고가(0),중최저가(0),경계(0),경계1(False),경계2(False); var : 기준봉(0),기준봉1(False),기준봉2(False),결과기준(0),결과기준1(false),결과기준2(false); var : value(0); 중최고가=Highest(H,20); 중최저가=Lowest(L,20); 경계=(중최고가+중최저가)/2-(중최고가-중최저가)*배분1; 경계1=CROSSUP(C,경계)&&C>O*배분2; 경계2=CROSSDOWN(C,경계); if 경계1 OR 경계2 Then 기준봉 = O; 기준봉1=CROSSUP(c,기준봉); 기준봉2=CROSSDOWN(c,기준봉); if 기준봉1 OR 기준봉2 Then 결과기준 = O; 결과기준1=CROSSUP(c,결과기준); 결과기준2=CROSSDOWN(c,결과기준); if 결과기준1 OR 결과기준2 Then value = O; if value < value[1] and value >= value[1]*0.85 and C <= O*1.01 Then Find(1);
프로필 이미지
고릴라
2025-02-28
406
글번호 188683
종목검색
답변완료

보조지표 Y축 스케일

안녕하세요? 아래 Heikin-Ashi RSI를 커뮤니티에 있어서 적용시켜볼려고 보조지표로 추가하니 Y축 값이 높아지거나 낮아질때 스케일이 변경되지 않아 윗부분과 아래부분의 지표막대가 잘 보이지 않아요. 차트창 속성에서 "차트 확대 축소시 간격 자동조절"에도 체크되어 있는데, 높고 낮은 부분에는 잘 보이지 않습니다. 다른 보조 지표들은 스케일이 자동조절됩니다. 수정 부탁드립니다. input : i_lenHARSI(14),i_smoothing(7),i_lenRSI(7); var : i_colUp(0),i_colDown(0),i_colWick(0),i_source(0); var : _closeRSI(0),_openRSI(0),_highRSI_raw(0),_lowRSI_raw(0); var : _highRSI(0),_lowRSI(0),_close(0),_open(0),_high(0),_low(0); Var : cnt(0), DownAmt1(0), UpAmt1(0), UpSum1(0), DownSum1(0), UpAvg1(0), DownAvg1(0),RSIV1(0); Var : DownAmt2(0), UpAmt2(0), UpSum2(0), DownSum2(0), UpAvg2(0), DownAvg2(0),RSIV2(0); var : bodyColour(0),wickColour(0); i_colUp = Teal; i_colDown = Red; i_colWick = gray; i_source = (o+h+l+c)/4; _closeRSI = rsi(i_lenHARSI)-50; _openRSI = IFF(IsNaN(_closeRSI[1]) == False, _closeRSI[1], _closeRSI); If CurrentBar == 1 AND i_lenHARSI > 0 Then Begin UpSum1 = 0; DownSum1 = 0; For cnt = 0 To i_lenHARSI - 1 Begin UpAmt1 = H[cnt] - H[cnt+1]; If UpAmt1 >= 0 Then DownAmt1 = 0; Else Begin DownAmt1 = -UpAmt1; UpAmt1 = 0; End; UpSum1 = UpSum1 + UpAmt1; DownSum1 = DownSum1 + DownAmt1; End; UpAvg1 = UpSum1 / i_lenHARSI; DownAvg1 = DownSum1 / i_lenHARSI; End Else If CurrentBar > 1 AND i_lenHARSI > 0 Then Begin UpAmt1 = H[0] - H[1]; If UpAmt1 >= 0 Then DownAmt1 = 0; Else Begin DownAmt1 = -UpAmt1; UpAmt1 = 0; End; UpAvg1 = (UpAvg1[1] * (i_lenHARSI - 1) + UpAmt1) / i_lenHARSI; DownAvg1 = (DownAvg1[1] * (i_lenHARSI - 1) + DownAmt1) / i_lenHARSI; End; If UpAvg1 + DownAvg1 <> 0 Then RSIV1 = 100 * UpAvg1 / (UpAvg1 + DownAvg1); Else RSIV1 = 0; If CurrentBar == 1 AND i_lenHARSI > 0 Then Begin UpSum2 = 0; DownSum2 = 0; For cnt = 0 To i_lenHARSI - 1 Begin UpAmt2 = L[cnt] - L[cnt+1]; If UpAmt2 >= 0 Then DownAmt2 = 0; Else Begin DownAmt2 = -UpAmt2; UpAmt2 = 0; End; UpSum2 = UpSum2 + UpAmt2; DownSum2 = DownSum2 + DownAmt2; End; UpAvg2 = UpSum2 / i_lenHARSI; DownAvg2 = DownSum2 / i_lenHARSI; End Else If CurrentBar > 2 AND i_lenHARSI > 0 Then Begin UpAmt2 = L[0] - L[1]; If UpAmt2 >= 0 Then DownAmt2 = 0; Else Begin DownAmt2 = -UpAmt2; UpAmt2 = 0; End; UpAvg2 = (UpAvg2[1] * (i_lenHARSI - 1) + UpAmt2) / i_lenHARSI; DownAvg2 = (DownAvg2[1] * (i_lenHARSI - 1) + DownAmt2) / i_lenHARSI; End; If UpAvg2 + DownAvg2 <> 0 Then RSIV2 = 100 * UpAvg2 / (UpAvg2 + DownAvg2); Else RSIV2 = 0; _highRSI_raw = RSIV1-50; _lowRSI_raw = RSIV2-50; _highRSI = max(_highRSI_raw, _lowRSI_raw); _lowRSI = min(_highRSI_raw, _lowRSI_raw); _close = (_openRSI + _highRSI + _lowRSI + _closeRSI) / 4; _open = iff(isnan(_open[i_smoothing]) == true, (_openRSI + _closeRSI) / 2 , (_open[1] * i_smoothing + _close[1]) / (i_smoothing + 1)); _high = max(_highRSI, max(_open, _close)); _low = min(_lowRSI, min(_open, _close)); bodyColour = iff(_close > _open , i_colUp , i_colDown); wickColour = i_colWick; var1 = TL_New_Self(sDate,sTime,_open,sDate,sTime,_close); var2 = TL_New_Self(sDate,sTime,_high,sDate,sTime,max(_open,_close)); var3 = TL_New_Self(sDate,sTime,_Low,sDate,sTime,min(_open,_close)); TL_SetColor(var1,bodyColour); TL_SetColor(var2,i_colWick); TL_SetColor(var3,i_colWick); TL_SetSize(var1,6); TL_SetSize(var2,1); TL_SetSize(var3,1);
프로필 이미지
주식남
2025-02-28
351
글번호 188677
지표
답변완료

파라볼릭 크기

Input : af(0.02), maxAF(0.2); var : T(0),B(0),S(0),tx(0),txx(0),TL(0),box(0); var : HH(0),LL(0),B1(0),B2(0),B3(0),B4(0),S1(0),S2(0),S3(0),S4(0),H1(0),H2(0),H3(0),H4(0),L1(0),L2(0),L3(0),L4(0); var1 = CSar(af,maxAF); if CrossUp(C,var1) Then { T = 1; B = var1; B1 = B[1]; B2 = B1[1]; B3 = B2[1]; B4 = B3[1]; HH = H; H1 = HH[1]; H2 = H1[1]; H3 = H2[1]; H4 = H3[1]; if abs(S-LL) < 0.7 Then Text_Delete(tx); tx = Text_New(sDate,sTime,HH,NumToStr(abs(HH-B),2)); Text_SetColor(tx,Red); Text_SetSize(tx,25); Text_SetStyle(tx,1,1); Text_SetBold(tx,1); box = Box_New(sDate,sTime,B,NextBarSdate,NextBarStime,HH); Condition1 = False; Condition3 = False; Condition5 = False; } if CrossDown(C,var1) Then { T = -1; S = var1; S1 = S[1]; S2 = S1[1]; S3 = S2[1]; S4 = S3[1]; LL = L; L1 = LL[1]; L2 = L1[1]; L3 = L2[1]; L4 = L3[1]; if abs(B-HH) < 0.7 Then Text_Delete(tx); tx = Text_New(sDate,sTime,LL,NumToStr(abs(LL-S),2)); Text_SetColor(tx,Blue); Text_SetSize(tx,25); Text_SetStyle(tx,1,0); Text_SetBold(tx,1); box = Box_New(sDate,sTime,S,NextBarSdate,NextBarStime,LL); Condition2 = False; Condition4 = False; Condition6 = False; } Else { if T == 1 Then { if H > HH Then HH = H; Text_SetString(tx,NumToStr(abs(HH-B),2)); Text_SetLocation(tx,sDate,sTime,HH); Box_SetEnd(box,NextBarSdate,NextBarStime,hh); if HH < B+0.4 Then { Box_SetColor(box,Magenta); Box_SetFill(box,true,90); } Else if HH >= B+0.4 and HH < B+0.5 Then { Box_SetColor(box,Gold); Box_SetFill(box,true,150); } Else if HH >= B+0.5 and HH < B+0.65 Then { Box_SetColor(box,Orange); Box_SetFill(box,true,100); } Else if HH >= B+0.65 and HH < B+0.8 Then { Box_SetColor(box,Pink); Box_SetFill(box,true,120); } Else if HH >= B+0.8 and HH < B+1.2 Then { Box_SetColor(box,Magenta); Box_SetFill(box,true,50); } Else if HH >= B+1.2 and HH < B+1.9 Then { Box_SetColor(box,Gray); Box_SetFill(box,true,60); } Else { Box_SetColor(box,Pink); Box_SetFill(box,true,90); } if B1 > 0 and B3 > B4 and H > H1 and H1 > H2 and H2 > H3 and H3 > H4 and Condition3 == False Then { Condition3 = true; Buy(); txx = Text_New(sdate,sTime,H-0.7,"■"); Text_SetStyle(txx,2,2); Text_SetColor(txx,Green); Text_SetSize(txx,40); } if B1 > 0 and B >= B1 and H > H1 and B1 > B2 and H1 > H2 and Condition1 == False Then { Condition1 = true; Buy(); txx = Text_New(sdate,sTime,H-0.7,"●"); Text_SetStyle(txx,2,2); Text_SetColor(txx,Blue); Text_SetSize(txx,35); } if Condition5 == False and var1 >= B+1.9 Then { Condition5 = true; TL_New(sDate,sTime,0,sDate,sTime,999999999); } } if T == -1 Then { if L < LL Then LL = L; Text_SetString(tx,NumToStr(abs(LL-S),2)); Text_SetLocation(tx,sDate,sTime,LL); Box_SetEnd(box,NextBarSdate,NextBarStime,LL); if LL > S-0.4 Then { Box_SetColor(box,Lime); Box_SetFill(box,true,120); } Else if LL <= S-0.4 and ll > S-0.5 Then { Box_SetColor(box,Cyan); Box_SetFill(box,true,150); } Else if LL <= S-0.5 and ll > S-0.65 Then { Box_SetColor(box,Blue); Box_SetFill(box,true,50); } Else if LL <= S-0.65 and ll > S-0.8 Then { Box_SetColor(box,Yellow); Box_SetFill(box,true,100); } Else if LL <= S-0.8 and ll > S-1.2 Then { Box_SetColor(box,Lime); Box_SetFill(box,true,100); } Else if LL <= S-1.2 and ll > S-1.6 Then { Box_SetColor(box,Cyan); Box_SetFill(box,true,100); } Else if LL <= S-1.6 and ll > S-1.9 Then { Box_SetColor(box,Blue); Box_SetFill(box,true,30); } Else { Box_SetColor(box,Yellow); Box_SetFill(box,true,100); } if S1 > 0 and S3 < S4 and L < L1 and L1 < L2 and L2 < L3 and L3 < L4 and Condition4 == False Then { Condition4 = true; Buy(); txx = Text_New(sdate,sTime,L+0.7,"■"); Text_SetStyle(txx,2,2); Text_SetColor(txx,Black); Text_SetSize(txx,40); } if S1 > 0 and S <= S1 and L < L1 and S1 < S2 and L1 < L2 and Condition2 == False Then { Condition2 = true; Buy(); txx = Text_New(sdate,sTime,L+0.7,"●"); Text_SetStyle(txx,2,2); Text_SetColor(txx,Red); Text_SetSize(txx,35); } if Condition6 == False and var1 <= B-1.9 Then { Condition6 = true; TL_New(sDate,sTime,0,sDate,sTime,999999999); } } } if MarketPosition == 1 and BarsSinceEntry == 1 Then ExitLong(); if MarketPosition == -1 and BarsSinceEntry == 1 Then ExitShort(); 하락은 노란색박스, 상승은 핑크색 박스에서 세로선이 모두 표시되어야 하는데 안나옵니다. 파라볼릭 크기가 1.9p 되는 지점에서만 세로선. 확인 부탁드립니다.
프로필 이미지
고성
2025-02-28
355
글번호 188676
시스템
답변완료

수식 작성 부탁드립니다.

안녕하세요. 늘 도움을 주셔서 감사드립니다. DPO(Detrended Price Osc) 지표를 활용한 수식 작성을 아래와 같이 요청드립니다. <정의> DPO값이 양수일 때는 '매수구간', 음수일 때는 '매도구간'이라 부르겠습니다. 그리고 '매수구간'을 통해 만들어진 선을 '매수선'이라고 부르고 '매도구간'을 통해 만들어진 선을 '매도선'이라고 부르겠습니다. <수식 작성 요청> 1. 매수구간 동안 DPO값이 최고일 때의 캔들 고가를 저장해 놨다가 매수구간이 끝나고 매도구간이 시작될 때부터 저장된 캔들의 고가를 선으로 그립니다.(매수선) 이 매수선은 다음 매수구간이 시작해서 끝날 때까지, 즉 새로운 매수구간이 완성되어 다음 매수선이 만들어지기 전까지 그려집니다. 2. 매도구간 동안 DPO값이 최저일 때의 캔들 저가를 저장해 놨다가 매도구간이 끝나고 매수구간이 시작될 때부터 저장된 캔들의 저가를 선으로 그립니다.(매도선) 이 매도선은 다음 매도구간이 시작해서 끝날 때까지, 즉 새로운 매도구간이 와넝되어 다음 매도선이 만들어지기 전까지 그려집니다. 이렇게 두개의 선이 연속적으로 나타나는 선을 요청드립니다. 수고해 주심에 미리 감사드립니다.
프로필 이미지
길게가자
2025-02-28
355
글번호 188674
지표

님이랑 님에 의해서 삭제되었습니다.

프로필 이미지
님이랑
2025-02-28
7
글번호 188673
종목검색
답변완료

종목 검색식 부탁 드립니다.

수고가 많으십니다. 아래 내용으로 종목을 검색하고자 합니다. A=wavg(2*wavg(scr,len/2)-wavg(scr,len),floor(sqrt(len))); A>A(1) && A(1)<A(2) 지표변수 scr : 종가 len : 49 부탁 드립니다. 감사합니다.
프로필 이미지
포이순
2025-02-28
262
글번호 188672
종목검색
답변완료

수식 변환좀 부탁드립니다.

만들어 주신 강조 수식을 신호가 발생시 소리가 나올수 있게 시스템 수식으로 변환좀 요청드립니다. 매번 감사드립니다.^^ input : a(1); input : ATRP(10); input : ha(false); var : xATR(0),nLoss(0); var : xClose(0),xHigh(0),xLow(0),xOpen(0),src(0); var : xATRTrailingStop(0),ps(0),xcolor(0); xATR = atr(ATRP); nLoss = a * xATR; if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } if ha == False Then src = close; Else src = xClose; var1 = IFf(IsNan(xATRTrailingStop[1]) ==true,0,xATRTrailingStop[1]); xATRTrailingStop =iff(src > var1 and src[1] > var1, max(var1, src - nLoss), iff(src < var1 and src[1] < var1, min(var1, src + nLoss), iff(src > var1, src - nLoss, src + nLoss))); ps = iff(src[1] < var1 and src > var1, 1, iff(src[1] > var1 and src < var1, -1, IFf(IsNaN(ps[1])==true,0,ps[1]))); xcolor = iff(ps == -1 , red, IFf(ps == 1 , green , blue)); var : emv(0),above(False),below(False); var : b(False),s(False),barbuy(False),barsell(False),tx(0); emv = ema(src,1); above = CrossUp(emv, xATRTrailingStop); below = CrossUp(xATRTrailingStop, emv); b = src > xATRTrailingStop and above; s = src < xATRTrailingStop and below; barbuy = src > xATRTrailingStop; barsell = src < xATRTrailingStop ; if b == true Then { tx = Text_New(sDate,sTime,L,"▲"); Text_SetStyle(tx,2,0); Text_SetColor(tx,Green); } if s == true Then { tx = Text_New(sDate,sTime,H,"▼"); Text_SetStyle(tx,2,1); Text_SetColor(tx,Red); } if barbuy == true Then PlotPaintBar(H,L,"강조",Green); if barsell == true Then PlotPaintBar(H,L,"강조",Red);
프로필 이미지
로꼬로꼬
2025-02-28
304
글번호 188663
시스템
답변완료

신용 비율

종목별로 일별 신용 비율은 어디서 확인하나요 일별로 제공안된다면 현재 신용비율은 어떻게 확인하나요
프로필 이미지
yamu
2025-02-28
262
글번호 188659
지표