커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4382
글번호 230811
face 님에 의해서 삭제되었습니다.
2018-05-19
2
글번호 119054
답변완료
부탁드립니다.
도움 주심에 감사 드립니다.
1)예를들어
과거 100봉전의 종가와
과거 200봉전의 종가를 연결하는선(외부변수)
2)과거의 두개 일시를 지정하고
두 지점을 연결하는선 부탁 드립니다.
참고 수식)
if sdate == var99 and time >= var9 and time <=var91 Then{
value1 = sdate;
value2 = time;
value3 = C;
}
if sdate == var88 and time >= var8 and time <= var81 Then{
value4 = sdate;
value5 = time;
value6 = C;
3)변환 부탁드립니다.
s=sum(1);
음봉=c<=o;
양봉=c>o;
a1=valuewhen(1,음봉,c);
s1=valuewhen(1,음봉,s);
a2=valuewhen(1,양봉(1) && 음봉,o);
s2=valuewhen(1,양봉(1) && 음봉,s);
LL=valuewhen(1,S1-S2>=연속봉수,A1);
HH=valuewhen(1,S1-S2>=연속봉수,A2);
(HH-LL)/4*LL
2018-05-22
164
글번호 119053
답변완료
수식문위드립니다
1..macd 가 기준선 0선위에서 골든크로스 상태면 음봉종가에 매수
Macd 가 기준선 0선 아래서 데드크로스면 양봉종가에 매도신호
2..일목군형표 기준선 기준으로 위에 지수가 있으면 음봉종가에 매수
기준선 아래종가가 있으면 양종종가에 매도신호
부탁드립니다
감사드립니다
2018-05-19
178
글번호 119052
답변완료
손절 익절
익절 30 손절15를 시스템에서 구현 하고 싶습니다.
2018-05-18
191
글번호 119048
답변완료
검색식 문의드립니다.
1. 다음과 같은 식으로 종목 검색을 했는데,
"여기에 최근 100봉 이내에서 동일한 조건으로 검색된 적이 있는 종목은 제외"라고
조건을 추가하고 싶습니다.
If C > 1000 and
M > 100000000 and
V > V[1] and C > O and
H >= Highest(H, 10) and
V >= NthHighest(2,V, 10) and
AccumN(iff(ma(C,20)>Ma(C,60),1,0),20)<20 and
AccumN(iff(ma(C,60)>Ma(C,120),1,0),20)<20 Then
value1 = C;
Else
value1 = 0;
Find(Value1);
2. 매도를 위해 종목검색식을 만들었는데 상기 검색조건으로 매수한 종목들을 대상으로만 일괄로 매도조건을 설정해서 검색 또는 자동매도할 수 있나요? 아니면 이미 매수한 종목들을 대상으로만 매도검색 조건을 설정 또는 자동매도할 수 있는지 궁금합니다.
예스랭귀지만 사용했는데 예스스팟으로 구현 가능하면 그걸로 도전해 보겠습니다.
항상 감사드립니다.
2018-05-18
209
글번호 119033
답변완료
예수금 가져오기 재질문
아래에서 답변을 주셨는데, 어려워서 이해를 하지 못했습니다.
수식을 만들어 주시면, 실제로 사용하면서 이해를 해봐야할 것 같습니다.
예전에 만들어 주신 아래의 수식으로, 예수금을 수동으로 입력한 후 일정 시간에 분할 매수하고 있습니다.(매도는 수동으로 익일 장시작 때 함)
input : 기준자산(1000000);
var : ET1(0),ET2(0),ET3(0),ET4(0),ET5(0),ET6(0),ET7(0),ET8(0),ET9(0),ET10(0),BT1(0),BT2(0),BT3(0),BT4(0),BT5(0),BT6(0),BT7(0),BT8(0),BT9(0),BT10(0);
if Bdate != Bdate[1] Then{
if stime < 100000 Then
{
ET1 = 90000;
ET2 = 90100;
ET3 = 90200;
ET4 = 90300;
ET5 = 90400;
ET6 = 90500;
ET7 = 90600;
ET8 = 90700;
ET9 = 90800;
ET10 = 90900;
BT1 = 142500;
BT2 = 142600;
BT3 = 142700;
BT4 = 142800;
BT5 = 142900;
BT6 = 143000;
BT7 = 143100;
BT8 = 143200;
BT9 = 143300;
BT10 = 143400;
}
else
{
ET1 = 100000;
ET2 = 100100;
ET3 = 100200;
ET4 = 100300;
ET5 = 100400;
ET6 = 100500;
ET7 = 100600;
ET8 = 100700;
ET9 = 100800;
ET10 = 100900;
BT1 = 142500;
BT2 = 142600;
BT3 = 142700;
BT4 = 142800;
BT5 = 142900;
BT6 = 143000;
BT7 = 143100;
BT8 = 143200;
BT9 = 143300;
BT10 = 143400;
}
}
if stime == BT1 or (stime > BT1 and stime[1] < BT1) Then{
var1 = Floor(기준자산*0.1/C);
buy("b1",OnClose,def,var1);
}
if stime == BT2 or (stime > BT2 and stime[1] < BT2) Then{
var2 = Floor(기준자산*0.1/C);
buy("b2",OnClose,def,var2);
}
if stime == BT3 or (stime > BT3 and stime[1] < BT3) Then{
var3 = Floor(기준자산*0.1/C);
buy("b3",OnClose,def,var3);
}
if stime == BT4 or (stime > BT4 and stime[1] < BT4) Then{
var4 = Floor(기준자산*0.1/C);
buy("b4",OnClose,def,var4);
}
if stime == BT5 or (stime > BT5 and stime[1] < BT5) Then{
var5 = Floor(기준자산*0.1/C);
buy("b5",OnClose,def,var5);
}
if stime == BT6 or (stime > BT6 and stime[1] < BT6) Then{
var6 = Floor(기준자산*0.1/C);
buy("b6",OnClose,def,var6);
}
if stime == BT7 or (stime > BT7 and stime[1] < BT7) Then{
var7 = Floor(기준자산*0.1/C);
buy("b7",OnClose,def,var7);
}
if stime == BT8 or (stime > BT8 and stime[1] < BT8) Then{
var8 = Floor(기준자산*0.1/C);
buy("b8",OnClose,def,var8);
}
if stime == BT9 or (stime > BT9 and stime[1] < BT9) Then{
var9 = Floor(기준자산*0.1/C);
buy("b9",OnClose,def,var9);
}
if stime == BT10 or (stime > BT10 and stime[1] < BT10) Then{
var10 = Floor(기준자산*0.1/C);
buy("b10",OnClose,def,var10);
}
"기준자산"에 주식계좌의 예수금이 자동으로 입력되게 수식 수정 부탁드립니다.
감사합니다.
2018-05-18
170
글번호 119032
답변완료
지표문의요~~
항상 감사합니다
매수신호인데요
su = sum( if( c>c(1), ( c - c(1) ),0 ), 20 );
sd = sum( if( c<c(1), ( c(1) - c ),0 ), 20 );
cm = 100 * ( su - sd ) / ( su + sd );
csignal = ma( cm, 9 );
rsi14 = rsi( 14 );
crossup(cm, -50 ) and
cm > csignal and crossup(rsi14, 30 )
이거랑 정반대로
매도신호 만들수 있나요?
2018-05-18
206
글번호 119031
답변완료
문의 드립니다.
수고 많으십니다. 지표작성 문의드리고자 글을 남깁니다.
구현하고자 하는 지표는
10 이평 기준으로... 봉 종가가 10 이평을 상향돌파 하거나 하향이탈할때 10 이평 위 아래 0.5p 와 1p 를 수평선으로 구현하는 수식 부탁드립니다.
예로
1)봉이 10 이평 위에서 진행하다가 봉 종가가 10이평을 이탈했을때.. 이탈되는 10 이평값 아래
0.5p 구간과 1p 구간을 수평선으로(10 이평 돌파되기전까지만 수평선 구현, 돌파시 10 이평
아래 수평선 사라지면서 10 이평 위 0.5p 와 1p 수평선이 생김.)
2)봉이10 이평 아래서 진행하다가 봉 종가가 10 이평을 돌파했을때, 돌파시 10 이평값 위
0.5p 구간과 1p 구간을 수평선으로.(10 이평 이탈될때까지 수평선 구현, 다시금 이탈시 10
이평 위 수평선 사라지면서 10 이평 아래 0.5p 와 1p 수평선이 생김.)
결론적으로 봉이 10 이평 cross up 된 후부터는 10 이평 위 0.5 / 1p 수평선만 구현하면 되고
굳이 10 이평 아래 0.5 / 1p 선은 볼 필요가 없습니다.
그러다가 다시금 10 이평 cross down 된 후부터는 10 이평 아래 0.5 / 1p 수평선만 구현하면 되고 굳이 10 이평 위 0.5 / 1p 선은 볼 필요가 없습니다.
부탁드리겠습니다.
2018-05-18
195
글번호 119023
답변완료
array 문의 드립니다.
안녕하세요
거래량을 배열에 저장하고...
그 배열값에서 같은 값을 가지고 있는 값만 찾을 수 있나요?
가령 5분봉에서 1000주 거래된 봉만 찾는게 가능할까요?
2018-05-18
193
글번호 119022