커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

잔고함수_사용자함수

안녕하세요. 실전에서 잔고함수를 사용에 장초에 진입수량을 계산코자 합니다. 잔고함수를 사용해 수량계산하는 사용자 함수(예: 진입수량)를 하나 정의해서 장시작직후에만 이를 호출해서 내부변수에 저장하고, 당일동안에는 그 값을 유지하려고합니다. if Bdate != Bdate[1] Then k = 진입수량 ; 이렇게 할 경우, 장시작직후에 진입수량함수가 호출되어 k에 계산된 수량이 할당되고, 장초가 아닐경우에는 k는 어떤값을 취하는건가요? 초기값을 그대로 장끝까지 유지가 되는건가요? 매분 마다 사용자함수를 호출하면 너무 로드가 걸리고 불필요해서 장초에 한번만 계산하고 이값을 계속 활용코자 합니다.. 잔고함수가 실
프로필 이미지
건곤대
2023-03-24
1450
글번호 167581
시스템
답변완료

81371번 글 1번 수식 재문의 드립니다.

아래는 작성해주신 수식인데요 정배열을 아마도 녹적파 3개가 우상향(상승추세)인걸로 작성해주신게 아닌가 싶습니다. 첨부 사진처럼 엘리 선행 이평선이 위에서부터 녹-적-파 순서로 배열이 전환되는 종목을 찾고 싶습니다. 번거롭게 해드려 죄송합니다. 확인 좀 부탁드려요 안녕하세요 예스스탁입니다. 1 올리신 내용이시면 각 지표를 수평이동후 현재봉기준이 아닌 마지막값 기준이므로 수평이동을 하지 않고 판단하게 작성하시면 됩니다. 종과와 lips조건이 불필요하면 C > lips 조건은 삭제하시면 됩니다. input : jawPeriod(13),jawOffset(8); input : teethPeriod(8),teethOffset(5); input : lipsPeriod(5),lipsOffset(3); var : hl2(0),jaw(0),teeth(0),lips(0); hl2 = (h+l)/2; jaw = 0; if IsNaN(jaw[1]) == true Then jaw = ma(hl2,jawPeriod); Else jaw = (jaw[1]*(jawPeriod-1) + hl2)/jawPeriod; teeth = 0; if IsNaN(teeth[1]) == true Then teeth = ma(hl2,teethPeriod); Else teeth = (teeth[1]*(teethPeriod-1) + hl2)/teethPeriod; lips = 0; if IsNaN(lips[1]) == true Then lips = ma(hl2,lipsPeriod); Else lips = (lips[1]*(lipsPeriod-1) + hl2)/lipsPeriod; if C > lips and lips > teeth and teeth > jaw Then Find(1); 2 input: Length(20),Value(4); var : cnt(0),adr(0); ADR = 100 * (ma(DayHigh(1)/DayLow(1), Length) - 1); if adr >= value Then Find(1);
프로필 이미지
신데렐라맨
2023-03-27
2042
글번호 167580
종목검색
답변완료

MACD 지표가아니라 MACD OCCILATER 지표에...

안녕하세요.. 아래에서 MACD 지표에 매수.도 화살표 문의한 사람입니다.. 제가 쓰는것이 MACD OCILLATER 지표였네요 만들어주신 수식이 macd ocillaster 에 붙여도 동일하게 되나요? 아님 macd ocillater 에 사용할 수있게해주세요 번거롭게 해드려 죄송합니다 부탁드립니다~^^ 감사합니다
프로필 이미지
bdew
2023-03-27
1711
글번호 167579
지표
답변완료

문의

기간내에()상승일수가 몇일()인 종목 검색 하고 싶습니다. 항상 감사해요~
프로필 이미지
엉덩공주
2023-03-27
2007
글번호 167578
종목검색
답변완료

추세선 피보나치

input : Period(350),선두께(3); Var:상승색(Gold), 하락색(Cyan); Var:j(0),T(0),txx(0),txxx(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0), date21(0),date22(0),time21(0),time22(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0); var : box(0),box1(0); var : upt(0),dnt(0); Plot1(value12); For j = 0 To 19 { HiBar[j] = HiBar[j] + 1; LoBar[j] = LoBar[j] + 1; } if crossup(c,highest(H,Period)[1]) Then T = 1; if CrossDown(c,Lowest(L,Period)[1]) 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_Self(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New_Self(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,하락색); date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; Text_Delete(dnt); var1 = loval[0]-loval[1]; dnt = Text_New_Self(date12,time12,value12,NewLine+NumToStr(abs(var1/PriceScale),0)+" "+NewLine); Text_SetColor(dnt,iff(var1>0,Magenta,Blue)); Text_SetStyle(dnt,1,2); Text_SetSize(dnt,35); Text_SetBold(dnt,1); box = Box_New_Self(date11,time11,Value11,date12,time12,Value12); Text_SetSize(tx,25); if abs(value12[1]-value11[1]) < 0.5 Then Text_Delete(tx); tx = Text_New_Self(sDate,stime,value12,NumToStr(value12-value11,2)+" "); Text_SetColor(Tx,Blue); Text_SetStyle(tx,1,0); Text_SetSize(tx,25); Text_SetBold(tx,1); } 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]; var1 = loval[0]-loval[1]; Text_SetLocation(dnt,date12,time12,value12); Text_SetString(dnt,NewLine+NumToStr(abs(var1/PriceScale),0)+" "); Text_SetColor(dnt,iff(var1>0,Magenta,Blue)); Text_SetStyle(dnt,1,2); Text_SetSize(dnt,35); Text_SetBold(dnt,1); Box_SetEnd(box,date12,time12,Value12); Text_SetString(tx,NumToStr(value12-value11,2)+" "); Text_SetLocation(tx,sDate,sTime,value12); } if value12 > value11-0.7 Then { Box_SetColor(box,LCyan); Box_SetFill(box,true,0); } else if value12 <= value11-0.7 and value12 > value11-1 Then { Box_SetColor(box,Yellow); Box_SetFill(box,true,100); } else if value12 <= value11-1 and value12 > value11-1.3 Then { Box_SetColor(box,Lime); Box_SetFill(box,true,70); } else if value12 <= value11-1.3 and value12 > value11-1.7 Then { Box_SetColor(box,Cyan); Box_SetFill(box,true,50); } else { Box_SetColor(box,Blue); Box_SetFill(box,true,25); } } 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_Self(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen); TL1 = TL_New_Self(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,상승색); date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; Text_Delete(upt); var1 = hival[0]-hival[1]; upt = Text_New_Self(date12,time12,value12,NumToStr(abs(var1/PriceScale),0)+" "+NewLine); Text_SetColor(upt,iff(var1>0,Magenta,Blue)); Text_SetStyle(upt,1,2); Text_SetSize(upt,35); Text_SetBold(upt,1); Text_SetSize(tx,25); if abs(value12[1]-value11[1]) < 0.5 Then Text_Delete(tx); tx = Text_New_Self(sDate,stime,value12,NumToStr(value12-value11,2)+" "); Text_SetColor(Tx,Red); Text_SetStyle(tx,1,1); Text_SetSize(tx,25); Text_SetBold(tx,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]; var1 = hival[0]-hival[1]; Text_SetLocation(upt,date12,time12,value12); Text_SetString(upt,NumToStr(abs(var1/PriceScale),0)+" "+NewLine); Text_SetColor(upt,iff(var1>0,Magenta,Blue)); Text_SetStyle(upt,1,2); Text_SetSize(upt,35); Text_SetBold(upt,1); Text_SetString(tx,NumToStr(value12-value11,2)+" "); Text_SetLocation(tx,sDate,sTime,value12); } } Text_SetColor(Txxx,Black); Text_SetSize(txxx,30); TL_SetSize(TL1,선두께); 당일 고점 1p 아래에서 추세선이 음전환되면, 하락추세선 상단을 당일 고점으로부터, a. 38.2%로 가정하고 아래로 61.8% 지점에 네모 표시 추가. b. 50%로 가정하고 아래로 50% 지점에 네모 표시 추가. 감사합니다.
프로필 이미지
고성
2023-03-27
2385
글번호 167577
지표
답변완료

수식 부탁드립니다.

1. 이평선배열순서 20>당일주가>5>60>120>240 20일선기울기는 하락 60,120,240일선은 상승전환 60일과 20일선 이평선 크로스 발생 이후 캔들이 5이상. 많아도 됩니다. 당일 봉이 1일전 시가와 종가 보다 2배 이상 상승한 양봉 가격은 10,000원 이상 거래량 50만주 이상. 2.20일 이내 첫번째 상한가 장이 끝난후에 검색해서 나오면 됩니다.. 날짜가 맞지 않면 하루씩 뒤로 미루어도 됩니다. 종목 검색 수식 부탁드립니다. 감사 합니다.
프로필 이미지
월드맨
2023-03-27
1445
글번호 167564
종목검색

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

프로필 이미지
사하라
2023-03-27
4
글번호 167560
지표
답변완료

문의드립니다

수고 많으십니다 키움에 매수 매도 수식인데 예스 시스템으로 전환 부탁드립니다 항상 감사드립니다
프로필 이미지
cjfdk
2023-03-27
1582
글번호 167557
지표
답변완료

봉갯수

감사합니다 이평5 가 이평10을 돌파하면 봉갯수 카운트 시작, 봉갯수가 11이상이면 (즉, 11,12, 13 ~) 봉갯수를 11로만 표시하고 싶습니다. (봉갯수 카운트가 계속 커지지 않게 하려는 목적)
프로필 이미지
jdavid
2023-03-27
1938
글번호 167552
지표