커뮤니티

예스랭귀지 Q&A

글쓰기

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
1276
글번호 230811
지표
답변완료

함수

안녕하세요 아래식을 최대한 쉽게 설명부탁드려요 중이평 = ma(c,min(DayIndex+1,중이평봉수)); 감사합니다
프로필 이미지
달마7
2025-08-06
225
글번호 193023
사용자 함수
답변완료

종목검색식 부탁드립니다

1. 주봉 20 이평 (단순) 을 캔들이 양봉으로 돌파하거나, 주봉 20이평선에(단순) 캔들이 상하(위, 아래) 각각 1% 이내로 근접하고 양봉일때 , 종목검색식 부탁드립니다. 2. 다음 수식을 참조하여 종목 검색식 부탁드려요 아래수식을 1) ~ 5) 까지 OR (또는) 해서, 1개의 종목검색식으로 부탁드립니다. ---------- 1) M= Macd(12,26); Ms=eavg(M,9); 골든크로스 첫봉 때 2) S=StochasticsSlow(12,5); Ss=eavg(S,3); 골든크로스 첫봉때 3) CC=CCi(9); Cs=eavg(CC,12); 골든크로스 첫봉때 4) R=Rsi(14); Rs=eavg(R,9); 골든크로스 첫봉때 5) Dp =DiPlus(14); Dm=DiMinus(14); 골든크로스 첫봉때
프로필 이미지
일지매7
2025-08-06
235
글번호 193022
종목검색
답변완료

문의드립니다.

1.var1이 0이 아닌 경우만 배열변수로 저장해서 외부변수의 기간(5)갯수의 배열변수의 합을 구하는 식 input : 기간(5); vars : cnt(0),cnt2(0); Array : array1[100](0),array2[100](0); If var1 != 0 Then {array1[0] = Var1; for cnt = 1 to 99{ array1[cnt] = array1[cnt-1][1];}} for cnt = 0 to 기간 - 1 { cnt2 = cnt2 + array1[cnt][0];} 2.var1이 0이 아닌 경우의 과거 봉은 제외하고 input : 기간(5); vars : cnt(0),cnt2(0); if var1 != 0 Then for cnt = 0 to 기간 - 1 { cnt2 = cnt2 + var1[cnt];} var1이 0이 아닐 때의 값 기간의 합을 구하고 싶은데요 수치가 제대로 안나와요. 과거전봉의 갯수 상관없이 var1 != 0 이 아닌 5개봉(input값)ㅠ.ㅠ 어떻게 수정해야 하죠? 답변부탁드립니다..수고하세요^^
프로필 이미지
아싸가오리
2025-08-05
185
글번호 193021
지표
답변완료

도움 부탁드립니다

안녕하세요 무더운 여름 잘 보내시길 바랍니다. 아래 지표는 커뮤니티에서 다운받은 지표인데 궁금한것이 챠트캔들위에 나타나는 삼각형의 표시가 캔들이 몇개이상 지나고 난 후에 캔들위에 표시가 되는데 궁금한것은 1. 보통 캔들이 완성된후에 생기는데 이처럼 여러개의 캔들이 지나서 나타나는 이유. 2. 후행성이 아닌 실시간 켄들에 나타나게 할 수는 없는지요. 3. 2번째 질문에 답이 안된다면 캔들 표식이 아닌 다른 방법으로도 실시간 알수는 없는지요 감사합니다. input : len(3); input : mult(0.6); input : color_t_up(Lime); var : color_t(orange); input : color_t_dn(Red); var : p_h(nan); var : p_l(nan); var : trend(False); var : market_state(""),ph(0),pl(0),tx(0); market_state = "Range"; if SwingHigh(1,h,len,len,len+len+1) != -1 Then { p_h = h[len]; tx = Text_New(sDate[len],sTime[len],p_h,"▼"); Text_SetStyle(tx,2,1); Text_SetColor(tx,Blue); Text_SetSize(tx,12); } if SwingLow(1,l,len,len,len+len+1) != -1 Then { p_l = l[len]; tx = Text_New(sDate[len],sTime[len],p_l,"▲"); Text_SetStyle(tx,2,0); Text_SetColor(tx,Red); Text_SetSize(tx,12); } var : avgv(0),ATrv(0),hl2(0),upper(0),lower(0),tx1(0); avgv = (p_h+p_l)/2; atrv = atr(200)*mult; upper = avgv + atrv; lower = avgv - atrv; hl2 = (h+l)/2; if hl2 > upper Then { color_t = color_t_up; trend = true; market_state = "Momentum Up"; } if hl2 < lower Then { color_t = color_t_dn; trend = false; market_state = "Momentum Down"; } // -----------------------------------} // VISUALIZATIONS // -----------------------------------{ plot1(avgv, "MidLine",color_t); plot2(upper, "Upper"); plot3(lower, "Lower");
프로필 이미지
라몬
2025-08-05
247
글번호 193020
지표
답변완료

트레이닝 궁굼합니다. 가능할까요?

아래 지표설정대로 제가 지정하는 종목에(1개~다수) 대해서 일봉기준으로 매매하고 싶습니 다. 1. 매수후 중복으로 나오는 매수신호는 무시 2. 지정하는 종목(1~다수) 3. 매도신호시 청산(통합주문2101에서 해도 무방한가요?) input : length(15); input : show_levl(true); var : up(0),dn(0),A(0),emaValue(0),correction(0),zlma(0); var : signalUp(False),signalDn(False),zlma_color(0),ema_col(0); var : TOP(0),BTM(0),box(0),tx(0),tx1(0),check_signals(False); up = Black; dn = Blue; #var box1 = box(na) // Variable to store the box a = atr(200); emaValue = ema(close, length); correction = close + (close - emaValue); zlma = ema(correction, length); signalUp = CrossUp(zlma, emaValue); signalDn = CrossDown(zlma, emaValue); zlma_color = iff(zlma > zlma[3] , up , iff(zlma < zlma[3] , dn , Nan)); ema_col = iff(emaValue < zlma , up , dn); plot1(zlma, "ZLMA",zlma_color); // Plot ZLMA plot2(emaValue,"EMA",ema_col); if signalUp Then { Top = zlma; BTM = zlma-A; box = box_new(sDate,sTime,Top,NextBarSdate,NextBarStime,BTM); Box_SetColor(box,up); Box_SetFill(box,true); var3 = (Top+BTM)/2; tx = Text_New(NextBarSdate,NextBarStime,var3,NumToStr(C,2)); Text_SetStyle(tx,1,2); } else if signalDn Then { Top = zlma+A; BTM = zlma; box = box_new(sDate,sTime,Top,NextBarSdate,NextBarStime,BTM); Box_SetColor(box,dn); Box_SetFill(box,true); var3 = (Top+BTM)/2; tx = Text_New(NextBarSdate,NextBarStime,var3,NumToStr(C,2)); Text_SetStyle(tx,1,2); } Else { Box_SetEnd(box,sDate,sTime,BTM); Text_SetLocation(tx,sDate,sTime,var3); } check_signals = signalUp or signalDn; if CrossDown(high, BTM) and emaValue > zlma Then { tx1 = Text_New(sDate[1],sTime[1],H[1],"▼"); Text_SetStyle(tx1,2,1); Text_SetColor(tx1,dn); } if CrossUp(low, Top) and emaValue < zlma Then { tx1 = Text_New(sDate[1],sTime[1],L[1],"▲"); Text_SetStyle(tx1,2,0); Text_SetColor(tx1,up); }
프로필 이미지
제너리
2025-08-05
277
글번호 193019
시스템
답변완료

아래 93786 관련

500봉에서 8월5일 장끝나고 검색을 하면 나오는 50 종목중 제가 원하는건 crossup(c,var2) 에 해당되는 종목인데 var1 에 해당되는 종목,var 에 해당되는 종목 , 이도저도 아닌 정체불명의 종목,그리고 원하는 crossup(c,var2) 에 해당되는 종목이 다 뒤섞여서 검색이 됩니다. 실제 원하는 종목은 25종목 검색 되구요. 수고스럽지만 다시한번 검토 부탁드립니다.
프로필 이미지
nams60
2025-08-05
201
글번호 193018
종목검색
답변완료

지정가격 선긋기

지정된 가격에 선을 긋고 선을 그은 가격이 표시되는 수식좀 알려주세요. 첨부된 사진과 같이 432.75, 432.60, 432.40, 432.15, 432.10 이렇게 5개의 선을 긋고 그 가격이 표시되도록 하는 수식좀 알려주시면 됩니다. 또, 432.75와 432.10 은 선을 굵게 표시해주세요.
프로필 이미지
천왕봉
2025-08-05
283
글번호 193017
지표

제너리 님에 의해서 삭제되었습니다.

프로필 이미지
제너리
2025-08-05
1
글번호 193016
강조
답변완료

잘 만들어 주신 Kalman지표를 시스템으로 변환하는 과정에서 오류

검증 과정은 잘 거쳤는데, 적용하는 과정에서 오류가 발생합니다. "논리값이나 논리표현식이 와야 합니다" 저가 변경한 식은 다음과 같습니다. input : short_len(50); input : long_len(150); input : retest_sig(false); input : candle_color(true); input : upper_col(Green); input : lower_col(Maroon); var : alpha(0),AR(0),A(0); var : R(0.01),Q(0.1); var : short_estimate(Nan),short_error_est(1.0),short_error_meas(R * (short_len)); var : short_kalman_gain(0),short_prediction(Nan),short_kalman(0); var : Long_estimate(Nan),Long_error_est(1.0),Long_error_meas(R * (Long_len)); var : Long_kalman_gain(0),Long_prediction(Nan),Long_kalman(0); var : trend_up(False); var : trend_col(0),trend_col1(0),candle_col(0); var : tx1(0),tx2(0),box1(0),box2(0); alpha = 1 / 200 ; A = iff(IsNan(A[1]) == true , ma(TrueRange, 200) , alpha * TrueRange + (1 - alpha) * iff(IsNan(A[1]) == true,0,A[1])); AR = A*0.5; if isnan(short_estimate) == true Then short_estimate = C[1]; short_prediction = short_estimate; short_kalman_gain = short_error_est / (short_error_est + short_error_meas); short_estimate = short_prediction + short_kalman_gain * (C - short_prediction); short_error_est = (1 - short_kalman_gain) * short_error_est + Q / (short_len); short_kalman = short_estimate; if isnan(Long_estimate) == true Then Long_estimate = C[1]; Long_prediction = Long_estimate; Long_kalman_gain = Long_error_est / (Long_error_est + Long_error_meas); Long_estimate = Long_prediction + Long_kalman_gain * (C - Long_prediction); Long_error_est = (1 - Long_kalman_gain) * Long_error_est + Q / (Long_len); Long_kalman = Long_estimate; trend_up = short_kalman > long_kalman; trend_col = iff(trend_up , upper_col , lower_col); trend_col1 = iff(short_kalman > short_kalman[2] , upper_col , lower_col); if (short_kalman > short_kalman[2]) Then { Buy(); } if (short_kalman < short_kalman[2]) Then { Sell(); } candle_col = iff(candle_color , IFf(trend_up == true and short_kalman > short_kalman[2] , upper_col , iff(trend_up == False and short_kalman < short_kalman[2] , lower_col , gray)) , Black); if Crossup(short_kalman,long_kalman) Then { Buy(); } Else Box_SetEnd(box1,sDate,stime,var2); if CrossDown(short_kalman,long_kalman) Then { Sell(); } Else Box_SetEnd(box2,sDate,stime,var4);
프로필 이미지
jhs0713
2025-08-05
317
글번호 193014
시스템