커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

햇살가득 님에 의해서 삭제되었습니다.

프로필 이미지
햇살가득
2022-05-04
2
글번호 158578
종목검색
답변완료

plot 관련하여

plot1, plot2, plot3, plot4를 구성해서 전략실행차트에 표시하면 4개중 2개만 표현이 됩니다. 가령 plot1, plot3만 표시되고 나머지는 표시가 되지 않네요. 흥미로운건, plot1과 plot3를 /*~*/로 비활성화 시키면 나머지 두개가 표시됩니다. 혹시 plot함수의 개수제한 설정방법이 있는지 문의드립니다. 아니면 다른 오류인가요
프로필 이미지
용호79
2022-05-04
1360
글번호 158576
지표

용호79 님에 의해서 삭제되었습니다.

프로필 이미지
용호79
2022-05-04
0
글번호 158575
지표

햇살가득 님에 의해서 삭제되었습니다.

프로필 이미지
햇살가득
2022-05-04
3
글번호 158573
종목검색
답변완료

수식 수정부탁드립니다.

안녕하십니까 작성하여 주신 아래수식 잘 사용중입니다. 매수조건을 추가 하고 싶어 문의 드립니다. ---------------------------------------------------- input : 금액(10000000),ntime(100000); var : 상한가(0), UpLimit(0); var : up1(0), up2(0), up3(0), up4(0), up5(0),up6(0),Up7(0); input : P(20),진입횟수(3),BBP(20),dv(2); input : 진입시작1(91500),진입종료1(110000); input : 진입시작2(130000),진입종료2(153000); var : mav(0),entry(0),volma(0),Tcond(False),BBup(0); if Bdate != Bdate[1] Then { entry = 0; Condition1 = False; } if TotalTrades > TotalTrades[1] Then Condition1 = False; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; mav = ma(C,P); volma = ma(V,P); BBup = BollBandUp(BBP,dv); Tcond = (sTime >= 진입시작1 and sTime < 진입종료1) or (sTime >= 진입시작2 and sTime < 진입종료2); #오전 09:30~11:00, 오후 1:00~15:30분 사이만 매수 if date >= 19981207 then { if date < 20050328 && CodeCategory() == 2 then UpLimit = (BP[0] * 1.12); Else if date >= 20050328 and date < 20150615 Then UpLimit = (BP[0] * 1.15); Else UpLimit = (BP[0] * 1.30); if CodeCategory() == 2 then { if date >= 20030721 then { up1 = int(UpLimit/100+0.00001)*100; up2 = int(UpLimit/100+0.00001)*100; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/10+0.00001)*10; up7 = int(UpLimit/1+0.00001)*1; } } Else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } if CodeCategory() == 1 || CodeCategory() == 2 then { if sdate < 20101004 Then { If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up6); } Else { If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up7); } } else if CodeCategory() == 8 || CodeCategory() == 9 then { // ETF 상한가 = up6; } } if MarketPosition == 0 Then { if Tcond == true and entry < 진입횟수 and #당일진입은 3회까지 C > DayOpen and #일봉양봉 mav > mav[1] and (TotalTrades == 0 or (TotalTrades > 0 and CountIf(mav<mav[1],BarsSinceExit(1)) >= 1)) and V >= volma[1]*2.0 Then #20거래량 평균 2배이상 거래량 발생 { Condition1 = true; TL_New(sDate,sTime,0,sDate,sTime,9999999); } if Condition1 == true and CrossDown(C,mav) Then Buy("b"); } if MarketPosition == 1 Then #if CrossDown(C,BBup) Then #볼밴상단 하향돌파 #ExitLong("bx2"); ExitLong("bx",AtLimit,상한가); SetStopProfittarget(1.8,PercentStop); SetStopLoss(1.3,PercentStop); SetStopEndofday(151500); ------------------------------------------------------------------ 현재 매수조건(분봉에 적용) 1. 일봉양봉 2. 20거래량 평균 2배이상 거래량 발생 위 조건 만족후 3. 현재가격이 20일선 하향 돌파 추가 조건 4. 5,20,60일선이 정배열 5. 20일선 상승 위 조건이 모두 만족 할때 매수 잘부탁드립니다. 감사합니다.
프로필 이미지
대한이
2022-05-04
1135
글번호 158572
시스템
답변완료

수식부탁드려요

1.볼밴(20,2)지표중 가. 상단선이 현재봉포함하여 최근 7봉중 5봉이상이 하락추세이면서 최근 3봉은 연속적으로 하락추세여야 한다. 나. 중심선이 현재봉포함하여 최근 7봉중 5봉이상이 하락추세이면서 최근 3봉은 연속적으로 하락추세여야 한다. 다. 하단선이 현재봉이 아닌 1봉전봉포함하여 최근 6봉중 5봉이상이 하락추세이면서 1봉전까지 3봉은 연속적으로 하락추세이다가 현재봉에서 상승전환 해야한다. 라. <다>의 볼밴하단선의 상승전환이 발생될때에 주가(시가와종가중 낮은가격)는 볼밴중심선 또는 하단선가격과의 이격도가 3%이내에 있어야 한다 위 조건을 만족하는 종목검색식을 부탁드립니다. 2. 최근 60봉이내에 종가는 60이평선보다 높고, 거래량은 5이평거래량보다 10배이상 또는 전일거래량대비 15배이상의 거래량이 발생된 종목중에서 5이평선과 20이평선이 60이평선을 하향이탈하고 볼밴선(20,2)하단선을 돌파하는 종목검색식을 부탁드립니다. 볼밴하단선돌파는 시가 또는 저가가 볼밴하단선밑에 있다가 종가상으로 하단선을 위에 있으면 돌파로 정의하고, 이 종가는 1봉전의 시가 또는 종가보다는 높아야 한다는 제한조건을 추가해주시기 바랍니다 감사합니다
프로필 이미지
해피오
2022-05-04
1008
글번호 158567
종목검색
답변완료

지표식 폴더 복사 방법

하이투자에서 예스트레이더를 사용하고 있습니다. 데스크탑 컴퓨터에서 만든 지표식을 노트북으로 복사하여 사용 할수 있습니까? 데스크탑 컴퓨터의 폴더를 복사하여 노트북에 붙여 넣기를 했는데, 안됩니다. 사용 할 수 있는 방법을 알려주시면 감사하겠습니다.
프로필 이미지
달빛
2022-05-04
681
글번호 158566
시스템

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

프로필 이미지
회원
2022-05-04
18
글번호 158562
시스템
답변완료

PINE 을 YES로 요청해 봅니다.

항상 감사하게 도움받고 있습니다. 다음은 pine 스크립트로 작성된 것인데....YES LANGUAGE로 변환하고 싶습니다. 저는 YES를 사용하기를 원해서,... 둘 다 익숙치 않아 해보다가 그래도 한번 도움 받으면 다음에는 혼자 가능하지 않을까 싶어서 도움 요청해 봅니다. 무리한 요청이라면 거절해 주셔도 충분히 이해하겠습니다. length = input(14, minval=1) src = input(close, title="Source") mult = input(2.0, minval=0.001, maxval=50) maLen=input(7,title="maLength") basis = sma(src, length) dev = mult * atr(length) upper = basis + dev lower = basis - dev bbr = (src - lower)/(upper - lower) bbe= ema(bbr,maLen) up = bbe[1]>bbe and bbe[2]<bbe[1]?bbe:na bt = bbe[1]<bbe and bbe[2]>bbe[1]?bbe:na topH=na(up)==0?highest(3):na bottomL=na(bt)==0?lowest(3):na tf= fixnan(topH) bf =fixnan(bottomL) btop=close>open?close:open bbot=close>open?open:close plot(tf,color=red,style=circles,linewidth=1,offset=-1) plot(bf,color=green,style=circles,linewidth=1,offset=-1) 감사합니다.
프로필 이미지
아키안
2022-05-04
860
글번호 158561
지표