커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

피라미딩별 손절_오류

안녕하세요. 아래 답변(피라미딩별 손절 각각 적용)을 잘 활용하고 있었는데요. 다른 2개의 진입이 동일한 분봉에서 발생하는 경우에는 아래 손절이 작동하지 않는것 같습니다. lastestentry가 불분명해져서 그런것 같습니다만, 혹시 동일한 분봉에서 진입해도 적용할 방법이 있을까요? --------------------------------------- 안녕하세요 예스스탁입니다. 강제청산은 한번 셋팅이 되면 해당 설정 하나로 유지됩니다. 진입명 별로 설정을 달리 하신다면 강제청산함수로 가능하지 않습니다. 일반청산 함수로 아래와 같이 풀어서 작성하셔야 합니다. var : SP1(0),SP2(0); if MarketPosition == 1 Then { if CurrentContracts > CurrentContracts[1] Then { if LatestEntryName(0) == "매도1" Then SP1 = LatestEntryPrice(0); if LatestEntryName(0) == "매도2" Then SP2 = LatestEntryPrice(0); } if SP1 > 0 Then ExitShort("slx1",AtStop,SP1*(1+cut1/100),"매도1"); if SP2 > 0 Then { ExitShort("slx2",AtStop,SP2*(1+cut2/100),"매도2"); ExitShort("spx2",AtLimit,SP2*(1-gain/100),"매도2"); } } Else { SP1 = 0; SP2 = 0; } 즐거운 하루되세요 > 건곤대 님이 쓴 글입니다. > 제목 : 피라미딩 손절 개별로 > 진입별 손절을 다르게 하고싶습니다. 피라미빙 허용해서 매도1, 매도2 를 진입하도록 하였고 각각 다른 손절이 적용하려고 아래와 같이 작성했는데, 당일에 매도1이 먼저 진입하면, CUT1만 작동하고, 매도2가 먼저 진입하면 CUT2만 작동하는것 같습니다. 어떻게 수정하면 될까요? ----------------------- IF {...} else if Marketposition() == -1 then{ if IsEntryName("매도1") == true Then SetStopLoss(cut1,PercentStop); Else if IsEntryName("매도2") == true Then { SetStopLoss(cut2,PercentStop); SetStopProfittarget(gain,PercentStop); } Else SetStopLoss(0); } else{ SetStopProfittarget(0); /*0을 쓰면 작동안한다는 뜻임*/ setstoploss(0); }
프로필 이미지
건곤대
2023-02-28
1279
글번호 166771
시스템
답변완료

거래량 검색식문의 입니다.

안녕하세요. (일봉) 1봉전 60봉이내 전봉대비 1000% 거래량이 1번이라도 발생한 종목을 검색하고 싶습니다 도와주세요.
프로필 이미지
손느린주식
2023-02-28
1322
글번호 166770
검색
답변완료

bars 수식 질문

안녕하세요. 키움에서 사용하는 수식인데.. 어떻게 변경하는지 몰라서 질문 드립니다. ~~ M120=Ema(C,120); M240=Ema(C,240); (BarsSince(crossdown(M120,M240)) >= 60) <----- 이 수식이 궁금합니다. ^^
프로필 이미지
이루나라
2023-02-28
1281
글번호 166769
검색

질갱이 님에 의해서 삭제되었습니다.

프로필 이미지
질갱이
2023-02-28
760
글번호 166768
지표
답변완료

문의 드립니다.

A,B,C 라는 수식이 있을때 1.연속해서 5회 손실이 나면 다음 신호에서 진입하라. 2.연속해서 5회 손실이 나면 5회째 청산에서 소리가 나도록 하라. 이것이 가능할까요? 감사합니다.
프로필 이미지
하우즐영
2023-02-28
1285
글번호 166767
시스템
답변완료

함수요청

안녕하세요? 아래 전략에 대해 스크립트 작성 요청드립니다. 국내선물 5분봉으로 거래를 하고자 합니다. 일봉상 전영업일 양봉이면서 전일 시가 돌파시 익봉 시가 매수 진입 일봉상 전영업일 음봉이면서 전일 종가 이탈시 익봉 시가 매도 진입 고가돌파나 저가이탈 완성 익봉 시가에 청산 15시 20분 강제청산 하루에 진입은 매수와 매도 각 1회를 최대로 하고자 합니다. (총 2회 최대 진입)
프로필 이미지
흰둥이아빠
2023-02-28
956
글번호 166766
시스템
답변완료

문의 드립니다

저는 1분 차트를 이용하는 시스템인데요 진입 시간을 5분단위로만 진입을 하고싶은데 예를들어 10시 5분, 20분, 11시,12시10분 등 어떻게 코딩을해야하는지 알려주세요
프로필 이미지
비마
2023-02-28
1529
글번호 166765
시스템

신대륙발견 님에 의해서 삭제되었습니다.

프로필 이미지
신대륙발견
2023-02-28
1
글번호 166764
지표
답변완료

문의 드립니다

수고 하십니다. 첨부 그림에서 1st time zone에 표시된 것처럼 분봉차트에서 지정 시간대에서 첫 1봉 ~ N번째 봉의 1봉의 시가/N봉의 종가/1~N봉의 max 고가/1~N봉의 min 저가를 표시하고 싶습니다. 즉, 아래 mbo2 구간에서 현재는 첫봉의 시고저종이 표시되는데 이것을 1st time zone의 경우에 시고저종가가 표시된 것처럼 임의의 시간대에서 첫 봉~임의의 지정 N번째 봉 사이의 1봉의 시가/N봉의 종가/1~N봉의 max 고가/1~N봉의 min 저가를 표시할 수 있게 변경 부탁 드립니다. 수고하세요. ################ //MBO var : mboH1(0),mboL1(0),mboO1(0),mboC1(0); input : mboftime1(103000) ; input: mbo시가N1(1); if dayindex+1==mbo시가N1 Then { //시가용 // mboH1 = dayhigh; // mboL1 = daylow; mboO1 = dayopen; // mboC1 = dayclose; } #### 당일 시가 if dayindex>=mbo시가N1 && stime<=mboftime1 Then { plot1(mboO1,"O1-점5",Black); } input: mboN1(2); if dayindex+1==mboN1 Then { mboH1 = dayhigh; mboL1 = daylow; // mboO1 = dayopen; mboC1 = dayclose; } #### mbo1 고저종가 if dayindex>=mboN1 && stime<=mboftime1 Then { plot2(mboH1,"H1-네모",Red); plot3(mboL1,"L1-네모",Blue); if mboC1>mboO1 Then plot5(mboC1,"C1-일자",Red); Else plot5(mboC1,"C1-일자",blue); } #### mbo1 처럼 시고저종가 표시 하기.... input : stime2(103000), ftime2(120000) ; input : mboN2(0); //?? if (stime == stime2) or (stime >= stime2 and stime[1] < stime2) Then{ ## 틱차트봉은 체결건수를 기준으로 만들어 지므로 ## 봉의 시간이 103000와 같이 일치하지 않을 수 있습니다. var21 = dayindex; value21 = H; value22 = L; value23 = C; value24 = O; } if stime >= stime2 and dayindex <= var21 + mboN2 Then{ if H > value21 Then value21 = H; if L < value22 Then value22 = L; } if stime >= stime2 and dayindex >= var21 + mboN2 and stime <= ftime2 then{ plot21(value21,"H2-네모",Red); plot22(value22,"L2-네모",blue); plot23(value23,"C2-일자",Green); plot24(value24,"O2-일자",Black); }
프로필 이미지
오이도인
2023-02-28
1235
글번호 166763
지표