커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1526
글번호 230811
답변완료
지표작성부탁드립니다
사용지표: 붙임1과 붙임 2지표
지표식 : 붙임1(트렌드)지표 상단선이 붙임2(박스권)지표 상단선 보다 위에 있으면
차트바탕이 노란색으로 표시되는 지표식 부탁합니다
붙임: 1. 트렌드지표
input : period(10),multiplier(3);
var : src(0), AtrV(0),upperBand(0),lowerBand(0), prevLowerBand(0), prevUpperBand(0);
var : prevSuperTrend(0), direction(0),alpha(0),source(0),SuperTrend(C);
if CurrentBar > 1 Then
{
src = (H+L)/2;
alpha = 1 / period ;
source = max(high - low, abs(high - close[1]), abs(low - close[1]));
ATrV = alpha * source + (1 - alpha) * ATrV[1]; //지수가중이평방식
//ATrV = ma(source,AtrPeriod); //단순이평방식
upperBand = src + multiplier * AtrV;
lowerBand = src - multiplier * AtrV;
prevLowerBand = lowerBand[1];
prevUpperBand = upperBand[1];
if lowerBand > prevLowerBand or close[1] < prevLowerBand Then
lowerBand = lowerBand;
Else
lowerBand = prevLowerBand;
if upperBand < prevUpperBand or close[1] > prevUpperBand Then
upperBand = upperBand;
Else
upperBand = prevUpperBand;
if C > UpperBand Then
direction = 1;
if C < LowerBand Then
direction = -1;
if direction == 1 Then
SuperTrend = lowerband;
Else
SuperTrend = upperband;
Plot1(SuperTrend,"SuperTrend",IFF(direction==1,Red,Blue));
}
2. 박스권 지표
input : 기간(45),R(2);
var : TOP(0),LO(0),DOUBLE(0),idx(0);
TOP = HIGHEST(H,기간);
LO = LOWEST(L,기간);
if H > TOP[1] Then
{
DOUBLE = H;
idx = 0;
}
Else
{
if DOUBLE > 0 Then
idx = idx+1;
}
if idx == 기간-R Then
{
var1 = DOUBLE;
Var2 = LO;
}
Plot1(var1);
plot2(Var2);
2025-09-11
207
글번호 193940
답변완료
조건검색식 부탁드립니다
안녕하세요. 항상 감사드립니다.
1. "조건" 이 분봉 당일내 검색된 모든 종목
2. "조건" 검색 된 종목 중에서 1~20봉전 내에 " S " 가 발생된 종목 검색식 부탁 드립니다.
S=CrossDown(C,supertrend(15, 3));
AH= DayHigh();
AL= DayLow();
B1= BarsSince(AH==H);
B2= BarsSince(AL==L);
조건=if(B1>B2,AH,AL);
2025-09-11
223
글번호 193939
답변완료
수정부탁드립니다.
안녕하세요
아래 수식은 0.02 를 넘기게 되면 색상이 기존의 색상과 반대가 되게 수정부탁 드린 수식인데
챠트에 대입하여보니 기존의 수식과 똑같이 나오고 있습니다.
다시한번 확인 부탁드립니다.(94235 번 참조)
var :macdv(0),macdsig(0),macdosc(0),매수신호(False),매도신호(False),value(0.02);
var : t(0),p0(0),q0(0),r(0);
MACDv = MACD(12,26);
MACDsig = ema(MACDv,9);
macdosc = MACDv-ema(MACDv,9);
매수신호 = MACDv > 0 && macdosc > macdosc[1];
매도신호 = MACDv < 0 && macdosc < macdosc[1];
if 매수신호 Then
{
t = 1;
p0 = c;
r = 0;
}
Else if 매도신호 Then
{
t = -1;
q0 = c;
r = 0;
}
Else
{
if t == 1 Then
r = (c-p0)/p0*100;
if t == -1 Then
r = (c-q0)/q0*100;
}
Plot1(r,"r",IFf(t==1,iff(r<= value,Red,blue),iff(r >= -value,Blue,Red)));
2025-09-11
201
글번호 193938
ksks 님에 의해서 삭제되었습니다.
2025-09-11
33
글번호 193937
답변완료
조건검색 도와주세요~
항상 빠르고 정확한 답변 감사드립니다.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
안녕하세요
예스스탁입니다.
올리신 내용은 키움수식 내용을 예스랭귀지 종목검색식으로 변환하고
해당 조건이 30일 이내 1회이상 발생한 종목을 찾게 변환해 드립니다.
var :a(0),b(0),a1(False),a2(False),a3(False),d(False);
A=ma(c,5);
B=A[1];
a1 = A/B*100 < 100 ;
a2 = c < ma(c,5) and c > ma(c,20) and o > c ;
Condition1 = c[3]*1.29 < c[2] and c[2] > c and o[2] < c and Money[2] > 5500000000;
a3 = CountIf(Condition1==true,15) >= 1;
d = a1 and a2 and a3 ;
if CountIf(d==true,30) >= 1 Then
Find(1);
즐거운 하루되세요
> 마을 님이 쓴 글입니다.
> 제목 : 수식변경 부탁드립니다.
> 아래 수식을 한번에 30일치를 종목검색 할 수 있게 변경 부탁드립니다.
*** 8봉내에서 상한가가 발생한 종목 중(a3) 에서 a1 과 a2 조건을 동시에 만족하는 첫번째 조건만을 찾는 검색입니다. (즉, 상한가 발생후 a1 과 a2를 만족하는 것이 4봉째, 5번째, 6번째 봉에서 발생하더라도 첫번째 만족한 4봉째만 검색이 되도록 하고 싶습니다.
countsince 함수를 사용하였는데, 수식에 문제가 있다면 변경해주세요.)
A=avg(c,5);
B=A(1);
a1 = A/B*100 < 100 ;
a2 = c < ma(c,5,단순) and c > ma(c,20,단순) and o > c ;
a3 = (c(3)*1.29 < c(2) and c(2) > c and o(2) < c and 거래대금(2) > 5500) or
(c(4)*1.29 < c(3) and c(3) > c and o(3) < c and 거래대금(3) > 5500 ) or
(c(5)*1.29 < c(4) and c(4) > c and o(4) < c and 거래대금(4) > 5500 ) or
(c(6)*1.29 < c(5) and c(5) > c and o(5) < c and 거래대금(5) > 5500 ) or
(c(7)*1.29 < c(6) and c(6) > c and o(6) < c and 거래대금(6) > 5500 ) or
(c(8)*1.29 < c(7) and c(7) > c and o(7) < c and 거래대금(7) > 5500 ) or
(c(9)*1.29 < c(8) and c(8) > c and o(8) < c and 거래대금(8) > 5500 ) or
(c(10)*1.29 < c(9) and c(9) > c and o(9) < c and 거래대금(9) > 5500) or
(c(11)*1.29 < c(10) and c(10) > c and o(10) < c and 거래대금(10) > 5500) or
(c(12)*1.29 < c(11) and c(11) > c and o(11) < c and 거래대금(11) > 5500) or
(c(13)*1.29 < c(12) and c(12) > c and o(12) < c and 거래대금(12) > 5500) or
(c(14)*1.29 < c(13) and c(13) > c and o(13) < c and 거래대금(13) > 5500) or
(c(15)*1.29 < c(14) and c(14) > c and o(14) < c and 거래대금(14) > 5500) ;
d = a1 and a2 and a3 ;
cnt = countsince(date!=date(1), d)==1 ;
cnt && !cnt(1)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
위와 같은 답변을 받았습니다.
해당 조건이 30일 이내 1회이상 발생한 종목을 찾게 변환해 드립니다.
---> 이 부분이 의미가 전달이 잘 못 된 것 같습니다.
30일 이내에서 가장 처음 조건을 만족한 조건을 찾는 것으로 변경하고 싶습니다.
예를 들어 9월 1일 , 9월 4일, 9월 8일 이렇게 3번 조건을 만족했다면, 가장 처음 만족한 9월 1일 조건만 찾으면 됩니다.
그래서 아래 부분을
a3 = CountIf(Condition1==true,15) == 1;
로 수정을 하면 되는 것이죠??
여기서 3가지 질문이 있습니다.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
질문1 ) 수식을 보면, 29%이상 상승한 봉 (이하 '기준봉'이라 부르겠습니다.) 기준봉의 시가와 종가의 범위내에 오늘 종가가 형성된 것을 찾도록 되어 있습니다.
그런데, 기준봉의 종가 위나 시가 이하에 있는 것이 검색이 됩니다.
예를 들어, 7월 2일에 스튜디오드래곤 이라는 종목이 검색이 되는데, 이는 6월 19일 기준봉의 시가보다 아래에 있는 종목이라 검색이 되면 안됩니다.
어느 부분을 수정을 하면 될까요?
질문2 ) 7월 2일 롯데이노베이트 종목이 검색됩니다.
해당 종목도 조건에는 만족하지만, 기준봉이 뜨고 가장처음 조건을 만족한 것이 아닙니다.
해당 종목은 6월 28일에 처음 조건을 만족한 것입니다.
처음 문의드린 키움조거식을 수식으로 그대로 복사해서 만들면 6월 28일에 화살표가 뜨는데, 조건식으로 만들면 6월 28일에는 검색이 안되고 7월 2일에 검색이 됩니다.
어디서 잘못된 것일까요?
질무3) 시가총액 3천억 이상이라는 조건도 추가 가능할까요?
혹시 제 문의사항이 두서가 없으면 다시 정리해서 올리겠습니다.
2025-09-11
282
글번호 193936
답변완료
커스텀 분봉 설정
안녕하세요.
파워종목검색이나 종목검색 기능에서
검색 조건 설정시 분봉이 선택박스 안에서만 선택이 가능한데 사용자 정의 (예를들어 40분봉이나 70분봉) 설정은 불가능한건가요?
그리고 예스스팟 Q&A에도 질문 한게 올려드렸는데 함께 확인 부탁드립니다.
감사합니다.
2025-09-11
161
글번호 193935
답변완료
파워종목검색과 종목검색 결과가 다릅니다.
안녕하세요.
예스랭귀지로 "종목검색" 수식 작성해서
"파워종목검색"과 "종목검색" 창에서 동일한 조건으로 검색해보니
첨부파일 처럼 다른 검색 결과가 나오네요.
원인이 무엇일까요?
그리고 검색결과에서 종목 클릭시 차트로 바로 실행되는 기능은 지원할 계획이 없나요?
감사합니다.
2025-09-11
203
글번호 193934
이승현 님에 의해서 삭제되었습니다.
2025-09-11
2
글번호 193929
답변완료
종목 검색 부탁드립니다.
smoothADD = ma_length + if(smoothingBool, ma_lengthSmoothing, 0);
MS = if(ma_type == 1, ma(C, smoothADD),
if(ma_type == 2, eavg(C, smoothADD),
if(ma_type == 3, ma(C, smoothADD,가중), eavg(C, smoothADD))));
tolerance_R = MS * toleranceInputR;
PREV_BELOW = C(1) <= MS(1) + tolerance_R;
CURR_ABOVE = C > MS + tolerance_R;
PREV_BELOW AND CURR_ABOVE
지표조건
ma_length : 120
ma_lengthSmoothing : 25
smoothingBool : 0
ma_type : 2
toleranceInputR : 0.0025
위라인 돌파 종목 검색식 부탁드립니다
2025-09-11
168
글번호 193928