커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

참조 데이타 표현

안녕하십니까? 5분봉 참조데이타를 2개 띄어 전날의 고가와 저가를 구하려 합니다. 예를들어, Data2가 코스피 200 지수라고 하고, Data3는 삼성전자라고 할 경우, 5분봉에서 "Data2 종가가 Data2의 전날 고점을 돌파하고, Data3 종가가 Data3의 전날 고가를 돌파하면 매수" 를 수식으로 표현하고 싶습니다. 이전의 참조 데이타 관련 답변을 적용하여 보니 도통 먹지를 않네요. 감사합니다.
프로필 이미지
클라우트
2009-02-21
820
글번호 20421
시스템
답변완료

메일로 문의드립니다

안녕하세요 메일로 문의드렸읍니다 감사합니다.
프로필 이미지
베드로
2009-02-21
819
글번호 20420
시스템
답변완료

볼린져 종목검색 에러

1. 볼린져밴드 상단선과 하단선이 좁혀져 있으면서(10%내외) 중앙밴드 위 혹은 중앙밴 드에 위치하면서 양봉, 그리고 거래량이 전일거래량보다 많은 종목 검색식과 2. 중앙밴드 위 혹은 중앙밴드에 위치하면서 양봉, 그리고 거래량이 전일거래량보다 많 은 종목 검색식을 부탁드립니다... 1번 2번 따로 부탁드립니다... 볼린져밴드 기간:12, 승수:2 입니다... 수고하세요... 답변은 메일로 jh5872@naver.com 입니다. 1. Inputs: Length(12), dv(2); Variables: BBup(0),BBdown(0); BBup = BollBandup(Length, dv); BBdown = BollBandDown(Length, dv); if BBup <= BBdown*1.1 and C >= ma(c,Length) and C > O and V > DayVolume(1) Then var1 = 1; Else var1= 0; find(var1); 2. Inputs: Length(12), dv(2); Variables: BBup(0),BBdown(0); BBup = BollBandup(Length, dv); BBdown = BollBandDown(Length, dv); if C >= ma(c,Length) and C > O and V > DayVolume(1) Then var1 = 1; Else var1= 0; find(var1); 답변이 왔는데...수식적용하고 검증누르니 두개다 에러가 뜨네요.... 1.2번 문법에러,잘못된토크:'Else' 라고 뜨네요... 볼린져 종목검색인데...죄송하지만 다시 만들어 주세요~~ 감사합니다.
프로필 이미지
힘퍽
2009-02-21
868
글번호 20419
검색
답변완료

지표식 문의

수고하십니다... 선물 데트용..10분봉차트에서 아래 지표를 출력할 때.. ema 기간값이 10 봉이지만.. 당일 아침 첫 봉부터만 ema 되게 하려면 어떻게 해야 하나요?.. [체결관련 지표이므로 전날과 관계 없도록 하고 싶습니다...] 즉,당일 첫봉에선 ema 1, 두번째 봉에선 ema 2, 세번째 봉에선 ema3... 10봉째 이후부턴 ema 10...으로 되도록 표시하고 싶습니다. ##-------------- input : emalen1(10) ; var10=(ema(upvol,emalen1)-ema(DownVol,emalen1)); plot1(var10,"ema차이") ; plot2(ema(var10,emalen1),"차이ema"); ##-------------- 수고하세요...
프로필 이미지
오이도인
2009-02-21
927
글번호 20418
지표
답변완료

가짜진입 식의 보충 부탁드립니다

if sDate == 매수진입가짜날짜 and stime >= 144500 and bcnt1<1 then{ buy("어제가짜진입"); buyp=c; if IsEntryName("어제가짜진입") == true then{ } } if sdate >= 날짜 and mav505 < mav560*1.02 and c <= mav505 and mav505 > mav520*1.005 and mav520 > mav560 and bcnt2 < 1 Then{ buy("정배열진입"); if IsEntryName("정배열진입") == true then{ buyP = C; } } 이렇게 가짜 진입+ 정배열진입을 쓰고 있는데요 이식이 적용&#46124;을때 "어제가짜진입"만 진입이 한번에 10번 나오게끔 하고 싶습니다. 피라미딩으로 모든 진입신호 허용해버리면 "정배열진입"도 무한대로 나와버려서요
프로필 이미지
회원
2009-02-21
862
글번호 20416
시스템
답변완료

IsEntryName 말고 들어간 진입을 표현하는 수식 좀 가르쳐 주세요

IsEntryName("A") 은 들어간 1번째 진입이 ("b") 2번째 진입이 ("A") 라고해도 맨 처음 들어간 수식이 ("A")일때만 진행되는거 같습니다. // 1.가장 최근에 들어간 진입 = 어떻게 표현하나요? 2. 맨처음이 아니더라도 즉 들어간 1번째 진입이 ("ㅠ") 2번째 진입이 ("A") 이고 몇번째 진입이던 상관없이 이름이("A") 진입이 들어가면 = 어떻게 표현하나요?
프로필 이미지
회원
2009-02-21
883
글번호 20415
시스템
답변완료

수식 문의 드립니다.

inputs: enrtyratio(0.01),exitratio(0.01); var : Futures(0); #데이 만기일 포함 청산전략 var1 = int(date/100)-int(date/10000)*100; //월 var2 = date - int(date/100)*100; //일 var3 = DayOfWeek(date); //요일 if var1%3 == 0 and // 3,6,9,12월이고 var2 >= 8 and var2 <= 14 and // 8일에서 14일 사이이고 var3 == 4 then // 목요일 Futures = 1; Else Futures = 0; //여기서부터 진입 if stime < 151500 Then{ //3시 15분 이전일때 //현재 '진입'해 있는 표지션의 날짜가 오늘이 아니고, //최근 '청산'된 포지션의 청산날짜가 오늘이 아닌경우->오늘 거래가 일어나지 않은경우 If date != entrydate(0) and date != entrydate(1) Then Begin if C>DayOpen*(1+enrtyratio) Then //시가보다 1% 이상 높게 가격이 형성되었을때 매수 buy(); end; If date != entrydate(0) and date != entrydate(1) Then begin if C<DayOpen*(1-enrtyratio) Then //시가보다 1% 이상 낮게 가격이 형성되었을때 매도 Sell(); end; } if Futures == 0 Then SetStopEndofday(150400); Else SetStopEndofday(144900); //당일청산 #끝 #SetStopTrailing 최고가대비 20%변동시 청산 if marketposition() == 1 then{ if C <= highest(H,barssinceentry()+1) then exitlong("exl",atstop,highest(H,barssinceentry()+1)*(1-exitratio)); } if marketposition() == -1 then{ if C >= lowest(L,barssinceentry()+1) then ExitShort("exS",atstop,lowest(L,barssinceentry()+1)*(1+exitratio)); } ---------------------------------------------------------------------- 위에까지가 제가 완성한 기초전략식이구요, 여기서부터 이걸어떻게 집어넣어야 할지 고민중입니다. 답변부탁드리겠습니다. 미리 감사드립니다^^. 수식을 jjoongoo@gmail.com 으로 답변주셔도 됩니다. //시가확인 //시가1%변동시 변동방향 진입 //첫 진입신호가 나오지않을경우나 첫신호 거래 종료 이후 포지션이없을시 당일 고저가 추적 //고가 대비 1% 하락, 저가 대비 1% 상승 방향으로 진입 //포지션이 있을경우, 고저가 추적하여 1% 되돌림시 청산 << 이건 구현함 #재진입전략- 눌림목찾기 //매도포지션 청산이후 되돌림이 완료되고 변곡이 발생한다면(단기 고점찾기) //단기고점에서 1% 하락시 매도 포지션 재진입. //매수포지션 청산이후 되돌림이 완료되고 변곡이 발생한다면(단기 저점찾기) //단기저점에서 1% 상승시 매수 포지션 재진입. //재진입은 한번만 허용, 최대 손실 2%로 제한
프로필 이미지
jessy
2009-02-21
990
글번호 20414
시스템
답변완료

포지션 관련 문의

안녕하세요 ? 진입후 포지션에 대한 수익 발생에 관하여 문의 드립니다. 1. 포지션 진입후에 OpenPositionProfit 값이 변경되는 시점이 현재 봉이 굳어지는 시점인가요 ? 2. 1번)의 경우, 그렇다면 종가로 해당 OpenPositionProfit 값을 산정하나요 ? 3. 포지션 진입후에 MaxPositionProfit과 MaxPositionLoss 값이 변경되는 시점이 현재 봉이 굳어지는 시점인가요 ? 4. 3번)의 경우, 그렇다면 종가로 해당 MaxPositionProfit과 MaxPositionLoss 값을 산정하나요 ? 5. MaxPositionProfit과 MaxPositionLoss의 경우, 도움말 설명을 보면 "구간내의 고가와 저가를 포함하는 최대 수익액을 가져 온다" 라고 되어 있는데, 포지션 진입후에 진입가를 기준으로 MaxPositionProfit과 MaxPositionLoss를 계산하여 가져오는 것이 아닌가요 ? 죄송하지만, 해당 값이 어떻게 계산되는지 설명을 부탁 드립니다. 각각 번호별로 답변 부탁 드립니다. 감사합니다.
프로필 이미지
회원
2009-02-20
975
글번호 20409
시스템
답변완료

atr청산 관련하여 문의드립니다.

ExitLong ("매수청산", AtStop, highest(C,barssinceentry+1)-atr(9)*2.5); 시템에서 위의 수식과 같이 청산식을 주었습니다. 오늘의 상황을 예를 들어보면 풋 125 매수 진입후 고점이 2.85였고 그때의 atr값이 1.6정도 였습니다. 그러면 고점 대비 1.6*2.5인 4.00 즉 2.85 - 4.00 인 2.45에 청산이 되어야 할 것같은데 실제 신호는 2.35에 청산이 되었습니다. 항상 신호가 늦게 나오는 것 같아서 이렇게 질문드립니다. 수시에서 잘못이 있던 것인지 검토 부탁드리겠습니다.
프로필 이미지
richrich
2009-02-20
1094
글번호 20408
시스템