커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1463
글번호 230811
답변완료
문의 드립니다.
도움에 진심으로 감사드립니다.
1. 일봉차트
15% 이상 and 상한가 양봉 위에
빨간화살표 매도신호가 표시되게 부탁드립니다.
2. 분봉차트
5% 이상의 양봉 위에
빨간화살표 매도신호가 표시되게 부탁드립니다.
감사합니다.
2024-01-22
780
글번호 175948
답변완료
감사합니다.시스탬식 부타드려요
나스닥거래합니다. 서머타임시에도 적용될수잇게 미국장시작 14분 거래중지 .
17시거래시작 15시거래종료..
볼벤상단 터치시 고점.봉번호.거래량 저장하고 볼벤하단터치시 저점.봉번호.거래량 저장..
30개평균거래량보다 볼벤터치시거래량이 1.5배많고
볼벤터치는 2틱이상 볼벤위로 고가가 올라갓을때 (거래량조건완성)..
볼벤상단터치거래량조건완성 전고점보다 현고점이 낮고 터치시 거래량이 전고점거래량보다 현고점거래량이작으면 (매도1조건완성)..
매도1조건완성이후 봉갯수가 9개 이하이고 고가가 21이평보다 작으면 매도 2개 진입 ..
고가가 매도1조건고가보다 크면 손절.. 1개 익절은 볼벤하단터치시.. 남은1개 손절가를 청산가격으로 바꾸고 남은 진입(1개일때) 익절은 볼벤상단터치시거래량조건만족할때...
직전익절이 70포인트이상이면서 매수조건(다른진입조건완성)이 발생하면 21이평위에 저점이 2개 발생하면 매수2개진입....
매수조건은 매도조건의 반대... 다른진입조건성립하면 진입포지션잇어도 두개진입으로 스위칭..
거래시간 종료되면 전체청산... 진입 청산은 모두시장가입니다
제가 숫자로 쓴거는 모두 input으로 부탁드립니다.
도움주셔서 감사합니다.
2024-01-22
944
글번호 175947
답변완료
수식 부탁드립니다
안녕하세요 ~
주식 관련식, 부탁드리겠습니다.
1번,
현재가 기준, 아래 꼬리가 주식 가격의 0.5%이상이고
아래꼬리는 전체 봉크기의 15% 이상일때 매수
현재가 기준, 위 꼬리가 주식 가격의 0.2%이상이고
위꼬리는 전체 봉크기의 10% 이상일때 (매도, 청산)
2번
연속된 2개가 양봉이고 , (현재가 종가 - 전봉 시가) 크기(차이)가 현재가의 0.7% 이상일때 매수
감사합니다 ~
2024-01-21
1225
글번호 175946
답변완료
수식 수정요청
아래 수식의 신호가 "지수이평이 120>240일인 경우"에만 나올 수 있게
수정(조건추가) 부탁드립니다.
₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩₩
Input : shortPeriod(5), longPeriod(20),기간1(50);
var : M1(0),M2(0),a(0),a1(0),eq(0),ZL(0),B(0),B1(0),B2(0),PB(0);
M1 = ma(C, shortPeriod);
M2 = ma(C, longPeriod);
A = LRL(C,기간1);
A1 = LRL(A,기간1);
eq= A-A1;
ZL =A+eq;
PB=SAR(0.02,0.2);
if C>=O && C>=M1 && M1>M1[1] && M1[1]<=M1[2] && C>=M2 && M2>M2[1] && M2[1]<=M2[2] && C>=ZL && ZL>ZL[1] && ZL[1]<=ZL[2] && PB<=C Then
Find(1);
2024-01-21
1155
글번호 175945
답변완료
종목검색 수식요청드립니다..
안녕하세요.
영웅문에서의 수식인데 이것을 예스랭귀지로의 변경이 필요해서 문의드립니다.
1,2번이 기본검색식(영웅문 검색식)
3번이 응용검색식입니다..가능하다면 셋 다 구현해주시면 감사하겠습니다.
3번의 조건이 너무 조잡하여 구현이 안되면
1번,2번만이라도 잘 부탁드리겠습니다.. 꾸벅..
1.지수이동평균선240(M240)을 상향돌파 이후 이평선을 '한번'도 하향 이탈하지 않고
상향돌파 이후 최소 '20'봉 이상 진행 후
( 지수이동평균선240을 상향돌파 한 후의) 전고점 상향 돌파 시
(N번째신호) 표시
2.지수이동평균선240(M240)을 상향돌파 이후 이평선을 '한번'도 하향 이탈하지 않고
상향돌파 이후 최소 '20'봉 이상 진행 후
( 지수이동평균선240을 상향돌파 한 후의) 전고점 상향 돌파 시
(첫번째신호) 표시
3.1번의 조건에서 몇가지 수정하겠습니다..
지수이동평균선240을 이탈한 후
25일이 초과되면 돌파를 초기화한다.
(즉, 25일내로 회복하면 하나의 돌파로 간주한다.)
지수이동평균선240(M240)을 상향돌파 이후
이평선을 '2번'까지는 하향 이탈해도 괜찮다.
(단, 이탈했을시 각 이탈 시 '25'일 내로 다시 이동평균선240 위로 올라와야한다.
(예) 2번이탈시, 첫번째 이탈 시 20일후 회복, 2번째이탈 시 15일 후
회복 총합은 35일이 넘었지만, 각각 25일 이내면 가능함
(이탈 전 '첫' )상향돌파 이후 최소 '20'봉 이상 진행 후
(이탈하더라도 20봉의 갯수는 계속 카운트 된다. 첫 상향돌파 후 20봉이므로)
(이탈 전 '첫' 지수이동평균선240을 상향돌파 한 후의) 전고점 상향 돌파 시
(첫신호 or 2번째신호 or 3번째신호) 표시
영웅문 수식1:
M= ma(c, 240, 종류); //종류:지수
HH= Highestsince(1, crossup(c,m), H);
Bs= barssince(crossup(c,M))+1;
cnt= countsince(crossup(c,m), C>M);
Bs == cnt and crossup(c, hh(1)) and
Bs > 지연일 //지연일:20일
영웅문 수식2:
M= ma(c, 240, 종류); //종류:지수
HH= Highestsince(1, crossup(c,m), H);
Bs= barssince(crossup(c,M))+1;
cnt= countsince(crossup(c,m), C>M);
조건=
Bs == cnt and crossup(c, hh(1)) and
Bs > 지연일; //지연일:20일
첫신호= countsince(crossup(c,m), 조건);
첫신호==1 and 첫신호(1)==0
2024-01-22
933
글번호 175944
답변완료
문의
안녕하세요
예스스탁입니다.
var : cnt(0);
Array : WeekH[10](0),WeekL[10](0),WeeKC[10](0);
if DayOfWeek(Bdate) < DayOfWeek(Bdate[1]) Then
{
For cnt = 9 DownTo 1
{
WeekH[cnt] = WeekH[cnt-1];
WeekL[cnt] = WeekL[cnt-1];
WeekC[cnt] = WeekC[cnt-1];
}
WeekH[0] = H;
WeekL[0] = L;
}
if WeekH[0] > 0 and H > WeekH[0] Then
WeekH[0] = H;
if WeekL[0] > 0 and L < WeekL[0] Then
WeekL[0] = L;
WeekC[0] = c;
if WeekH[1] > 0 and WeekL[1] > 0 Then
{
Plot1(WeekH[1],"전주고가");
Plot2(WeekL[1],"전주저가");
Plot3(WeekC[1],"전주종가");
}
if WeekH[0] > 0 and WeekL[0] > 0 Then
{
Plot4(WeekH[1],"이번주고가");
Plot5(WeekL[1],"이번주저가");
}
여기에서 이번주 시가를 외부변수로 해서 밤11시반으로 나타나게 부탁드립니다
2024-01-21
1148
글번호 175943
답변완료
수식 도움 요청드립니다
수고에 늘 감사드립니다.
아래 수식을 예스랭귀지로 변환하고자 도움을 요청 드립니다.
매번 수고에 거듭 감사드립니다.
//@version=5
indicator(title='Super trend B', overlay=true)
length = input.int(20, minval=1)
src = close
mult1 = input.float(0.5, minval=0.001, maxval=50, title=" multiflier")
basis = ta.sma(src, length)
upper1 = basis + mult1 * ta.stdev(src, length)
lower1 = basis - mult1 * ta.stdev(src, length)
plot(basis, "Basis", color=#FF6D00)
plot(upper1, "Upper 1", color=#2962FF)
plot(lower1, "Lower 1", color=#2962FF)
// INPUTS //
st_mult = input.float(3, title='SuperTrend Multiplier', minval=0, maxval=100, step=0.01)
st_period = input.int(7, title='SuperTrend Period', minval=1)
// CALCULATIONS //
up_lev = upper1 - st_mult * ta.atr(st_period)
dn_lev = lower1 + st_mult * ta.atr(st_period)
up_trend = 0.0
up_trend := close > up_trend ? math.max(up_lev, up_trend) : up_lev
down_trend = 0.0
down_trend := close < down_trend ? math.min(dn_lev, down_trend) : dn_lev
// Calculate trend var
trend = 0
trend := close > down_trend ? 1 : close < up_trend ? -1 : nz(trend, 1)
// Calculate SuperTrend Line
st_line = trend == 1 ? up_trend : down_trend
// Plotting
//plot(st_line[1], color=trend == 1 ? color.green : color.red, style=plot.style_cross, linewidth=2, title='SuperTrend')
buy = ta.crossover(close, st_line)
sell = ta.crossunder(close, st_line)
//plotshape(crossover( close, st_line), location = location.belowbar, color = color.green,size=size.tiny)
//plotshape(crossunder(close, st_line), location = location.abovebar, color = color.red,size=size.tiny)
//plotshape(buy, title='buy', text='Buy', color=color.new(color.green, 0), style=shape.labelup, location=location.belowbar, size=size.small, textcolor=color.new(color.white, 0)) //plot for buy icon
plotshape(sell, title='sell', text='Sell', color=color.new(color.red, 0), style=shape.labeldown, location=location.abovebar, size=size.small, textcolor=color.new(color.white, 0)) //plot for sell icon
//
multiplier = input.float(title='DEV', defval=2, minval=1)
src5 = close
len5 = input.int(title='Linear length', defval=150, minval=1)
offset = 0
calcSlope(src5, len5) =>
sumX = 0.0
sumY = 0.0
sumXSqr = 0.0
sumXY = 0.0
for i = 1 to len5 by 1
val = src5[len5 - i]
per = i + 1.0
sumX += per
sumY += val
sumXSqr += per * per
sumXY += val * per
sumXY
slope = (len5 * sumXY - sumX * sumY) / (len5 * sumXSqr - sumX * sumX)
average = sumY / len5
intercept = average - slope * sumX / len5 + slope
[slope, average, intercept]
var float tmp = na
[s, a, i] = calcSlope(src5, len5)
vwap1 = i + s * (len5 - offset)
sdev = ta.stdev(close, len5)
dev = multiplier * sdev
top = vwap1 + dev
bott = vwap1 - dev
//
z1 = vwap1 + dev
x1 = vwap1 - dev
low1 = ta.crossover(close, x1)
high1 = ta.crossunder(close, z1)
plotshape(low1, title='b', text='BUY', color=color.new(color.green, 0), style=shape.labelup, location=location.belowbar, size=size.small, textcolor=color.new(color.white, 0)) //plot for buy icon
//plotshape(high1, title='high', text='HIGH', color=color.new(color.green, 0), style=shape.labeldown, location=location.abovebar, size=size.small, textcolor=color.new(color.white, 0)) //plot for sell icon
/////// Alerts /////
//alertcondition(buy, title='buy')
alertcondition(sell, title='sell')
alertcondition(low1, title='buy')
//alertcondition(high1, title='buy tp')
2024-01-21
1188
글번호 175942
답변완료
부탁좀 드립니다.
상승 하는 20일선을
15일 기간안에서 (5일도 좋고, 7일도 좋고..)
20선을 돌파 했다가, 이탈 하고
재 돌파한 종목을 찾을 수 있을까요?
부탁 드립니다.
2024-01-21
1187
글번호 175941
답변완료
수식요청
안녕하세요
수식부탁드립니다
이평60선
볼밴과 이평폭 +- 10틱이내
매수식
가격이 이평 60선을 하락이나 상승후
이평 60선이 볼밴 하한선과의 폭이 +- 10틱이내인 상태에서
가격이 이평 60선을 터치나 하락후 상승시
첫봉에서 매수
매도식
가격이 이평60선을 상승이나 하락후
이평 60선이 볼밴 상한선과의 폭이 -+10틱이내
가격이 이평60선을 터치나상승후 하락시 첫봉에서 매도
2024-01-21
1114
글번호 175940