커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3357
글번호 230811
답변완료
문의드립니다.
안녕하세요.
30분으로 선물 매매시
첫봉은 지켜보고 두번째봉부터 아래와 같이 매매하려합니다.
if nextbarsdate==sdate Then{
if Nextbaropen<=H Then
buy("b1",atstop,H);
Else
buy("b2",atlimit,H);
if nextbaropen<=L Then
sell("s1",atlimit,L);
Else
sell("s2",atstop,L);
}
위 식이 포지션이 없다면 해당 가격조건에서 계속 매수/매도 사인이 나오는식인가요?
예를들어
첫봉 고가 200.
두번째봉 현재가가 200이 되어(전고점 돌파) 200에 매수진입했을때 제가 205에서
인의적으로 청산했다고 가정해보겠습니다.
궁금증1.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
아직 두번째봉이 끝나지 않은상태에서 등락을 거듭하다가 다시 밑에서 전고점 200을 돌파한다면 다시 매수 사인이 나오나요?
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
궁금증2.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
봉 하나에 진입 신호를 1번 or 여러번 구분하는 수식이 있는지 궁금합니다.
(포지션 없다는 가정시)
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
궁금증3.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
두번째봉에서 들고있던 포지션을 제가 수동으로 청산했더니
3번쨰봉부터는 조건만족이되도 진입을 안하더라구요...
이게 정상인지 궁금합니다
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
질문이 많아 죄송합니다.
감사합니다.
2020-06-12
881
글번호 139776
답변완료
문의드립니다
포지션을 오버나잇하는 거래로직의 경우
만기일이 끼어있을 경우 롤오버를 어떻게 하는지 문의드립니다.
예를 들어 이번주 목요일 6월 11일이 만기일인데
만약 거래 로직이 수요일 진입해서 오늘 시초가에 청산하도록 시뮬레이션이 되어있었다면
롤오버는 자동으로 일어나나요? 안 일어나고 손으로 청산 및 롤오버해주어야 할 것 같은데..
미니코스피200 선물연결 지수로 자동매매를 가동한 경우 어떻게 일어나나요?
2020-06-12
1008
글번호 139768
답변완료
문의드립니다
재문의드립니다
체결강도의경우
해외선물의경우 장시작후 첫번째봉과 장마감전 마직막봉은 계산에 넣지않는 수식을 알고싶습니다
한가지더 여쭐께요
지난주 최고고점 과 지난주 영업일들의 고점의평균을 알고 싶습니다
2020-06-12
1082
글번호 139765
답변완료
문의
아래식에서 상단선과 하단선은 가늘어도 보이는데 중간선에 가늘어서 잘안보입니다, 중간선으의 굵기를 조절할 수있도록 외부변수에 넣어주시면 감사하겠습니다
input: period(20),봉수(2);
Var:선두께(3),상승색(green), 하락색(green),예비선색상(white),상승세로선색상(red),하락세로선색상(blue),세로선두께(0.5);
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,blue);
Text_SetStyle(Tx,2,1);
Text_SetSize(tx,12);
tx = Text_New(date11,time11,Value11,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],white);
#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],white);
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,red);
Text_SetStyle(Tx1,2,5);
Text_SetSize(tx1,12);
tx = Text_New(date11,time11,Value11,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 6
{
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],white);
#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],white);
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,선두께);
TL_SetColor(tL,예비선색상);
var : VTL(0);
if idx == 봉수 Then
{
TL_Delete(VTL);//최근것만 표시하고자 할경우 이 내용을 삭제하시면 됩니다.
VTL = TL_New(sdate,stime,999999999,sDate,stime,0);
TL_SetColor(VTL,iff(T == -1,상승세로선색상,하락세로선색상));
TL_SetSize(VTL,세로선두께);
}
plot1(fr[0]);
plot2(fr[5]);
plot3(fr[6]);
2020-06-12
1078
글번호 139764
답변완료
시스템 문의합니다
해외선물같은경우에 24시넘어서 새벽에 끝나자나요
그럼 당일 청산 수식을 어떻게 넣으면 되나요 예를 들어 아침 7시 부터 다음날새벽 6시까지 한다면요
2020-06-12
1045
글번호 139763
답변완료
지표 문의
안녕하세요
지표 수식 문의 드립니다.
(오늘 종가가격 - 오늘 15시 가격) - (오늘 9시30분 가격 - 어제 종가가격)
장시작 9:00 - 9:30 동안 손익 계산
장마감 15:00 - 15:30 동안 손익 계산
예를들어
어제 마감가격 100 오늘 장시작 +9 오늘 장마감 +7
지표 = 100-9 + 7 = 98
감사합니다.
2020-06-12
979
글번호 139762
답변완료
매매가격 기능 문의
시스템삭에서 atstop으로 매매가격이ㅡ설정되어 있습니다
이 경우에 전략처트에서 매매가격 설정을 우선 3호가로 지정시
우선3호가로 주문이 나가는 지 아니면 시스템식의 가격으로 주문이 나가는지요?
2020-06-11
974
글번호 139761
답변완료
종목검색 질문
종목검색방법 문의 드립니다.
제가 원하느날짜 고가 돌파시 종목검색되게 하고싶은데 어떻게 해야되나요?
예를들어 2020년 6월 2일 고가를 돌파한종목 검색 이런식으로 특정날짜를 지정해서 종목을 찾고싶은데 가능할까요?
아니면 일주일 단위로 특정요일을 정해서 고가를 돌파한종목 검색 가능할까요?
예를들어 수요일 고가 돌파한 종목 검색
감사합니다
2020-06-11
979
글번호 139760
2wnwn 님에 의해서 삭제되었습니다.
2020-06-11
8
글번호 139759