커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의드립니다

input : per1(23.6),per2(38.2),per3(50.0),per4(61.8),per5(76.4); var : hh(0),ll(0),h1(0),l1(0),dd(0),tt(0),d1(0),t1(0); var : tl1(0),tl2(0),tl3(0),tl4(0),tl5(0),tl6(0),tl7(0); if bdate > bdate[1]-1 then { hh = h; ll = l; h1 = hh[1]; l1 = ll[1]; dd = sdate[1]; tt = stime[1]; d1 = dd[1]; t1 = tt[1]; TL_Delete(tl1); TL_Delete(tl2); TL_Delete(tl3); TL_Delete(tl4); TL_Delete(tl5); TL_Delete(tl6); TL_Delete(tl7); tl1 = TL_New(dd,tt,hh,sdate,stime,hh); tl2 = TL_New(dd,tt,hh-(hh-ll)*(per1/100),sdate,stime,hh-(hh-ll)*(per1/100)); tl3 = TL_New(dd,tt,hh-(hh-ll)*(per2/100),sdate,stime,hh-(hh-ll)*(per2/100)); tl4 = TL_New(dd,tt,hh-(hh-ll)*(per3/100),sdate,stime,hh-(hh-ll)*(per3/100)); tl5 = TL_New(dd,tt,hh-(hh-ll)*(per4/100),sdate,stime,hh-(hh-ll)*(per4/100)); tl6 = TL_New(dd,tt,hh-(hh-ll)*(per5/100),sdate,stime,hh-(hh-ll)*(per5/100)); tl7 = TL_New(dd,tt,ll,sdate,stime,ll); } if h > hh Then { hh = h; TL_Delete(tl1); TL_Delete(tl2); TL_Delete(tl3); TL_Delete(tl4); TL_Delete(tl5); TL_Delete(tl6); TL_Delete(tl7); tl1 = TL_New(dd,tt,hh,sdate,stime,hh); tl2 = TL_New(dd,tt,hh-(hh-ll)*(per1/100),sdate,stime,hh-(hh-ll)*(per1/100)); tl3 = TL_New(dd,tt,hh-(hh-ll)*(per2/100),sdate,stime,hh-(hh-ll)*(per2/100)); tl4 = TL_New(dd,tt,hh-(hh-ll)*(per3/100),sdate,stime,hh-(hh-ll)*(per3/100)); tl5 = TL_New(dd,tt,hh-(hh-ll)*(per4/100),sdate,stime,hh-(hh-ll)*(per4/100)); tl6 = TL_New(dd,tt,hh-(hh-ll)*(per5/100),sdate,stime,hh-(hh-ll)*(per5/100)); tl7 = TL_New(dd,tt,ll,sdate,stime,ll); } if l < ll Then { ll = l; TL_Delete(tl1); TL_Delete(tl2); TL_Delete(tl3); TL_Delete(tl4); TL_Delete(tl5); TL_Delete(tl6); TL_Delete(tl7); tl1 = TL_New(dd,tt,hh,sdate,stime,hh); tl2 = TL_New(dd,tt,hh-(hh-ll)*(per1/100),sdate,stime,hh-(hh-ll)*(per1/100)); tl3 = TL_New(dd,tt,hh-(hh-ll)*(per2/100),sdate,stime,hh-(hh-ll)*(per2/100)); tl4 = TL_New(dd,tt,hh-(hh-ll)*(per3/100),sdate,stime,hh-(hh-ll)*(per3/100)); tl5 = TL_New(dd,tt,hh-(hh-ll)*(per4/100),sdate,stime,hh-(hh-ll)*(per4/100)); tl6 = TL_New(dd,tt,hh-(hh-ll)*(per5/100),sdate,stime,hh-(hh-ll)*(per5/100)); tl7 = TL_New(dd,tt,ll,sdate,stime,ll); } TL_SetExtRight(tl1,true); Tl_SetColor(tl1,BLUE); TL_SetExtRight(tl2,true); Tl_SetColor(tl2,BLUE); TL_SetExtRight(tl3,true); TL_SetExtRight(tl4,true); Tl_SetColor(tl4,WHITE); TL_SetExtRight(tl5,true); TL_SetExtRight(tl6,true); Tl_SetColor(tl6,MAGENTA); TL_SetExtRight(tl7,true); Tl_SetColor(tl7,MAGENTA); 위수식으로 76.4프로 선에서 상승시레드색 하락시 블루색 23.6프로 선에서 상승스레드색 하락시 블루색 으로 강조식 부탁드립니다~~
프로필 이미지
장군
2019-06-09
332
글번호 129274
지표
답변완료

문의 드립니다

var : Diff2(0,data2),diff3(0,data3),sum(0,data2); diff2 = data2((C-OpenD(0))/PriceScale); diff3 = data3((C-OpenD(0))/PriceScale); sum = diff2+diff3; if diff2 >= abs(sum)*5 Then buy(); if diff3 >= abs(sum)*5 Then sell(); ...................................................................... 상기 시스템을 재가공 하고 싶습니다. 1. 먼저 상기식의 매수 발생싯점 캔들과 매도발생싯점 캔들에 각각 옆으로 수평선을 긋어 주세요 2. 5이평이 1번 수평선 <매수 발생싯점에서 그어진 수평선>을 하향 돌파 했다가 다시 상향 돌파 하면 매수 5이평이 1번 수평선 <매도 발생 싯점에서 그어진 수평선>을 상향 돌파 했다가 다시 하향 돌파 하면 매도 감사합니다
프로필 이미지
회원
2019-06-10
343
글번호 129273
시스템
답변완료

부탁 드립니다.

도움주심에 감사 드립니다. n일전에서 계산하는 것을 n주전으로 수정 부탁 드립니다. 미리 감사 드립니다. input : N(1); Array : sumo[10](0),sumh[10](0),suml[10](0),sumc[10](0),sumi[10](0); var : accumo(0),accumh(0),accuml(0),accumc(0),accumi(0); var : avgo(0),avgh(0),avgl(0),avgc(0); var : s1(0),d1(0),tm(0),tf(0),cnt(0); if bdate != Bdate[1] Then{ sumo[0] = 0; sumh[0] = 0; suml[0] = 0; sumc[0] = 0; sumi[0] = 0; for cnt = 1 to 9{ sumo[cnt] = sumo[cnt-1][1]; sumh[cnt] = sumh[cnt-1][1]; suml[cnt] = suml[cnt-1][1]; sumc[cnt] = sumc[cnt-1][1]; sumi[cnt] = sumi[cnt-1][1]; } S1 = TimeToMinutes(stime); D1 = sdate; } sumo[0] = sumo[0]+o; sumh[0] = sumh[0]+h; suml[0] = suml[0]+l; sumc[0] = sumc[0]+c; sumi[0] = sumi[0]+1; #전일 첫봉부터 현재까지 평균 accumO = 0; accumh = 0; accuml = 0; accumc = 0; accumi = 0; for cnt = 0 to N{ accumO = accumO+sumO[cnt]; accumh = accumh+sumh[cnt]; accuml = accuml+suml[cnt]; accumc = accumc+sumc[cnt]; accumi = accumi+sumi[cnt]; } avgo = accumo/accumi; avgh = accumh/accumi; avgl = accuml/accumi; avgc = accumc/accumi; if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%120; if bdate != bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then{ var1 = avgo; var2 = avgh; var3 = avgl; var4 = avgc; } plot1(var1,"o",red,def,0); plot2(var2,"h",yellow,def,0); plot3(var3,"L",BLUE,DEF,0); plot4(var4,"C",MAGENTA,DEF,0); PLOT5(L,"LOW",RED,DEF,0); PLOT6(H,"HIGH",YELLOW,DEF,0); }
프로필 이미지
뮬리
2019-06-07
323
글번호 129272
지표
답변완료

강조 드립니다.

* 많은 도움에 고맙습니다. ## 두개를 한개로 묶을수는 없나요? OR을 이용해보지만 잘안되네요... 8틱 이상수익이었다가 하락하면 3틱에서 청산 8틱보다 크고 15틱 이상 수익이었다가 하락하면 9틱에서 청산 if MarketPosition == 1 Then {if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*8 Then ExitLong("bb1",AtStop,EntryPrice+PriceScale*3);} if MarketPosition == 1 Then {if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*15 Then ExitLong("bb2",AtStop,EntryPrice+PriceScale*9);} * 고맙습니다.
프로필 이미지
요타
2019-06-10
344
글번호 129271
강조
답변완료

문의드립니다

아래 수식에서 단순이면 지수로 지수면 단순으로 변경 가능하면 부탁드리겠습니다 Input : P1(14),p2(5),P3(10),p4(5); input : Period1(14),Period2(10) ,Period3(20),Period4(10); input : 익절틱수(20),손절틱수(40); input : starttime(101600),endtime(173000); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } var1 = StochasticsK(P1,P2); var2 = StochasticsK(P3,P4); var3 = StochasticsK(Period1,Period2); var4 = StochasticsK(Period3,Period4); if Tcond == true then { if crossup(var1,var3) and var1 < 20 and var3 < 20 Then buy("매수"); if CrossDown(var2,var4) and var2 > 80 and var4 > 80 Then sell("매도"); } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop);
프로필 이미지
해피슈
2019-06-07
334
글번호 129270
시스템
답변완료

수정의뢰드립니다!

안녕하세요! 지난번 만들어 주신 수식 잘 사용하고 있어요! 매매에 도움이 되고져 수식 수정을 부탁드립니다! 이해를 돕기위해 참고 이미지를 올립니다! 첨부 이미지처럼 예를 들면 직전 고점에서 저점까지 뺀 진폭(노랑바탕)을 표시하고 싶습니다! 붉은색 글씨처럼 직전 고점에서 저점까지 하락폭과, 직전저점에서 고점까지 상승폭을 붉은색글자처럼 자동으로 표시하고 싶습니다. 검정색보다는 붉은색 글자였으면 더 좋겠습니다! 부탁드립니다! Input:length(10),종가사용여부(0),파동선두께(2),수치표시(1); Var:j(0),jj(0),HH(0),LL(0),최종고가(0),최종저가(0),최종꼭지점(""),처리구분(""), TL1(0),Text1(0); Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime #==========================================# HH = IFF(종가사용여부==1,C,H); LL = IFF(종가사용여부==1,C,L); If Index == 0 Then { 고[1,1] = HH; 저[1,1] = LL; } Condition1 = Highest(HH,length) == HH and 최종고가 <> HH; Condition2 = Lowest (LL,length) == LL and 최종저가 <> LL; 처리구분 = ""; If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생 { If 최종꼭지점 == "저점" Then { If 저[1,1] > LL Then 처리구분 = "저점처리"; Else 처리구분 = "고점처리"; } Else If 최종꼭지점 == "고점" Then { If 고[1,1] < HH Then 처리구분 = "고점처리"; Else 처리구분 = "저점처리"; } } Else If Condition1 Then 처리구분 = "고점처리"; Else If Condition2 Then 처리구분 = "저점처리"; #==========================================# If 처리구분 == "고점처리" Then { 최종고가 = HH; // 신규고점을 체크하기 위해 저장 If 최종꼭지점 == "저점" Then { For j = 10 DownTo 2 { For jj = 1 To 4 { 고[j,jj] = 고[j-1,jj]; } } 고[1,1] = HH; 고[1,2] = Index; 고[1,3] = sDate; 고[1,4] = sTime; TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]); If 수치표시 == 1 Then { Text1 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1],2)); Text_SetStyle(Text1, 2, 1); } TL_SetSize(TL1,파동선두께); TL_SetColor(TL1,RED); } Else If 고[1,1] < HH Then // 1번 고점보다 높은 고가 출현 { 고[1,1] = HH; 고[1,2] = Index; 고[1,3] = sDate; 고[1,4] = sTime; TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]); // 시작점은 변동없고 끝점의 위치가 현재 봉으로 연장된 것임 If 수치표시 == 1 Then { Text_SetLocation(Text1,고[1,3],고[1,4],고[1,1]); Text_SetString(Text1,NumToStr(고[1,1],2)); } } 최종꼭지점 = "고점"; } #==========================================# If 처리구분 == "저점처리" Then { 최종저가 = LL; If 최종꼭지점 == "고점" then { For j = 10 DownTo 2 { For jj = 1 To 4 { 저[j,jj] = 저[j-1,jj]; } } 저[1,1] = LL; 저[1,2] = Index; 저[1,3] = sDate; 저[1,4] = sTime; TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]); If 수치표시 == 1 Then { Text1 = Text_New(저[1,3],저[1,4],저[1,1],NumToStr(저[1,1],2)); Text_SetStyle(Text1, 2, 0); } TL_SetSize(TL1,파동선두께); TL_SetColor(TL1,BLUE); } Else If 저[1,1] > LL then { 저[1,1] = LL; 저[1,2] = Index; 저[1,3] = sDate; 저[1,4] = sTime; TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]); If 수치표시 == 1 Then { Text_SetLocation(Text1,저[1,3],저[1,4],저[1,1]); Text_SetString(Text1,NumToStr(저[1,1],2)); } } 최종꼭지점 = "저점"; }
프로필 이미지
qha71
2019-06-07
445
글번호 129266
지표
답변완료

수식전환 부탁드립니다.

수고가 많으십니다. 예스트레이더 수식으로 전환부탁드립니다. 매수 crossup(c,a=(O+C+H+L)/4, ma(a, 120, 지수))&& dayclose()>dayopen(); 매수청산 crossdown(c,b=(O(10)+C(10))/2, ma(b, 120, 지수) && dayclose()<dayopen()); 매도 crossdown(c,b=(O(10)+C(10))/2, ma(b, 120, 지수) && dayclose()<dayopen()); 매도청산 crossup(c,a=(O+C+H+L)/4, ma(a, 120, 지수))&& dayclose()>dayopen();
프로필 이미지
이대표
2019-06-07
381
글번호 129265
지표
답변완료

수식 작성 부탁드립니다

input : Period(5); Vars : oTEMA(0); oTEMA = ma(ma(ma(c, Period), Period), Period); if oTEMA > oTEMA[1] Then value1 = oTEMA; if value1 > 0 and oTEMA > oTEMA[1] Then value1 = oTEMA; if oTEMA < oTEMA[1] Then value2 = oTEMA; if value2 > 0 and oTEMA < oTEMA[1] Then value2 = oTEMA; Plot1(value1, "high"); Plot2(value2, "low"); 위 지표 수식을 이용하여 종가(C)가 value1 위에 있을때 매수진입이되도록 수식을 작성 부탁 드립니다. 아래와같이 수식을 작성 하면 value1 아래에서도 매수진입이 됩니다. If value1 < C and CrossUP(short,long7)Then Buy("b"); 아래첨부파일에서 종가가 빨강색선위에서 매수진입이 되도록 수식 원합니다
프로필 이미지
뎅이요
2019-06-07
362
글번호 129264
시스템
답변완료

지표식 문의드립니다.

매번 성실한 답변에 감사드립니다. 일봉기준 전일대비 거래량 5배인 캔들부터 현재까지의 기준선(최고가+최저가)/2 을 긋고싶습니다. 감사합니다.
프로필 이미지
부양가족
2019-06-07
359
글번호 129260
지표