커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1662
글번호 230811
답변완료
수식수정요청
안녕하세요 늘 도움 감사합니다.
아래의 2 가지 수식의 수정 과 도움 부탁드립니다.
첫번째 수식은 다섯개의 선에 텍스트로 숫자가 나오게 수정부탁드립니다.
input : af(0.02), maxAF(0.2),추세선두께(1),추세선색1(YELLOW),추세선색2(CYAN),연장선두께(2),연장선색(gray);
input : 텍스트출력(1);
var : T(0),HH(0),LL(0),HD(0),HT(0),LD(0),LT(0);
var : HH1(0),LL1(0),HD1(0),HT1(0),LD1(0),LT1(0);
var : TL1(0),TL2(0),cnt(0),count(0);
var : TL3(0),TL4(0),TL5(0),TL6(0),TL7(0),tx1(0),tx2(0),tx11(0),tx22(0);
Var : TL11(0),TL22(0);
var1 = CSar(af,maxAF);
if crossup(c,var1) Then
{
T = 1;
HH = H;
HD = sdate;
HT = stime;
HH1 = HH[1];
HD1 = HD[1];
HT1 = HT[1];
if LL > 0 Then
{
#TL1 = TL_new(LD[1],LT[1],LL[1],HD,HT,HH);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL3 = TL_new(HD[1],HT[1],HH[1],sdate,stime,HH[1]);
TL4 = TL_new(HD[1],HT[1],(HH[1]+LL)/2,sdate,stime,(HH[1]+LL)/2);
TL5 = TL_new(HD[1],HT[1],LL,sdate,stime,LL);
TL6 = TL_new(HD[1],HT[1],HH[1]+(HH[1]-LL)/2,sdate,stime,HH[1]+(HH[1]-LL)/2);
TL7 = TL_new(HD[1],HT[1],LL-(HH[1]-LL)/2,sdate,stime,LL-(HH[1]-LL)/2);
//추세선 오른쪽 연장설정
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
/* if 텍스트출력 == 1 then
{
Tx11 = Text_New(HD1,HT1,HH1,NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(HH1,2));
Text_SetStyle(tx11,2,1);
Text_Delete(tx1);
Tx1 = Text_New(HD,HT,HH,NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2));
Text_SetStyle(tx1,2,1);
}*/
}
#TL11 = TL_New(HD1,HT1,HH1,HD,HT,HH);
}
if CrossDown(c,var1) Then
{
T = -1;
LL = L;
LD = sdate;
LT = stime;
LL1 = LL[1];
LD1 = LD[1];
LT1 = LT[1];
if HH > 0 Then
{
#TL2 = TL_new(HD[1],HT[1],HH[1],LD,LT,LL);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL3 = TL_new(LD[1],LT[1],HH,sdate,stime,HH);
TL4 = TL_new(LD[1],LT[1],(HH+LL[1])/2,sdate,stime,(HH+LL[1])/2);
TL5 = TL_new(LD[1],LT[1],LL[1],sdate,stime,LL[1]);
TL6 = TL_new(LD[1],LT[1],LL[1]-(HH-LL[1])/2,sdate,stime,LL[1]-(HH-LL[1])/2);
TL7 = TL_new(LD[1],LT[1],HH[1]+(HH-LL[1])/2,sdate,stime,HH[1]+(HH-LL[1])/2);
//추세선 오른쪽 연장설정
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
/* if 텍스트출력 == 1 then
{
Tx22 = Text_New(LD1,LT1,LL1,NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(LL1,2));
Text_SetStyle(tx22,2,0);
Text_Delete(tx2);
Tx2 = Text_New(LD,LT,LL,NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2));
Text_SetStyle(tx2,2,0);
}*/
}
#TL22 = TL_New(LD1,LT1,LL1,LD,LT,LL);
}
if T == 1 then
{
if H > HH Then
{
HH = H;
HD = sdate;
HT = stime;
TL_SetEnd(TL1,HD,HT,HH);
TL_SetEnd(TL11,HD,HT,HH);
/* if 텍스트출력 == 1 then
{
Text_Delete(tx1);
Tx1 = Text_New(HD,HT,HH,NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2));
Text_SetStyle(tx1,2,1);
}*/
}
}
if T == -1 then
{
if L < LL Then
{
LL = L;
LD = sdate;
LT = stime;
TL_SetEnd(TL2,LD,LT,LL);
TL_SetEnd(TL22,LD,LT,LL);
/* if 텍스트출력 == 1 then
{
Text_Delete(tx2);
Tx2 = Text_New(LD,LT,LL,NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2));
Text_SetStyle(tx2,2,0);
}*/
}
}
#추세선 두께, 색상
TL_SetSize(TL1,추세선두께);
TL_SetSize(TL11,추세선두께);
TL_SetSize(TL2,추세선두께);
TL_SetSize(TL22,추세선두께);
TL_SetColor(TL1,추세선색1);
TL_SetColor(TL11,추세선색1);
TL_SetColor(TL2,추세선색2);
TL_SetColor(TL22,추세선색2);
#연장선 두께, 색상
TL_SetSize(TL3,연장선두께);
TL_SetSize(TL4,연장선두께);
TL_SetSize(TL5,연장선두께);
TL_SetSize(TL6,연장선두께);
TL_SetSize(TL7,연장선두께);
TL_SetColor(TL3,연장선색);
TL_SetColor(TL4,연장선색);
TL_SetColor(TL5,연장선색);
TL_SetColor(TL6,연장선색);
TL_SetColor(TL7,연장선색);
두번째 수식은 차트에 그림이 나오지가 않는데 어떻게 해야하는것인지요?
고가-저가를 계산한뒤 이것의 5개봉의 평균을 다섯개의 선으로 표시하고 싶은데요
input : P(5);
var1 = H-L;
if dayindex+1 < P Then
var2 = ma(var1,dayindex+1);
Else
var2 = ma(var1,P);
plot1(var2);
Print("고가저가.csv",",%.2f",var1);
2021-09-08
737
글번호 152103
답변완료
문의 드립니다.
안녕하세요..
5일선이 60일 선을 골든크로스하면 매수하고
5일선이 20일선을 데드크로하면 매수청산을 하고
5일선이 60일 선을 데드크로스하면 매도하고
5일선이 20일선을 골든크로하면 매도청산을 하는 시스템식좀 부탁드립니다.
감사합니다.
2021-09-07
696
글번호 152102
답변완료
즉시체결 문의
안녕하세요 완성봉 기준이 아닌 조건 만족 즉시 거래를 하려고 하는데
기존 문의 글에서 보니까 조건에 따라 설정이 조금씩 달라진다고 해서 문의 드립니다.
//롱 진입
If (marketPosition == 0) and (Low < 60선) And (C > 60선) Then Buy("롱");
//롱 청산
If (marketPosition == 1) and (C < 60선-2) Then ExitLong("롱청산");
//숏 진입
If (marketPosition == 0) And (High > 60선) And (C < 60선) Then Sell("숏");
//숏 청산
If (marketPosition == -1) And ((C > 60선) Or ((AA5 > MM20) And CrossUp(C, MM20))) Then ExitShort("숏청산");
일때 Buy / Exitlong을 사용해서 그런지 완성봉기준으로 진입 청산이 됩니다
중간에 조건이 만족하는 즉시 진입 청산이 가능하려면 어떻게 수정해야 할까요
그리고 atlimit 와 atstop의 차이는 무엇인가요??
그동안 문의 글에서 보니까 두가지가 사용되는거 같은데 어떤 상황에서 두개를 구별해서 사용하는지도 알려주시면 감사하겠습니다
마지막으로, 앞에 진입 조건을 모두 설정하였을경우 ATSTOP,0으로 설정해도 이상없는지요
예를들어,
//롱 진입
If (marketPosition == 0) and (Low < 60선) And (C > 60선) Then Buy("롱",atstop,0,0);
//롱 청산
If (marketPosition == 1) and (C < 60선-2) Then ExitLong("롱청산",atstop,0);
이방법이 아니라면 다른 방법문의 드립니다 ㅠㅠ
2021-09-08
745
글번호 152101
답변완료
Re : Re : 선긋기 부탁드립니다.
저의 요청으로 추세선지표를 작성해주신데 대하여 거듭 감사드립니다.
그런데요..
그림과 같이 지나간 날짜는 전일 14:00에 시작점으로 하여 다음날 1130분에 꼭지점으로 각 라인이 추세가 모아집니다.
오늘 진행형인 각 라인들도 전일 15:45분 종가가 형성되면 다음날 시가가 나오면 11:30분에 꼭지점을 가정하여 추세가 그려지게 할 수 있는지요?
지금은 장시작 이전부터, 시가가 나오는 9:00부터 이미 그 시가라인이 꼭지점이 되어 11:30분까지 늘려가는 형태입니다.
한번더 고민과 수고를 부탁드립니다.
미리 감사드립니다.
===================
input : 표시1(1),R1(255),G1(0),B1(0),굵기1(1);
input : 표시2(1),R2(0),G2(0),B2(255),굵기2(1);
input : 표시3(1),R3(0),G3(216),B3(255),굵기3(5);
input : 표시4(1),R4(102),G4(102),B4(102),굵기4(5);
Input : 표시5(1),r5(29),g5(219),b5(22),굵기5(5);
var : TL1(0),TL2(0),TL3(0),TL4(0),TL5(0),TL6(0);
if Index == 0 or (sTime >= 140000 and sTime[1] < 140000) Then
{
var1 = sDate;
Var2 = stime;
}
if NextBarStime == 154500 Then
{
value1 = DayHigh;
value2 = DayLow;
value3 = (Value1+Value2)/2;
value4 = DayClose;
value5 = DayOpen;
if 표시1 > 0 and value1 > 0 Then
{
TL1 = TL_New(var1,Var2,value1,sDate,sTime,NextBarOpen);
TL_SetColor(TL1,RGB(R1,G1,B1));
TL_SetSize(TL1, 굵기1);
}
if 표시2 > 0 and value2 > 0 Then
{
TL2 = TL_New(var1,Var2,value2,sDate,sTime,NextBarOpen);
TL_SetColor(TL2,RGB(R2,G2,B2));
TL_SetSize(TL2, 굵기2);
}
if 표시3 > 0 and Value3 > 0 Then
{
TL3 = TL_New(var1,Var2,Value3,sDate,sTime,NextBarOpen);
TL_SetColor(TL3,RGB(R3,G3,B3));
TL_SetSize(TL3, 굵기3);
}
if 표시4 > 0 and Value4 > 0 Then
{
TL4 = TL_New(var1,Var2,Value4,sDate,sTime,NextBarOpen);
TL_SetColor(TL4,RGB(R4,G4,B4));
TL_SetSize(TL4, 굵기5);
}
if 표시5 > 0 and Value5 > 0 Then
{
TL5 = TL_New(var1,Var2,Value5,sDate,sTime,NextBarOpen);
TL_SetColor(TL5,RGB(R5,G5,B5));
TL_SetSize(TL5, 굵기5);
}
}
Else
{
if sTime < 113000 Then
{
TL_SetEnd(TL1,sDate,sTime,DayOpen);
TL_SetEnd(TL2,sDate,sTime,DayOpen);
TL_SetEnd(TL3,sDate,sTime,DayOpen);
TL_SetEnd(TL4,sDate,sTime,DayOpen);
TL_SetEnd(TL5,sDate,sTime,DayOpen);
}
}
2021-09-07
1124
글번호 152100
답변완료
.문의드립니다
이평 각도를 알고싶은데 알수있는방법은없나요?
캔들은 항상 똑같이 보고잇습니다 갯수고
2021-09-07
1160
글번호 152099
답변완료
수식 문의 드려요
장 초반 30분 레인지 돌파시 진입 청산 수식을 만들고 싶은데요
2021-09-07
1154
글번호 152098
답변완료
수식 정정에 대하여 문의 드립니다
안녕하세요
아래수식에서 전일고가선과 전일저점선의 크기(굵기)가 가늘어 눈에 잘 보이게끔
크게(굵게) 하고 싶습니다
1. 2. 3차 고점 저점선보다 2배정도 더 크게(굵게) 하고 싶습니다.
아래 수식에서 수정할부분과 방법만 알려 주시오면 제가 수정 하여 사용하겠습니다
이메일 : jdkkjo365@naver.com <전번 010-4312-6014>
var : tx1(0),tx2(0),tx3(0),tx4(0),tx5(0),tx6(0),tx7(0);
if CodeCategoryEx == 31 Then{
plot1(floor((daylow*1.3600)*100)/100,"1차고점",RED);
plot2(floor((daylow*1.4700)*100)/100,"2차고점",RED);
plot3(floor((daylow*1.6500)*100)/100,"3차고점",RED);
}
if CodeCategoryEx == 32 Then{
plot4(floor((dayhigh*0.6500)*100)/100,"1차저점",BLUE);
plot5(floor((dayhigh*0.5680)*100)/100,"2차저점",BLUE);
}
plot9(dayhigh(1),"전일고가",MAGENTA);
plot10(daylow(1),"전일저점",GREEN);
Text_Delete(tx6);
Text_Delete(tx7);
tx6 = Text_New(sdate,stime,dayhigh(1),NumToStr(dayhigh(1),2));
tx7 = Text_New(sdate,stime,daylow(1),NumToStr(daylow(1),2));
Text_SetStyle(tx6,0,1);
Text_SetStyle(tx7,0,1);
Text_SetColor(tx6,MAGENTA);
Text_SetColor(tx7,GREEN);
2021-09-07
1101
글번호 152097
답변완료
문의 드립니다.
안녕하세요
틱 차트에서 앞 캔들과 현재 캔들간의 걸리는 시간의 평균을
구해 보려고 합니다. 직전 캔들의 시가가 찍힐때의 시간으로 부터
현재봉의 시가가 찍힐때 걸리는 시간을 구할 수 있는지 궁금하며
그렇게 되면 각 캔들간의 걸리는 시간을 구할 수 있을 것 같은데
그 걸리는 시간의 평균을 내어 보고 싶습니다. 가능할지 모르겠습니다
항상 감사드립니다.
2021-09-07
1082
글번호 152096
답변완료
부탁 드립니다~~
휴가는 잘 다녀 오셨나요~~^^
일봉상 15봉 이내 양봉 저점을 돌파한 종목을 찾고 싶습니다.
상승 하고 눌림에 양봉이 나오고, 다시 눌림이 진행 되었다가
상승할 때, 첫 눌림에 양봉 저가를 돌파한 종목을 찾고 싶어서
입니다.
부탁 드릴께요~~
2021-09-07
840
글번호 152095