커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식문의

전날 포지션이 매수,매도 상관없이 다음날 동시호가때 모두 청산하여 무포지션이 되게 하는 식도 가능한가요? 가능하면 알려주세요
프로필 이미지
리추얼
2011-11-19
519
글번호 44943
시스템
답변완료

간단한 내용 부탁합니다..

선물 시초가매수후 손절은 시가대비 -0.5p 또는 15:04 청산 손절후 재진입은 시가보다 1틱이상상승시. 손절 및 청산은 같습니다. 재진입은 2회입니다..
프로필 이미지
정발산
2011-11-18
523
글번호 44942
시스템
답변완료

문의 드립니다.

빠른 답변 고맙습니다. if MarketPosition == 1 Then{ if CurrentEntries == 1 and CurrentEntries[1] != CurrentEntries Then{ var81 = C[1]; var82 = H; } if maxEntries >= 1 Then{ if H > var82 Then var82 = H; ExitLong("bx4_1",AtStop,var82*0.99,"b1",1,1); ExitLong("bx5_1",AtStop,var81*0.99,"b1",1,1); } 상기 부분만 조금 설명 부탁드립니다. 그리고 C가 아닌 C[1]값을 넣은 이유는 무엇인가요? 감사합니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 문의 드립니다. > 안녕하세요 예스스탁입니다. 1. 비슷한 개념이지만 다른식입니다. 1번은 현재 미완성봉에서 최고가대비 1%하락한 시세가 발생하면 즉시 체결되지만 2번식는 봉완성기준으로 종가가 최고가대비 1%하락한 종가가 발생하고 해당 봉가보다 다음봉의 시세중에 낮은게 있어야 청산됩니다. 2. value2 = 0; for value1 = 0 to 10{ if EntryDate(value1) == sdate Then value2 = value2+1; } var1 = ma(c,60); var2 = macd(12,26); var3 = ma(c,5); var4 = ma(c,20); Condition1 = ExitDate(1) == sdate and (IsExitName("bx4",1) or IsExitName("bx5",1)); if value2 < 6 and Condition1 == false Then{ if var1 > var1[1] and var1[1] < var1[2] Then buy("b1",OnClose,def,1); if crossup(var2,0) Then buy("b2",OnClose,def,1); if crossup(var3,var4) Then buy("b3",OnClose,def,1); } if var1 < var1[1] and var1[1] < var1[2] Then ExitLong("bx1",OnClose,def,"b1",1,1); if CrossDown(var2,0) Then ExitLong("bx2",OnClose,def,"b2",1,1); if CrossDown(var3,var4) Then ExitLong("bx3",OnClose,def,"b3",1,1); if MarketPosition == 1 Then{ if CurrentEntries == 1 and CurrentEntries[1] != CurrentEntries Then{ var81 = C[1]; var82 = H; } if maxEntries >= 1 Then{ if H > var82 Then var82 = H; ExitLong("bx4_1",AtStop,var82*0.99,"b1",1,1); ExitLong("bx5_1",AtStop,var81*0.99,"b1",1,1); } if CurrentEntries == 2 and CurrentEntries[1] != CurrentEntries Then{ var83 = C[1]; var84 = H; } if maxEntries >= 2 Then{ if H > var84 Then var84 = H; ExitLong("bx4_2",AtStop,var84*0.99,"b2",1,1); ExitLong("bx5_2",AtStop,var83*0.99,"b2",1,1); } if CurrentEntries == 3 and CurrentEntries[1] != CurrentEntries Then{ var85 = C[1]; var86 = H; } if maxEntries >= 3 Then{ if H > var86 Then var86 = H; ExitLong("bx4_3",AtStop,var86*0.99,"b3",1,1); ExitLong("bx5_3",AtStop,var85*0.99,"b3",1,1); } } 즐거운 하루되세요 > 아틀라스 님이 쓴 글입니다. > 제목 : 문의 드립니다. > 수고가 많으십니다 (1식) if MarketPosition == 1 and c < Highest(H,BarsSinceEntry)*0.99 then ExitLong("bx",AtStop,c); (2식) if MarketPosition == 1 Then ExitLong("bx",AtStop,Highest(H,BarsSinceEntry)*0.99); 상기 1식과 2식은 같은 수식인지 궁금합니다. 그리고 onclose로 진입하는 경우에는 진입가격을 따로 할당하여 사용하면 되지 않나요? 아래식을 진입가격 및 최고가을 할당하여 수익실현과 손절매 수식을 부탁드립니다.(BarsSinceEntry와 EntryPrice대신에 적용) SetStopTrailing(1,0.00001,PercentStop,1); SetStopLoss(1); 상기 식을 사용하여 아래 식을 수정해 주시면 도움이 되겠습니다. 상기 식을 사용하면 추가 적인 조건등은 사용할 수 없나요? 감사합니다. value2 = 0; for value1 = 0 to 10{ if EntryDate(value1) == sdate Then value2 = value2+1; } var1 = ma(c,60); var2 = macd(12,26); var3 = ma(c,5); var4 = ma(c,20); Condition1 = ExitDate(1) == sdate and (IsExitName("bx4",1) or IsExitName("bx5",1)); if value2 < 6 and Condition1 == false Then{ if var1 > var1[1] and var1[1] < var1[2] Then buy("b1",OnClose,def,1); if crossup(var2,0) Then buy("b2",OnClose,def,1); if crossup(var3,var4) Then buy("b3",OnClose,def,1); } if var1 < var1[1] and var1[1] < var1[2] Then ExitLong("bx1",OnClose,def,"b1",1,1); if CrossDown(var2,0) Then ExitLong("bx2",OnClose,def,"b2",1,1); if CrossDown(var3,var4) Then ExitLong("bx3",OnClose,def,"b3",1,1); if MarketPosition == 1 Then{ ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99); ExitLong("bx5",AtStop,EntryPrice*0.99); }
프로필 이미지
아틀라스
2011-11-18
534
글번호 44941
시스템
답변완료

부탁드립니다

이평선의 배열이 " 20(가중) > 20(단순) > 60 (가중) > 60 (단순) and 20(가중)이 상승중" 인 종목을 찾는 검색식을 부탁드립니다...
프로필 이미지
핏불
2011-11-18
524
글번호 44936
검색
답변완료

문의 드립니다.

수고가 많으십니다 (1식) if MarketPosition == 1 and c < Highest(H,BarsSinceEntry)*0.99 then ExitLong("bx",AtStop,c); (2식) if MarketPosition == 1 Then ExitLong("bx",AtStop,Highest(H,BarsSinceEntry)*0.99); 상기 1식과 2식은 같은 수식인지 궁금합니다. 그리고 onclose로 진입하는 경우에는 진입가격을 따로 할당하여 사용하면 되지 않나요? 아래식을 진입가격 및 최고가을 할당하여 수익실현과 손절매 수식을 부탁드립니다.(BarsSinceEntry와 EntryPrice대신에 적용) SetStopTrailing(1,0.00001,PercentStop,1); SetStopLoss(1); 상기 식을 사용하여 아래 식을 수정해 주시면 도움이 되겠습니다. 상기 식을 사용하면 추가 적인 조건등은 사용할 수 없나요? 감사합니다. value2 = 0; for value1 = 0 to 10{ if EntryDate(value1) == sdate Then value2 = value2+1; } var1 = ma(c,60); var2 = macd(12,26); var3 = ma(c,5); var4 = ma(c,20); Condition1 = ExitDate(1) == sdate and (IsExitName("bx4",1) or IsExitName("bx5",1)); if value2 < 6 and Condition1 == false Then{ if var1 > var1[1] and var1[1] < var1[2] Then buy("b1",OnClose,def,1); if crossup(var2,0) Then buy("b2",OnClose,def,1); if crossup(var3,var4) Then buy("b3",OnClose,def,1); } if var1 < var1[1] and var1[1] < var1[2] Then ExitLong("bx1",OnClose,def,"b1",1,1); if CrossDown(var2,0) Then ExitLong("bx2",OnClose,def,"b2",1,1); if CrossDown(var3,var4) Then ExitLong("bx3",OnClose,def,"b3",1,1); if MarketPosition == 1 Then{ ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99); ExitLong("bx5",AtStop,EntryPrice*0.99); }
프로필 이미지
아틀라스
2011-11-18
573
글번호 44932
시스템
답변완료

21604 관련입니다.

수식 잘 받았습니다. 그런데 지표가 전일의 영향을 받아 장초반에는 의도한바대로 나타나지 않는듯합니다. 전일의 신호는 무시하고 당일 기준으로만 나타나도록 해주시면 고맙겠습니다. 그리고 up과 down에서 각기 색상이 달랐으면 합니다.
프로필 이미지
선두개
2011-11-18
526
글번호 44931
지표
답변완료

현물 틱에도 시스템 적용이 되나요 ?

틱에 보면.. 1,3,5 .. 이렇게 나가는데.. 1에는 봉이 안 나오는데...시스템이 적용되나요 ? 봉으로..시스템 만든 것들이...
프로필 이미지
뽀로로엄마
2011-11-18
522
글번호 44930
시스템

감사합니다 ====꾸 뻑=====

감사합니다 ====꾸 뻑=====
프로필 이미지
비월검파
2011-11-18
484
글번호 44924
검색
답변완료

거래시간 설정할때 자정 넘어가는 경우에

다음과 같이 시작을 낮15시에 해서 끝시간을 새벽1시에 종료하게 해야하는데 날짜가 바뀌어서인지 010000으로 설정하면 진입을 전혀 안하게 되더군요. 끝시간이 24와 0시가 동일함에도 시작시간보다 끝시간 숫자가 커야되서 그런지 000000으로 설정하면 전혀 안먹히구요. 그리고 거래시간을 사용 안하게 하려고 0로 하면 진입 자체를 전혀 안하게 되어버립니다. 시작시간1=000000, 끝시간=240000 이런식으로 하면 시간 제한 없이 사용하게는 되지만 원래 의도했던 방식이 아니라서 조금 불편하구요. 수식 수정 부탁드립니다. 감사합니다. input : 거래시간1(1), 시작시간1(150000), 끝시간1(010000); condition3 = 거래시간1==1 and stime>=시작시간1 and stime<끝시간1; if condition3==true then { if 매수조건 then buy(); }
프로필 이미지
개냥이
2011-11-18
566
글번호 44922
시스템