커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

검색식부탁드립니다

수고많습니다 수식을검색식으로 부탁드립니다 매수선 a=shift(close,-26+1); b=bbandsup(240,3); valuewhen(1,crossup(a,b),b) 기준선 a=shift(close,-26+1); b=bbandsup(240,3); a1=crossup(c,b(25)); valuewhen(1,a1,(h+l)/2.20)) 기준선이 매수선밑에있고 주가가 매수선을돌파하는 검색식을 부탁드립니다
프로필 이미지
달오
2025-07-14
238
글번호 192494
종목검색
답변완료

수식문의

수고하십니다 아래식에 오루가 (외부변수2개가필요합니다) 나오느데5,6줄 어떠게 해야하는지요 도움 부탁합니다 감사합니다 if sTime>=17000 or sTime<1000 Then Input : is1(50),is2(100); var: isma1(0),isma2(0); isma1=LRL(C,IS1,0); isma2=LRL(C,IS2,0); # 매수/매도청산 If CrossUP(ISMA1, ISMA2) Then { Buy(); } # 매도/매수청산 If CrossDown(ISMA1, ISMA2) Then { Sell(); }
프로필 이미지
다림
2025-07-14
194
글번호 192493
시스템
답변완료

부탁 드립니다

전일대비 거래량 500% 이상 기준봉이후 기준봉고점을 기준으로 기준봉의 고점을 돌파 또는 기준봉 이후 고점 캔들을 돌파 그리고 전일 대량 거래량 발생 - 3일치 거래량의 평균 의 3% 기준 또는 전일 대량 거래량 발생 안 함 - 3일치 거래량의 평균 의 5% 기준으로 검색식 부탁합니다
프로필 이미지
갈랑교
2025-07-14
240
글번호 192490
종목검색

장보고153 님에 의해서 삭제되었습니다.

프로필 이미지
장보고153
2025-07-14
7
글번호 192489
시스템
답변완료

크기가 적은 숫자를 제거한 수식 수정을 부탁드립니다

그림파일의 내용중 크기가 적은 숫자를 제외한 수식 부탁드립니다 ========================================================== input : Period(35),선두께(2); Var:상승색(Turquoise), 하락색(Turquoise); Var:j(0),T(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0),tl9(0), date21(0),date22(0),time21(0),time22(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0),box(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0); Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0); Plot1(0); For j = 0 To 19 { HiBar[j] = HiBar[j] + 1; LoBar[j] = LoBar[j] + 1; } if weekhigh(0)[1] < weekhigh(0) Then T = 1; if weekLow(0)[1] > weekLow(0) Then T = -1; If T == -1 Then { If T[1] != -1 Then { For j = 18 DownTo 0 { LoVal[j+1] = LoVal[j]; LoBar[j+1] = LoBar[j]; } LoVal[0] = L; LoBar[0] = 0; date11 = date[HiBar[0]]; time11 = stime[HiBar[0]]; Value11 = HiVal[0]; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,하락색); box = Box_New(date11,time11,Value11,date12,time12,Value12); Box_SetColor(box,Blue); Box_SetFill(box,true,100,true); date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; for j = 0 to 6 { fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]); { Tx = Text_New(sDate,sTime,Loval[0],NumToStr(L,0)); Text_SetStyle(tx,1,0); } } } If LoVal[0] > L Then { LoVal[0] = L; LoBar[0] = 0; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date22 = date[0]; time22 = stime[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); Box_SetEnd(box,date12,time12,Value12); { Text_SetString(Tx,NumToStr(L,0)); Text_SetLocation(Tx,sDate,sTime,Loval[0]); } } } If T == 1 Then { If T[1] != 1 Then { For j = 18 DownTo 0 { HiVal[j+1] = HiVal[j]; HiBar[j+1] = HiBar[j]; } HiVal[0] = H; HiBar[0] = 0; date11 = date[LoBar[0]]; time11 = stime[LoBar[0]]; Value11 = LoVal[0]; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,상승색); box = Box_New(date11,time11,Value11,date12,time12,Value12); Box_SetColor(box,Red); Box_SetFill(box,true,100,true); date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; for j = 0 to 5 { fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]); { Tx = Text_New(sDate,sTime,hival[0],NumToStr(H,0)); Text_SetStyle(tx,1,1); } } } If HiVal[0] < H Then { HiVal[0] = H; HiBar[0] = 0; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date32 = date[0]; time32 = stime[0]; TL_Delete(tl); TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); Box_SetEnd(box,date12,time12,Value12); { Text_SetString(Tx,NumToStr(h,0)); Text_SetLocation(Tx,sDate,sTime,hival[0]); Text_SetStyle(tx,1,1); } } } TL_SetSize(TL1,선두께); TL_SetDrawMode(TL1,0); Text_SetSize(tx,20);
프로필 이미지
팔보채
2025-07-14
299
글번호 192488
지표
답변완료

93521 수정부탁드립니다.

도움에 감사 드립니다. 질문 수식에서 중간 하단쯤에 일부분이 원하는대로 수정이 안된것 같습니다 수정 부탁 드립니다. 미리 감사 드립니다. Else If (sdate != sdate[1] and nextbarStime >= 070000) or (sdate == sdate[1] and nextbarStime >= 070000 and stime < 070000) Then { //당일 종가봉에서
프로필 이미지
yes
2025-07-14
204
글번호 192487
지표

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

프로필 이미지
yes
2025-07-14
0
글번호 192486
지표

사공하늘 님에 의해서 삭제되었습니다.

프로필 이미지
사공하늘
2025-07-14
80
글번호 192483
검색
답변완료

문의드립니다.

이전에 다른 분이 문의한 내용에 대한 답을 아래와 같이 주셧습니다. 제게도 유용하다 싶어서 사용하보려 합니다. 그런데 차트에 적용해보니 첨부된 그림처럼 나오는데 동그라미 표시된 부분을 연결하려면 수식을 어떻게 수정해야 하는지요? ================ input : length(50); input : factor(1.0); input : col_up(lime); input : col_dn(Red); input : col_ul(Cyan); var : direction(0),count_up(0),count_dn(0); var : volatility(0),upper(0),lower(0),sig_up(False),sig_dn(False); var : upper_band(0),lower_band(0); var : hlc3(0),alpha(0),ATrv(0); var :tx1(0),tx2(0); var1 = ma(C,25); var2 = ma(C,length); hlc3 = (H+L+C)/3; volatility = ma(high-low, 70) * factor; upper = highest(var1 + volatility, int(length/2)); lower = lowest(var2 - volatility, int(length/2)); sig_up = CrossUp(hlc3, upper); sig_dn = CrossDown(hlc3, lower); if sig_up == true Then direction = 1; if sig_dn == true Then direction = -1; upper = iff(direction == 1 , Nan , upper); lower = iff(direction == -1 , Nan , lower); if direction == 1 Then { count_up = count_up+ 0.5; count_dn = 0; } if direction == -1 Then { count_dn = count_dn+0.5; count_up = 0; } count_up = iff(count_up > 70 , 70 , count_up); count_dn = iff(count_dn > 70 , 70 , count_dn); alpha = 1 / 100 ; ATrV = IFf(IsNan(ATrV[1]) == true, ma(TrueRange,100) , alpha * TrueRange + (1 - alpha) * IFf(isnan(ATrV[1])==true,0,ATrV[1])); upper_band = lower + ATRV*5; lower_band = upper - ATRV*5; if IsNaN(upper_band) == False Then plot1(upper_band, "Upper Wave",iff(index % 2 == 0 , nan , col_ul)); Else NoPlot(1); if IsNaN(lower_band) == False Then plot2(lower_band, "Lower Wave",iff(index % 2 == 0 , nan , col_ul)); Else NoPlot(2); if IsNaN(upper) == False Then plot3(upper, "Upper Band",col_dn); Else NoPlot(3); if IsNaN(lower) == False Then plot4(lower, "Lower Band",col_up); Else NoPlot(4); if direction != direction[1] and direction == 1 Then { tx1 = Text_New_Self(sDate,sTime,Lower,"●"); Text_SetStyle(tx1,2,2); Text_SetColor(tx1,col_up); tx2 = Text_New_Self(sDate,sTime,L,"▲"); Text_SetStyle(tx2,2,0); Text_SetColor(tx2,col_up); } if direction != direction[1] and direction == -1 Then { tx1 = Text_New_Self(sDate,sTime,upper,"●"); Text_SetStyle(tx1,2,2); Text_SetColor(tx1,col_dn); tx2 = Text_New_Self(sDate,sTime,H,"▼"); Text_SetStyle(tx2,2,1); Text_SetColor(tx2,col_dn); } ========================= 항상 감사드립니다. 수고하세요!!!
프로필 이미지
해암
2025-07-14
295
글번호 192482
지표