커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8142
글번호 230811
답변완료
재질문 드립니다
안녕하세요
재질문 드립니다
아래는 애써 올려주신 수식인데요
제생각과는 다르게 나와서 재질문 드립니다
만들어주신 수식으로 해보니
구현이 제대로 안됩니다
그전날과 연결이 안되는구간이 생기고
1분 분봉에서 현재가가 20선과 5분 20선 10분 10선 모두 골드일때 소리와 텍스트
1분 분봉에서 현재가가 20선과 5분 20선 10분 10선 모두 데드 날때까지 유지
유지시 10분마다 소리와 텍스트
1분 분봉에서 현재가가 20선과 5분 20선 10분 10선 모두 데드일때 소리와 텍스트
1분 분봉에서 현재가가 20선과 5분 20선 10분 10선 모두 골드 날때까지 유지
유지시 10분마다 소리와 텍스트
언제나 감사드립니다
input : P1(20);
input : T2(5),P2(20);
input : T3(10),P3(10);
var : mav1(0),TF2(0),TF3(0),cnt(0),sum2(0),sum3(0),mav2(0),mav3(0),T(0);
Array : C2[100](0),C3[100](0);
mav1 = ma(c,P1);
TF2 = TimeToMinutes(stime)%T2;
if dayindex == 0 or (TF2 < TF2[1] and stime > stime[1]) Then{
for cnt = 1 to 99{
C2[cnt] = C2[cnt-1][1];
}
}
C2[0] = c;
TF3 = TimeToMinutes(stime)%T3;
if dayindex == 0 or (TF3 < TF3[1] and stime > stime[1]) or stime == 151500 Then{
for cnt = 1 to 99{
C3[cnt] = C3[cnt-1][1];
}
}
C3[0] = c;
if C2[P2-1] > 0 and C3[P3-1] > 0 Then{
sum2 = 0;
for cnt = 0 to p2-1{
sum2 = sum2+C2[cnt];
}
mav2 = sum2/P2;
sum3 = 0;
for cnt = 0 to p3-1{
sum3 = sum3+C3[cnt];
}
mav3 = sum3/P3;
if c > mav1 and c > mav2 and C > mav3 Then
T = 1;
else if c < mav1 and c < mav2 and C < mav3 Then
T = -1;
Else
T = 0;
if T == 1 and T[1] != 1 Then{
var1 = TimeToMinutes(stime);
Text_New(sdate,stime,H,"골드발생");
PlaySound("C:₩예스트레이더4₩data₩sound₩alert.wav");
}
if T == 1 and TimeToMinutes(stime) > var1 and (TimeToMinutes(stime)-var1)%10 < (TimeToMinutes(stime[1])-var1)%10 Then{
Text_New(sdate,stime,H,"골드유지");
PlaySound("C:₩예스트레이더4₩data₩sound₩alert.wav");
}
if T == -1 and T[1] != -1 Then{
var2 = TimeToMinutes(stime);
Text_New(sdate,stime,L,"데드발생");
PlaySound("C:₩예스트레이더4₩data₩sound₩alert.wav");
}
if Condition2 == true and TimeToMinutes(stime) > var2 and (TimeToMinutes(stime)-var1)%10 < (TimeToMinutes(stime[1])-var1)%10 Then{
Text_New(sdate,stime,L,"데드유지");
PlaySound("C:₩예스트레이더4₩data₩sound₩alert.wav");
}
}
playsound함수는 컴퓨터안에 있는 wav파일을 구동합니다.
위식에서는 기본으로 제공되는 wav파일을 지정했습니다
게시판에서 수식을 복사해 편집기에 옮길경우
파일의 경로 중 ₩의 폰트가 맞지 않아 깨질수 있습니다.
₩는 다시 타이핑 하시기 바랍니다.
즐거운 하루되세요
> starj5 님이 쓴 글입니다.
> 제목 : 부탁드립니다
> 안녕 하세요
궁금한 지표식은
1분 분봉에서 20선과 5분 20선 10분 10선 모두 골드일때 소리와 텍스트
유지시 10분마다 소리와 텍스트
1분 분봉에서 20선과 5분 20선 10분 10선 모두 데드일때 소리와 텍스트
유지시 10분마다 소리와 텍스트
언제나 감사드립니다
2014-09-23
242
글번호 78749
답변완료
시스템 매매시간조정
항상감사드립니다.
1.아래식에 매매시간을 설정하고싶습니다
*** 매매시간 21:00~익일 04:30***
21:00부터 시간을 설정해보니 이전에 나온신호가 21:00부터 다시 나옵니다
시스템식에서 21:00이후부터 나오는 첫신호를 진입신호로 설정하고 싶습니다
2.위조건식에서 진입신호가 발생한 다음 청산후 50틱이상의 수익이 나면 이후 진입신호는
발생금지(매매신호발생후 +50틱 이하이익발생시는 매매지속)
if var10==1 and var20==1 and var13==1 and c>var48[25] and macdv>macds
and upAroon > DnAroon Then
buy("B1");
if var10 == -1 and var20==-1 and var13==-1 and c<var48[25] and macdv<macds
and upAroon < DnAroon Then
sell("S1") ;
2014-09-23
198
글번호 78748
목우도 님에 의해서 삭제되었습니다.
2014-09-23
0
글번호 78747
답변완료
수식 문의
안녕하세요.
일봉상 20선의 각도가 30도 이상인 경우의 수식 부탁드립니다.
그리고 일봉을 주봉이나 분봉으로 바꾸는 활용방법 그리고 각도를 바꾸는활용법
설명 부탁드립니다.
감사합니다.
2014-09-23
197
글번호 78746
답변완료
주가와 이평선과의 이격도
주봉, 일봉, 틱차트상
주가와 이평선과의 이격도가 몇(%)로 차이나면 매매 보류 되도록 하는
예제 부탁드립니다.
2014-09-22
236
글번호 78745
회원 님에 의해서 삭제되었습니다.
2014-09-22
2
글번호 78744
답변완료
손절설정식 추가 좀 부탁드립니다.
아래 시스템식은 2계약진입 후 1계약은 0.3P에 청산하고 나머지 1계약은 신호가 바뀔 때 청산하는 식입니다.
진입할때는 손절 없이 들어갔다가 매수의 경우에는 진입가+0.3P(+6틱)에서 1계약 청산되면, 매도의 경우에는 진입가-0.3P(-6틱)에서 1계약 청산되면 나머지 1계약에 대해서 진입가(본절)에 STOP이 설정되는식을 추가 좀 해 주시기 바랍니다.
1차 청산값은 최적화를 통해서 수정할 예정입니다.
감사합니다.
Input : Period1(3),Period2(21);
Var : Ep1(0,data1),JISU1(0,data1),Ep2(0,data1),JISU2(0,data1);
Ep1 = 2/(Period1+1);
Ep2 = 2/(Period2+1);
if data1(dayindex == 0) then{
JISU1 = data1(C);
JISU2 = data1(C);
}
else{
JISU1 = data1(C * EP1 + Jisu1 * (1-EP1));
JISU2 = data1(C * EP2 + Jisu2 * (1-EP2));
}
If JISU1 > JISU2 Then {
buy("매수", Atlimit, JISU2,2);
}
If JISU1 < JISU2 Then {
sell("매도", Atlimit, JISU2,2);
}
If MarketPosition ==1 then{
exitlong("매수익절1", Atlimit, EntryPrice+0.6,"매수",1,1 );
}
if MarketPosition ==-1 then{
ExitShort("매도익절1",Atlimit, EntryPrice+0.6,"매도",1,1);
}
2014-09-23
200
글번호 78743
답변완료
시스템식을 우리말로 번역해세요.
안녕하세요?
시스템트레이딩을 준비하면서 로직을 작성하는 방법을 배우고 있습니다.
다음과 같은 시스템식을 우리가 사용하는 말로 번역해주시면 고맙겠습니다.
용어도 생소하고 수식 작성도 생소해 부탁드립니다.
감사합니다.
var : PLR(0),XCommission(0),XSlippage(0),OpenPL(0),dayPL(0),count(0);
XCommission = PositionProfit-(XCommission+XSlippage)*CurrentContracts; #%설정
XSlippage = ExitSlippage; #Pt설정
PLR = 0;
count = 0;
for var1 = 1 to 10{
if sdate == EntryDate(var1) Then{
count = count+1;
PLR = PLR+PositionProfit(var1);
}
}
OpenPL = (PositionProfit-(XCommission+XSlippage)*CurrentContracts);
if MarketPosition() == 0 Then{
OpenPL = 0;
dayPL = PLR;
}
Else{
OpenPL = (PositionProfit-(XCommission+XSlippage)*CurrentContracts);
dayPL = PLR+OpenPL;
}
if crossup(c,ma(c,20)) and dayPL > -2 Then
buy("b");
if CrossDown(c,ma(c,20)) Then{
exitlong("s");
}
if MarketPosition() == 1 and dayPL < -2 Then
exitlong("XX");
2014-09-22
247
글번호 78742
답변완료
지표 합성
안녕하세요. 지표합성좀 부탁드립니다.
호가 잔량 이평(매수잔량이평만)+ 스톡캐스틱(k)만 나올수 있도록 지표합성좀 부탁드립니다.
두지표를 합하여 두가지 선이 나올수 있도록 부탁드립니다.
2014-09-22
186
글번호 78740