커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8101
글번호 230811
답변완료
오류 수정 및 질문
안녕하세요?
아래의 조건과 수식에서 오류가 있어 수정 및 질문 드립니다.
1. 질문 : 아래의 1번진입조건은 3가지 외부변수를 입력하는것인데, 양봉틱수와 음봉틱수라는
외부변수가 있습니다. 이것은 무엇인지요?
2. 오류 : 성능보고서가 먹통인데, 본 전략은 조건봉의 전략을 수행할만큼 충분합니다.
아래의 수식이 제대로 되어있는지 꼼꼼히 확인 부탁드립니다.
정확한 의도 전달을 위하여 매매조건을 최대한 쉽고 자세히 다시 서술해놓았습니다.
아래 매매조건과 수식을 비교하여 주시고, 부디 이전에 의견전달을 제가 잘 못하
여 잘못되있는 부분을 찾아 수정 부탁드리겠습니다.
감사합니다.
========================================================================================
* 진입조건
- 장시작후 day high와 day low사이가 (외부변수)틱 이상 벌어진후 아래의 매매 시작.
(재진입시에는 무시하고 아래의 조건이 나오면 매매.
- 모든매매는 틱차트.
- 진입을 하였으면 익절 또는 손절을 하기전까지 재진입 하지않고, 익절 또는 손절 이후 조건
이 나오면 매매.
1. Day high 에서 (음봉x틱, 외부변수) 혹은 (음봉x틱, 외부변수) 혹은 (음봉x틱, 외부변
수) 출현시 매도
Day low 에서 (양봉 x틱, 외부변수) 혹은 (양봉 x틱, 외부변수) 혹은 (양봉 x틱, 외부변
수) 양봉매수
2. Day high 출현이후 발생하는 음봉의 고점과의 간격이 (외부변수,틱) 이내일시 그 해당
음봉에 매도진입. (Day high가 그 해당음봉일 수 도 있음)
Day low 출현이후 발생하는 양봉의 저점과의 간격이 (외부변수,틱) 이내일시 그 해당
양봉에 매수진입. (Day low가 그 해당양봉일 수 도 있음)
* 청산조건
1. 손절 (외부변수,틱)
2. 익절 (외부변수,틱)
----------------------------------------------------------------------------------------
input : N1(1),N2(2),N3(3),profit(10),loss(10),x(10),양봉틱수(5),음봉틱수(5);
var1 = DayHigh-daylow;
if C > O and
(L == DayLow(0)+PriceScale*n1 or
L == DayLow(0)+PriceScale*n2 or
L == DayLow(0)+PriceScale*n3) and
var1 >= x*PriceScale and
abs(C-O) == 양봉틱수 Then
buy();
if C < O and
(H == DayHigh(0)-PriceScale*n1 or
H == DayHigh(0)-PriceScale*n2 or
H == DayHigh(0)-PriceScale*n3) and
var1 >= x*PriceScale and
abs(C-O) == 음봉틱수 Then
sell();
SetStopProfittarget(profit*PriceScale,PointStop);
SetStopLoss(loss*PriceScale,PointStop);
2018-09-01
203
글번호 121794
답변완료
타주기시스템 오류수정
항상 감사드립니다
아래 시스템식에서 data1은 정상적으로 나오는데 data2는 원래식과 다르게 나옵니다.
수정부탁드립니다
Input : Period(12), Period1(5), Period2(5);
var : val1(0,data1),V1(0,data1),v11(0,data1),v2(0,data1),v22(0,data1);
var : H1(0,data1),L1(0,data1),H2(0,data1),L2(0,data1);
var : cond1(false,data1),cond2(false,data1),T1(0,data1);
Input : sto1(20), sto2(10), sto3(8);
var : d2H1(0,data2),d2L1(0,data2),d2H2(0,data2),d2L2(0,data2);
var : d2value1(0,data2),d2condition1(false,data2),d2condition2(false,data2);
var : d2var1(0,data2),d2var11(0,data2),d2var2(0,data2),d2var22(0,data2),T2(0,data2);
/**********************************************************************************/
val1 = StochasticsD(Period,Period1,PEriod2);
Cond1 = val1 > 80;
Cond2 = val1 < 20;
if Cond1 == true and Cond1[1] == false Then
{
H1 = H;
L1 = L;
}
if Cond1 == true then
{
if h > H1 Then
H1 = h;
if l < L1 Then
L1 = l;
}
if Cond1 == false and Cond1[1] == true Then
{
v1 = (H1+L1)/2;
v11 = v1[1];
}
if Cond2 == true and Cond2[1] == false Then
{
H2 = H;
L2 = L;
}
if Cond2 == true then
{
if h > H2 Then
H2 = h;
if l < L2 Then
L2 = l;
}
if Cond2 == false and Cond2[1] == true Then
{
v2 = (H2+L2)/2;
v22 = v2[1];
}
/*************************************************************/
d2Value1 = StochasticsD(sto1,sto2,sto3);
d2Condition1 = d2value1 > 80;
d2Condition2 = d2value1 < 20;
if d2Condition1 == true and d2Condition1[1] == false Then
{
d2H1 = data2(H);
d2L1 = data2(L);
}
if d2Condition1 == true then
{
if data2(h) > d2H1 Then
d2H1 = data2(h);
if l < d2L1 Then
d2L1 = data2(l);
}
if d2Condition1 == false and d2Condition1[1] == true Then
{
d2var1 = (d2H1+d2L1)/2;
d2var11 = d2var1[1];
}
if d2Condition2 == true and d2Condition2[1] == false Then
{
d2H2 = data2(H);
d2L2 = data2(L);
}
if d2Condition2 == true then
{
if data2(h) > d2H2 Then
d2H2 = data2(h);
if data2(l) < d2L2 Then
d2L2 = data2(l);
}
if d2Condition2 == false and d2Condition2[1] == true Then
{
d2var2 = (d2H2+d2L2)/2;
d2var22 = d2var2[1];
}
if v1 > v11 and crossup(val1,80) Then
t1 = 1;
if v2 < v22 and CrossDown(val1,20) Then
T1 = -1;
if d2var1 > d2var11 and crossup(d2value1,80) Then
T2 = 1;
if d2var2 < d2var22 and CrossDown(d2value1,20) Then
T2 = -1;
/********************************************************************/
if t2 == 1 and t2 == 1 Then
buy("b1");
if t2 == -1 and t2 == -1 Then
sell("s1");
감사합니다
2018-08-31
194
글번호 121793
답변완료
수정부탁드립니다
$$,아래수식에서 월물시작 날자와시간를 외부변수로 지정해서 작성하려면 식을 어찌 수정해야할지 몰라 헤매고있습니다,(즉 만기일 개념없이 당월 시작일시를 지정해서 지정일로부터 1개월동안의 당월고,저점의 피보나치수열을 만들고 싶습니다),관리자님 도움부탁드립니다.
var : month(0),nday(0),week(0);
var :EX(false),HH(0),LL(0);
var : t1(0),t2(0),t3(0),t4(0),t5(0),t6(0),t7(0),t8(0),t9(0),t10(0);
month = int(date/100)-int(date/10000)*100;
nday = date - int(date/100)*100;
week = DayOfWeek(date);
#선물만기
#if Month%3 == 0 and nday >= 8 and nday <= 14 and week == 4 then
if nday >= 8 and nday <= 14 and week == 4 then#옵션만기
EX = true;
Else
EX = false;
if EX == false and EX[1] == true Then{
Condition1 = true;
HH = H;
LL = L;
}
if Condition1 == true then{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
var1 = HH;
var2 = LL;
var3 = var1-var2;
var4 = DayOpen(0);
var5 = DayClose(1);
plot1(var1,"Maxi");
plot2(var2+var3*0.764,"Outzone");
plot3(var2+var3*0.618,"Return");
plot4(var2+var3*0.500,"Middle");
plot5(var2+var3*0.382,"3차M");
plot6(var2+var3*0.236,"2차M");
plot7(var2+var3*0.112,"1차M");
plot8(var2,"Mini");
plot9(var4,"Open");
plot10(var5,"close");
}
Text_Delete(t1);
Text_Delete(t2);
Text_Delete(t3);
Text_Delete(t4);
Text_Delete(t5);
Text_Delete(t6);
Text_Delete(t7);
Text_Delete(t8);
Text_Delete(t9);
Text_Delete(t10);
t1 = Text_New(sdate,stime,var1," Maxi :"+NumToStr(var1,2));
t2 = Text_New(sdate,stime,var2+var3*0.764," Outzone :"+NumToStr(var2+var3*0.764,2));
t3 = Text_New(sdate,stime,var2+var3*0.618," Return :"+NumToStr(var2+var3*0.618,2));
t4 = Text_New(sdate,stime,var2+var3*0.500," Middle :"+NumToStr(var2+var3*0.500,2));
t5 = Text_New(sdate,stime,var2+var3*0.382," 3차M :"+NumToStr(var2+var3*0.382,2));
t6 = Text_New(sdate,stime,var2+var3*0.236," 2차M :"+NumToStr(var2+var3*0.236,2));
t7 = Text_New(sdate,stime,var2+var3*0.112," 1차M :"+NumToStr(var2+var3*0.112,2));
t8 = Text_New(sdate,stime,var2," Mini : "+NumToStr(var2,2));
t9 = Text_New(sdate,stime,var4," Open : "+NumToStr(var4,2));
t10 = Text_New(sdate,stime,var5," Close : "+NumToStr(var5,2));
Text_SetStyle(t1,5,2);
Text_SetStyle(t2,5,2);
Text_SetStyle(t3,5,2);
Text_SetStyle(t4,5,2);
Text_SetStyle(t5,5,2);
Text_SetStyle(t6,5,2);
Text_SetStyle(t7,5,2);
Text_SetStyle(t8,5,2);
Text_SetStyle(t9,5,2);
Text_SetStyle(t10,5,2);
Text_SetColor(t1,YELLOW);
Text_SetColor(t2,YELLOW);
Text_SetColor(t3,YELLOW);
Text_SetColor(t4,WHITE);
Text_SetColor(t5,CYAN);
Text_SetColor(t6,CYAN);
Text_SetColor(t7,CYAN);
Text_SetColor(t8,CYAN);
Text_SetColor(t9,WHITE);
Text_SetColor(t10,BLACK);
$$$,언제나 늘 고맙습니다.
2018-09-03
275
글번호 121792
답변완료
타주기 시스템 변환
아래 시스템을 타주기 변환에 적용할수있도록(챠트1,챠트2) 부탁드립니다
Input : Period(100), Period1(28), Period2(13);
var : fk(0),StoK(0),StoD(0);
fk = (c-lowest(L,Period))/(highest(H,Period)-lowest(L,period))*100;
StoK = wma(fk,Period1);
StoD = ema(stok,Period2);
감사합니다
2018-08-31
190
글번호 121791
답변완료
청산시점
청산 월, 일, 시간지정
예) 09월 11일 14시 15분 23초 에 청산 하도록 하고자 할 때 그에 따른 수식을 부탁드립니다.
2018-09-01
201
글번호 121790
답변완료
수식 부탁
주식 종목 이격도 매매 SYS 식에서
전일 기관과 외인이 순 매수일때만 매매신호가 나오는 수식 부탁합니다.
2018-08-31
213
글번호 121789
답변완료
함수요청
안녕하세요?
함수요청드립니다.
A = 당일시가 + {당일제외 과거 10일 (고가-시가)의 평균}
B = 당일시가 + {당일제외 과거 10일 (시가-저가)의 평균}
C = 전일종가 + {당일제외 과거 10일 (전영업일 종가-당영업일 시가)의 절대값의 평균}
D = 전일종가 + {당일제외 과거 10일 (전영업일 종가-당영업일 고가)의 절대값의 평균}
E = 전일종가 + {당일제외 과거 10일 (전영업일 종가-당영업일 저가)의 절대값의 평균}
당일 시가 발생시 A,B,C,D,E 값이 도출되면
매수: A~E 사이에 시가에 제일 가까운 값보다 작은 값 터치시 익봉 시가에 진입
매도: A~E 사이에 시가에 제일 가까운 값보다 큰 값 터치시 익봉 시가에 진입
손절: 매수가 아랫 가격, 매도가 아랫가격
당일 종가 강제청산
가령,
A =100
B = 90
C = 80
D = 70
E = 60
이고 당일 시가가 77이라면 현재가가 90터치시 익봉 시가에 매도 신호
70터치시 익봉 시가에 매수 신호 발생, 매도진입시 손절은 100에, 매수진입시 손절은 60입니다. 손절조건이 만족하지 않을 시 당일 종가에 강제 청산하고자합니다.
2018-08-31
199
글번호 121787
답변완료
다시문의드립니다.
59194번 답을 적용했더니 차트 전체에 파랗게 나옵니다.
다시한번 살펴주시면 고맙겠습니다. 수고하세요/
2018-08-31
205
글번호 121783
답변완료
문의드립니다.
선물차트 기준으로 문의드립니다.
1. 가중이평240선과 티론레벨스 중간선(기간값240) 두선을 기준으로 아래는 파란색으로 가로로 색채우기를 하고 싶습니다.
이때 가중240선과 티론중간선의 두선 중에서 보다 위에 있는 선(어떤 때에는 가중선이 더 위에 있을때가 있고, 어떤 때에는 티론중간선이 더 위에 있을때가 있으므로)을 경계선으로 그 아래부분을 파란색으로 가로로 채우기를 하고자 합니다.
<각 기간값은 수정 가능하게 부탁드립니다.>
항상 감사드립니다. 수고하세요!!!
2018-08-31
222
글번호 121774