커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

종목 검색식 부탁드립니다.

아래 지표를 종목검색식으로 바꾸고 싶은데 일봉상 if long = longCond and CondIni[1] == -1 Then Find(1); 이렇게 하니 제대로 안나오네요 종목검색식으로 부탁드리며 추가로 1. 일봉상 최근10봉 이내 short이 발생했을시 검색제외 or 2. 최근 5봉이내 long 신호가 발생했을시 검색제외 이 두개조건을 추가하고 싶습니다. ----------------------------------------------------------------------------- input : source(close),per1(27),mult1(1.6),per2(55),mult2(2); var : wper1(0),avrng1(0),smrng1(0),wper2(0),avrng2(0),smrng2(0); var : smrng(0),filt(0); var : upward(0),downward(0); var : hband(0),lband(0); var : longCond(False),shortcond(False),CondIni(0); var : long(False),short(False),tx(0); wper1 = per1 * 2 - 1; avrng1 = ema(abs(source - source[1]), per1); smrng1 = ema(avrng1, wper1) * mult1; wper2 = per2 * 2 - 1; avrng2 = ema(abs(source - source[1]), per2); smrng2 = ema(avrng2, wper2) * mult2; smrng = (smrng1 + smrng2) / 2; // Range Filter #rngfilt(source, smrng) => var1 = iff(IsNaN(filt[1])==true,0,filt[1]); filt = source; filt = iff(source > var1, iff(source - smrng < var1 , var1 , source - smrng), iff(source + smrng > var1 , var1 , source + smrng)); var2 = iff(IsNaN(upward[1])==true,0,upward[1]); upward = 0.0; upward = iff(filt > filt[1] , Var2 + 1 ,IFf(filt < filt[1] , 0 , Var2)); var3 = iff(IsNaN(downward[1])==true,0,downward[1]); downward = 0.0; downward = iff(filt < filt[1] , Var3 + 1 , iff(filt > filt[1] , 0 , Var3)); hband = filt + smrng; lband = filt - smrng; longCond = source > filt and source > source[1] and upward > 0 or source > filt and source < source[1] and upward > 0; shortCond = source < filt and source < source[1] and downward > 0 or source < filt and source > source[1] and downward > 0; CondIni = IFf(longCond , 1 , IFf(shortCond , -1 , CondIni[1])); long = longCond and CondIni[1] == -1; short = shortCond and CondIni[1] == 1; if long Then { tx = Text_New(sDate,sTime,L,"Long"); Text_SetStyle(tx,2,0); Text_SetColor(tx,Lime); } if short Then { tx = Text_New(sDate,sTime,H,"Short"); Text_SetStyle(tx,2,1); Text_SetColor(tx,Red); }
프로필 이미지
허밍스타
2024-08-29
975
글번호 182922
종목검색
답변완료

종목검색식 부탁드림니다.

항상 노고에 감사드림니다. 아래의 수식을 종목검색식으로 부탁드림니다. A1 = ma(C, 20); A2 = ma(C, 60); 이격도 = C <= O * 0.95 && C >= O * 0.89; A3 = A1 > A2 && A1 > H && 이격도 && (O-C) > (H-O) && (O-C) > (C-L); 중심 = ValueWhen(1, A3,C); A3 && 중심(1) > C
프로필 이미지
존슨비치
2024-08-28
897
글번호 182921
종목검색
답변완료

문의 드립니다

안녕하세요. 수고하십니다 1.매수신호: 직전 음봉(또는 도지)의 시가을 첫째양봉이 돌파하면 매도신호, 만일 첫째양봉이 돌파하 지못하고 두번째 양봉이 돌파해도 매수신호(빨강삼각형)을 차트에 표시 매도신호; 직전양봉(또는 도지)의 시가을 첫째음봉이 돌파하면 매도신호, 만일 첫째음봉이 돌파하 지못하고 두번째 음봉이 돌파해도 매도신호(파랑삼각형)을 차트에 표시 동시에 차트에 10틱단위로 표시 부탁드립니다 감사합니다
프로필 이미지
만강
2024-08-29
865
글번호 182920
지표

노기법 님에 의해서 삭제되었습니다.

프로필 이미지
노기법
2024-08-28
3
글번호 182919
시스템

수지성 님에 의해서 삭제되었습니다.

프로필 이미지
수지성
2024-08-28
37
글번호 182918
종목검색
답변완료

문의드립니다.

수고많으십니다. 매수진입한 이후부터 양봉 5개가 연속해서 나온다면 그 시점부터 몇봉뒤가 되었든 음봉 3개가 연속해서 나오면 청산되는 청산식을 원합니다. 매도진입은 반대입니다. 감사합니다.
프로필 이미지
카르마다
2024-08-28
814
글번호 182917
시스템
답변완료

안녕하세요 수식 검토 부탁드립니다~

안녕하세요 아래의 조건으로 만들어 주신 수식이 일봉검색으로는 신호와 종목이 일치가 됩니다. 저는 30분봉이나 3분봉에 이 검색식을 활용하고 싶은데요, 이틀 동안 검색해보니 30분봉에서는 신호나온 종목과 종목검색에서 나온 종목이 서로 일치가 안되고 결과가 많이 다릅니다. 30분봉에서도 사용할 수 있게 수정을 부탁드립니다. 자꾸 번거롭게 해서 죄송합니다~ input : sto1(12),sto2(5),short(12),long(26),sig(9),R기간(14),N(13); var : S(0),md(0),ms(0),R(0); var : Bs_Sto(-1),cnt_sto(-1),Bs_macd(-1),Bs_Rsi(-1),조건(False); S = StochasticsK(sto1,sto2); Md = Macd(short,long); Ms = Ema(Md,sig); R = RSI(R기간); if CrossUp(S,20) Then { Bs_Sto = 0; cnt_Sto = 0; } Else { if Bs_Sto >= 0 Then Bs_Sto = Bs_Sto+1; if cnt_Sto >= 0 and S < 80 Then cnt_Sto = cnt_Sto+1; } if CrossUp(Md,Ms) Then Bs_Macd = 0; Else { if Bs_Macd >= 0 Then Bs_Macd = Bs_Macd+1; } if CrossUp(R,50) Then Bs_Rsi = 0; Else { if Bs_Rsi >= 0 Then Bs_Rsi = Bs_Rsi+1; } 조건 = Bs_Sto >= 0 and Bs_Macd >= 0 and Bs_Rsi >= 0 and Bs_Sto <= N and Bs_Sto > Bs_Macd and Bs_Sto > Bs_Rsi; if 조건 && 조건[1] == False && Bs_Sto==cnt_Sto Then Find(1); ********************************************************************* 1. 현재봉기준 N(13)봉 이내에, 스토캐스틱슬로우(12,5) %K가 20선을 상향 돌파한 후에, MACD(12,26,9)가 signal선을 상향 돌파하고, RSI(14)가 50선을 상향 돌파하는 세 가지를 모두 만족하는 종목을 검색하고 싶습니다. 세 가지를 만족하기 전에 스토캐스틱 %K가 80선을 돌파하면 제외하는 조건입니다. (스토캐스틱 신호 후, MACD와 RSI는 순서 상관없음) 키움 신호수식은 다음과 같습니다. 이것을 예스 종목검색식으로 바꾸고 싶습니다. S = Stochasticsslow(sto1,sto2); M = Macd(short,long); Ms = eavg(M,sig); R = RSI(R기간); Bs_Sto = BarsSince(CrossUp(S,20)); cnt_Sto = CountSince(CrossUp(S,20), S<80); Bs_Macd = BarsSince(CrossUp(M,Ms)); Bs_Rsi = BarsSince(CrossUp(R,50)); 조건 = Bs_Sto > Bs_Macd && Bs_Sto > Bs_Rsi; //Max(Bs_Sto, Bs_Macd, Bs_Rsi) == Bs_Sto 조건 && !조건(1) && (Bs_Sto+1)==cnt_Sto 수고에 감사드리며 늘 고맙습니다!!
프로필 이미지
소나기
2024-08-28
1008
글번호 182916
종목검색
답변완료

안녕하세요 수식문의 부탁드립니다^^

안녕하세요 아래에 수식으로 당일분봉에서 한번이라도 조건이 충족된 종목을 검색하는 검색수식과 지표수식을 만들고 싶은데 수식변환 도움을 부탁드립니다 A1 = valuewhen(1, crossup((highest(high,기간3)+lowest(low,기간3))/2, (highest(high,기간4)+lowest(low,기간4))/2), C); A2 = valuewhen(1, crossup((highest(high,기간1)+lowest(low,기간1))/2, (highest(high,기간2)+lowest(low,기간2))/2), C); A3 = valuewhen(1,crossdown(c, sar(af,maxaf)), h); A4 = valuewhen(1,crossdown(c, sar(af2,maxaf2)), h); B = (A1 <=C) and (A2 <=C) and (A3 <=C) and (A4 <=C); W = (A1 >=L) and (A2 >=L) and (A3 >=L) and (A4 >=L); B and W
프로필 이미지
고래상어의꿈
2024-08-28
918
글번호 182915
종목검색
답변완료

수식 문의 드립니다

(1) 매매시간, 매수진입, 청산수식 작성 부탁 드립니다. 매수 진입 가능시간 - 오전 9시 15분에 매매시작 14시(오후 2시) 까지 매수 진입 가능, 매수청산 가능시간 - 오전9시 15분부터 14시 25분까지 청산신호발생시 매수청산 가능. 14시 25분까지 매수청산 신호가 발생하지 않으면 14시 25분에 청산(당일청산)되도록 수식 작성 부탁 드립니다 매수진입 10이동평균선을 3틱이상 붕괴, 하락한 이후 상승하여 20이동평균선을 5틱이상 돌파할때 매수 매수청산 20이동평균선을 5틱이상 돌파, 상승한 이후 하락하여 20이동평균선을 7틱이상 붕괴할때 청산 (2) 추가로 매수진입 10이평선에 주가가 닿을때 매수진입 매수청산 20이평선에 주가가 닿을때 매수청산되도록 수식도 부탁 드립니다 (아래수식이 맞지않는 부분이 있는것 같습니다) input : starttime(91500),endtime(141500),XTime(142500); var : Tcond(false); if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Tcond = true; } if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; } if Tcond == true then { 매수 청산 } SetStopEndofday(XTime);
프로필 이미지
뎅이요
2024-08-28
994
글번호 182914
시스템