커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4482
글번호 230811
답변완료
검색식 부탁드립니다. _(_ _)_
항상 도와주심에 감사드립니다._(__)_
10봉전에서 첫 장기정배열(240<120<60)이 만들어지고 난 후 0봉전에서 완전정배열(240<120<60<20<5)이 나오는 종목 검색식을 부탁드립니다.
2024-12-06
695
글번호 186010
답변완료
질문 2가지 부탁드립니다
질문 1) 디버그 관련
for cnt = 3 DownTo 0
{
MessageLoG("%.f,%.f",cnt, arr[cnt]);
}
이 수식으로 vv 배열의 0~4번 까지의 배열을 확인하고 있는데요
혹시 최근 10봉까지만 출력하게 할 수 있을까요??
감사합니다
질문2)
특정 조건에 해당되는 값들로 구성된 배열을 가지고 계산을 할때는 for 문으로 풀어서 써야되는데
예로 이평구할때는
sum = 0;
P=5;
For cnt =0 to P-1
{
sum = sum + arr[cnt];
}
var1 = sum/P;
이런식으로 풀어서 써야되는데요
배열의 왜도 구할때 필요한 표준편차도 std 함수를 쓰는게 아니라 아래처럼 다 풀어서 작성해야되는거죠?
PERIOD=10;
SumSqrt = 0;
For cnt = 0 To Period - 1
{
SumSqrt = SumSqrt + (C[cnt] - ma(c,period))^2;
}
stdv = SquareRoot(SumSqrt / Period);
제가 작성했다가 틀릴거 같아서 그런데 왜도 구하는 수식을 부탁드려도 될까요?
감사합니다
2024-12-06
729
글번호 186009
답변완료
키움수식을 예스랭귀지(종목검색수식)로 변환부탁드립니다.
Input: shortperiod(9),midperiod(26),longperiod(52);
var:A(0),B(0);
A=(highest(high,shortperiod)
+lowest(low,shortperiod)
+highest(high,midperiod)
+lowest(low,midperiod))/4;
B=(highest(high,longperiod)
+lowest(low,longperiod))/2;
Plot1(A);
plot2(B);
FixPlotShift(1,midperiod-1);
FixPlotShift(2,midperiod-1);
if sDate!=sDate[1] Then
Condition1=False;
if crossup(C,Max(A,B)) Then
Condition1=true;
if Condition1==true Then
Find(1);
2024-12-06
580
글번호 186008
starch 님에 의해서 삭제되었습니다.
2024-12-06
0
글번호 186007
답변완료
가격채널 당일
INPUT : LENGTH(200);
VAR : TCHAN(0), BCHAN(0),TL(0);
TCHAN = HIGHEST(HIGH, LENGTH);
BCHAN = LOWEST(LOW, LENGTH);
PLOT1(TCHAN, "TOP");
PLOT2(BCHAN, "BOT");
if H == TCHAN and (var11 == 0 or (var11 > 0 and Index > var11+100)) Then
{
var11 = Index;
TL= TL_New(sdate,sTime,0,sDate,sTime,999);
TL_SetSize(TL,2);
TL_SetColor(TL,Cyan);
}
if L == BCHAN and (var21 == 0 or (var21 > 0 and Index > var21+100)) Then
{
var21 = Index;
TL= TL_New(sdate,sTime,0,sDate,sTime,999);
TL_SetSize(TL,2);
TL_SetColor(TL,Gold);
}
전일과 연관없이 당일 시초부터 계산. 감사합니다.
2024-12-06
682
글번호 186006
답변완료
부탁 문의드립니다.
부탁 문의 드립니다.
1. cci가 -100이하 조건 에서 2번째 골든크로스가 일어나는 지점에서 매수포인트를 잡고자 합니다.
2. 골든 크로스 저점이 낮아지는 조건과 저점이 높아지는 조건도 구별 가능한지 알고 싶습니다.
3.cci -100이하에서 1차 골든크로스시1차매수 2차 골든크로스시 2차 분할매수 수식도 부탁드립니다.
수고 하십시요
Input : Period1(14),Period2(9);
var : CCIv(0),CCIsig(0),a(0),b(0);
CCIv = CCI(Period1);
CCIsig = ema(CCIv,Period2);
{
if CCIv<-100 and CrossUp(CCIv,CCIsig) Then
Buy();
if CCIv>100 and CCIv<CCIv[1] Then
ExitLong();
}
2024-12-06
527
글번호 186005
답변완료
수식전환 요청드립니다.
안녕하세요.
아래의 트레이딩뷰 지표수식을 예스트레이더 형식으로 변환을 요청드립니다.
감사합니다. (첨부파일 참조해 주십시오)
showSignal = input(title="Show Signal ?", type=input.bool, defval=true)
signalType = input(title="Signal Smoothing Type", defval="SMA", options=["EMA", "SMA"])
signalLength = input(title="Signal Smoothing Length", type=input.integer, defval=21)
src = input(title="Source", type=input.source, defval=close)
highlightCrossovers = input(title="Highlight Crossovers ?", type=input.bool, defval=false)
applyFilling = input(title="Apply Ribbon Filling ?", type=input.bool, defval=true)
signal = signalType == "EMA" ? ema(pvt, signalLength) : sma(pvt, signalLength)
trendColor = pvt > signal ? #0ebb23 : color.red
pvtColor = applyFilling ? trendColor : #0094ff
signalColor = applyFilling ? trendColor : #ff6a00
pvtPlot = plot(pvt, title="PVT", linewidth=2, color=pvtColor, transp=0)
signalPlot = plot(showSignal ? signal : na, title="Signal", color=signalColor, transp=0)
transparent = color.new(color.white, 100)
fillColor = applyFilling ? trendColor : transparent
fill(pvtPlot, signalPlot, color=fillColor, transp=70)
buyAlert = crossover(pvt, signal)
sellAlert = crossunder(pvt, signal)
plotshape(buyAlert and highlightCrossovers ? pvt : na, title="Crossover", location=location.absolute, style=shape.circle, size=size.tiny, color=color.green, transp=0)
plotshape(sellAlert and highlightCrossovers ? pvt : na, title="Crossunder", location=location.absolute, style=shape.circle, size=size.tiny, color=color.red, transp=0)
alertcondition(buyAlert, title="Alert: Buy", message="Buy
Symbol: {{exchange}}:{{ticker}}
Price: {{close}}")
alertcondition(sellAlert, title="Alert: Sell", message="Sell
Symbol: {{exchange}}:{{ticker}}
Price: {{close}}")
2024-12-06
699
글번호 186004
답변완료
수식전환 요청드립니다.
안녕하세요.
아래 트레이딩뷰 지표를 예스트레이더 형식으로 전환 부탁드립니다.
감사합니다.
//@version=3
study("Better RSI")
cycler = na
myPeriod = input(defval = 14, type=integer, title="Period")
src = input(close, type=source)
showCycler = input(true,'Show cycler?')
lvl = input(50, 'Cycler level on plot')
myRSI = rsi(src, myPeriod)
firstcolor = color(white,10)
secondcolor = color(orange,50)
thirdcolor = gray
h30 = hline(30,color=firstcolor,linestyle=dashed,title='Low')
h70 = hline(70,color=firstcolor,linestyle=dashed,title = 'High')
h20 = hline(20, color=secondcolor,linestyle = solid,title='Second low')
h80 = hline(80, color=secondcolor,linestyle=solid,title='Second high')
//h50 = hline(50, color=orange, title= 'Mid line')
h40 = hline(40, color = thirdcolor, linestyle = dashed,title = '40 line')
h60 = hline(60, color = thirdcolor, linestyle = dashed, title = '60 line')
//fill(h30,h20,red,transp=80, title='Oversold color')
//fill(h80,h70,red,transp=80, title='Overbought color')
fill(h30,h70,fuchsia,transp=90, title= 'Background color')
//cond =? red:white
RSIplot = plot(myRSI,color=white,linewidth=2,transp=0,title="RSI")
plot(myRSI >= 70 or myRSI<= 30? myRSI:na,style = linebr,linewidth=3,color=red,transp = 0, title = 'Oversold color')
//cycler
cycler := if myRSI > 69 or myRSI< 31
a = if myRSI > 69
1 // bullish
else
2 // bearish
a
else
b = if (nz(cycler[1]) == 1 and myRSI < 39) or (nz(cycler[1]) == 2 and myRSI > 61)
0
else
nz(cycler[1])
b
mycolor = if cycler == 0
white
else
c = if cycler == 1
lime
else
red
c
plot(showCycler? lvl:na, style = line, color = mycolor, transp = 30, linewidth=2, title = 'Cycler colors')
2024-12-06
743
글번호 186003
살빼고싶다 님에 의해서 삭제되었습니다.
2024-12-06
37
글번호 186002