커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3258
글번호 230811
답변완료
문의 드립니다.
안녕하세요 ~ 평소 많은 도움 주심에 감사 드립니다. 현재 캔들(또는 가격)이 아래의 1라인 & 2라인, 2개 라인을 동시에 돌파하거나, 1라인이 2라인을 돌파하는 종목의 검색식을 부탁 드립니다. 1라인.MID=MA(C,20);dev = 2 * stdev(C, 20);upperBB = MID + dev2라인. MID=MA(C,20);RNG=ATR(20);MID+1.5*RNG감사합니다.
2026-01-15
242
글번호 229819
답변완료
파라볼릭 박스
아래 차트의 선만 있을 때는 박스 오류가 안보이는데, (근본적인 한계인지?)윗 차트의 박스를 주가 상하단에 맞춰 왼쪽으로 옮기니, 상하가 일치하지 않습니다.선물 400틱 차트입니다. 검토 부탁드립니다.Input : af(0.02), maxAF(0.2);var : T(0),TL(0),B(0),S(0),tx(0),txx(0),HH(0),HD(0),HT(0),LL(0),LD(0),LT(0),box(0);var : B1(0),B2(0),S1(0),S2(0),H1(0),H2(0),L1(0),L2(0);var : tx1(0),tx2(0),tx3(0),tx4(0),tx5(0),tx6(0);var1 = CSar(af,maxAF);plot1(var1, "CSAR",IFF(c>var1,Red,Green)); if CrossUp(C,var1) Then{ B = var1; T = 1; B1 = B[1]; B2 = B1[1]; HD = sDate; HT = sTime; HH = H; H1 = HH[1]; H2 = H1[1]; if LL > 0 Then box = Box_New(LD,LT,LL,HD,HT,HH); if abs(S-LL) < 1.25 Then Text_Delete(tx); tx = Text_New(sDate,sTime,HH,NumToStr(abs(HH-B),2)); Text_SetColor(tx,Red); Text_SetSize(tx,22); Text_SetStyle(tx,1,1); Text_SetBold(tx,1); Condition1 = False;}if CrossDown(C,var1) Then{ S = var1; T = -1; S1 = S[1]; S2 = S1[1]; LD = sDate; LT = sTime; LL = L; L1 = LL[1]; L2 = L1[1]; if HH > 0 Then box = Box_New(HD,HT,HH,LD,LT,LL); if abs(B-HH) < 1.25 Then Text_Delete(tx); tx = Text_New(sDate,sTime,LL,NumToStr(abs(LL-S),2)); Text_SetColor(tx,Blue); Text_SetSize(tx,22); Text_SetStyle(tx,1,0); Text_SetBold(tx,1); Condition1 = False; }Else{ if T == 1 Then { if H >= HH Then { HD = sDate; HT = sTime; HH = H; } Text_SetString(tx,NumToStr(abs(HH-B),2)); Text_SetLocation(tx,sDate,sTime,HH); Box_SetEnd(box,HD,HT,HH); if HH < LL+1.5 Then { Box_SetColor(box,Magenta); Box_SetFill(box,true,60); } Else if HH >= LL+1.5 and HH < LL+3.5 Then { Box_SetColor(box,Gray); Box_SetFill(box,true,60); } Else { Box_SetColor(box,Orange); Box_SetFill(box,true,40); } if abs(HH-LL) >= 2 Then { if Condition1 == False Then { Condition1 = true; tx1 = Text_New(HD,HT,HH+abs(HH-LL)*0.618,"●"); tx2 = Text_New(HD,HT,HH+abs(HH-LL)*1.000,"●"); tx3 = Text_New(HD,HT,HH+abs(HH-LL)*1.618,"●"); Text_SetStyle(tx1,2,2); Text_SetStyle(tx2,2,2); Text_SetStyle(tx3,2,2); Text_SetColor(tx1,Red); Text_SetColor(tx2,Blue); Text_SetColor(tx3,Red); tx4 = Text_New(HD,HT,LL-abs(HH-LL)*0.618,"●"); tx5 = Text_New(HD,HT,LL-abs(HH-LL)*1.000,"●"); tx6 = Text_New(HD,HT,LL-abs(HH-LL)*1.618,"●"); Text_SetStyle(tx4,2,2); Text_SetStyle(tx5,2,2); Text_SetStyle(tx6,2,2); Text_SetColor(tx4,Red); Text_SetColor(tx5,Blue); Text_SetColor(tx6,Red); } Else { Text_SetLocation(tx1,HD,HT,HH+abs(HH-LL)*0.618); Text_SetLocation(tx2,HD,HT,HH+abs(HH-LL)*1.000); Text_SetLocation(tx3,HD,HT,HH+abs(HH-LL)*1.618); Text_SetLocation(tx4,HD,HT,LL-abs(HH-LL)*0.618); Text_SetLocation(tx5,HD,HT,LL-abs(HH-LL)*1.000); Text_SetLocation(tx6,HD,HT,LL-abs(HH-LL)*1.618); } } } if T == -1 Then { if L <= LL Then { LD = sDate; LT = sTime; LL = L; } Text_SetString(tx,NumToStr(abs(LL-S),2)); Text_SetLocation(tx,sDate,sTime,LL); Box_SetEnd(box,LD,LT,LL); if LL > HH-1.5 Then { Box_SetColor(box,Lime); Box_SetFill(box,true,80); } Else if LL <= HH-1.5 and LL > HH-3.5 Then { Box_SetColor(box,Cyan); Box_SetFill(box,true,70); } Else { Box_SetColor(box,Cyan); Box_SetFill(box,true,50); } if abs(HH-LL) >= 2 Then { if Condition1 == False Then { Condition1 = true; tx1 = Text_New(LD,LT,HH+abs(HH-LL)*0.618,"●"); tx2 = Text_New(LD,LT,HH+abs(HH-LL)*1.000,"●"); tx3 = Text_New(LD,LT,HH+abs(HH-LL)*1.618,"●"); Text_SetStyle(tx1,2,2); Text_SetStyle(tx2,2,2); Text_SetStyle(tx3,2,2); Text_SetColor(tx1,Red); Text_SetColor(tx2,Blue); Text_SetColor(tx3,Red); tx4 = Text_New(LD,LT,LL-abs(HH-LL)*0.618,"●"); tx5 = Text_New(LD,LT,LL-abs(HH-LL)*1.000,"●"); tx6 = Text_New(LD,LT,LL-abs(HH-LL)*1.618,"●"); Text_SetStyle(tx4,2,2); Text_SetStyle(tx5,2,2); Text_SetStyle(tx6,2,2); Text_SetColor(tx4,Red); Text_SetColor(tx5,Blue); Text_SetColor(tx6,Red); } Else { Text_SetLocation(tx1,LD,LT,HH+abs(HH-LL)*0.618); Text_SetLocation(tx2,LD,LT,HH+abs(HH-LL)*1.000); Text_SetLocation(tx3,LD,LT,HH+abs(HH-LL)*1.618); Text_SetLocation(tx4,LD,LT,LL-abs(HH-LL)*0.618); Text_SetLocation(tx5,LD,LT,LL-abs(HH-LL)*1.000); Text_SetLocation(tx6,LD,LT,LL-abs(HH-LL)*1.618); } } }}
2026-01-15
946
글번호 229818
답변완료
진입 수량 및 청산 관련 문의
(중략)var: SL1(1000);If SL1 > 0 Then setstoploss((SL1/BigPointValue),PointStop);청산 관련하여 위 수식을 사용 중에 있는데손절은 1,000달러로 고정하여 청산하도록 청산 수식을 걸었고, 한번 진입 시 진입 수량을 5개 매수하도록 세팅하였습니다.이 경우, 위 청산 수식에 따라 해당 진입으로 인해 진입 수량 5개의 전체 손실 금액이 1,000달러 인 경우 청산하는 것인지 (총 손실 1,000달러 시 청산)아니면 진입 수량 5개 각각의 손실 금액이 1,000달러인 경우 청산하는 것인지 (총 5,000달러 손실 시 청산)문의 드립니다.
2026-01-15
439
글번호 229817
답변완료
수식 요청드립니다.
안녕하세요.수식 문의드립니다.피라미딩으로 누적 5계약까지 매수 또는 매도 진입한다고 하였을때5계약이 모두 진입된 상태에서 손실이 200pt가 되면 모두 손절하는 수식을 부탁드립니다.감사합니다.
2026-01-15
158
글번호 229816
답변완료
문의드립니다.
다음수식의 종목검색식 부탁드립니다.R = RSI(7);V_MA = avg(V, 10);AvgValue = avg(C * V, 5);BigMoney = (C * V) > (AvgValue * 0.5);MA40 = ma(C, 40);MA30 = ma(C, 50);MA20 = ma(C, 60);TrendUp = (C > MA20) && (MA20 > MA40);Range = H - L;UpperTail = if(C > O, H - C, H - O);TailCond = Range > 0 && (UpperTail < Range * 0.65);BreakOut = Highest(H, 120, 1) < H;Disparity20 = (C / MA20) * 100;SafeZone = Disparity20 < 10;MyOBV = OBV();OBV_Strong = MyOBV >= Highest(MyOBV, 20, 1) * 0.18;MainCond = BigMoney && TrendUp && TailCond && BreakOut && IsRsiCrossUp30 = CrossUp(R, 30)&& SafeZone && OBV_Strong;MainCond && !MainCond(1)감사합니다.
2026-01-15
513
글번호 229815
답변완료
시스템매매로 변환부탁드립니다...
아래 수식은 예스 지표수식입니다...청색라인에서 매수 하는 시스템 매매로 변환 부탁드립니다..input : ATRperiod(14);input : BBperiod(20);input : BBdeviation(1.5);input : UseATRfilter(true);input : showsignals(true);var : BBupper(0),BBlower(0),alpha(0),atrValue(0);var : FollowLine(Nan),BBSignal(0),iTrend(0);BBUpper = ma(close, BBperiod) + std(close, BBperiod) * BBdeviation;BBLower = ma(close, BBperiod) - std(close, BBperiod) * BBdeviation;alpha = 1 / ATRperiod ;atrValue = IFf(IsNan(atrValue[1]) == true, ma(TrueRange,ATRperiod) , alpha * TrueRange + (1 - alpha) * IFf(isnan(atrValue[1])==true,0,atrValue[1]));if (close > BBUpper) Then BBSignal = 1;else if (close < BBLower) Then BBSignal = -1;if (BBSignal == 1) Then{ if (UseATRfilter) Then { FollowLine = low - atrValue; } else { FollowLine = low; } if (FollowLine < iff(IsNan(FollowLine[1])==true,0,FollowLine[1])) Then { FollowLine = iff(IsNan(FollowLine[1])==true,0,FollowLine[1]); }}if (BBSignal == -1) Then{ if (UseATRfilter) Then { FollowLine = high + atrValue; } else { FollowLine = high; } if (FollowLine > iff(IsNan(FollowLine[1])==true,0,FollowLine[1])) Then { FollowLine = iff(IsNan(FollowLine[1])==true,0,FollowLine[1]); }}if iff(IsNan(FollowLine)==true,0,FollowLine) > iff(IsNan(FollowLine[1])==true,0,FollowLine[1]) Then iTrend = 1;else if iff(IsNan(FollowLine)==true,0,FollowLine) < iff(IsNan(FollowLine[1])==true,0,FollowLine[1]) Then iTrend = -1;var : lineColor(0),B(0),S(0),tx(0);lineColor = iff(iTrend > 0 , Gold , Blue);b = iff(iTrend[1]==-1 and iTrend==1 , 1 , 0);s = iff(iTrend[1]==1 and iTrend==-1 , 1 , 0);plot1(FollowLine, "Follow Line", lineColor);if B == 1 and showsignals Then{ tx = text_new(sDate,stime,L,"▲"); Text_SetColor(tx,ReD); Text_SetStyle(tx,2,0);}if S == 1 and showsignals Then{ tx = text_new(sDate,stime,H,"▼"); Text_SetColor(tx,WhitE); Text_SetStyle(tx,2,1);}
2026-01-14
368
글번호 229814
답변완료
거래량과 이평
안녕하세요 종목 마이크로 나스닥 1전략어제하루 치 데이터 5분차트 6분차트 7분차트 각 각 분 마 다 거래량중 가장 많은 거개량 기억한다각각 분마다 나온 거래량 최고점거래량 양봉 큰값 기억하여가장큰 양봉거래량 을 돌파시 당일 현재가가단순이평선 10선이 30선 상향돌파시 매수어제하루 치 데이터 5분차트 6분차트 7분차트 각 각 분 마 다 거래량중 가장 많은 거개량 기억한다각각 분마다 나온 거래량 최고점거래량 음봉 큰값 기억하여가장큰 음봉거래량 을 돌파시 당일 현재가가단순이평선 10선이 30선 하향돌파시 매도 가능 한가요 ?대단히감사합니다
2026-01-14
243
글번호 229813
답변완료
수식 문의 드립니다
프로그램 수식 문의 드립니다.1) 매수: 이전 5봉중 최 고점의 5.5% 를 상향함과 동시 매수2) 매수: 이전 1봉 중 1봉의 종가를 5.5% 상향함과 동시 매수3) 매수: 바로1봉전 매도점대비 5.5% 상향함과 동시 매수4) 매수: 현재 동일봉에서 매도점 대비 5.5% 상향함과 동시 매수==> 같은 봉에서 target 도달하여 매도 이루어지고, 그매도점 대비 5.5% 상승시 재 매수 되어야 하는데, 매수가 되지 않고 있음.=> 이부분 식으로 구현해 주시면 감사 하겠습니다.5) 매수: 봉이 양종이고 bollinger band(20,1) 상한선 위에 엤으면 동시 매수6) 매도: 이전 매수 점을 5.5% 하향 과 동시 매도 7) 매도: 이전 1봉중 1봉의 종가를 5.5% 하향과 동시매도8) 매도: 매수가 대비 5.5% 상향과 동시 매도9) 매도: 20이평선을 5,5% 하향과 동시매도10) 매도: 매수후 양봉이면 27분 후 매도11) 매도: 매수후 양봉이고 bolingerband (20,5) 상한선위에 있으면 27분 후 매도12) 매도: 매수후 양봉이고 5이평선 선위에 있으면 27분 후 매도13) 매도: 매수후 음봉이면 1봉전 종가대비 5.5% 하락시 동시매도14) 매도: 15시09분에 매수청산15) 매도: 양봉일경우 매월 29일 1200시 매수 청산16) 매도: 매수후 양봉이면 종가에 매도
2026-01-14
378
글번호 229812
답변완료
조건검색 문의
//@version=5indicator("RSI Shift Zone - Lower Breakout Only", overlay = true, max_labels_count = 500)// --------------------------------------------------------------------------------------------------------------------// [Inputs]rsi_len = input.int(14, "RSI length")upper_level = input.int(70, "Upper RSI Level", minval = 50)lower_level = input.int(30, "Lower RSI Level", maxval = 50)min_channel_len = input.int(15, "Minimal bars length of the channel")rsi_filter_val = input.int(40, "Min RSI for Signal")upper_line_width = input.int(2, "Upper Line Width")lower_line_width = input.int(3, "Lower Line Width")center_line_width = input.int(2, "Center Line Width")upper_col = input.color(color.new(#21c997, 50), "Upper Color")lower_col = input.color(color.new(#cc24e2, 50), "Lower Color")lower_line_col = input.color(#FF5252, "Lower Line Signal Color")// --------------------------------------------------------------------------------------------------------------------// [Calculations]var int start = navar bool trigger = falsevar float upper = na var float lower = navar color channel_color = color(na)var bool is_upper_zone = false rsi = ta.rsi(close, rsi_len)channel_upper = ta.crossover(rsi, upper_level) and not trigger channel_lower = ta.crossunder(rsi, lower_level) and not trigger rsi_color = color.from_gradient(rsi, lower_level, upper_level, lower_col, upper_col)if channel_upper start := bar_index trigger := true upper := high lower := low channel_color := rsi_color is_upper_zone := true if channel_lower start := bar_index trigger := true upper := high lower := low channel_color := rsi_color is_upper_zone := false if bar_index - start >= min_channel_len trigger := falsetrigger_change = (channel_upper != channel_upper[1]) or (channel_lower != channel_lower[1])active_upper_line = trigger_change ? na : upperactive_lower_line = trigger_change ? na : lowermiddle_line = trigger_change ? na : math.avg(upper, lower)// --------------------------------------------------------------------------------------------------------------------// [Signal Logic]// Only signals when price crosses Lower Line formed by Upper RSI levellow_breakout = ta.crossover(close, active_lower_line) and is_upper_zone and rsi > rsi_filter_val// --------------------------------------------------------------------------------------------------------------------// [Plotting]plot(active_upper_line, "Upper Line", color = channel_color, style = plot.style_linebr, linewidth = upper_line_width)plot(active_lower_line, "Lower Line", color = channel_color, style = plot.style_linebr, linewidth = lower_line_width)p1 = plot(active_upper_line, display = display.none)p2 = plot(active_lower_line, display = display.none)fill(p1, p2, color.new(channel_color, 90))plot(middle_line, "Center Line", color = color.gray, style = plot.style_linebr, linewidth = center_line_width)plotshape(low_breakout, title="Lower Breakout", style=shape.triangleup, location=location.belowbar, color=lower_line_col, size=size.small, text="LOW")// --------------------------------------------------------------------------------------------------------------------// [Alerts]alertcondition(low_breakout, title="Lower Breakout Alert", message="Price crossed Lower Shift Zone")일봉상 위 신호가 나온 종목을 검출 할 수 있도록 해주시면 감사 드리겠습니다 (__)
2026-01-14
816
글번호 229811