커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1315
글번호 230811
답변완료
지표식 부탁드립니다.
TradomgView 식을 변환해보았는데 원래와 모양이 다르군요. 수정을 부탁드립니다. 미리 감사드립니다.
//@version=6
indicator('#SwingArm ATR Trend', overlay = true, timeframe = '')
//{
// # Author: Jose Azcarate
//}
// inputs //
//{
trailType = input.string('modified', 'Trailtype', options = ['modified', 'unmodified'])
ATRPeriod = input(28, 'ATR Period')
ATRFactor = input(5, 'ATR Factor')
show_fib_entries = input(true, 'Show Fib Entries?')
//norm_o = security(tickerid(syminfo.prefix,syminfo.ticker), timeframe.period, open)
//norm_h = security(tickerid(syminfo.prefix,syminfo.ticker), timeframe.period, high)
//norm_l = security(tickerid(syminfo.prefix,syminfo.ticker), timeframe.period, low)
//norm_c = security(tickerid(syminfo.prefix,syminfo.ticker), timeframe.period, close)
norm_o = open
norm_h = high
norm_l = low
norm_c = close
//}
//////// FUNCTIONS //////////////
//{
// Wilders ma //
Wild_ma(_src, _malength) =>
_wild = 0.0
_wild := nz(_wild[1]) + (_src - nz(_wild[1])) / _malength
_wild
/////////// TRUE RANGE CALCULATIONS /////////////////
HiLo = math.min(norm_h - norm_l, 1.5 * nz(ta.sma(norm_h - norm_l, ATRPeriod)))
HRef = norm_l <= norm_h[1] ? norm_h - norm_c[1] : norm_h - norm_c[1] - 0.5 * (norm_l - norm_h[1])
LRef = norm_h >= norm_l[1] ? norm_c[1] - norm_l : norm_c[1] - norm_l - 0.5 * (norm_l[1] - norm_h)
trueRange = trailType == 'modified' ? math.max(HiLo, HRef, LRef) : math.max(norm_h - norm_l, math.abs(norm_h - norm_c[1]), math.abs(norm_l - norm_c[1]))
//}
/////////// TRADE LOGIC ////////////////////////
//{
loss = ATRFactor * Wild_ma(trueRange, ATRPeriod)
Up = norm_c - loss
Dn = norm_c + loss
TrendUp = Up
TrendDown = Dn
Trend = 1
TrendUp := norm_c[1] > TrendUp[1] ? math.max(Up, TrendUp[1]) : Up
TrendDown := norm_c[1] < TrendDown[1] ? math.min(Dn, TrendDown[1]) : Dn
Trend := norm_c > TrendDown[1] ? 1 : norm_c < TrendUp[1] ? -1 : nz(Trend[1], 1)
trail = Trend == 1 ? TrendUp : TrendDown
ex = 0.0
ex := ta.crossover(Trend, 0) ? norm_h : ta.crossunder(Trend, 0) ? norm_l : Trend == 1 ? math.max(ex[1], norm_h) : Trend == -1 ? math.min(ex[1], norm_l) : ex[1]
//}
// //////// PLOT TP and SL /////////////
//{
plot(trail, 'Trailingstop', style = plot.style_line, color = Trend == 1 ? color.red : Trend == -1 ? color.green : na)
plot(ex, 'Extremum', style = plot.style_circles, color = Trend == 1 ? color.fuchsia : Trend == -1 ? color.lime : na)
//}
////// FIBONACCI LEVELS ///////////
//{
state = Trend == 1 ? 'long' : 'short'
fib1Level = 61.8
fib2Level = 78.6
fib3Level = 88.6
f1 = ex + (trail - ex) * fib1Level / 100
f2 = ex + (trail - ex) * fib2Level / 100
f3 = ex + (trail - ex) * fib3Level / 100
l100 = trail + 0
Fib1 = plot(f1, 'Fib 1', style = plot.style_line, color = color.new(color.yellow, 0))
Fib2 = plot(f2, 'Fib 2', style = plot.style_line, color = color.new(color.yellow, 0))
Fib3 = plot(f3, 'Fib 3', style = plot.style_line, color = color.new(color.yellow, 0))
L100 = plot(l100, 'l100', style = plot.style_line, color = color.new(color.yellow, 0))
fill(Fib1, Fib2, color = state == 'long' ? color.new(color.red, 70) : state == 'short' ? color.new(color.green, 70) : na)
fill(Fib2, Fib3, color = state == 'long' ? color.new(color.red, 50) : state == 'short' ? color.new(color.green, 50) : na)
fill(Fib3, L100, color = state == 'long' ? color.new(color.red, 30) : state == 'short' ? color.new(color.green, 30) : na)
l1 = state[1] == 'long' and ta.crossunder(norm_c, f1[1])
l2 = state[1] == 'long' and ta.crossunder(norm_c, f2[1])
l3 = state[1] == 'long' and ta.crossunder(norm_c, f3[1])
s1 = state[1] == 'short' and ta.crossover(norm_c, f1[1])
s2 = state[1] == 'short' and ta.crossover(norm_c, f2[1])
s3 = state[1] == 'short' and ta.crossover(norm_c, f3[1])
atr = ta.sma(trueRange, 14)
/////////// FIB PLOTS /////////////////.
plotshape(show_fib_entries and l1 ? low - atr : na, 'LS1', style = shape.triangleup, location = location.belowbar, color = color.new(color.yellow, 0), size = size.tiny)
plotshape(show_fib_entries and l2 ? low - 1.5 * atr : na, 'LS2', style = shape.triangleup, location = location.belowbar, color = color.new(color.yellow, 0), size = size.tiny)
plotshape(show_fib_entries and l3 ? low - 2 * atr : na, 'LS3', style = shape.triangleup, location = location.belowbar, color = color.new(color.yellow, 0), size = size.tiny)
plotshape(show_fib_entries and s1 ? high + atr : na, 'SS1', style = shape.triangledown, location = location.abovebar, color = color.new(color.purple, 0), size = size.tiny)
plotshape(show_fib_entries and s2 ? high + 1.5 * atr : na, 'SS2', style = shape.triangledown, location = location.abovebar, color = color.new(color.purple, 0), size = size.tiny)
plotshape(show_fib_entries and s3 ? high + 2 * atr : na, 'SS3', style = shape.triangledown, location = location.abovebar, color = color.new(color.purple, 0), size = size.tiny)
//}
2025-06-02
380
글번호 191359
답변완료
키움지표인데 예스랭귀지로 변환될수 있도록 도와주세요.
예스랭귀지에 맞도록 변환 부탁드립니다.
A = DIMinus(Period);
B = (highest(H,Period) - C) / (highest(H, Period) - lowest(L, Period)) * (-100);
S = Stochasticsslow(sto1,sto2);
A>=30 && B<= -80 && S<20
Period 11
sto1 12
sto2 5
즐거운 하루 보내세요~
2025-06-02
248
글번호 191350
와우리 님에 의해서 삭제되었습니다.
2025-06-03
41
글번호 191349
디딤돌 님에 의해서 삭제되었습니다.
2025-06-02
4
글번호 191344
답변완료
목표금액 유지 시스템식 부탁합니다.
1)특정일에 100만원 해당 주식수만큼 매수
->
2)평가금액 상승으로 105만원 이상시 5만원 단위로 분할매도
3)평가금액 하락으로 95만원 이하시 5만원 단위로 분할매수
--분봉에서,모든신호 적용예정입니다.
2025-06-02
208
글번호 191332
이글루 님에 의해서 삭제되었습니다.
2025-06-02
0
글번호 191327
답변완료
종목검색식 부탁드립니다.
1. 시그마 (20) 가 기준선 0 을 돌파할때 종목검색식 부탁드립니다
2. 이격도(10) 가 기준선 70 을 돌파할때 종목 검색식 부탁드려요.
2025-06-02
230
글번호 191324
답변완료
산식작성
직전거래의 손실이 10포인트 이상이고,
직전거래의 진입봉과 청산봉사이에 BM[2]>BM[1] and BM[1]<BM[0] 가 있고,
직전거래의 거래명이 함수명 "SetStopLoss" 이고,
진입봉은 당일첫번째봉이고,
청산봉은 진입봉포함 dayindex<=5 이고,
현재봉이 dayindex<=9 and and BarsSinceExit(1)<=3 이고,
Ba[1]-Ba[0]>60일 때 매도진입을 산식으로 어떻게 표현하나요?
2025-06-02
202
글번호 191323
살빼고싶다 님에 의해서 삭제되었습니다.
2025-06-01
26
글번호 191322