커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7626
글번호 230811
답변완료
시스템식 부탁드립니다
시스템식 작성에 도움을 주셔서 감사드립니다.
A.200틱챠트 지수이동평균(900)기준 돌파매매
1.매수조건
200틱챠트에서 현재봉이 지수이동평균 900 이평선 위에 있고
지수이동평균 5선이 20선을 상향돌파하면
매수및 매수청산 (매도금지)
2.매도조건
200틱챠트에서 현재봉이 지수이동평균 900 이평선 아래에 있고
지수이동평균 5선이 20선을 하향돌파하면
매도및 매도청산 (매수금지)
2012-10-24
274
글번호 55874
답변완료
청산조건 추가요청합니다.
항상 감사드립니다...
1.아래식에서 청산조건을 추가코져 합니다
30분20이평기준 200틱챠트 (5/20) 돌파매매식
매수청산추가 200틱챠트에서 지수이동평균 200선을 하향돌파하면 청산
매도청산추가 200틱챠트에서 지수이동평균 200선을 상향돌파하면 청산
지수이동평균은 외부변수로 부탁드립니다.
2.아래식을 시스템으로 돌려보면 30분 20이평기준은은 신호가 정상적으로 나오는데
30분 200 이평으로 고쳐서 돌려보면 시스템 신호가 나오질 않습니다
혹시 수정가능한가요...
Inputs: Length1(5),Length2(20),Atime(30),Length3(20);
Variables: P1(0),P2(0),P3(0),TRIma1(0),TRIma2(0),TRIma3(0);
var : cnt(0),count(0),sum(0),sum1(0);
Array : CC[100](0),mav[100](0);
TRIma1 = ema(c, Length1);
TRIma2 = ema(c, Length2);
p3 = Ceiling((Length3 + 1) * .5);
var1 = TimeToMinutes(stime)%Atime;
if dayindex() == 0 or (var1 < var1[1] and stime > stime[1]) Then{
for cnt = 1 to 99{
CC[cnt] = CC[cnt-1][1];
Mav[cnt] = mav[cnt-1][1];
}
}
CC[0] = C;
sum = 0;
for count = 0 to P3-1{
sum = sum+CC[count];
}
mav[0] = sum/P3;
sum1 = 0;
for count = 0 to P3-1{
sum1 = sum1+mav[count];
}
TRIma3 = sum1/P3;
if C > TRIma3 Then{
if crossup(TRIma1,TRIma2) Then
buy();
if CrossDown(TRIma1,TRIma2) Then
exitlong();
}
if C < TRIma3 Then{
if CrossDown(TRIma1,TRIma2) Then
Sell();
if CrossUp(TRIma1,TRIma2) Then
ExitShort();
}
2012-10-24
257
글번호 55873
답변완료
식 부탁 드립니다.
관리자님 수고 많으십니다.
Stop Loss 가 아니고, 선물식에서
매입가 대비 1 % 하락시 매도
매도가 대비 1% 상승시 매수
부탁 드립니다.
2012-10-23
251
글번호 55872
답변완료
문의~~
수고하십니다~
예스4.0 설치후 실행시 에러가 발생하는데요
재설치해도 안되고 원인을 모르겠네요~~
확인 부탁드립니다~~
2012-10-23
355
글번호 55871
답변완료
문의드립니다.
input : 날짜(20121023), 일평균거래량(200000), 봉거래량(50000);
var : cnt(0),sum(0),idx(0),mav(0), max_v(0), prev_vol(0);;
if sdate == 날짜 Then {
if sdate != sdate[1] Then {
Condition1 = false;
max_v = 0;
for cnt = 1 to 100 {
if sdate[cnt] == sdate[1] and stime < 150000 Then{
if V[cnt] > max_v then
max_v = v[cnt];
}
}
}
if V > max_v
and C > O
and stime < 150000 Then
Condition1 = true;
if stime == 150000 and Condition1 == true Then
find(1);
}
위의 검색식에 대해 날짜에 맞는 종목을 검색을 하였으면 합니다.
장이 끝난후에 분봉으로 해당 검색식을 실행하면 종목이 나타나는데
날짜를 당일로 지정하면 종목들이 검색되어 나오는데, 특정일자(가령 어제나 그제)를
지정하면 종목이 검색이 되지를 않습니다.
당일이 아닌 특정일자로 해당 조건식이 만족하는 종목이 나오도록 수정하고 싶습니다.
감사합니다.
2012-10-23
289
글번호 55870
답변완료
26795 재문의합니다.
안녕하세요. 지난번 수식 감사합니다.
그런데 이평선과 같이 넣어보니 사각형수평표현이
이평의 교차점에서 생기지 않고 교차점의 상하캔들에서 생깁니다.
아래 수식에서 지난번 첨부했던 그림에서처럼 이평의 교차점에서 생긴 사각형이
다음 이평의 교차점이 나올때까지 표현되었으면 합니다...
input : P1(30),P2(60),W1(2),W2(2);
var1 = wma((O+H+L)/3,P1);
var2 = wma((O+H+L)/3,P2);
if C > var1 Then
plot2(var1,"60",RGB(255,70,70),def,W1);
Else
plot2(var1,"60",RGB(70,70,255),def,W1);
if C > var2 Then
plot3(var2,"120",RGB(255,70,70),def,W2);
Else
plot3(var2,"120",RGB(70,70,255),def,W2);
if crossup(var1,var2) Then
plot4(var1,"CrossUp");
if CrossDown(var1,var2) Then
plot5(var1,"CrossDown");
2012-10-23
295
글번호 55869
답변완료
수식질문입니다.
저번에 답변 큰 도움되었고, 감사드립니다.
질문 드립니다.
1분봉차트상 신최고가에서 1p간격으로 음봉으로 하향돌파시매도,
신최저가에서1p간격으로 양봉으로 상향 돌파시 매수
(여기에서 1p인트간격으로만 하는것이아니라, 1p지점,2p지점,3p지점 이런식으로 계속매매)
익절 0.5, 손절 -0.7 로 매매를합니다.
수식작성 부탁드립니다. 감사합니다.
2012-10-23
293
글번호 55868
답변완료
문의드립니다.
input:period1(5),period2(20),period3(60),period4(120),period5(200);
var : 이평이격1(0),이평이격2(0),이평이격3(0),이평이격4(0),VALUE(0);
이평이격1=ma(c,period1)/ma(c,period2)*100;
이평이격2=ma(c,period2)/ma(c,period3)*100;
이평이격3=ma(c,period3)/ma(c,period4)*100;
이평이격4=ma(c,period4)/ma(c,period5)*100;
if 이평이격1<=100 and 이평이격2>=100 and 이평이격3>=100 and 이평이격4>=100 and 이평이격3>이평이격4 and 이평이격4>이평이격2 and 이평이격2>100-이평이격1+100 then
value = 1;
Else
value = 0;
find(Value);
위와 같은 의미로 조건검색을 하면 20~30종목은 검색이 되어야 할텐데 0~2종목 밖에 검색이 안됩니다. if문 이하 조건이 문제가 있는지 살펴봐 주시기 바랍니다.
2012-10-23
401
글번호 55867
답변완료
문의드립니다
아래수식으로 출력해봤는데 검색식과 위치가 다르게 나옵니다
input : Period(20);
if C <= lowest(L,Period)+PriceScale*5 Then
sell();
if C >= highest(H,Period)-PriceScale*5 Then
buy();
2012-10-23
301
글번호 55853