커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3546
글번호 230811
답변완료
종목 검색식 요청드립니다.
1. 당일 40일선 < 60일선 < 112일선 < 224일선 역배열
2. 주가가 40일선 < 현재가 < 60일선
3. 지난 80일(4달)동안 한번도 종가가 60일선을 넘지 않음.
INPUT : Period1(40), Period2(60), Period3(112), Period4(224),
LookBack(80);
VAR :;
IF MA(C, Period1)<MA(C, Period2)&& MA(C, Period2)<MA(C, Period3)&& MA(C, Period3)<MA(C, Period4) && C<MA(C,Period2) && C>MA(C,Period1)&& C>MA(C,Period3)&& countif(C>ma(C,60),LookBack)==0 Then //
Find(1);
위와 같이 돌렸을때 지난 4달동안 60일선을 넘지 않는 조건이 만족 되지 않는거 같습니다. 부탁드리겠습니다.
2025-04-23
337
글번호 190355
답변완료
종목검색식 부탁드립니다.
아래와 같이 일목균형표 후행스팬이 볼린저밴드상단을 골든크로스(G.C)하는 종목을 검색코자 합니다.
1.수식
BBU=BBandsUp(Period,2)
crossup(c, BBU(midPeriod-1))
2. 지표변수
Period:20
midPeriod: 26
* 노고에 미리 감사드립니다!
2025-04-23
338
글번호 190354
답변완료
문의 드립니다.
안녕하십니까 노고 많으십니다.
예스트레이더 기존 검색식들 잘 이용중입니다.
현재 키움에 대한 기존 검색식들이 NXT 시장에 대해서는 검색이 되지 않는 것 같은데
nxt 시장에 대한 종목은 별도의 검색식이 필요한 것일까요?
2025-04-23
304
글번호 190353
답변완료
문의드립니다.
아래의 트레이딩뷰 수식을 예스트레이더 수식으로 바꿀수 있을런지요?
===============
// === INPUTS === //
zLen = input.int(100, "Z-Score Period")
emaTrendLen = input.int(50, "EMA Trend Filter")
rsiLen = input.int(14, "RSI Length")
rsiEmaLen = input.int(8, "EMA of RSI Period")
zBuyLevel = input.float(-2.0, "Z-Score Buy Threshold")
zSellLevel = input.float(2.0, "Z-Score Sell Threshold")
cooldownBars = input.int(10, "Cooldown (Bars)")
slopeIndex = input.int(30, "Slope Sensitivity (Bars)", minval=1)
showMeanLine = input.bool(true, "Show Z-Score Mean Line")
// === CORE CALCULATIONS === //
basis = ta.sma(close, zLen)
stdev = ta.stdev(close, zLen)
zscore = (close - basis) / stdev
emaTrend = ta.ema(close, emaTrendLen)
rsi = ta.rsi(close, rsiLen)
rsiEma = ta.ema(rsi, rsiEmaLen)
rsiEmaSlope = rsiEma - rsiEma[1]
isUptrend = close > emaTrend
isDowntrend = close < emaTrend
// === SINGLE-SIGNAL RSI ZONE LOCKOUT === //
var bool canBuy = true
var bool canSell = true
if rsiEma > 30
canBuy := true
if rsiEma < 70
canSell := true
rsiBuyConfirm = rsiEma < 30 and rsiEmaSlope > 0 and canBuy
rsiSellConfirm = rsiEma > 70 and rsiEmaSlope < 0 and canSell
rawBuy = zscore < zBuyLevel and isDowntrend and rsiBuyConfirm
rawSell = zscore > zSellLevel and isUptrend and rsiSellConfirm
if rawBuy
canBuy := false
if rawSell
canSell := false
// === COOLDOWN LOGIC === //
var int lastBuyBar = na
var int lastSellBar = na
buySignal = rawBuy and (na(lastSellBar) or bar_index - lastSellBar > cooldownBars)
sellSignal = rawSell and (na(lastBuyBar) or bar_index - lastBuyBar > cooldownBars)
if buySignal
lastBuyBar := bar_index
if sellSignal
lastSellBar := bar_index
항상 감사합니다. 수고하세요!
2025-04-23
372
글번호 190352
답변완료
종목검색 문의 드립니다
안녕하세요
예스스탁입니다.
mx39(), mn39()
올리신 수식에 위와 같은 시용자함수가 있습니다.
해당 함수의 내용을 올려주셔야 변환이 가능합니다.
즐거운 하루되세요
> 비리번 님이 쓴 글입니다.
> 제목 : 종목검색 문의 드립니다
> st60 = supertrend(60,2);
d=mx39()/mn39()*100-100;
crossup(c,st60) &&
st60<st60(1)&&
st60(1)>mx39()&&
st60<mn39()&&c>mx39()&&
d<5
(mx39() 함수)
m10=ma(c,10);m11=ma(c,11);m12=ma(c,12);
m13=ma(c,13);m14=ma(c,14);m15=ma(c,15);
m16=ma(c,16);m17=ma(c,17);m18=ma(c,18);
m19=ma(c,19);m20=ma(c,20);
m21=ma(c,21);m22=ma(c,22);m23=ma(c,23);
m24=ma(c,24);m25=ma(c,25);m26=ma(c,26);
m27=ma(c,27);m28=ma(c,28);m29=ma(c,29);
m30=ma(c,30);m31=ma(c,31);m32=ma(c,32);
m33=ma(c,33);m34=ma(c,34);m35=ma(c,35);
m36=ma(c,36);m37=ma(c,37);m38=ma(c,38);
m39=ma(c,39);
max(m10,
m11,m12,m13,m14,m15,m16,m17,m18,m19,m20,
m21,m22,m23,m24,m25,m26,m27,m28,m29,m30,
m31,m32,m33,m34,m35,m36,m37,m38,m39);
(mn39() 함수)
m10=ma(c,10);m11=ma(c,11);m12=ma(c,12);
m13=ma(c,13);m14=ma(c,14);m15=ma(c,15);
m16=ma(c,16);m17=ma(c,17);m18=ma(c,18);
m19=ma(c,19);m20=ma(c,20);
m21=ma(c,21);m22=ma(c,22);m23=ma(c,23);
m24=ma(c,24);m25=ma(c,25);m26=ma(c,26);
m27=ma(c,27);m28=ma(c,28);m29=ma(c,29);
m30=ma(c,30);m31=ma(c,31);m32=ma(c,32);
m33=ma(c,33);m34=ma(c,34);m35=ma(c,35);
m36=ma(c,36);m37=ma(c,37);m38=ma(c,38);
m39=ma(c,39);
mn=min(m10,
m11,m12,m13,m14,m15,m16,m17,m18,m19,m20,
m21,m22,m23,m24,m25,m26,m27,m28,m29,m30,
m31,m32,m33,m34,m35,m36,m37,m38,m39);
2025-04-23
407
글번호 190350
답변완료
먼저 감사인사 드립니다. 항상 신세 많이 지고 있습니다^^ 종목검색식 부탁 드려요.
타증권사에서의 수식변환 요청 입니다.
먼저,종목검색이 필요한 수식입니다.
검색봉수는 500봉 내에서 또는 임의 설정도 됩니다.(주로 일봉 검색입니다만 주봉이나 분봉도 상관없지 싶은데 상관 없겠죠? ^^)
지표변수는
L기간 60
R기간 60
입니다.
수식은
조건 = Lowest(L,L기간+R기간+1)==L(R기간);
A=ValueWhen(1,조건,L(R기간),-R기간);
shot = EMA(V,5);
long = EMA(V,10);
OSC = 100 * (long - shot) / shot;
IF(CrossUp(C,A) && OSC<0 && OSC<OSC(1),1,0)
입니다.
혹시 강조수식도 구현이 가능하면 강조수식도 부탁드려봅니다.(종목검색 + 강조)
감사합니다.
2025-04-23
308
글번호 190347
답변완료
부탁드립니다.
봉에 숫자가 표시는 되는데 안 나오게 부탁드립니다.
input : ntime(5);
var : S1(0),D1(0),TM(0),TF(0),B(0);
var : idx(0),idx1(0),idx2(0),tx(0);
var : C1(0),hh(0),ll(0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
var1 = 0;
c1 = 0;
hh = 0;
ll = 0;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
B = B+1;
idx = 0;
idx1 = idx[1];
idx2 = idx1[1];
tx = Text_New(sDate,sTime,L,NumToStr(1,0));
Text_SetStyle(tx,2,0);
Text_SetColor(tx,Red);
Text_SetBold(tx,1);
}
idx = idx+1;
Text_SetString(tx,NumToStr(idx,0));
Text_SetLocation(tx,sDate,sTime,L);
if B >= 3 and idx > max(idx1,idx2) Then
{
if var1 == 0 Then
{
c1 = c;
hh = C;
ll = C;
}
var1 = C;
if var1 > hh Then
hh = var1;
if var1 < ll Then
ll = var1;
}
if var1 > 0 Then
{
Plot1(var1);
Plot2(c1,"c1",Green);
}
Else
{
NoPlot(1);
NoPlot(2);
}
if var1 > 0 and hh > var1 Then
Plot3(hh,"hh",Red);
Else
NoPlot(3);
if var1 > 0 and ll < var1 Then
Plot4(ll,"ll",Blue);
Else
NoPlot(4);
}
2025-04-22
293
글번호 190346
답변완료
문의드립니다
H 와 L 차이를
N봉 만큼 더하고 싶습니다
(H[0] - L[0])
+(H[1] - L[1])
+(H[2] - L[2])
+(H[3] - L[3])
....
감사합니다
2025-04-22
291
글번호 190345
답변완료
수정 부탁드립니다.
안녕하십니까?
아래 수식에서 최대 3회만 진입하게 수정 부탁드립니다.
예를 들면 "b0" 진입해서 수익청산되면 더이상 진입금지.
"b1" 까지 진입후 수익청산이면 더이상 진입금지
"b2" 까지 진입후 수익청산이면 더이상 진입금지
if DayHigh >= DayOpen*1.21 Then
{
if CrossDown(C,DayHigh(0)-(DayHigh(0)-DayOpen)*0.10) Then
// Buy("b0",OnClose,Def,Floor(100000/c));
if CrossDown(C,DayHigh(0)-(DayHigh(0)-DayOpen)*0.15) Then
// Buy("b1",OnClose,Def,Floor(200000/c));
if CrossDown(C,DayHigh(0)-(DayHigh(0)-DayOpen)*0.20) Then
Buy("b2",OnClose,Def,Floor(300000/c));
}
if MarketPosition == 1 Then
{
ExitLong("bx1",AtLimit,AvgEntryPrice*1.1);
if CurrentContracts > CurrentContracts[1] Then
Var1 = LatestEntryPrice(0);
if Var1 > 0 Then
ExitLong("bx",AtLimit,var1*1.1);
}
2025-04-22
263
글번호 190344