커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1335
글번호 230811
당근인생 님에 의해서 삭제되었습니다.
2025-02-28
11
글번호 188649
답변완료
수식부탁드립니다.
if Tcond == true and 300< H-L Then
{
trade = False;
장대봉 줄현하면 당일 진입금지 식입니다.
"위의 장대봉 다음 5번째 봉에서부터는 조건만족시 진입한다"로 수정부탁합니다.
2025-02-28
515
글번호 188648
답변완료
파라볼릭 크기
Input : af(0.02), maxAF(0.2);
var : T(0),B(0),S(0),tx(0),txx(0),TL(0),box(0);
var : HH(0),LL(0),B1(0),B2(0),B3(0),B4(0),S1(0),S2(0),S3(0),S4(0),H1(0),H2(0),H3(0),H4(0),L1(0),L2(0),L3(0),L4(0);
var1 = CSar(af,maxAF);
if CrossUp(C,var1) Then
{
T = 1;
B = var1;
B1 = B[1];
B2 = B1[1];
B3 = B2[1];
B4 = B3[1];
HH = H;
H1 = HH[1];
H2 = H1[1];
H3 = H2[1];
H4 = H3[1];
if abs(S-LL) < 0.7 Then
Text_Delete(tx);
tx = Text_New(sDate,sTime,HH,NumToStr(abs(HH-B),2));
Text_SetColor(tx,Red);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,1);
Text_SetBold(tx,1);
box = Box_New(sDate,sTime,B,NextBarSdate,NextBarStime,HH);
Condition1 = False;
Condition3 = False;
}
if CrossDown(C,var1) Then
{
T = -1;
S = var1;
S1 = S[1];
S2 = S1[1];
S3 = S2[1];
S4 = S3[1];
LL = L;
L1 = LL[1];
L2 = L1[1];
L3 = L2[1];
L4 = L3[1];
if abs(B-HH) < 0.7 Then
Text_Delete(tx);
tx = Text_New(sDate,sTime,LL,NumToStr(abs(LL-S),2));
Text_SetColor(tx,Blue);
Text_SetSize(tx,25);
Text_SetStyle(tx,1,0);
Text_SetBold(tx,1);
box = Box_New(sDate,sTime,S,NextBarSdate,NextBarStime,LL);
Condition2 = False;
Condition4 = False;
}
Else
{
if T == 1 Then
{
if H > HH Then
HH = H;
Text_SetString(tx,NumToStr(abs(HH-B),2));
Text_SetLocation(tx,sDate,sTime,HH);
Box_SetEnd(box,NextBarSdate,NextBarStime,hh);
if HH < B+0.4 Then
{
Box_SetColor(box,Magenta);
Box_SetFill(box,true,90);
}
Else if HH >= B+0.4 and HH < B+0.5 Then
{
Box_SetColor(box,Gold);
Box_SetFill(box,true,150);
}
Else if HH >= B+0.5 and HH < B+0.65 Then
{
Box_SetColor(box,Orange);
Box_SetFill(box,true,100);
}
Else if HH >= B+0.65 and HH < B+0.8 Then
{
Box_SetColor(box,Pink);
Box_SetFill(box,true,120);
}
Else if HH >= B+0.8 and HH < B+1.2 Then
{
Box_SetColor(box,Magenta);
Box_SetFill(box,true,50);
}
Else if HH >= B+1.2 and HH < B+1.9 Then
{
Box_SetColor(box,Gray);
Box_SetFill(box,true,60);
}
Else
{
Box_SetColor(box,Pink);
Box_SetFill(box,true,90);
}
if B1 > 0 and B3 > B4 and H > H1 and H1 > H2 and H2 > H3 and H3 > H4 and Condition3 == False Then
{
Condition3 = true;
Buy();
txx = Text_New(sdate,sTime,H-0.7,"■");
Text_SetStyle(txx,2,2);
Text_SetColor(txx,Green);
Text_SetSize(txx,40);
}
if B1 > 0 and B >= B1 and H > H1 and B1 > B2 and H1 > H2 and Condition1 == False Then
{
Condition1 = true;
Buy();
txx = Text_New(sdate,sTime,H-0.7,"●");
Text_SetStyle(txx,2,2);
Text_SetColor(txx,Blue);
Text_SetSize(txx,35);
}
}
if T == -1 Then
{
if L < LL Then
LL = L;
Text_SetString(tx,NumToStr(abs(LL-S),2));
Text_SetLocation(tx,sDate,sTime,LL);
Box_SetEnd(box,NextBarSdate,NextBarStime,LL);
if LL > S-0.4 Then
{
Box_SetColor(box,Lime);
Box_SetFill(box,true,120);
}
Else if LL <= S-0.4 and ll > S-0.5 Then
{
Box_SetColor(box,Cyan);
Box_SetFill(box,true,150);
}
Else if LL <= S-0.5 and ll > S-0.65 Then
{
Box_SetColor(box,Blue);
Box_SetFill(box,true,50);
}
Else if LL <= S-0.65 and ll > S-0.8 Then
{
Box_SetColor(box,Yellow);
Box_SetFill(box,true,100);
}
Else if LL <= S-0.8 and ll > S-1.2 Then
{
Box_SetColor(box,Lime);
Box_SetFill(box,true,100);
}
Else if LL <= S-1.2 and ll > S-1.6 Then
{
Box_SetColor(box,Cyan);
Box_SetFill(box,true,100);
}
Else if LL <= S-1.6 and ll > S-1.9 Then
{
Box_SetColor(box,Blue);
Box_SetFill(box,true,30);
}
Else
{
Box_SetColor(box,Yellow);
Box_SetFill(box,true,100);
}
if S1 > 0 and S3 < S4 and L < L1 and L1 < L2 and L2 < L3 and L3 < L4 and Condition4 == False Then
{
Condition4 = true;
Buy();
txx = Text_New(sdate,sTime,L+0.7,"■");
Text_SetStyle(txx,2,2);
Text_SetColor(txx,Black);
Text_SetSize(txx,40);
}
if S1 > 0 and S <= S1 and L < L1 and S1 < S2 and L1 < L2 and Condition2 == False Then
{
Condition2 = true;
Buy();
txx = Text_New(sdate,sTime,L+0.7,"●");
Text_SetStyle(txx,2,2);
Text_SetColor(txx,Red);
Text_SetSize(txx,35);
}
}
}
if MarketPosition == 1 and BarsSinceEntry == 1 Then ExitLong();
if MarketPosition == -1 and BarsSinceEntry == 1 Then ExitShort();
상승, 하락 파라볼릭의 크기가 2p 되면 세로선 추가. 감사합니다.
2025-02-28
492
글번호 188646
답변완료
문의
macd가 시그널 골든크로스
macd가 0선돌파
macd 오실레이터가 상승전환
macd 가 상승전환
4가지 경우 동시에 발생되는 종목을 검색하고 싶습니다.
2025-02-28
496
글번호 188645
답변완료
문의
macd가 시그널 골든크로스
macd가 0선돌파
macd 오실레이터가 상승전환
macd 가 상승전환
4가지 경우 동시에 발생되는 종목을 검색하고 싶습니다.
2025-02-28
449
글번호 188644
답변완료
종목검색식 부탁드립니다
1. 양봉캔들이 단순60이평을 돌파하는 종목검색식 부탁드려요.
(단, 0봉전~30봉전 모든종목)
2. 하단의 수식을 참고하여,
수식1) 이, 수식2) 대비(보다) 110% 이상일때(많을때) 종목검색식 부탁드려요
(단, 0봉전~30봉전 모든종목)
-------
수식1) if( (high==low), 0, volume*(close-low)/(high-low))
수식2) if( (high==low), 0, volume*(high-close)/(high-low))
2025-02-28
438
글번호 188643
답변완료
수식 변환좀 부탁드립니다.
안녕하세요
날씨가 봄에 가까워 지니 날씨가 조금 풀리고 있습니다.
오늘은 트뷰에서 사용중인 신호지표를 예스 수식으로 변환좀 부탁드리려 합니다.
//@version=4
study(title="UT Bot Alerts", overlay = true)
// Inputs
a = input(1, title = "Key Vaule. 'This changes the sensitivity'")
c = input(10, title = "ATR Period")
h = input(false, title = "Signals from Heikin Ashi Candles")
xATR = atr(c)
nLoss = a * xATR
src = h ? security(heikinashi(syminfo.tickerid), timeframe.period, close, lookahead = false) : close
xATRTrailingStop = 0.0
xATRTrailingStop := iff(src > nz(xATRTrailingStop[1], 0) and src[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), src - nLoss),
iff(src < nz(xATRTrailingStop[1], 0) and src[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), src + nLoss),
iff(src > nz(xATRTrailingStop[1], 0), src - nLoss, src + nLoss)))
pos = 0
pos := iff(src[1] < nz(xATRTrailingStop[1], 0) and src > nz(xATRTrailingStop[1], 0), 1,
iff(src[1] > nz(xATRTrailingStop[1], 0) and src < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0)))
xcolor = pos == -1 ? color.red: pos == 1 ? color.green : color.blue
ema = ema(src,1)
above = crossover(ema, xATRTrailingStop)
below = crossover(xATRTrailingStop, ema)
buy = src > xATRTrailingStop and above
sell = src < xATRTrailingStop and below
barbuy = src > xATRTrailingStop
barsell = src < xATRTrailingStop
plotshape(buy, title = "Buy", text = 'Buy', style = shape.labelup, location = location.belowbar, color= color.green, textcolor = color.white, transp = 0, size = size.tiny)
plotshape(sell, title = "Sell", text = 'Sell', style = shape.labeldown, location = location.abovebar, color= color.red, textcolor = color.white, transp = 0, size = size.tiny)
barcolor(barbuy ? color.green : na)
barcolor(barsell ? color.red : na)
alertcondition(buy, "UT Long", "UT Long")
alertcondition(sell, "UT Short", "UT Short")
이 수식을 예스에서 이용가능하게 변환좀 부탁드립니다.
감사합니다.
2025-02-27
558
글번호 188642
답변완료
수식 수정 부탁드립니다.
운영 시작은 13:00이며 강제종료는 06:30으로 설정되어있습니다.
14:00에 진입조건이 완성되었는데 진입이 안됩니다.
14:00에 진입하게 하려면 어떤 수정을 해야 하는 지요?
if Crossup(valueS1,20) Then
T1 = 20;
if CrossUp(valueR,50) Then
T2 = 1;
if Crossup(valueM1,valueM2) Then
T3 = 1;
bcond = T1 == 20 and T2 == 1 and T3 == 1 ;
if bcond == true and bcond[1] == False and 20< valueS2 and vma < v Then
{
Buy("b",OnClosE,DeF,1);
}
2025-02-27
441
글번호 188641
답변완료
문의드립니다
분봉차트에서 n일 동안의 (고가+저가)/2 = 중간값을 표시하고 싶습니다
즉 분봉차트에 일봉의 n일 동안의 고+저/2 중간값을 표시
아래처럼 했는데 수치가 좀 이상하게 나오는거 같아요
Input : n(5);
var1 = (DayHigh(n)+DayLow(n))/2;
Plot1(var1);
감사합니다
2025-02-27
469
글번호 188640