커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

시스템식 여쭤봅니다.

안녕하세요? 개별 종목으로 매매 할꺼구요. 종가 직전 매수 그 다음날 매도 식을 만들고 싶습니다. 조건은 1봉전 대비 거래량 10%~40% 이고 오늘 일봉의 저가 고가 변동폭이 10% 미만 이고 금일 현재가가 1봉전 종가를 넘지 않았고 금일 저가가 1봉전 (시가+종가)/2 이하로 내려가지 않았을때 종가로 매수 ( 종가매수가 어렵다면 15시19분쯤 매수;;) 매도는 +4% 이상이면 물량의 60% +10% 나머지 전량매도 +4% 이상갔다가 다시 +1%로 떨어지면 전량 매도 손절은 1봉전(매수한날) 저가 이탈시 전량매도 입니다. 종목을 매수하고 물량이 있을때는 조건에 충족해도 중복 매수가 안됬으면 합니다. 감사합니다. ps. 한번 만들어주셨는데.. 적용하니 예스랭귀지에서 틀린 문법이라고 오류가 엄청떴었습니다;
프로필 이미지
부자청년28
2017-11-15
154
글번호 114220
시스템
답변완료

해외선물(골드) 문의드립니다.

안녕하세요. 해외선물(골드) 문의드립니다. 예스글로벌을 이용중입니다. 1 아래와 같은 수식으로 차트에 적용하니 당일의 고저가를 계산하지 않고 전일봉을 계산하는것 같습니다. 만들고자 하는식은 첨부한 그림에서 빨간 사각형안의 글자처럼 당일봉에 현재까지의 고저가를 반영해서 그 진폭을 틱수로 표현하고자합니다. 2 그리고 이경우에 차트의 기준시간을 시장시간과 서울/도쿄로 할때 지표값이 영향을 받는지 궁금합니다. 감사합니다. var : tx1(0),중심(0),폭(0); 중심 = (DayHigh-DayLow)/2+DayLow; 폭 = DayHigh-DayLow; Plot1(중심); Text_Delete(tx1); tx1 = Text_New(sdate,stime,중심,NumToStr((폭*10),0));
프로필 이미지
에이텍
2017-11-15
252
글번호 114219
지표
답변완료

문의 드립니다.

안녕하세요. 입문한지 얼마안된 생초보입니다. 아래와 같이 수식을 작성해 주신것을 보다보니 Bdate,Sdate 는 어떤값인가요?. 따로 선언이 없는것을 보았을때 미리 예약된 값을 가진것 같은데 기본사용설명서로 공부하고 분석해보려니 막히는게 많네요 수고하세요. 공부하는데 도움될 팁 좀 부탁드립니다. ^^ input : 타분봉(60); var : cnt(0),S1(0),D1(0),TM(0),TF(0); Array : OO[50](0),HH[50](0),LL[50](0),CC[50](0); if Bdate != Bdate[1] Then{ S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; 이하생략
프로필 이미지
혜움
2017-11-15
156
글번호 114217
지표
답변완료

문의 드립니다.

Arrays : Period[2](0), Relative[2](0); Vars : X(0); Period[0] = 9; For X = 0 To 1 { Relative[X] = RSI(Period[X]); MessageLog("0값 %.2f",Relative[0]); MessageLog("1값 %.2f",Relative[1]); MessageLog("X값 %.2f",Relative[X]); If C < O Then Buy(); } 메세지로그를 찍어봤는데요. 결과값을 보시면, 처음 메세지는 Relative[0] 에는 52.17 값이 정상적으로 나왔구요. 두번째 메세지 Relative[1] 은 초기값이 0 이기 때문에 두번째 메세지도 정상으로 나왔습니다. 그래고 X값은 For문이 처음 0값이기 때문에 Relative[0] = 52.17 세번째도 정상이네요. 이제 문제는 For문의 X값이 0에서 1값으로 변했을때 입니다. 보시면 X값이 1로 변했을때 모든 수치가 52.17 로 나옵니다. RSI(Period[X]) 에서 X 값이 1로 변하였으로 RSI(Period[1]) 인데 Period[1] 의 초기값은 0 이므로 RSI(Period[1]) 은 0이고 Relative[1] = RSI(Period[1]); 위 구문의 결과값도 0 인데 왜 메세지로그에서는 전부 52.17 로 찍혀서 나오는 것일까요? 52.17 0 0 이렇게 나오는게 정상이 아닌가요?
프로필 이미지
무결점
2017-11-15
167
글번호 114214
시스템
답변완료

문의드립니다.

도움주시는 덕분에 도전하면서 소액으로 매매도 해보고 있습니다. 매번 감사합니다. 1. 기타 종가가 볼린저밴드 상단 돌파시 매수 이평청산 위 전략을 쓰려고 할 때 진입 이후 볼린저밴드 재돌파시 매수 이렇게 하려면 다른 진입신호 허용인가요 모든 진입신호 허용인가요? 2. 시스템 이전에 답해주신 수식 n% 오를때마다 추가 진입인데요. n%오를 때마다 추가진입하는 거를 처음 진입수량의 50% 40% 30% 20% 10% 이렇게 나누어서 수정부탁드립니다. Input : BBP(20), MultiD(1.8); Input : EVP(20), Percent(2); input : n(5); var : MAv(0),BBup(0),BBdn(0); var : center(0),UPline(0),DNline(0); MAv = ma(C,BBP); BBup = BollBandUp(BBP,MultiD); BBdn = BollBandDown(BBP,MultiD); center = ma(C, EVP); UPline = EnvelopeUp(EVP, Percent); Dnline = EnvelopeDown(EVP, Percent); if bbup-bbdn > UPline-Dnline and CrossUp(c,bbup*(1+n/100)) Then buy("b1"); if MarketPosition == 1 Then{ if CurrentContracts > CurrentContracts[1] Then var1 = sdate; if sdate > var1 then buy("bb",AtStop,LatestEntryPrice(0)*(1+n/100)); if CrossDown(c,mav) Then exitlong(); } 3. 시스템 2번 수식을 처음 진입수량의 50%- 25% - 12.5% 이런 식으로 절반씩 나눠 진입할 수 있게 코딩 부탁드립니다. 이건 모든 진입 신호 허용으로 하면 되나요? 4. 시스템 진입 엔벨로프폭보다 볼린저밴드 차가 크고 볼린저밴드 상단선 가격보다 현재 가격이 n% 이상 크다면 진입 추가진입 진입 상태에서 종가가 볼린저밴드 상단선을 추가 돌파(진입 신호와 다른 돌파)했을 경우 진입 수량의 50% 만큼 추가진입. 추가진입청산 종가가 볼린저밴드 상단선 표준편차(1.5)를 하향돌파하면 추가진입분 청산. 청산 종가가 볼린저밴드 중단선을 하향돌파하면 청산 비고 추가진입은 날짜마다 한번씩만 진입함. 이익이든 손실이든 한번씩만
프로필 이미지
잡다백수
2017-11-15
153
글번호 114213
시스템
답변완료

부탁드려요

틱차트에서 전봉의 종가를 차트에 표시하게 하고 싶습니다. 감사합니다..
프로필 이미지
디엠
2017-11-15
166
글번호 114206
지표
답변완료

문의 드립니다.

Arrays : Period[2](0), Relative[2](0); Vars : X(0); Period[0] = 9; For X = 0 To 1 { Relative[X] = RSI(Period[X]); If CrossDown(Relative[X], 30) Then { Print("C:₩a11.txt","%.2f, %.2f",Relative[0],Relative[1]); Buy(); } If CrossDown(Relative[X], 30) Then { Print("C:₩a11.txt","%.2f, %.2f",Relative[0],Relative[1]); Buy(); } } For문에 대한 저의 이해가 부족해서인지 이해가 안되는 부분이 많은데요. 일단 수식을 보면 아시겠지만, 배열 Period[0] 변수에만 9값을 주었구요. Period[1] 변수에는 값을 주지 않았으므로 0값인데 Print 함수로 출력을 해보니까 보시는바와 같이 데이터가 찍어져 나옵니다. Relative[1] = RSI(Period[1]) 여기서 Period[1]은 0값인데 Relative[1] 에 RSI 값이 저장되는게 말이 되는 건가요? 그리고 또 Print 함수로 찍어낸 수치를 보면 2017-11-03 9:01:00 27.66, 50.45 2017-11-03 9:01:00 27.66, 50.45 2017-11-03 9:01:00 27.66, 27.66 2017-11-03 9:01:00 27.66, 27.66 이렇게 봉 하나에 27.66, 50.45 가 되었다가 둘의 수치가 같아집니다. 27.66, 27.66 이 부분도 잘 이해가 안갑니다. 둘은 배열변수로 각각 Relative[0] Relative[1] 의 값이 다른데 왜 둘의 값이 처음에는 달랐다가 똑같아 지는 것이죠?
프로필 이미지
무결점
2017-11-15
177
글번호 114200
시스템
답변완료

문의드립니다.

안녕하세요. 혹시 포지션 청산이후 신규진입을 특정시간 이후에 신호나오게 가능할까요? 예> 포지션 청산후 30분이 지난 시점부터 진입신호 발생 포지션 청산후 10개봉이 완성된 이후 부터 진입신호 발생 항상 친절한 답변 감사합니다. 즐거운 하루 되세요~
프로필 이미지
휴먼
2017-11-15
136
글번호 114199
사용자 함수
답변완료

시스템식 부탁드립니다.

항상 도움 주셔서 감사합니다. 1) 해외선물 틱차트(500틱)에서 시작시간(08시)부터 현재시간(16시) 까지의 최고가와 최저가를 돌파시 매수, 매도포진션 진입하는 시스템식 부탁드립니다. 2) 해외선물 틱차트(500틱)에서 시작시간(08시)부터 이전틱 까지의 최고가와 최저가를 돌파시 매수, 매도 포진션 진입하는 시스템식 부탁드립니다. (최고가와 최저가 수시로 변경되므로 시스템 진입신호가 자주 나오겠지만 그것에 상관없이 수식만 부탁드립니다.) 3) 해외선물 틱차트(500틱)에서 현재가가 150일이평 상승 돌파 매수 진입 이후 현재가가 30일 이평을 하향 돌파하여 매수청산 이후 현재가가 다시 30일 이평을 재상승 돌파하여 매수 진입시 이전 포지션(현재가가 150일 이평 상승돌파 매수진입) 진입이후 최고가를 돌파하는 경우에만 재진입하는 시스템식 부탁드립니다. (단, 현재가가 150일 이평을 하향 돌파하지 않음, 만약 현재가가 150일 이평을 하향 돌파 했다면 진입조건 체크하지 않아도 됨) 시스템식 부탁드립니다. 감사합니다.
프로필 이미지
양치기
2017-11-15
162
글번호 114198
시스템