커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3467
글번호 230811
답변완료
ZLSMA50선
84484번 질의/답변에 감사드리며 확인차 재질의 드립니다.
저의 질의가 정확히 표현되어 답변이 온건지 확인하고자 합니다. 즉,
1.ZLSMA50선이 하락하다가 상승변곡이 발생하고
2.그 이후 5일내 MACD(7,16) 0선돌파 시 검색하는데
3.11봉전~41봉전의 ZLSMA값 대비 MACD 0선돌파일 전일의 ZLSMA값이 -10~-40%이하인 종목만 검색(변곡발생일 전일의 ZLSMA값이 아님)
어제 11.9일 MACD 0돌파발생한 메디톡스같은 경우,
1봉전 11.8 ~ 31봉전 ZLSMA값이 -43.8%인데 검색되지 않았읍니다.
(저의 검색조건 거래대금 OR 거래량 각각500위 내 vs 11.9일 817억,36만주)
한번 검토바랍니다.
2023-11-10
560
글번호 173907
ujkl 님에 의해서 삭제되었습니다.
2023-11-10
51
글번호 173906
답변완료
문의드립니다.
Var1 = 특정일 특정봉부터 특정일 특정봉까지 최저가
Var2 = 특정일 특정봉부터 특정일 특정봉까지 최고가
data2를 참조데이터로 불러와서쓰는데 참조데이터의 dayindex와 주 데이터의 dayindex가 달라서 중복으로 수치가 저장되네요.이럴경우 참조데이터의 값이 새로 나왔을 때만 저장하는 식은 어떤식으로 작성해야하나요?
어떤 식으로 구해야 하나요?
그리고 종목검색식에서 코스피200이라던가 특정업종만 검색하고 싶으면 어떻게 해야하나요?
답변부탁드립니다.수고하세요~
2023-11-10
730
글번호 173905
답변완료
부탁드립니다.
적용가능하도록 수정 부탁 드립니다.
study("B-Xtrender @Puppytherapy")
short_l1 = input(5 , title="Short - L1")
short_l2 = input(20, title="Short - L2")
short_l3 = input(15, title="Short - L3")
long_l1 = input(20, title="Long - L1")
long_l2 = input(15, title="Long - L2")
shortTermXtrender = rsi(ema(close, short_l1) - ema(close, short_l2), short_l3 ) - 50
longTermXtrender = rsi( ema(close, long_l1), long_l2 ) - 50
shortXtrenderCol = shortTermXtrender > 0 ? shortTermXtrender > shortTermXtrender[1] ? color.lime : #228B22 : shortTermXtrender > shortTermXtrender[1] ? color.red : #8B0000
plot(shortTermXtrender, color=shortXtrenderCol, style=plot.style_columns, linewidth=1, title="B-Xtrender Osc. - Histogram", transp = 50)
t3(src, len)=>
xe1_1 = ema(src, len)
xe2_1 = ema(xe1_1, len)
xe3_1 = ema(xe2_1, len)
xe4_1 = ema(xe3_1, len)
xe5_1 = ema(xe4_1, len)
xe6_1 = ema(xe5_1, len)
b_1 = 0.7
c1_1 = -b_1*b_1*b_1
c2_1 = 3*b_1*b_1+3*b_1*b_1*b_1
c3_1 = -6*b_1*b_1-3*b_1-3*b_1*b_1*b_1
c4_1 = 1+3*b_1+b_1*b_1*b_1+3*b_1*b_1
nT3Average_1 = c1_1 * xe6_1 + c2_1 * xe5_1 + c3_1 * xe4_1 + c4_1 * xe3_1
maShortTermXtrender = t3( shortTermXtrender , 5 )
colShortTermXtrender = maShortTermXtrender > maShortTermXtrender[1] ? color.lime : color.red
plot(maShortTermXtrender, color=#000000 , style=plot.style_line, linewidth=5, title="B-Xtrender Shadow")
plot(maShortTermXtrender, color=colShortTermXtrender, style=plot.style_line, linewidth=3, title="B-Xtrender Color ")
plotshape(maShortTermXtrender > maShortTermXtrender[1] and maShortTermXtrender[1] < maShortTermXtrender[2] ? maShortTermXtrender : na, location=location.absolute, style=shape.circle, color=color.lime, size=size.tiny, transp=10)
plotshape(maShortTermXtrender < maShortTermXtrender[1] and maShortTermXtrender[1] > maShortTermXtrender[2] ? maShortTermXtrender : na, location=location.absolute, style=shape.circle, color=color.red , size=size.tiny, transp=10)
longXtrenderCol = longTermXtrender> 0 ? longTermXtrender > longTermXtrender[1] ? color.lime : #228B22 : longTermXtrender > longTermXtrender[1] ? color.red : #8B0000
macollongXtrenderCol = longTermXtrender > longTermXtrender[1] ? color.lime : color.red
plot(longTermXtrender , color=longXtrenderCol, style=plot.style_histogram, linewidth=2, title="B-Xtrender Trend - Histogram", transp = 80)
plot(longTermXtrender , color=#000000 , style=plot.style_line, linewidth=5, title="B-Xtrender Trend - Line", transp = 80)
plot(longTermXtrender , color=macollongXtrenderCol, style=plot.style_line, linewidth=3, title="B-Xtrender Trend - Line", transp = 80)
2023-11-10
857
글번호 173904
답변완료
부틱드립니다
수고하십니다
아래수식이 가격차트에 나타나게 수식변경 부탁드립니다
Input : Period(15),BandPeriod(34),표준편차(1.6185);
var : MidBand(0),UpBand(0),DnBand(0) ;
var1 = RSI(Period) ;
MidBand = ma(var1,BandPeriod); #RSI 볼밴 중단
UpBand = MidBand + (표준편차 * std(var1, BandPeriod)); #RSI 볼밴 상단
DnBand = MidBand - (표준편차 * std(var1, BandPeriod)); #RSI 볼밴 하단
plot1(UpBand,"UpBand",White,def,1);
plot2(MidBand,"MidBand",Yellow,def,2);
plot3(DnBand,"DnBand",White,def,1);
2023-11-10
838
글번호 173903
답변완료
수식요청드려요
파워종목검색
거래량 100000만 이상 과 거래대금10억 이상 동시만족는 종목검색
부탁드립니다.
2023-11-10
951
글번호 173902
답변완료
안녕하세요. 수식 작성 도움 부탁드립니다.
늘 올려주신 수식들 잘 보고 있습니다. 감사합니다.
예스스탁
시스템1
자금관리 : signal 봉 고가 - 저가가 총 자산의 2%로 배팅.
조건 1 : 종가 기준 10% 이상 상승하고 120일 신고가를 달성한 봉이 10거래일 내 존재
조건 2 : 전일 저가 > 당일 종가인 경우 당일 봉이 signal 봉
조건 3 : signal 봉 고가 돌파시 매수, 저가 돌파시 signal 무효화
조건 4 : signal 봉 저가 -1 tick에 stop loss
조건 5 : 매수 1일 뒤 시가에 1/4 청산, 매수 2일 뒤 종가에 1/4 청산, 매수 3일 뒤 종가에 1/4 청산, 나머지 1/4 물량은 -10% trailing stop
시스템2
자금관리 : signal 봉 고가 - 저가가 총 자산의 2%로 배팅.
조건 1 : 종가 기준 10% 이상 상승하고 120일 신고가를 달성한 봉이 10거래일 내 존재
조건 2 : Force index(2)가 음수인 경우 signal 봉
조건 3 : signal 봉 고가 돌파시 매수.
조건 4 : signal 봉 저가 -1 tick에 stop loss
조건 5 : 매수 1일 뒤 시가에 1/4 청산, 매수 2일 뒤 종가에 1/4 청산, 매수 3일 뒤 종가에 1/4 청산, 나머지 1/4 물량은 -10% trailing stop
2023-11-09
1126
글번호 173901
답변완료
분봉이나 틱에서 상단, 하단 터치 횟수가 다르게 나오는 것 해결 방법 문의
항상 도움에 감사드립니다.
첨부된 이미지를 참고해서 보시면
같은 시간에 10틱, 1분봉, 5분봉에서
일정한 가격 사이틀 왔다갔다가 터치하는 횟수를 세는 수식을 작성했는데요.
10틱에서는 상단선과 하단선을 왔다갔다 터치하는 횟수가 잘 세어지는데요.
10틱에서 1분봉, 5분봉으로 갈 수록 상단과 하단의 터치 횟수가 줄어들게 됩니다.
이유는 하단(상단)을 터치했다가 상단(하단)을 터치할 때
봉이 완성되어야 터치 횟수가 카운트 되기 때문인데요.
1분봉, 5분봉이나 10분봉 이렇게 봉 시간이 다를때도
실시간의 경우에 터치횟수가 세어지는 것이 틱차트 처럼
셀 수 있게 수식 작성이 가능한가요?
아래는 제가 작성한 수식입니다.
------------------------------------------------------
var : hh(0),ll(0),t(0);
var : upcnt(0),dncnt(0);
var : oo(0);
var : line_up(0), line_down(0), oo_line(0);
var : up_text(0), down_text(0);
var : tcond(False);
input : ntime(203500), xtime(050000);
if (sdate != sdate[1] and stime >= xtime) or
(sdate == sdate[1] and stime >= xtime and stime[1] < xtime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= ntime) or
(sdate == sdate[1] and stime >= ntime and stime[1] < ntime) Then
{
Tcond = true;
oo = 15373.50;
hh = oo+PriceScale*5;
ll = oo-PriceScale*5;
t = 0;
upcnt = 0;
dncnt = 0;
if H >= hh Then
{
T = 1;
upcnt = upcnt+1;
}
if L <= ll Then
{
T = -1;
dncnt = dncnt+1;
}
oo_line = TL_New(sDate,sTime,oo,NextBarSdate,NextBarStime,oo); // 선긋기
line_up = TL_New(sDate,sTime,hh,NextBarSdate,NextBarStime,hh); // 선긋기
line_down = TL_New(sDate,sTime,ll,NextBarSdate,NextBarStime,ll); // 선긋기
up_text = Text_New(NextBarSdate,NextBarStime,hh,NumToStr(upcnt,0));
down_text = Text_New(NextBarSdate,NextBarStime,ll,NumToStr(dncnt,0));
}
if Tcond == true Then
{
if T <= 0 and H >= hh Then
{
T = 1;
upcnt = upcnt+1;
if upcnt >= 5 Then
Buy();
}
if T >= 0 and L <= LL Then
{
T = -1;
dncnt = dncnt+1;
if dncnt >= 5 Then
Sell();
}
TL_SetEnd(line_up,NextBarSdate,NextBarStime,hh); // 선 긋기 연장해줌
TL_SetEnd(line_down,NextBarSdate,NextBarStime,ll); // 선 긋기 연장해줌
TL_SetEnd(oo_line,NextBarSdate,NextBarStime,oo); // 선 긋기 연장해줌
Text_SetString(up_text,NumToStr(upcnt,0));
Text_SetString(down_text,NumToStr(dncnt,0));
Text_SetLocation(up_text,NextBarSdate,NextBarStime,hh);
Text_SetLocation(down_text,NextBarSdate,NextBarStime,ll);
Text_SetColor(down_text, Red);
}
MessageLog("상단, 하단______ %.2f, %.2f", upcnt, dncnt);
MessageLog("%.2f, %.2f, %.2f", hh, ll, oo);
------------------------------------------------------------------
예를들어 5분봉이 완성되기 전에
상단선과 하단선을 오르락 내리락 하면서 터치하게 될 경우
터치 횟수가 세어지는 수식을
작성할 수 있는지 궁금합니다.
2023-11-09
1109
글번호 173900
답변완료
수식 질문합니다.
안녕하세요.
1. 당일 거래봉이 연중 최고거래봉을 돌파하는 종목
2. 당일 거래봉이 지난해 최고거래봉을 돌파하는 종목
을 검색하고 싶습니다.
감사합니다.
2023-11-09
1151
글번호 173898