커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식문의 드립니다

안녕하세요? 항상 빠른 답변 감사드립니다. condition 변수를 사용해서 수식을 작성했는데 의도하지 않은 곳에서 신호가 발생하네요. 수정 부탁드려요 선물 5분봉을 사용합니다. 1. 무포지션일때 현재가가 첫봉종가를 하향이탈하는 순간부터 매수대기 2. 무포지션일때 10MA가 60MA를 데드크로스하는 순간부터 매수대기 # 매수 : 위의 두 조건을 만족할때(하나만 만족하면 매수하지 않습니다.) 양봉이고 5MA가 60MA를 돌파하면 매수합니다. Var5=ma(close,5); Var10=ma(close,10); Var60=ma(close,60); if DayIndex() == 0 then { condition1 = False; condition2 = False; } if DayIndex() == 0 then Var1 = close; If marketposition() == 0 Then { If close<var1 Then condition1 = True; } If marketposition() == 0 Then { If crossdown(Var10,Var60) Then condition2 = True; } If condition1 = True Then { If condition2 = True Then If open<=close And crossup(var5,var60) Then buy("매수"); condition1 = False; condition2 = False; } 이렇게 수식을 작성하였는데 현재가가 첫봉종가를 하회하지 않았는데도 매수신호가 발생하거나(condition1불만족) 10MA가 60MA를 데드크로스 하지 않아서 Condition2이 만족하지 않았는데도 매수신호가 발생하네요. 메일로 답변 부탁드립니다. greycat1977@hotmail.com 감사합니다.
프로필 이미지
DF
2008-09-05
738
글번호 16927
시스템
답변완료

시스템 초보

교육은 받았는데 랭귀지 입력하는 곳좀 알려주세요 예스트레이더에서요....
프로필 이미지
빡꿍이
2008-09-05
900
글번호 16926
시스템
답변완료

질문

선물,데트식에서.. 만일 진입 신호가 A,B 의 2가지가 있는 경우 A 진입조건X 만족후,B 진입조건Y 만족하는 상황에서 다른 신호만 피라미딩 진입 설정하면 A,B만 진입하는데.. 모든 신호 피라미딩 진입하는 조건으로 설정하면 A,B,B,B....식으로 B 신호가 계속 진입하게 되는데.. [연속되는 각 봉에서 연속으로 B 진입 조건Y 만족하는 상황인 경우] 이것을 A,B,B,B 4개까지만 피라미딩을 하게 하려면 수식에서 B의 진입 수량을 최대 3개까지만 피라미딩 되게 제어하는 방법이 없을까요? 수고하세요..
프로필 이미지
오이도인
2008-09-04
828
글번호 16925
시스템

캐빈이야 님에 의해서 삭제되었습니다.

프로필 이미지
캐빈이야
2008-09-04
0
글번호 16924
시스템
답변완료

수고하십니다

수고하십니다 여기다가 올릴글이 아닌것 같은데 여기다 올려 봅니다 차트보면 도구바에 전일종가선 표시하기가 있는데요 당일 시가선 표시도 만들어 주셨으면 합니다 어려운 것 아닌것 같으니 빠른시일내에 좀 부탁 드립니다
프로필 이미지
백스톰
2008-09-04
887
글번호 16923
지표
답변완료

안녕하세요. 시스템식 수정 부탁드립니다.

안녕하세요. 도움말씀에 깊은 감사 드립니다. [문의사항] 시스템을 만들었는데요. 신호 발생이 잘 정확하지 않아서 문의 드립니다. 죄송하지만 아래의 시스템식의 수정을 부탁드립니다. 고맙습니다. <시스템식은 다음의 조건을 만족시키고자 합니다> 1. 진입식을 만족하면 3계약이 진입된다. 2. 방향이 맞다면 3개의 청산식에서 각각 한계약씩 청산된다. 동일한 청산식이 재반복 되지 않는다. 3. 1개의 청산식이라도 청산이 됐다면, 동일한 방향의 재진입은 되지 않는다. 반대쪽 진입식은 진입이 가능하다. 4. 청산식이 1개라도 수행되지 않았으면, 진입식은 조건이 일치할때 계속 진입된다. < 시스템식 입니다. 아래의 식을 위의 조건에 맞게 수정 부탁드립니다 > if date != date[1] Then{ count1 = 0; count2 = 0; count3 = 0; count4 = 0; count5 = 0; count6 = 0; } Value1 = ************ Value2 = ************ Value3 = ************ Value4 = ************ Value5 = ************ Value6 = ************ Value7 = ************ Value8 = ************ Value9 = ************ Value11 = ************ Value12 = ************ Value13 = ************ Value14 = ************ Value15 = ************ Value16 = ************ Value17 = ************ Value18 = ************ Value19 = ************ Value20 = ************ Value21 = ************ Value22 = ************ value23 = ************ value24 = ************ value25 = ************ value26 = ************ value27 = ************ value28 = ************ value29 = ************ value30 = ************ value99 = ************ # 진입식 if date != date[1] Then var1 = 0; if dayindex() == 0 then { if C > Value8 and value31 > 0 and value32 > 0 and value33 > 0 then buy("buy.",onclose,def,3) ; if C < Value9 and value31 < 0 and value32 < 0 and value33 < 0 then sell("sell.",onclose,def,3); } if (c > Value8) and value31 > 0 and value32 > 0 and value33 > 0 Then buy("buy,",onclose,def,3) ; if (c < Value9) and value31 < 0 and value32 < 0 and value33 < 0 Then sell("sell,",onclose,def,3); # 청산식 if MarketPosition() == 1 Then { If (Value1 >= value27) and count4 < 1 Then{ ExitLong("Oⓤ",onclose,def,"",1,1); var1 = 1; count4 = 1; } If (Value1 >= value23) and count5 < 1 Then{ ExitLong("Bⓤ",onclose,def,"",1,1); var1 = 1; count5 = 1; } If (Value6 >= value25) and C > value99 and count6 < 1 Then{ ExitLong("Hⓤ",onclose,def,"",1,1); var1 = 1; count6 = 1; } } if MarketPosition() == 1 Then { If (Value2 <= value28) and count1 < 1 Then{ ExitShort("OLⓓ",onclose,def,"",1,1); var1 = 1; count1 = 1; } If (Value2 <= value24) and count2 < 1 Then{ ExitShort("Bⓓ",onclose,def,"",1,1); var1 = 1; count2 = 1; } If (Value7 <= value26) and C < value99 and count3 < 1 Then{ ExitShort("Hⓓ",onclose,def,"",1,1); var1 = 1; count3 = 1; } } # 손절식 if CrossUp(c, value99) Then ExitShort("cutⓓ"); if CrossDown(c, value99) Then ExitLong("cutⓤ"); 도움말씀에 깊이 감사드립니다.
프로필 이미지
시소월
2008-09-04
751
글번호 16918
시스템

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

프로필 이미지
회원
2008-09-04
25
글번호 16917
시스템
답변완료

도저히 이해가 않되네요

시스템식에서 설정한 진입 계약 수량과 실제 체결되는 수량이 다를 수가 있나요? setting을 수량 1개로 했는데... 실제 체결수량이 10개로 체결되어 있습니다... 이런 경우도 있나요? 종목은 삼성중공업입니다. 9/2일 전까지는 매매단위가 1주 거래가능했고 9/3일 부터 10주 거래로 변경된걸로 알고있는데...아닌가요?
프로필 이미지
마수거리
2008-09-04
932
글번호 16916
시스템
답변완료

진입 청산에 대하여..

안녕하세요. 수고하십니다. 1. 오전 9시 10분 이후에서 오후 2시 이전에 진입. 오후 2시이후에는 포지션의 청산만 할수있게하는 방법, 2, 다중 진입이 가능하고 평균치의 0.5pt 스탑로스가 진입순간 자동으로 설정되게하고, 청산은 오후 동시호가에 할수있게 하는 방법... 3. 두번째 손절후 진입금지..... 4. 다른 질문인데 시스템 최적화는 어떻게 하나요. .. 위와 같은 적용을 하고 싶은데... INPUTS: R(14), S(10), U(5), OB(35), OS(-35), length(14),g1(13),r1(25),s1(2),g2(26),r2(50),s2(2), Short(10),Mid(20),Long(30); var1 = DTI(R, S, U); var2 = adx(length); var3 = ((C - C[60])/C[60])*100; var4 = ((C - C[14])/C[14])*100; var5 = SMI(g1,r1,s1); var6 = SMI(g2,r2,s2); var7 = OI - OI[1]; var8 = Accum((((h+l+c)-(h[1]+l[1]+c[1]))/(h[1]+l[1]+c[1]))*OI); var9 = Upvol - DownVol; // 매수식 if var6 > var6[1] and !(var4 < -0.5 and var5 < -1) and var6[1] < var6[2] and var6[2] < var6[3] and var6[3] < var6[4] and var6 < -50 Then // 1 buy(); if var1 > var1[1] and !(var4 < -0.5 and var5 < -1) and var1[1] < var1[2] and var1[2] < var1[3] and var1[3] < var1[4] and var1 < -55 Then // 1 buy(); // 매도식 if var6 < var6[1] and var6[1] > var6[2] and var6[2] > var6[3] and var6[3] > var6[4] and var6 > 50 Then // 2 sell(); if var1 < var1[1] and var1[1] > var1[2] and var1[2] > var1[3] and var1[3] > var1[4] and var1 > 55 Then // 2 sell(); 부탁 드리고 미리 감사드립니다. mtdent@unitel.co.kr
프로필 이미지
파문일기
2008-09-04
1029
글번호 16915
시스템