커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1463
글번호 230811
답변완료
85639 번호 질의번호에 대한 내용입니다..
85639번호에대한 답변감사합니다...
근데 아래조건 번호가 맞지않아서요...
Condition1 = sDate == sDate[1] and CrossUp(C,DayOpen) and C[1] <= DayOpen*0.995 and C[1] >= DayOpen*0.98;
Condition1 = sDate == sDate[1] and C >= DayOpen*1.005 and C[1] <= DayOpen*1.02;
위수식을 아래처럼 각각되는게 맞지않을까요?
Condition1 = sDate == sDate[1] and CrossUp(C,DayOpen) and C[1] <= DayOpen*0.995 and C[1] >= DayOpen*0.98;
Condition2 = sDate == sDate[1] and C >= DayOpen*1.005 and C[1] <= DayOpen*1.02;
2024-01-31
831
글번호 176292
답변완료
수식문의 드립니다.
예를 들어 (n)일 전에 60일 최고거래량에 양봉 20%이상인 기준봉이 하락하여
당일 기준봉의 시가나 저가에 1%이내로 근접하는 종목을 검색하는 식을 만들고자 합니다.
그리고 일봉과 당일 3분봉에서도 검색이 되었으면 합니다. 부탁드립니다.
2024-01-31
745
글번호 176291
답변완료
문의드립니다
input : P1(7),P2(14),P3(21);
var : R1(0),R2(0),R3(0),TX(0);
R1 = RSI(P1);
R2 = RSI(P2);
R3 = RSI(P3);
Plot1(R1, "RSI1");
Plot2(R2, "RSI2");
Plot3(R3, "RSI3");
PlotBaseLine1(30, "기준선 30");
PlotBaseLine2(50, "기준선 50");
PlotBaseLine3(70, "기준선 70");
PlotBaseLine4(40, "기준선 40");
PlotBaseLine5(60, "기준선 60");
Condition1 = R1 > R2 and R2 > R3;
Condition2 = R1 < R2 and R2 < R3;
if Condition1 == true and Condition1 != Condition1[1] Then
{
TX = Text_New_Self(sDate,sTime,R3,"▲");
Text_SetStyle(TX,2,0);
Text_SetColor(TX,Red);
}
if Condition2 == true and Condition2 != Condition2[1] Then
{
TX = Text_New_Self(sDate,sTime,R3,"▼");
Text_SetStyle(TX,2,1);
Text_SetColor(TX,Blue);
}
.................................................................
상기지표에서 R1선이 R2,R3선을 상향 돌파하면 매수신호를
R1선이 R2,R3선을 하향 돌파하면 매도신호를 나오게 해주세요
그리고 예비신호때 부터 경보음이 울리게 해주세요
감사합니다
2024-01-31
961
글번호 176288
답변완료
수식문의 드립니다.
일봉에서 (120일 최고거래량 당일의 종가나 고가)를 돌파하는 수식 부탁드립니다.
그리고 분봉에서 3분봉에서 120일 최고거래량의 고가를 돌파하는 수식도 같이 부탁드립
니다.
2024-01-31
791
글번호 176281
zer0hero 님에 의해서 삭제되었습니다.
2024-01-31
6
글번호 176280
답변완료
문의
답변 수식에서 결과값이 나오지 않는 상황이 있습니다.
data2에 모든 차트를 연결하면 값이 나오는데 이상하게
KP외국인주식순매수금액과 KP개인주식순매수금액만 결과값이 나오지 않습니다.
KP외국인선물순매수금액과 KP개인선물순매수금액은 결과값이 나옵니다.
23년8월1일부로 선물거래가 084500에 시작된 것의 영향일까요?
data1(Bdate)==data2(Bdate) 이 조건을 넣어도 값이 나오지 않는데 수식 살펴주십시요.
항상 고맙습니다.
*******************************************************************************
안녕하세요
예스스탁입니다.
수식에 중괄호가 빠져있었습니다.
수정한 식입니다.
input : ntime(084500);
input: 연속봉(2),연속small(0.00),연속large(1.00);
var : Tcond(False,Data2),ii(0,Data2);
if data2(Bdate != Bdate[1]) Then
Tcond = False;
if Data2((sdate != sdate[1] and stime >= ntime) or
(sdate == sdate[1] and stime >= ntime and stime[1] < ntime)) Then
{
Tcond = true;
ii = 0;
}
if tcond == true Then
{
ii = ii +1;
if ii >= 연속봉 and data2(accumN(iff(C>O,1,0),연속봉) == 연속봉 and ExitDate(1) != sdate and AccumN(abs(C-O), 연속봉) >= 연속small and AccumN(abs(C-O), 연속봉) < 연속large) then
buy();
}
즐거운 하루되세요
> 좌오비우오비 님이 쓴 글입니다.
> 제목 : 문의
> 답변 수식으로 시뮬레이션 해보았습니다.
연속봉 1만 결과가 나오고
나머지 연속봉2 이상에서는 결과가 나오지 않습니다.
최초 요청수식은 각각의 연속봉에서 결과가 나온 수식입니다.
살펴주십시요.
2024-01-31
788
글번호 176274
답변완료
수식문의 드림니다
수식문의 드림니다
문1)
5분봉에서
당일장 시작 후 현재가가 전일종가대비 8%이상 상승하고
당일 시가 대비 5프로 이상 상승하고
거래량이 1봉전 거래량 대비 300프로 이상 상승하고
5분평균 거래량대비 500프로 이상 상승하고
당일장 이후에 형성된 거래량 20이평의 최고가와 최저가의 중간값의 150프로 이상을
상향돌파 하면 매수
문2)
5분봉에서
당일장 시작후 5분봉상의 거래량이 거래량200이평의 8배보다 크고 주가가 양봉이면
이때의 양봉을 기준봉으로 하고
기준봉의 100개봉 이내에서 이 기준봉의 양봉종가를 상향돌파 하면 매수
2024-01-31
981
글번호 176268
답변완료
안녕하세요
항상 큰 도움을 주셔서 감사합니다.
첨부된 지표는 RCI 보조지표 입니다.
그린선이 빨간선 골든크로스 하는 당일 종목검색이 될 수 있도록 도움 주셨으면
감사하겠습니다.
input : n1(5),n2(20),obLevel1(60),obLevel2(53),osLevel1(-60),osLevel2(-53);
var : ap(0),esa(0),dd(0),ci(0),tci(0),wt1(0),wt2(0);
ap = (h+l+c)/3 ;
esa = ema(ap, n1);
dd = ema(abs(ap - esa), n1);
ci = (ap - esa) / (0.015 * dd);
tci = ema(ci, n2);
wt1 = tci;
wt2 = ma(wt1,4);
plot1(0,"0",GRAY);
plot2(obLevel1,"obLevel1",red);
plot3(osLevel1,"osLevel1",green);
plot4(obLevel2,"obLevel2",red);
plot5(osLevel2,"osLevel2",green);
plot6(wt1,"wt1",green);
plot7(wt2,"wt2",red);
plot8(wt1-wt2,"wt1-wt2",blue);
2024-01-31
1135
글번호 176265
답변완료
문의
첨부파일은 아래수식의 진입결과입니다.
p1 337, p2 337.5 로 진입가격을 세팅했는데 상승갭 발생이 없을 때는 그 가격대로 체결하지만
상승갭 발생하면 세팅가격과는 다르게 시가로 p1,p2가 동시에 체결합니다.
전일 마지막봉과 무관하게 당일 발생봉부터 계산하여 세팅가격대로 체결할 수 있게 정정해 주시기 바랍니다.
**********************************************************************************
안녕하세요
예스스탁입니다.
IsEntryName은 해당 포지션의 첫진입의 이름입니다.
또한 해당함수가 특정이름의 청산을 의미하지 않습니다.
청산시 특정이름을 청산하고자 하시면
청산함수에 진입명을 지정하시면 됩니다.
input :p1(337),라인1(5);
input :st(120000),p2(337.5),라인2(7.5);
var : cnta(0,Data1),cntb(0,Data1);
if Bdate != Bdate[1] Then
{
cnta = 0;
cntb = 0;
}
if crossup(c,p1) and cnta < 1 then
{
cnta = cnta+1;
Buy("a");
}
if stime>=st and crossup(c,p2) and cntb < 1 then
{
cntb = cntb+1;
Buy("b");
}
if MarketPosition == 1 Then
{
var1 = data2(Floor(DayOpen/라인1)*라인1);
value1 = var1+라인1;
Value2 = var1;
if Data2((Bdate == Bdate[1] and C > value1)) or Data2((Bdate == Bdate[1] and Crossup(c,Value1))) Then
ExitLong("L1",OnClose,Def,"a");
var2 = data3(Floor(DayOpen/라인2)*라인2);
value2 = var2+라인2;
Value3 = var2;
if Data3((Bdate == Bdate[1] and C > value2)) or Data3((Bdate == Bdate[1] and Crossup(c,Value2))) Then
ExitLong("L2",OnClose,Def,"b");
}
즐거운 하루되세요
2024-01-31
951
글번호 176263