커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1408
글번호 230811
답변완료
문의 드립니다.
아래 식에서 신호발생 후 바로 매매하는 것이 아니라 틱수를 설정하여 매매하고자 합니다.
예를 들어 신호 발생 후 10틱 위에서 매수 진입하고
매도 경우는 신호 발생 후 10틱 아래서 매도 진입하도록 부탁드립니다.
신호 발생 후 원하는 매매가를 설정할 수 있도록 추가 부탁드립니다.
Input : Period(12);
value1 = TRIX(Period);
If CrossDown(value1, 0) and C > DayOpen(0) Then
{
Buy();
}
Input : Period(12);
value1 = TRIX(Period);
If CrossUp(value1, 0) and C < DayOpen(0) Then
{
Sell();
}
2024-05-22
1057
글번호 179885
답변완료
문의 드립니다.
Input : a(1), length(10),크기(15);
var : truehighv(0),TrueLowv(0),TrueRangev(0),xatr(0),nLoss(0),src(0) ;
var : xClose(0),xOpen(0),xHigh(0),xLow(0);
var : xATRTrailingStop(0),poss(0), emav(0), ab(False), be(False),tx(0) ;
var : dir(0) ;
if index == 0 then
{
xOpen = open;
xClose = (O+H+L+C)/4;
xHigh = MaxList( high, xOpen, xClose);
xLow = MinList( low, xOpen,xClose);
}
else
{
xClose = (O+H+L+C)/4;
xOpen = (xOpen [1] + xClose [1])/2 ;
xHigh = MaxList(High, xOpen, xClose) ;
xLow = MinList(Low, xOpen, xClose) ;
}
////////
If xClose[1] > xHigh then
TrueHighv = xClose[1];
else
TrueHighv = xHigh;
If xClose[1] < xLow then
TrueLowv = xClose[1];
else
TrueLowv = xLow;
TrueRangev = TrueHighv - TrueLowv;
xatr = ma(TrueRangev,length);
nLoss = a * xatr ;
##########
src = xClose ;
xATRTrailingStop = 0.0 ;
xATRTrailingStop = iff(src > xATRTrailingStop[1] and src[1] > xATRTrailingStop[1],
max(xATRTrailingStop[1], src - nLoss),
iff(src < xATRTrailingStop[1] and src[1] < xATRTrailingStop[1],
min(xATRTrailingStop[1],src + nLoss),
iff(src > xATRTrailingStop[1], src - nLoss, src + nLoss)));
poss = 0 ;
poss = iff(src[1] < xATRTrailingStop[1] and src > xATRTrailingStop[1], 1,
iff(src[1] > xATRTrailingStop[1] and src < xATRTrailingStop[1], -1, poss[1])) ;
emav = ema(src,1);
if crossup(emav, xATRTrailingStop) Then
ab = true ;
Else
ab = False;
if crossup(xATRTrailingStop, emav) Then
be = true ;
Else
be = False;
////////////
dir = iff(src > xATRTrailingStop and ab == true , 1 ,iff( src < xATRTrailingStop and be == true , -1 , dir));
Plot1( dir);
if dir == 1 and dir[1] == -1
Then
{
tx = Text_New(sDate,sTime,low,"▲");
Text_SetStyle(tx,2,0);
Text_SetSize(tx, 크기);
Text_SetColor(tx,black);
}
if dir == -1 and dir[1] == 1
Then
{
tx = Text_New(sDate,sTime,high,"▼");
Text_SetStyle(tx,2,1);
Text_SetSize(tx, 크기);
Text_SetColor(tx,black);
}
위 수식을 시스템식으로 좀 바꿔주세요.
2024-05-22
1000
글번호 179884
답변완료
재검토 부탁드립니다.
안녕하세요.
87355번 수식수정 감사합니다.
그런데 잘못된 결과가 나옵니다.
1개전봉부터 30개봉까지의 거래량으로 최고거래량보다 현재봉의 거래량이 더 커야 하는데
2023년 1월봉을 기준으로 해서 검색을 해보면 첨부하는 종목이 A보다 B가 더 커서 조건 불만족인데 검색이 됩니다.
다시 재검토 부탁드립니다.
2024-05-22
929
글번호 179881
답변완료
부탁 드립니다.
1번이라는 고점이 만들어지고 (5일선 언덕), 언덕을 만든 마지막 양봉 종가 =>A
1번 보다 작은 저점을 만든 후, (조정이 있었다는 것) => 2번 이라는 저점
2번의 저점을 만든 후, 다시
1번의 고점을 돌파를 한다. 이후
조정시 1번 고점 까지 눌림시. 그 5일선 언덕의 양봉 종가 5% 부근 에서 검색을
하고 싶습니다.
2024-05-22
1068
글번호 179880
답변완료
수식 부탁드립니다.
아래 수식에서 추가 할려고 합니다.
현재가가 5분봉 5선 아래 있을때는 매수 신호가 나오지 않게하고
5분봉 5선 위에 있을때는 매도 신호가 나오지 않게 할려고 합니다.
var : mav1(0),mav2(0),mav3(0),T1(0),T2(0),T3(0);
mav1 = ma(c,5);
mav2 = ma(c,20);
mav3 = ma(c,60);
if mav1 > mav1[1] Then
T1 = 1;
if mav1 < mav1[1] Then
T1 = -1;
if T1 == 1 and T1[1] != 1 Then
var1 = 0;
// if T1 == 1 and C > O and (C+O)/2 >= mav1 and mav2 > mav2[1] and mav3 > mav3[1] Then{ 60이평포함
if T1 == 1 and C > O and (C+O)/2 >= mav1 and mav2 > mav2[1] and mav1 > mav2 Then{
var1 = var1+1;
if var1 == 1 Then
buy("5매수");
}
if T1 == -1 and T1[1] != -1 Then
var2 = 0;
// if T1 == -1 and C < O and (C+O)/2 <= mav1 and mav2 < mav2[1] and mav3 < mav3[1] Then{ 60이평포함
if T1 == -1 and C < O and (C+O)/2 <= mav1 and mav2 < mav2[1] and mav1 < mav2 Then{
var2 = var2+1;
if var2 == 1 Then
sell("5매도");
}
2024-05-22
1049
글번호 179874
답변완료
수식 부탁드려요~
input : Period(20),Period1(120),D1(2),D2(1),이평(200);
VAR : BB20UP(0),BB120UP(0),MA200(0);
BB20UP=MA((C+H+L)/3,Period)+D1*std((C+H+L)/3,Period);
BB120UP=MA((C+H+L)/3,Period1)+D2*std((C+H+L)/3,Period1);
MA200=MA(C,이평);
IF C>=MA200 && CROSSUP(BB20UP,BB120UP) TheN
Find(1);
안녕하세요~
위의 검색식에
아래 2개의 키움수식중 한개라도 만족될때만 검색되도록 수식전환 도움요청합니다.
미리 감사인사 드립니다
1)
A=PREDAYHIGH() - PREDAYLOW();
B=DAYOPEN()+A*0.5;
B1=RSI(2);
A1=LinearRegressionValue(C,50,0);
A2=LinearRegressionValue(A1,50,0);
eq= A1-A2;
VL =A1+eq;
CROSSUP(C,B) AND B1>50 AND C>VL
2)
양=C>O;
음=C<O;
도=C==O;
Hc=CountSince((양(1) or 도(1)) && 음, 음);
A=Valuewhen(1, Hc>=연속봉 && 음(1) && 양, Highest(H(1), Hc));
CROSSUP(C,A)
**지표변수** 연속봉 : 3
2024-05-23
1029
글번호 179872
답변완료
질문드립니다.
안녕하세요..
Data1을 KTOP30지수로하고 Ktop30 거래량을 표기하고자 합니다.
아래 수식으로 해도 되는지요?
여쭈어봅니다.
즐거운하루 되세요.
==============================
var : sum(0),v1(0,Data1),value(0,Data1),hh(0,Data1),ll(0,Data1);
if data1(Bdate != Bdate[1]) Then
{
sum = 0;
}
sum = sum + (Upvol-DownVol);
value = sum+Data2(c);
if data1(Bdate != Bdate[1]) Then
{
v1 = value;
hh = value;
ll = value;
}
Else
{
if value > hh Then
hh = value;
if value < ll Then
ll = value;
}
if currentDate == sDate Then
{
plot1(v1,"첫봉종가");
Plot2(value,"당일실매수거래량");
Plot3(hh,"최고");
plot4(ll+(hh-ll)*0.236,"23.6%");
plot5(ll+(hh-ll)*0.382,"38.2%");
plot6(ll+(hh-ll)*0.500,"50.0%");
plot7(ll+(hh-ll)*0.618,"61.8%");
plot8(ll+(hh-ll)*0.764,"76.4%");
plot9(ll+(hh-ll)*0.618,"61.8%");
plot10(ll,"최저");
}
2024-05-22
847
글번호 179870
답변완료
재검토 부탁드립니다.
안녕하세요.
문의 수식 87322 번호에 대한 수식 작성해주신 것 조건을 아무리 바꾸어도 검색되는 종목이 전혀 나오지 않습니다.
재검토 부탁드립니다.
그리고 과거 데이터를 검토해보기 위해서 기준날짜를 변수로 변경할 수 있도록 함께 부탁드렸는데 그것은 빠져있네요.
input : 연도(2020),Month(2); 가능하면 이런식으로 부탁드립니다.
안되면 input : ndate(20181203); 이런 방식으로라도 기준 날짜를 변수로 수정할 수 있도록 부탁드립니다.
2024-05-22
869
글번호 179869
답변완료
문의 드립니다.
주가가 시가 위에 있고 5이평 20이평 정배열이면서 주가가 5이평 아래서 위로 돌파 매수
청산은 위 조건에서 5이평 아래로 이탈 시 매도 청산완료
주가가 시가 아래에 있고 5이평 20이평 역배열이면서 주가가 5이평 위에서 아래로 돌파 매도
청산은 위 조건에서 5이평 위로 돌파 시 매수 청산완료
부탁드립니다.
2024-05-22
809
글번호 179868