커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

동일조건 1회명령만 실행 방법 ????

안녕하세요? 질의내용입니다. <질문 1> if crossup(c,ma(c,20)) and ma(c,50)>ma(c,50)[1] then buy(); 위의조건에서 상향돌파가 발생해도, "50 이평"이 우상향이 아니면, 주문이 나가지 않습니다. 일정 시간 후 "50 이평"이 우상향으로 전환되어도, 상향돌파는 이미 상황이 발생된후라 주문이 나가지 않습니다. 상기 조건이 만족되는 첫상황에 주문을 낼수 있는 방법을 알고 싶습니다. <질문 2> if c>ma(c,20) and ma(c,50)>ma(c,50)[1] then buy(); 나름대로 1번 상황을 이렇게 해결했습니다. 그러나, 한 시스템 속에 "복수의 조건매매식"이 있는지라, "피라미딩 설정이 불가피" 합니다. (돌파매매, 교차매매 : 피라미딩 설정 불가피) 결과는 상기조건의 연속매수입니다. 피리미딩 설정상태에서 "1개 조건매매식"에, 해당 조건의 청산상황(sell)이 발생되기 전까지, 조건당 1회 명령만을 실행하는 방법을 알고 싶습니다. 수고하세요~~
프로필 이미지
회원
2004-06-23
1182
글번호 4210
시스템
답변완료

수식 부탁드립니다

안녕하십니까? 수식 부탁드립니다. 1. 매수 : 9시6분 5분봉이 양봉으로 끝나면 매수 2. 매도 : 9시6분 5분봉이 음봉으로 끝나면 매도 3. 매수청산 : 10시 정각에 무조건 청산후 종료 4. 매도청산 : 10시 정각에 무조건 청산후 종료 수고하세요 ^!^*
프로필 이미지
파라
2004-06-23
1105
글번호 4207
시스템

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

프로필 이미지
회원
2004-06-23
7
글번호 4206
시스템
답변완료

식

당일 첫봉 고가을 돌파하면 매수 첫봉 저가 이탈하면 매도 ---------------- 전략식이 1.2번이 있고 갭이 + -0.5이상 일경우 1번 전략식을 당일 첫매매로 하고 1번 식은 1회만 진입 2번 전략식은 1번식이 진입 한후에 한다 갭이 + - 0.5이하 일경우는 2번 전략식만 매매
프로필 이미지
회원
2004-06-23
1146
글번호 4204
기타
답변완료

1988번 빠트리신 것 같아서..

매수포지션후 매수청산 규칙에 의해 청산 했으나, 매수 청산 신호를 잘못된 신호로 간주하고 최근 10개봉의 최고가를 돌파하면 재진입하는 식을 만들고 싶습니다. 여기에 매수 청산후 15개 봉까지만 유효한 조건을 첨가하고 싶습니다. var:currentPosition(0), ReLEntrycount(0); currentPosition=MarketPosition(0); if CurrentPosition == 0 and CurrentPosition[1] == 1 then ReLEntrycount=1; if MarketPosition(0)==0 and MarketPosition(1)==1 and ReLEntryCount<15 then ReLEntrycount=ReLEntrycount + 1; if c>=highest(h, 10)[1] and ReLEntrycount < 10 then buy("재매수"); 논리적으로 오류가 없다고 생각하는데...실행시켜보면 재매수 신호가 매수청산이후 발생하는게 아니라 최초 신호로 발생하는 등의 오류가 있어서... 그럼 부탁 드립니다
프로필 이미지
회원
2004-06-23
1099
글번호 4202
기타
답변완료

아래수식에서 ()무슨뜻인가요?

if C > O then buy(); 여기에서 ()안에 숫자나 다른걸 넣어서 사용하는건가요 아님 수식 자체가 저런건가요? 그리고 메일로 문의 드리면 조금늦어지는군요 아침에 메일드렸는데 게시판의 답변보다 조금 늦는감이 있군요 바쁘시겠지만 빠른 답변 부탁드리겠습니다 수고하세요
프로필 이미지
회원
2004-06-22
1125
글번호 4198
시스템

시험중

시험중
프로필 이미지
회원
2004-06-22
735
글번호 4197
기타

관리자에 의해 프로그램 사용법 QnA로 이동되었습니다

프로필 이미지
회원
2004-06-22
19
글번호 4195
시스템
답변완료

메일

메일 주소을 주세요
프로필 이미지
회원
2004-06-22
876
글번호 4193
기타