커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

안녕하세요

번번히 부탁드려 죄송하고 감사합니다. 예스트레이더 수식으로 변경 문의드립니다. //inputs src = close len = input(10, minval=1, title="Length") sentiment = input(3, minval=1, title="Sentiment Factor") smooth = input(3, minval=1, title="Smoothing") vw = input(defval = true, title="Volume Weighted ?" ) step = input(title="Step", defval=5, maxval=50, minval=0, step=5) //Calculations -- prefer to use wma v = vw ? volume : 1 longlen = sentiment * len up = wma(max(change(src)*v, 0), len) down = wma(-min(change(src)*v, 0), len) rsiraw= down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down)) rsiraw100 = rsiraw *2 -100 rsi = wma(rsiraw100, smooth) longup = wma(max(change(src)*v, 0), longlen) longdown = wma(-min(change(src)*v, 0), longlen) longrsiraw= longdown == 0 ? 100 : longup == 0 ? 0 : 100 - (100 / (1 + longup / longdown)) longrsiraw100 = longrsiraw *2 -100 longrsi = wma(longrsiraw100, smooth) longrsis = step > 0 ? round(longrsi/step) * step : longrsi //Plot //Plot levels and sentiment first, so the visual order is correct - doesn't cover the main plot zeroline = hline(0, title = 'Zero Line', color=yellow, linestyle=line) hline(40, title = 'Strong Up Level', color=green, linestyle = dotted) hline(-40, title = 'Strong Down Level', color=red, linestyle = dotted) plot(longrsis, title='Sentiment',style=area , transp=20, color=longrsis >=0 ? green : red , linewidth=2) plot(rsiraw100, color=purple) plot(rsi, title='K_RSI',style = line , transp=20, color= rsi >=0 ? aqua : orange , linewidth=2) SignalDn = rsi < 0 and rsi[1] >= 0 plotshape(SignalDn, title = "Signal Down", style=shape.triangledown, location = location.top, transp = 20, size=size.small, color = red, offset = -1 ) SignalUp = rsi >=0 and rsi[1] < 0 plotshape(SignalUp, title = "Signal Up", style=shape.triangleup, location = location.bottom, transp = 20, size=size.small, color = green, offset = -1 ) 감사합니다.
프로필 이미지
로즈버드
2020-02-12
451
글번호 135876
지표
답변완료

부탁드립니다

수고하십니다 아래 수식을 예스수식 상승화살표)적색,하락화살표)청색,부탁드립니다 *상승 다이버전스 A=Lowest(c,14); B= RSI(14); A(1) >A && B(1) < B 위 수식은 14봉중 최저가는 하락하고, RSI(14)는 상승할때 신호를 나타내는 수식입니다. * 하락 다이버전스 F = Highest(c, 14); G = RSI(14); F(1) < F && G(1) > G 위 수식은 14봉중 최고가는 상승하고, RSI(14)는 하락할때 신호를 나타내는 수식입니다.
프로필 이미지
파생돌이
2020-02-12
346
글번호 135869
지표

오빠만세 님에 의해서 삭제되었습니다.

프로필 이미지
오빠만세
2020-02-12
7
글번호 135868
종목검색
답변완료

지표문의 드립니다.

안녕하십니까. 아래 내용을 수식으로 표현했으면 합니다. 1. 직전봉과 현재봉이 있고 2. 직전봉의 고점에 비해 현재봉의 고점이 높다면 +1, 같다면 0, 낮다면 -1 3. 직전봉의 저점에 비해 현재봉의 저점이 높다면 +1, 같거나 0, 낮다면 -1 4. 표현되는 식은 2와 3을 더하고, 이를 누적시켜 표현하는 것입니다. 구현해보고 싶은 지표는, 저점과 고점을 높여가며 상승하는 추세인지, 그 반대인지를 지표로 보고 싶은 것입니다. 감사합니다.
프로필 이미지
애널박
2020-02-12
162
글번호 135865
지표
답변완료

키움수식을 에스트레이더로 바꾸어주세요

첫번째 A1=wavg(2*wavg(C, Period/2) - wavg(C, Period), Sqrt(Period)); A2=wavg(2*wavg(H, Period/2) - wavg(H, Period), Sqrt(Period)); A3=wavg(2*wavg(L, Period/2) - wavg(L, Period), Sqrt(Period)); if(A3>A1, A1, A1-A3) - if(A1>A2, A1, A2-A1) period 120 두번째 MP=(high+low)/2; AO=MA(MP,short,이평방법)-MA(MP,long,이평방법) 이평방법 삼각 short 12 long 26 이수식을 예스식으로 부탁드립니다 감사합니다 복 많이 받으세요
프로필 이미지
밥술
2020-02-12
254
글번호 135864
지표

바다사당 님에 의해서 삭제되었습니다.

프로필 이미지
바다사당
2020-02-12
4
글번호 135863
시스템
답변완료

당일 하이로우 갱신

아래 수식 문의드립니다. 1. buy 수식 고점을 5회 갱신하고 저점을 3회 갱신한 후 다시 새로운 고점을 1회 갱신하면 buy 2. sell 수식 저점을 5회 갱신하고 고점을 3회 갱신한 후 다시 새로운 저점을 1회 갱신하면 sell
프로필 이미지
좌오비우오비
2020-02-12
251
글번호 135862
시스템
답변완료

함수 지도 요청 드립니다.

* 좋은 하루 되십시요. * <요청사항 1 > ## 최고가 대비 비율(%) 구하는식 (100개봉 최고가 / 현재가 ) * 100 이것을 수식으로 좀 부탁 드립니다. * <요청사항 2 > * 마이너스 값 제외 하고 더하는 수식좀 부탁 드립니다. 아래 같은 데이타가 있을경우 (현재가격) 1,571.2 1,571.3 0.1 1,571.4 0.1 1,572.0 0.6 1,571.6 -0.4 1,571.9 0.3 1,571.8 -0.1 1,571.9 0.1 1,572.0 0.1 1,572.3 0.3 마이너스 부분은 제외 하고 계속 더하기 하는 차트좀 부탁 드립니다. 반대로 마이너스 부분만 더해주는 것도 부탁 드립니다. 즉 양수만 더해 주는 그래프 하나랑 음수만 더해주는 그래프 하나 합의 두개 입니다. 따로 따로 해주시면 고맙습니다. * 수식은 C - C[1] 입니다. ## <요청사항 3 > * 볼린저 밴드 폭이 좁을 경우 최상단폭과 최하단 폭이 20틱 이상일 경우만 적용 할려면 어떻게 수정 해야 하나요? 즉 가격이 상단 폭 이탈시 표시 하단이탈시 표시 (단 상,하단 차이가 20틱 이상일때만 적용) var : TX1(0); input : P(20),dv1(1),dv2(2),dv3(3); var : BBmd(0),BBup1(0),BBup2(0),BBup3(0),BBdn1(0),BBdn2(0),BBdn3(9); BBup3 = BollBandUp(P,dv3); BBup2 = BollBandUp(P,dv2); BBup1 = BollBandUp(P,dv1); Bbmd = ma(c,P); BBdn1 = BollBandDown(P,dv1); BBdn2 = BollBandDown(P,dv2); BBdn3 = BollBandDown(P,dv3); plot1(BBup3); plot2(BBup2); plot3(BBup1); plot4(BBmd); plot5(BBdn1); plot6(BBdn2); plot7(BBdn3); If c > BBup3 and c < BBdn3 Then { Tx1 = Text_New(sdate,stime, H, "●" ); Text_SetColor(Tx1,BLACK); Text_SetSize(tx1,20); Text_SetStyle(tx1,2,0); } * 고맙습니다.
프로필 이미지
요타
2020-02-12
390
글번호 135861
사용자 함수
답변완료

기초수식~~문의드립니다

안녕하세요~~ 초보적인 문의드립니다 예를들어~~ 아래처럼 수식에서(이평이름!을) 가능하면 한글!로 사용하고싶은데요~~ 예시~(1)과 달리 예시~(2)처럼~~~(ver)선언!!을 2중으로 다시해야되는지요? 그리고 (1)과 (2)의 차이점을 설명해주시면~~~ 앞으로의 수식!작성시 기초로 도움되겠읍니다 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 예시-(1) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ input : 단기(5),중기(20),장기(60),일봉(120); if ma(C,단기) > ma(C,중기)[100] Then buy("매수진"); if ma(C,단기) < ma(C,중기)[100] Then Exitlong("매수청"); if ma(C,단기) < ma(C,중기) and ma(C,장기) < ma(C,일봉) Then Sell("매도진"); if ma(C,단기) > ma(C,중기) and ma(C,장기) > ma(C,일봉) Then ExitShort("매도청"); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 예시~~(2) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ input : 단기(5),중기(20),장기(60),일봉(120); var : 단기이평(0),중기이평(0),장기이평(0),일봉이평(0); 단기이평 = ma(c,단기); 중기이평 = ma(c,중기); 장기이평 = ma(c,장기); 일봉이평 = ma(c,일봉); if ma(C,단기이평) > ma(C,중기이평) Then buy("매수진"); if ma(C,단기이평) < ma(C,중기이평) Then Exitlong("매수청"); if ma(C,단기이평) < ma(C,중기이평) and ma(C,장기이평) < ma(C,일봉이평) Then Sell("매도진"); if ma(C,단기이평) > ma(C,중기이평) and ma(C,장기이평) > ma(C,일봉이평) Then ExitShort("매도청"); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 예시~~(2)처럼~~ 아래 이부분을 선언!을 다시 해주어야하는지요?~~차이점?설명부탁드립니다 var : 단기이평(0),중기이평(0),장기이평(0),일봉이평(0); 단기이평 = ma(c,단기); 중기이평 = ma(c,중기); 장기이평 = ma(c,장기); 일봉이평 = ma(c,일봉);
프로필 이미지
째일
2020-02-11
527
글번호 135860
시스템