커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7962
글번호 230811
답변완료
동일 봉 내에서 예비 매수신호 매도신호
안녕하세요?
시스템 식에서 동일 봉 내에서 예비 매도신호를 뜨게 설정할 수 있나요?
예스스팟을 통해서 종목검색 후 일봉차트로 생성하여 일봉차트에 자동으로 시스템 적용후 시스템에서 예비매수신호가 뜨면 매수까지는 작동하는데, 예비 매도신호 띄우는 법을 모르겠습니다. 기본 적용시 예비 매수 신호가 뜨고 매수 신호 미충족시 그냥 예비 매수 신호만 사라집니다.
기본적용이 매수신호가 확정나지 않으면 예비 매도도 안나오는건지... 궁금합니다. 기본 설정을 바꿔야 하는지 감이 안잡힙니다.
이게 동일 봉 내라서요. 봉이 마감되지 않으면 예비매수가 확정되는것 같지도 않고..
감사합니다.
2020-05-27
2435
글번호 139254
답변완료
계좌잔액대비 매수수량 지정
안녕하세요!
현물 매수로직에서 계좌잔액대비 매수수량을 자동으로 설정하는 로직을 문의드립니다.
예를 들어, 계좌잔액이 1천만원이라고 할때, 이를 5등분하여 5개 종목에 분할 매수/매도하는
로직으로 구현하고 싶은데, 2백만원은 A라는 종목에 00주(2백만원 / A종목 가격 = 00주),
2백만원은 B라는 종목에 XX주(2백만원 / B종목 가격 = XX주) 이런식으로 구현하려면 어찌하면 되는지요?
감사합니다.
2020-05-27
2311
글번호 139253
답변완료
지표추가
#)추가내용
*****************************************************
var3=20밴드의 (고가저가합)을고가에서더한라인
var4=20밴드의 (고가저가합)을저가에서뺸라인
var5=20밴드의 (고가저가합)/2의 라인
색상(모두블랙)
******************************************************
1>원식
Input : Period1(5), Period2(20), 색상1(red), 색상2(BLUE);
var1 = wma(High,Period1);
var2 = wma(High,Period2);
Var11 = wma(Low,Period1);
var12 = wma(Low,Period2);
(추가내용)
------------------------------------------------------
- var3=20밴드의 (고가저가합)을고가에서더한라인
- var4=20밴드의 (고가저가합)을저가에서뺸라인
- var5=20밴드의 (고가저가합)/2의 라인
- 색상(모두블랙)
--------------------------------------------------------
Plot1(var1, "가중H5");
if c>var2 then Plot2(var2, "가중H20", 색상1);
else Plot2(var2, "가중H20", 색상2);
Plot11(var11, "가중L5");
if c<var12 then Plot12(var12, "가중L20", 색상2 );
else Plot12(var12, "가중L20", 색상1);
2020-05-27
2416
글번호 139252
답변완료
문의드립니다!
어제 질문에 상세한 설명과 함께 답변해주심에 정말 감사드립니다 ^^
이 수식에 대해서 2가지만더 수정 부탁드립니다
1, 세로선도 상승색, 하락색으로 구분이될수있으면 더 좋겠습니다
2, 예비선이 안나오는데 이전처럼 이선도 그대로 나왔으면 합니다
감사합니다 !!!
------------------------------------------------------------------------------------
Var:Period(20),선두께(3),상승색(white), 하락색(white),예비선발생후봉수(5),세로선색상(red),세로선두께(3);
Var:j(0),T(0);
Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0),
date21(0),date22(0),time21(0),time22(0),
date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0),idx(0);
Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0)/*,ZZ[20](0)*/;
Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0);
r[0] = 0;
r[1] = 2;
r[2] = 3.;
r[3] = -1;
r[4] = -2.;
r[5] = 1;
r[6] = 0.5;
For j = 0 To 19
{
HiBar[j] = HiBar[j] + 1;
LoBar[j] = LoBar[j] + 1;
}
if crossup(c,highest(H,Period)[1]) Then
T = 1;
if CrossDown(c,Lowest(L,Period)[1]) Then
T = -1;
If T == -1 Then
{
If T[1] != -1 Then
{
For j = 18 DownTo 0
{
LoVal[j+1] = LoVal[j];
LoBar[j+1] = LoBar[j];
//ZZ[j+1] = ZZ[j];
}
LoVal[0] = L;
LoBar[0] = 0;
//ZZ[0] = L;
date11 = date[HiBar[0]];
time11 = stime[HiBar[0]];
Value11 = HiVal[0];
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
TL_Delete(tl);
TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen);
TL1 = TL_New(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,상승색);
Tx = Text_New(date11,time11,Value11,"●");
#동그라미 색상, 빨강
Text_SetColor(Tx,RED);
Text_SetStyle(Tx,2,2);
Text_SetSize(tx,12);
//tx = Text_New(date11,time11,Value11,NumToStr(value11,2)+NewLine+NumToStr(value11,2)+NewLine);
//Text_SetStyle(tx,2,1);
date21 = date[HiBar[0]];
time21 = stime[HiBar[0]];
date22 = date[0];
time22 = stime[0];
for j = 0 to 6
{
fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]);
}
//TL2[0] = TL_New(date21,time21,fr[0],date22,time22,fr[0]);
//TL_SetColor(TL2[0],RED);
#TL2[1] = TL_New(date21,time21,fr[1],date22,time22,fr[1]);
#TL_SetColor(TL2[1],RED);
#TL_SetStyle(TL2[1], 3);
#TL2[2] = TL_New(date21,time21,fr[2],date22,time22,fr[2]);
#TL_SetColor(TL2[2],RED);
#TL_SetSize(TL2[2],1);
#TX2[2] = Text_New(date22,time22,fr[2],NumToStr(fr[2],2));
#Text_SetColor(Tx2[2],BWHITE);
#Text_SetStyle(TX2[2],1,1);
#TL2[3] = TL_New(date21,time21,fr[3],date22,time22,fr[3]);
#TL_SetColor(TL2[3],RED);
#TL_SetStyle(TL2[3], 3);
#TL2[4] = TL_New(date21,time21,fr[4],date22,time22,fr[4]);
#TL_SetColor(TL2[4],RED);
#TL_SetSize(TL2[4],1);
#TX2[4] = Text_New(date22,time22,fr[4],NumToStr(fr[4],2));
#Text_SetColor(Tx2[4],BWHITE);
#Text_SetStyle(TX2[4],1,0);
//TL2[5] = TL_New(date21,time21,fr[5],date22,time22,fr[5]);
//TL_SetColor(TL2[5],RED);
//TL2[6] = TL_New(date21,time21,fr[6],date22,time22,fr[6]);
//TL_SetColor(TL2[6],MAGENTA);
idx = 0;
}
If LoVal[0] > L Then
{
LoVal[0] = L;
LoBar[0] = 0;
//ZZ[0] = L;
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
TL_SetEnd(TL1, date12,time12,Value12);
date22 = date[0];
time22 = stime[0];
//Tx = Text_New_Self(date12,time12,Value12,NumToStr(abs(value11-value12)/PriceScale,0)+" ");
#동그라미 색상, 빨강
//Text_SetColor(Tx,BLUE);
//Text_SetStyle(Tx,1,0);
TL_SetEnd(TL2[0],date22,time22,fr[0]);
TL_SetEnd(TL2[1],date22,time22,fr[1]);
TL_SetEnd(TL2[2],date22,time22,fr[2]);
Text_SetLocation(TX2[2],date22,time22,fr[2]);
TL_SetEnd(TL2[3],date22,time22,fr[3]);
TL_SetEnd(TL2[4],date22,time22,fr[4]);
Text_SetLocation(TX2[4],date22,time22,fr[4]);
TL_SetEnd(TL2[5],date22,time22,fr[5]);
TL_SetEnd(TL2[6],date22,time22,fr[6]);
TL_Delete(tl);
TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen);
idx = 0;
}
}
If T == 1 Then
{
If T[1] != 1 Then
{
For j = 18 DownTo 0
{
HiVal[j+1] = HiVal[j];
HiBar[j+1] = HiBar[j];
//ZZ[j+1] = ZZ[j];
}
HiVal[0] = H;
HiBar[0] = 0;
//ZZ[0] = H;
date11 = date[LoBar[0]];
time11 = stime[LoBar[0]];
Value11 = LoVal[0];
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
TL_Delete(tl);
TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen);
TL1 = TL_New(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,하락색);
Tx1 = Text_New(date11,time11,Value11,"●");
#동그라미 색상, 파랑
Text_SetColor(Tx1,BLUE);
Text_SetStyle(Tx1,2,2);
Text_SetSize(tx1,12);
//tx = Text_New(date11,time11,Value11,NewLine+NumToStr(value11,2)+NewLine+NumToStr(value11,2));
//Text_SetStyle(tx,2,0);
date31 = date[LoBar[0]];
time31 = stime[LoBar[0]];
date32 = date[0];
time32 = stime[0];
for j = 0 to 5
{
fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]);
}
//TL3[0] = TL_New(date31,time31,fr[0],date32,time32,fr[0]);
//TL_SetColor(TL3[0],BLUE);
#TL3[1] = TL_New(date31,time31,fr[1],date32,time32,fr[1]);
#TL_SetColor(TL3[1],BLUE);
#TL_SetStyle(TL3[1], 3);
#TL3[2] = TL_New(date31,time31,fr[2],date32,time32,fr[2]);
#TL_SetColor(TL3[2],BLUE);
#TL_SetSize(TL3[2],1);
#TX3[2] = Text_New(date32,time32,fr[2],NumToStr(fr[2],2));
#Text_SetColor(Tx3[2],BWHITE);
#Text_SetStyle(TX3[2],1,1);
#TL3[3] = TL_New(date31,time31,fr[3],date32,time32,fr[3]);
#TL_SetColor(TL3[3],BLUE);
#TL_SetStyle(TL3[3], 3);
#TL3[4] = TL_New(date31,time31,fr[4],date32,time32,fr[4]);
#TL_SetColor(TL3[4],BLUE);
#TL_SetSize(TL3[4],1);
#TX3[4] = Text_New(date32,time32,fr[4],NumToStr(fr[4],2));
#Text_SetColor(Tx3[4],BWHITE);
#Text_SetStyle(TX3[4],1,0);
//TL3[5] = TL_New(date31,time31,fr[5],date32,time32,fr[5]);
//TL_SetColor(TL3[5],BLUE);
//TL3[6] = TL_New(date31,time31,fr[6],date32,time32,fr[6]);
//TL_SetColor(TL3[6],cyan);
idx = 0;
}
If HiVal[0] < H Then
{
HiVal[0] = H;
HiBar[0] = 0;
//ZZ[0] = H;
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
TL_SetEnd(TL1, date12,time12,Value12);
date32 = date[0];
time32 = stime[0];
//Tx = Text_New_Self(date12,time12,Value12,NumToStr(abs(value11-value12)/PriceScale,0)+" ");
#동그라미 색상, 빨강
//Text_SetColor(Tx,RED);
//Text_SetStyle(Tx,1,1);
TL_SetEnd(TL3[0],date32,time32,fr[0]);
TL_SetEnd(TL3[1],date32,time32,fr[1]);
TL_SetEnd(TL3[2],date32,time32,fr[2]);
Text_SetLocation(TX3[2],date32,time32,fr[2]);
TL_SetEnd(TL3[3],date32,time32,fr[3]);
TL_SetEnd(TL3[4],date32,time32,fr[4]);
Text_SetLocation(TX3[4],date32,time32,fr[4]);
TL_SetEnd(TL3[5],date32,time32,fr[5]);
TL_SetEnd(TL3[6],date32,time32,fr[6]);
TL_Delete(tl);
TL = TL_New(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen);
idx = 0;
}
}
idx = idx+1;
TL_SetSize(tL,선두께);
TL_SetSize(tL1,선두께);
var : VTL(0);
if idx == 예비선발생후봉수 Then
{
TL_Delete(VTL);//최근것만 표시하고자 할경우 이 내용을 삭제하시면 됩니다.
VTL = TL_New(sdate,stime,999999999,sDate,stime,0);
TL_SetColor(VTL,세로선색상);
TL_SetSize(VTL,세로선두께);
}
2020-05-27
2214
글번호 139251
답변완료
수식 부탁 드립니다
매매시간 : 07시 00분 익일 06시 00분
주문 : 상,하 -120틱 매수 +120틱 청산
상,하 +120틱 매도 -120틱 청산
2020-05-27
2306
글번호 139250
답변완료
수식
안녕하세요.
하기 수식 도움 부탁드립니다.
20/60 MA이평선이 정배열.역배열 상대에서 20 MA이평선이 5캔들 앞으로 이동시킨 선이 돌파 시 매수 / 이탈 시 매도.
감사합니다.
2020-05-27
2423
글번호 139249
답변완료
전일이평선
수고 많으십니다.
전일 20일 이평선의 시가 고가 저가 종가를 표현하고 싶습니다.
감사합니다.
2020-05-27
2458
글번호 139248
답변완료
예스트레이더에 강세 약세 색상표현하는 방법
예 봉이 60이평선이 위에 있으면 강세색상,
봉이 60이평 아래 있으면 약세색상.
부탁드립니다.
첨부파일참조.
2020-05-27
2750
글번호 139247
답변완료
수식부탁드립니다.
안녕하세요
1. 20 이동평균선이 swinghigh 가 발생한 후
2. 20 이동평균선이 60 이동평균선 아래로 가지않고
3. 20이동평균선이 위 swinghigh 선을 돌파시
매수
부탁드립니다.
2020-05-27
2168
글번호 139246