커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

베어샘 님에 의해서 삭제되었습니다.

프로필 이미지
베어샘
2021-10-26
66
글번호 153175
종목검색
답변완료

문의 드립니다.~

수고하십니다~ 아래와 같이 시간설정을 하였는데 질문1 다른 시간데는 정상적으로 돌아가는데 input : StartTime3(003000),EndTime3(010000); 에서는 0시 30분 부터가 아니고 00시 부터 시작됩니다. 왜 그런지요? 질문2 1분봉 차트에서는 전체시간이 돌아가는데 틱봉에서는 input : StartTime1(183000),EndTime1(193000); 부분만 돌아가고 다른 시간대는 실행되지 않는데 틱봉에서도 설정된 전체시간이 실행되게 하려면 어떻게 해야 하나요? input : StartTime1(183000),EndTime1(193000); input : StartTime2(220000),EndTime2(223000); input : StartTime3(003000),EndTime3(010000); input : StartTime4(010000),EndTime4(013000); input : ntime(100000),n(10); var : Tcond(false); var : OO(0),HH(0),LL(0); if (sdate != sdate[1] and stime >= EndTime1) or (sdate == sdate[1] and stime >= EndTime1 and stime[1] < EndTime1) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime1) or (sdate == sdate[1] and stime >= StartTime1 and stime[1] < StartTime1) Then { Tcond = true; SetStopEndofday(EndTime1); } if (sdate != sdate[1] and stime >= EndTime2) or (sdate == sdate[1] and stime >= EndTime2 and stime[1] < EndTime2) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime2) or (sdate == sdate[1] and stime >= StartTime2 and stime[1] < StartTime2) Then { Tcond = true; SetStopEndofday(EndTime2); } if (sdate != sdate[1] and stime >= EndTime3) or (sdate == sdate[1] and stime >= EndTime3 and stime[1] < EndTime3) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime3) or (sdate == sdate[1] and stime >= StartTime3 and stime[1] < StartTime3) Then { Tcond = true; SetStopEndofday(EndTime3); } if (sdate != sdate[1] and stime >= EndTime4) or (sdate == sdate[1] and stime >= EndTime4 and stime[1] < EndTime4) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime4) or (sdate == sdate[1] and stime >= StartTime4 and stime[1] < StartTime4) Then { Tcond = true; SetStopEndofday(EndTime4); } Tcond = true; OO = O; HH = H; LL = L; if Tcond == true Then { if TotalTrades > TotalTrades[1] Then { OO = O; HH = H; LL = L; } if HH > 0 and H > HH Then HH = H; if LL > 0 and L < LL Then LL = L; if MarketPosition == 0 and OO > 0 and LL > OO-PriceScale*n Then Sell("s",AtLimit,LL+PriceScale*n); if MarketPosition == 0 and OO > 0 and HH < OO+PriceScale*n Then Buy("b",AtLimit,HH-PriceScale*n);
프로필 이미지
예스요
2021-10-26
867
글번호 153163
시스템

신대륙발견 님에 의해서 삭제되었습니다.

프로필 이미지
신대륙발견
2021-10-26
17
글번호 153162
시스템
답변완료

수치 범위에 관해서 질문드립니다

안녕하세요 분봉상에서 일봉 이동평균선을 표현하는데 키움에서는 범위지정 방법이 없어서 일일이 수치를 입력해줘야 하는데 예스에서는 간단하게 표현할 수 있는 방법이 있을까요? 예로 20일 이평을 구하려는데 모든 수치를 작성해야되서요 sv1=(npredayclose(4)+npredayclose(3)+npredayclose(2)+ npredayclose(1)+dayclose())/5; sv2=(npredayclose(19)+npredayclose(18)+npredayclose(17)+ npredayclose(16)+npredayclose(15)+npredayclose(14)+ npredayclose(13)+npredayclose(12)+npredayclose(11)+npredayclose(10) +npredayclose(9)+npredayclose(8)+npredayclose(7)+ npredayclose(6)+npredayclose(5)+npredayclose(4)+ npredayclose(3)+npredayclose(2)+ npredayclose(1)+dayclose())/20;
프로필 이미지
yamu
2021-10-26
923
글번호 153161
검색
답변완료

시스템 이상 검토의뢰

안녕하세요 예스스탁입니다. Input : Period1(1), Period2(15), Period3(30), Period4(60), Period5(120),period6(240),Period7(480), Period8(960), Period9(1920), Period10(3840),period11(7680); var : T(0); var3 = ma(C,Period3); var4 = ma(C,Period4); var8 = ma(C,Period8); var10 = ma(C,Period10); if CrossUp(var8,Var10) Then T = 1; if CrossDown(var8,Var10) Then T = -1; if T == -1 and CrossUp(Var3,Var4) Then Buy(); if T == 1 and CrossDown(Var3,Var4) Then Sell(); 즐거운 하루되세요 > tnsflwls 님이 쓴 글입니다. > 제목 : 시스템 작성 의뢰 > 수고 하십니다 ! Input : Period1(1), Period2(15), Period3(30), Period4(60), Period5(120),period6(240),Period7(480), Period8(960), Period9(1920), Period10(3840),period11(7680); 이동평균선 8선 이 이동평균선 10선 을 크로스다운 하고 난 다음에 이동평균선 3선이 이동평균선 4선 을 크로스업 할때는 매수 를 , 이동평균선 8선 이 이동평균선 10선 을 크로스업 하고 난 다음에 이동평균선 3선이 이동평균선 4선 을 크로스다운 할때는 매도 를 할수있는 수식을 부탁 드립니다. ##### 수식을 적용하였으나 매매 체결이 안되는데요 , 우선 먼저 이평8 선과 10선이 크로즈를 하고 난 다음 , 한참 진행이 된 후에 이평3 선과 4선이 크로즈될때 매매 체결이 되는수식으로 작성을 다시 한번 부탁 드립니다. *** 수고 하세요 ***
프로필 이미지
tnsflwls
2021-10-26
895
글번호 153157
시스템
답변완료

문의 드립니다.

안녕하세요. 시스템 구현에 있어서 어려움을 겪고 있어서 문의 드립니다. [1]은 지표 구현에 관련된 질문입니다. [2]은 [1]을 활용한 시스템 설정입니다. 만약 구현이 가능하지 않는다면 몇번 항목이 안되는지, 그리고 대체 방안을 알려 주시면 감사하겠습니다. [1] 새로운 하루가 시작되었을 시 변수를 모두 초기화를 시키고 해당 조건을 만족한 시점부터 지표를 생성한다. 예) 장 시작 후 양봉이 연속해서 6개 발생 할 경우 6개 봉의 최고점 값과 최저점 값을 표시하는 지표(화면 표시)를 생성. 이후, 새로운 6연속 양봉 생성시 지표 값을 갱신. 다음날 장 시작 시, 어제의 지표 값은 초기화. 양봉 6개 연속해서 발생 시 다시 지표 생성 [2] A : 최초로 발생한 6연속 양봉의 (최고점) B : 최초로 발생한 6연속 양봉의 최저점 C : 두번째로 발생한 6연속 양봉의 (최고점) D : 두번째로 발생한 6연속 양봉의 최저점 거래시간: [진입시간: 금일 오전 11시부터 익일 오전 1:00, 청산시간: 금일 오전 11시부터, 익일 오전 5:30분 (장종료 30분전까지)] 1. 지표 값이 생성(최초로 발생한 6연속 양봉) 된 이후 -> A 돌파 시 한번의 매수 기회 / B 돌파 시 한번의 매도 기회가 주어진다. 예) A돌파 후 B에서 손절 -> B 스위칭 -> A도달시 손절 후 스위칭을 하지 않는다. 예) A돌파 후 목표가 청산 - > B돌파 이후 목표가 청산 - > A 또는 B 다시 돌파시 거래하지 않는다. 목표가: 1) 매수 진입 시: A+ (A-B) / 매도 진입시: B - (A-B) 2) 매수 진입(A 돌파) 시 손절 또는 수익 발생 후 다시 A를 돌파 하여도 거래하지 않는다. 매도 진입(B 돌파) 시 손절 또는 수익 발생 후 다시 B를 돌파 하여도 거래하지 않는다. 손절가: 1) A 돌파 시, B 값에 손절 후 스위칭(최초 B값 진입 시 스위칭 진행) / B 돌파 시, A 값에 손절 후 스위칭(최초 A값 진입 시 스위칭 진행) *목표가 및 손절가에 도달하지 못하고 지표 값이 갱신 될 경우 2번으로 넘어간다. 2. 지표 값이 갱신(새로운 6연속 양봉 발생) 된 이후 A) 보유하고 있는 포지션이 없을 경우 -> C 돌파 시 한번의 매수 기회 / D 돌파 시 한번의 매도 기회가 주어진다. 예) C돌파 후 B에서 손절 -> D 스위칭 -> C도달시 손절 후 스위칭을 하지 않는다. 예) C돌파 후 목표가 청산 - > D돌파 이후 목표가 청산 - > C 또는 D 다시 돌파시 거래하지 않는다. 목표가: 1) 매수 진입 시: C + (C-D) / 매도 진입시: D - (C-D) 2) 매수 진입(C 돌파) 시 손절 또는 수익 발생 후 다시 C를 돌파 하여도 거래하지 않는다. 매도 진입(D 돌파) 시 손절 또는 수익 발생 후 다시 D를 돌파 하여도 거래하지 않는다. 손절가: 1) C 돌파 시, D 값에 손절 후 스위칭(최초 D값 진입 시 스위칭 진행) / D 돌파 시, C 값에 손절 후 스위칭(최초 C값 진입 시 스위칭 진행) B) 포지션을 보유하고 있을 경우 (A 또는 B에서 진입한 경우) -> 매수 또는 매도를 이미 진입한 경우 C, D를 이용하여 목표 값 및 손절 값을 새롭게 갱신한다. 목표가: 1) 매수 진입 시: C + (C-D) / 매도 진입시: D - (C-D) 2) 매수 포지션을 손절 또는 수익 발생 후 C를 돌파하는 경우 단 한번 거래를 진행한다. 매도 포지션을 손절 또는 수익 발생 후 D를 돌파하는 경우 단 한번 거래를 진행한다. 손절가: 1) C 돌파 시, D 값에 손절 후 스위칭(최초 D값 진입 시 스위칭 진행) / D 돌파 시, C 값에 손절 후 스위칭(최초 C값 진입 시 스위칭 진행) 3. 지표 값이 지속적으로 갱신 될 경우 (E,F / G,H / I,J ....) -> 2번을 반복한다. 4. 목표 값 및 손절 값을 도달 못할 시 익일 오전 5:30분 (장 종료 30분전)에 보유 중인 모든 포지션을 자동 청산한다. 감사합니다.
프로필 이미지
7out
2021-10-26
756
글번호 153156
시스템
답변완료

도움을 부탁드리겠습니다.

안녕하세요...항상 감사합니다. 일봉에서 검색식 세가지 요청드립니다. 5ma 20ma 두이평 선이 .. 1> 1일차 골드크로스, 2일차 <음봉>, 3일차 오늘 검색 골드크로스 발생한날 거래량,시가,종가 2일차 음봉의 거래량, 시가,종가 3일차인 오늘 검색식을 써서, 2일차 음봉거래량이 1일차 골드크로스날보다 작고, 2일차 음봉종가가, 1일차 시가+종가의 중간이상인 종목 검색 2> 1일차 골드크로스, 2일차 양봉, 3일차 <음봉>, 4일차가 오늘 1일차 골드크로스 발생한날 거래량,시가,종가 2일차 양봉일것 3일차 음봉의 거래량 시가, 종가 를 변수에 담고 4일차인 오늘 검색식을 써서 3일차 음봉거래량이 1일차 골드크로스날보다 작았고, 3일차 음봉종가가, 1일차 시가+종가의 중간이상인 종목 검색 3> 혹시 위의 두식을 일반화 해서 골드크로스 이후 2일차 첫음봉발생, 또는 3일차 첫음봉발생, 또는 n일차에 "첫 음봉발생"하고, 음봉거래량이 골드크로스 날보다작고, 음봉종가는 골드크로스날의 중간이상...을 n일차 변수로 해서 작성할수 있을까요..
프로필 이미지
지스카드
2021-10-26
1031
글번호 153155
검색
답변완료

종목 검색이 잘 되지 않아 다시 질문드립니다.

https://www.yesstock.com/Board/View.asp?db=board100036&Ext=0&startpage=1&pageno=1&num=153763&ref=153745&Sort=&KeyField=NickName&KeyWord=mhim30 위 링크는 저번에 질문드렸었던 링크입니다. 답변 잘 받았습니다. 다름이 아니라 답변해주시는대로 해보았으나, 검색되어야 될 종목이 검색이 되질 않아 다시 질문드려봅니다. 첨부 이미지를 보시면 초록색 선이 있는데 그 선은 일봉상 상한가 전날의 종가에 선을 그어 놨고, 그 선에 +5%~-10% 범위 안에 들어오는 종목을 검색하고자 합니다. 위 조건이라면 재영솔루텍 종목이 검색되어야되는데, 검색이 되질 않습니다. 다시 한번 봐주시면 감사하겠습니다. 감사합니다.
프로필 이미지
mhim30
2021-10-25
1485
글번호 153154
종목검색
답변완료

문의드립니다

1. 5일과20일크로스업 인 당일종목검색을 하고 전일종목검색을하고 전전일 검색을 하고싶은데 Input : Period(0) 를 이용하여 할수있는 방법이 있을까요? 아니면 다른 방식이 있으면 알려주세요 2. 당일 10분봉에서 평균거래량보다 2배이상거래봉 2번이상 나온종목을 찾고싶습니다
프로필 이미지
처음처럼22
2021-10-26
930
글번호 153153
종목검색